Assignment 1 : Designing system models using Activity and State Machine diagrams

ELG 7187C  -  Topics in Computers: Model-Based Design and Verification of Distributed Real-Time Systems

To be submitted by February 4, 2013

1. Workflow modeling using Activity diagrams

Use the notation of UML Activity Diagrams to model the process of getting accepted as a graduate student at your university (UofO or UCarleton). As much as possible, include the data flow aspect in your diagram and also the resources and actors involved in the process.

To be submitted:

  1. A conceptual model of the university environment for graduate studies, in the form of a UML Class diagram. You should identify different actors within the university.
  2. A UML Activity diagram showing the workflow process for a graduate student to become accepted at the university.
  3. Some text explaining the design choices that you did to arrive at this model and any difficulties you encountered.
  4. One usually distinguishes between functional requirements and non-functional requirements. Give three examples of non-functional requirements that could be applied to the acceptance procedure for graduate students under point (1). - (Whether these non-functional requirements are satsified by the existing procedures of the universities is another question)

Note: You may draw the diagrams by hand, but you should follow the UML graphical notation and the drawing should be readable.

2. Model of a Coffee Machine

The basic functionality of the Coffee Machine is described in the example page. Your coffee machine should include all functions shown by the IOA diagram at the beginning of the web page, plus the following features:

  1. Distinction between the controller and hardware components, and the interactions between the controller and the hardware for the preparation of tea (see discussion towards the end of the example web page).
  2. The machine should accept all Canadian coins and allow the repeated selection of coffee or tea if sufficient money was entered before.
  3. If after a period of 20 seconds, the user has not made any command, the machine should return all money that has not been spent.
  4. The machine should not accept any coins when no cups are available. The machine has an internal counter about the available cups. The machine has a support interface by which an employee can enter new cups and update the internal counter accordingly.
  5. Optional: The user may request the addition of sugar during the first 5 seconds after having made a request of coffee or tea.

To be submitted:

  1. List of the input and output interactions of the coffee machine (as a whole) and between the controller and the hardware. Include any interaction parameters.
  2. Draw the state machine diagram representing the behavior of the coffee machine (including state variables, enabling conditions and actions of transitions, etc.). This diagram should be drawn using the graphic notation of UML for state machines.

Last updated: January 19, 2013