SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Assignment 4: Requirements Analysis

Release date: Monday, 02.05.11 - Due date: Sunday, 08.05.11, 23:59

Prelude

You are developing software for different independent Bike Rental Outlets. Your team has already completed a use case diagram together with potential clients. Only some outlets offer to sell bikes, all other don’t need the use cases of the package “bike sale”. That's why EstimateMarketValue is implemented as am extension use-case.

Bike Rental Use Cases

Here you find the flow of events of the use cases. The following mock-up illustrates the interface of the rental outlet:

Bike Rental Outlets Mock-Up

Please use this as a starting point for the next tasks.

Task 1: Domain Object Model

4 points

Generate a class diagram depicting our domain. Analyze the use case descriptions with Abbott's textual analysis to identify the domain objects for the diagram.

Task 2 Analysis Object Model

6 points

Now that you have both the Use Case and Domain Object Model, complete your analysis by creating an Analysis Object Diagram using the three stereotypes presented in the lecture.

  • To identify possible Entities, look at your class diagram from Task 1. Abbot's method tends to identify mostly this stereotype, but you might also find some boundaries here.
  • Each Use Case is a good candidate for a Controller.
  • Also look at the connections between Use Cases and Actors, they probably imply a yet unmodeled Boundary.

Put all your findings in a new Class Diagram in astah, but don't create classes with stereotypes. Instead, represent Boundaries, Controllers and Entities by their respective symbols:

For more information about the stereotypes, see Requirements Analysis Lecture.

Boundaries should talk to controllers, controllers should talk to entities, controllers might talk to boundaries, entities may only talk to entities.

Task 3: Activity Diagram

4 points

Analyze the StartBikeMaintance, EndBikeMaintance and EstimateMarketValue use cases (resp. the corresponding Control classes) with an activity diagram.

Hint: use partitions to represent the analyzed classes, see also the requirements analysis lecture. Partitions have not been introduced in the lecture, see here for an introduction.

teaching/lectures/oosc/2011/assignment_4.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2025