Release date: Wednesday, 18.04.12 - Due date: Monday, 23.04.12, 23:59
Describe in your own words the «include», «extend» and the generalization relationship between use cases. Give for each relationship a reasonable example. The use cases should be described with a few words.
Describe in your own words the semantical differences between the instance form and the descriptor form of a sequence diagram. Invent a simple example of a sequence diagram in descriptor form that uses one alt(nerative) or one loop. Instead of using the descriptor form one might use two separate sequence diagrams in instance form to convey the same information (although not in a formal way). Try to do this for your example.
In total we want to have three different sequence diagrams. One in descriptor form and two in instance form. Please choose an example that is as concrete as possible.
In this task you will model part of the behavior of a graphical editor with a statemachine diagram. The graphical editor we want to model is the editor for statemachine diagrams itself. The picture below shows a screenshot of it:
Preparation: Play around with the editor. Use especially the “Selection Tool”, the “State Creation Tool” and the “Transition Creation Tool”. Observe how the editor reacts to keyboard and mouse events.
Your Task: Create a statemachine diagram that describes how the editor behaves while the “State Creation Tool” or1) the “Transition Creation Tool” is selected. Your diagram should describe at least the reaction to the following events: “Mouse Down”, “Mouse Up”, “Key Escape Pressed”, “Key Enter Pressed”, “Alphanumerical Key Pressed”. You should add as well a state for the “Selection Tool”, but you do not need to elaborate the behavior for the case that this tool is selected.
Tip 1: For mouse events the position of the mouse is of course essential. Describe conditions on the mouse position in natural language, e.g. like “[position is on empty canvas]”.
Tip 2: To check whether you covered all events and states it might be useful to create a table that names all transitions and actions for all combinations of events and states.
Optional Task, No Points, Quite Complex: Take as well the events “Mouse Move” into account. Describe as well the behavior if the “Selection Tool” is selected. For simplicity you may assume that the diagram only consists of regular states and transitions.
In this task you are modeling an aspect of the behavior of library system. It is not necessary to think of this system as a program, but you may think of the system of the library (clerks, shelfs, book repository …) as such.
Your Task: Create an activity diagram for the process of borrowing books and creating a user account (if necessary). The diagram should make clear that it is necessary to check for the availability of a book. It should contain the activity of retrieving books from the repository. If the activity of creating a user account is necessary it should be possible to run this in parallel with rest of the activities. Of course the books can only be taken away once the account is created.