Assignment 2 – Architecture and Design

Assignment 2 – Architecture and Design

The assignment also revolves around the same Case Study as Assignment 1. This may be found as a separate PDF document in the Resources/Assignment 2 section of the subject Interact site.

The objective of this assignment is to apply and consolidate skills acquired in the analysis, architecture, and design disciplines through analysis of a simple case study, and to express the results through the relevant UML diagrams.

Part A – Non Functional Requirements (20 marks)

1. Analyse the Case Study documents and determine the non-functional requirements (NFRs) or system quality attributes necessary to meet the needs identified in the Case Study. Document your analysis with a System Wide Requirement document. Make sure your document addresses:

a) Required system functionality not captured by a single use case (eg auditing, printing, authentication).
b) The FURPS+ categories of system attributes.
c) Any required system interfaces with external systems.
d) Any business rules that must be applied.
e) Any constraints that will affect the design of the system.

Use the System Wide Requirement Specification template provided in the Resources/Assignment 2 section of the subject Interact site. (20 marks)

Part B – System Architecture (40 marks)

2. Analyse the Case Study documents and develop a candidate architecture to meet the functional and non-functional requirements you have identified in Assignment 1 and Part A of Assignment 2. Document this candidate architecture with:

i. An Architectural Notebook. Make sure this notebook addresses:

a) The key concerns driving the overall architecture.
b) Assumptions and dependencies
c) Architecturally significant requirements
d) Decisions, constraints, and justifications that shape the architecture
e) Architectural mechanisms to be applied
f) Key abstractions
g) Any architectural frameworks or patterns that will be applied

Use the Architectural Notebook template provided in the Resources/Assignment 2 section of the subject Interact site. (20 marks)

ii. A high level Logical View of the architecture in the form of a UML component diagram. (10 marks)

iii. A Physical View of the architecture showing how components will be deployed on hardware in the form of a UML Deployment Diagram. (10 marks)

Part C – Detailed Design (30 marks)

3. Show how your architecture will support the critical core use case for the system by developing a detailed design to support that use case. Your design should be consistent with your architecture and respect any component and hardware boundaries. Document your design with:

i. A UML Communication Diagram showing the interaction between user interface, control, and domain object classes for the critical core use case. (10 marks)

ii. A UML Sequence Diagram showing the interaction between user interface, control, and domain object classes for the critical core use case. (10 marks)

iii. A UML Design Class Diagram showing all classes, attributes, methods, and relationships required to support the critical core use case. (10 marks)

Part D – Reflection on Object Oriented Design (10 marks)

4. Reflect on the design principles you have employed in your architecture and design in a written text of between 200 to 1000 words (between 1 and 5 pages). Make sure your reflection addresses:

a) A discussion of any issues you encountered in deciding on a particular architectural framework or pattern.
b) Identifies and discusses any object oriented design principles you applied in your detailed design.
c) Identifies and discusses any software design patterns you applied in your detailed design.
 

Rationale

This assignment elicits performance of taught skills in the requirement and analysis areas relevant to the following learning objectives:

  • be able to analyse and validate system requirements;
  • be able to produce and validate analysis and design models for a system;
  • be able to evaluate a problem and determine the appropriate architectural style for the solutio
  • 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 CASE tool to document the models in a system

Marking criteria
System Wide Requirements

• How well does the System Wide document address its intended purpose?
• How well are the system wide functional requirements addressed?
• How well are the FURPS+ system attributes addressed?
• How well are all system interfaces identified and specified?
• How well are all business rules identified and specified?
• How well are all key constraints and considerations identified?
• How suitable for further use is the document?

System Architecture

Architectural Notebook

• How well are key concerns identified and described?
• How well are assumptions and dependencies identified and described?
• How well are architecturally significant requirements identified and described?
• How well are decisions and constraints identified and justified?
• How well are architectural mechanisms identified and described?
• How well are key abstractions identified and described?
• How well are any relevant architectural frameworks or patterns identified and described?

Logical View – Component Diagram

• Is a correct concept of architectural components demonstrated?
• Is correct UML syntax for component diagrams applied?

Physical View – Deployment Diagram

• Is a correct concept of mapping between components and physical nodes demonstrated?
• Is correct UML syntax for deployment diagrams applied?

Detailed Design

Communication Diagram

• Is a correct concept of objects and message passing demonstrated?
• Is the diagram consistent with the architecture?
• Is the diagram consistent with the critical core use case?
• Is the diagram consistent with the sequence diagram?
• Is correct UML syntax for communication diagrams applied?

Sequence Diagram

• Is a correct concept of objects and message passing demonstrated?
• Is the diagram consistent with the architecture?
• Is the diagram consistent with the critical core use case?
• Is the diagram consistent with the communication diagram?
• Is correct UML syntax for sequence diagrams applied?

Design Class Diagram (DCD)

• Are correct concepts of design classes demonstrated?
• Is the DCD consistent with the architecture?
• Is the DCD consistent with the use case?
• Is the DCD consistent with the communication and sequence diagrams?
• Is correct UML syntax for class diagrams applied?

"Order a similar paper and get 15% discount on your first order with us
Use the following coupon
"FIRST15"

Order Now