Most of the tasks in this assignment will be about a system called “Bike Rental Outlet”. Some of your colleagues already did a lot of requirements engineering for this system. You can find use cases, a use case diagram and a mock-up of the user interface here. An Analysis Object Model will be presented in Task 02.
To get more familiar with the notion of design goals, give us for each of the following applications the two to four most important design goals. Explain each design goal in one to three sentences and give us the reason, why you consider this design goal to be important for the respective application.
We created a sequence diagram showing the interaction between the counter staff, the mechanic1) and the system for the RentBike use case. As you did, we created an Analysis Object Model for the Bike Rental Outlet. Your model might be slightly different, because we used another method:
Your task is to create a sequence diagram that demonstrates how the use case can be realized by the classes of the Analysis Object Model. Here is how we would start:
You can find a file with all diagrams in the project
A05T02-T03_BikeRentalOutletAnalysis in your SVN.
Hint: When you are done, the instance of the «system» Bike Rental Outlet should have been completely replaced by the analysis objects.
Use the analysis model in
A05T02-T03_BikeRentalOutletAnalysis and take it as a starting point for the model of the solution. Please define a decomposition into subsystems. Try to adhere to the heuristics we have given in the lecture. If you need more guidance, you may consult some more detailed heuristics we collected for you. Give for each subsystem a short description of its responsibility (one to three sentences). Can you name which principle(s) led you decision?
In Astah it might be the easiest way to create the subsystems in the tree view in the structure panel. Drag and drop objects into the subsystems. If you want, you can present this structure as well in the diagram.
(A complete subsystem decomposition would of course take non-functional aspects of the system into account as well.)
Explain your solution to the previous task in a bit more detail:
|[4 points]||This task is optional!!!|
If you want to practice the creation of an Analysis Object Model again, create one based from the following use case diagram and domain object model. We are modeling the interaction of a customer with an online shop.