an exercise in software reuse

by

Johan Angelstam | Peter Keogh | Fredrik Salin

Reverse Car Bay

...Like Ebay

...But for cars

...In Reverse

Demo

So how is it made?

Requirements
Analysis

Constraints
& Limitations

Time

Team Skills

  • HTML & CSS
  • Javascript
  • PHP
  • MySql

Frameworks

Foundation

Angular

Design

Application
Architecture

Server Side Class Diagram

Client Side Class Diagram

Implementation

Implementation Reuse

Procedure Reuse

Cool Stuff in Angular

ng-repeat

						
{{enquiry.brand_name}} {{enquiry.model_name}} {{enquiry.color}} {{getAgeFromYear(enquiry.from_year)}} Years Old {{enquiry.milage}} {{enquiry.target_price}}

ng-view

						

$routeProvider

						
carApp.config(function($routeProvider) {
	$routeProvider
	.when('/home', {
		templateUrl: 'views/home.html',
		controller: 'HomeCtrl'
	})
	.when('/enquiry', {
		templateUrl: 'views/enquiry.html',
		controller: 'EnquiryCtrl'
	})
	.when('/login', {
		templateUrl: 'views/login.html',
		controller: 'LoginCtrl'
	})
	.when('/sign-up', {
		templateUrl: 'views/sign-up.html',
		controller: 'SignUpCtrl'
	})
	.when('/view-bids', {
		templateUrl: 'views/view-bids.html',
		controller: 'ViewBidsCtrl'
	})
	.otherwise({
			redirectTo:'/home'
	});
});
						
						

Opporunities for Reuse

Our RESTful API

GET /enquiries

Returns a list of all enquiries.

POST /enquiries

						
{
	car_id: int (required),
	target_price: int,
	color: string,
	milage: int,
	from_year: int,
}
						
						

Further development

  • Location based services
  • PayPal
  • Connection to external databases with car information

Thank you for your attention!

Questions?

Go to Project page