Question 1 – User Interface Design – 30 marks
Given a full use case description, design a user interface to support that use case. Illustrate your design with a set of annotated storyboards, and explain your design choices with reference to user interface design principles
Part 1 - Storyboards - 20 marks
Given a use case description and a System Sequence Diagram showing the information flow requirements for that use case, develop a set of dialogues/storyboards that support the information requirements for that use case.
Part 2 - UI Design Principles - 10 marks
Discuss/explain your UI design with reference to principles of UI design, and architectural requirements.
Question 2 – Use Case Realization – 70 marks
Given the full use case description and a domain model perform a Use Case Realization to supportat leastthe normal flow through the user interface you just designed. Illustrate your realization with a sequence diagram and a design class diagram.
Note:the use case realization is to be performed within a single execution context. Represent all remote parts of the system (if required) as actors.
Also Note:The use case realization is to be performed using the ‘perfect memory assumption’ – no data access operations are necessary.
Final Note:the purpose of use case realization is to produce a set of design classes which can be directly implemented as software in code.
Part 1 - Sequence Diagrams (50 marks)
Using a boundary class for each node of your UI design, assigning a use case controller class, and using the domain model provided, describe the collaboration between classes necessary to support the information needs of the use case. Illustrate at least the normal flow. Those intending to achieve higher grades should also illustrate first major alternate flows and then minor exception flows.
Part 2 - Design Class Diagram (20 marks)
Apply the results of your use case realization to create a design class diagram showing class attributes and methods required to support the illustrated flows of the use case.
Rationale
This assessment task will assess the following learning outcome/s:
- be able to describe and apply an iterative incremental software development process.
- be able to analyse and verify system requirements.
- be able to produce and verify analysis and design models for a system.
- be able to evaluate a problem and determine the appropriate architectural style for the solution.
- be able to evaluate and choose appropriate software design patterns to compose the design of a software system.
- be able to demonstrate use of a Computer Aided Software Engineering (CASE) tool to document the models in a system.
Presentation
All text and all diagrams should be concatenated and presented in a single MS Word compatible word processed document.
Diagrams should be exported as a high resolution PNG image file before incorporation into the word processed document.
It is the student's responsibility to ensure that all diagrams in their submission are readable.
Requirements
It is necessary to prepare diagrams using a CASE tool that produces UML compatible diagrams.