Object and Data Modelling

Object and Data Modelling

Microsoft Visio or equivalent CASE tools should be used for drawing all models and diagrams.
Diagrams will be marked for consistency throughout the models. Each of the models should be accompanied by textual descriptions which may include the purpose of the

model, analysis and design notes, assumptions and considerations for the model.

This assignment should be completed individually. Plagiarism will be penalized according to university regulations.
.Note that this is Assignment 1 with two parts: Analysis Report and Design Report. Assignment 2 will be published in a separate document. Proper documentation of your

assignment will also be rewarded extra points (see the Marking Schemes). Therefore, make sure that your documentation skills are up to the standard required.
Based on the following Problem Statement you are required to produce:

Part I. Analysis Report (40%)

For this part you should focus on the analysis of the business needs, the structure of the system and the functionalities that should be built into the system in order

to meet the business requirements.

1.A set of use case diagrams for the system with
a.An overview use case model (both description and diagram);4%
b.Detailed use case models (both description and diagram) for major business processes. 8%

2.Two activity diagrams to model two major business processes in the system. 10%

3.A class model for the whole system showing important / major classes in the system with their basic attributes and methods.10%

4.A deployment model to show how components of the system are to be installed on completion of the product. 8%

Part II. Design Report (60%)

For this part you are required to design the implementation details of the functionalities and the structure of the system, based on the analysis report in Part One.

Also, you are expected to produce behavioural models for the classes involved in the system.

1.A detailed design of the class model for the system with implementation details. 12%

2.An object model describing capturing how classes (minimum of 3) collaborate with each other in completing a chosen business process (possibly one of the major

processes in Task 1b), with a diagram (part of the class diagram from Task 3). 8%

3.Two communication diagrams to show the detailed collaboration and the interaction between classes in performing a chosen use case (different from Task 2, with a

minimum of two classes involved. 12%

4.Two sequence diagrams for modelling two different use cases from any tasks above. 12%

5.Two behaviour state machine diagrams for capturing all possible states of two major classes in the system. 8%

6.Evaluate your designs against object-oriented system analysis and design principles in the context of business requirements of the case study.8%

Problem Statement:

A Web-based Car Sharing System

Car sharing is becoming increasingly popular in the UK and other European countries. It not only reduces the cost of travelling but also lowers your carbon footprint.

There are already many interactive websites on the Internet for people to use. More information about benefits of car sharing is available on

The following describes the business processes involved in a typical web-based Car Sharing System although you may find variations. Your designs should be strictly

based on the information provided in the Case Study. You can make your some assumptions for the missing information as long as they are within reason, appropriately

explained and justified. The following websites are indicated below for your reference so you will understand how the system works.



First of all, all participants (also referred to as the user) must sign up / register with the system with their personal information (e.g. names, sex, year of birth,

mobile number, and email address etc.) so that they can be identified. During the registration process the user will have the option to specify a username and password

for the account. The registration has to be validated through email the system automatically sends the user an email to which the user has to respond by clicking the

link included in the email. Mobile numbers have also to be verified by text messages.

Once registered, the user can log into the system and register the car(s) to be used for sharing, indicating the make and model of the car, the registration number,

the number of seats and if it is properly insured and has a valid MOT certificate. It is possible that the user does not have a car and only wishes to share a car with


Offering a trip

When the user has one or more empty seats in his car on a trip he/she can post the following information to the car sharing system.

Date and time of departure
Number of seats available for the trip
If it is a single or return trip
If it is a one-time trip or a recurring trip
Departure point (address, city, SatNav postcode)
Arrival point (address, city, or SatNav postcode)
Name of towns (maximum three) on the route

Finding for a trip

Anyone registered on the system can search for rides by entering town names of departure destination points or postcodes can be used as the search criteria. It is

possible that the user will share the car for a part of journey on the route. For example, if the route is from Chelmsford Railway Station to Cambridge and the towns

registered for the route include Stansted Airport the use could just share the car from Chelmsford to Stansted Airport.

The search results that meet the search criteria will be displayed including the trip number, date and time of departure and destination, towns on route, number of

seats available, cost of the journey and the driver information including mobile number and email. The user can choose the whole trip or just a part of the trip for


If all details about the trip and the driver are satisfactory the user can go ahead and click on Contact Driver. An email or a text message will be sent to the driver

by the system for confirmation. If the driver accepts the booking of a sharing event the system will reflect it immediately on the website and notify the user who has

booked the trip.

Paying for the trip

It is possible for the passengers to pay by cash the right amount of cost indicated for the journey directly to the driver (owner of the car). In this case the driver

should report back to the system the total amount he has received for the trip. It is only for calculating how much money is saved for the trip, not for the purpose of


Another option is to manage the cost of trips online. Regular users can apply for a financial account with the Car Sharing System which is linked to a bank account. It

is necessary to start the account with an initial fund 30. When the amount drops below 10 the user will be notified to top it up. If the amount goes above 200 the

driver can request for a transfer of a certain amount back to the bank account.
With a Car Sharing account the user can pay for the cost of trips directly via the system. The amount paid will be transferred to the drivers account. The payment must

be made before the trip takes place.
Extra Features
These extra features of the system offer further possibilities for refining the search. For example, the user can set preferences for the car sharing if it is ok to

smoke or carry pets in the car during the journey. Some users may have specific preferences for the gender and age range of other passengers in the car.
More exciting ideas and features may be added to the system if you wish but it is important that you have covered all the required features as indicated above.


Leave a Reply

Your email address will not be published. Required fields are marked *