Requirements Engineering 2009 demos 5

Tasks marked X are compulsory. Answers need to be ready on/before the demo session. Send the answers to the demo teacher by email.

Task 1 X

Use case analysis is a common technique for modeling of functional requirements. A use case is a sequence of system actions that genenerate visible/observable outcome for a given actor/user/device. One use case can have several scenarios, each describing possible interactions.
Use case has four elements: name, description, actor(s), and scenario which describes the interaction between the actor(s) and the system. Read more about use cases and scenarios e.g. here (see the links). Short tutorials on UML and use case diagrams can be found from e.g. here and here, or search for "A use case primer".

Using UML notation (relationships to be used: generalization, include, extends), describe the following use cases of the parking system:
The user selects the duration of the parking time and chooses from the list of offered payment options..
The limitations are as follows: user can select the duration of the parking time from 0.5, 1, 2, and 4 hours. The ticket vending machine checks whether there are free parking places available from the database and necessary information for successful payment.

In your use case, include the following information (as structured text): Use case ID, description, actors, assumptions and constrains, steps to achieve the goal (scenarios), related non-functional requirements, and 1-2 error cases (scenarios of what can go wrong). Keep in mind that the graphical representation is a supplementary element, only.

Note: for extra point, you can try to create a sequence diagram for the optimal use case.