Reference no: EM131215018
Object Oriented System Analysis and Design
1. Non-Functional Requirements
a) Analysis of NFRs
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. Consider the case study against the checklist provided in the Resources/Asg3 section of the subject website. Prioritise the identified relevant NFRs, and specifically identify the 5 most important in priority order. For each of these high priority NFRs justify its priority and identify both benefit it confers and the cost of supporting it.
b) System Wide Requirement Document
Document and expand your analysis of NFRs in a System Wide Requirement document. Use the System Wide Requirement Specification template provided in the Resources/Assignment 2 section of the subject Interact site. Make sure your SWRS document addresses:
i) System wide services (required system functionality not captured by a single use case) These are the ‘F' of FURPS+: e.g. auditing, printing, authentication).
ii) Non-functional requirements (system qualities). These are the URPS of FURPS+. Identify the specific high priority NFRs you considered relevant from the checklist under the general URPS+ categories.
iii) Any required system interfaces with external systems.
iv) Any business rules that must be applied.
v) Any constraints that will affect the design of the system. (Interfaces and constraints are the ‘+' of FURPS+)
2. Architecture Notebook
Analyse the Case Study documents and develop a candidate architecture to meet the functional requirements you identified in previous assignments and in the high priority NFRs identified in Task 1. Document this candidate architecture in an Architectural Notebook. Use the template provided in the Resources/Assignment 2 section of the subject Interact site. Make sure the architectural notebook addresses:
i) The key concerns driving the overall architecture. (These should correspond with the 3-5 most important NFRs you identified.)
ii) Any assumptions and dependencies that affect the architecture.
iii) Any architecturally significant requirements. (E.g. a requirement for persistent data may require access to a database)
iv) Decisions, constraints, and justifications that shape the architecture.
v) Architectural mechanisms used to implement requirements (e.g a database or XML file to implement a persistence requirement)
vi) Any architectural frameworks or patterns that will be applied
Hint: if you start to make or justify decisions on grounds that do not appear in your analysis of NFRs - perhaps you should reconsider those NFRS in the light of the forces that are really driving the deisgn of your application.
3. Component Diagram
Document your proposed architecture with a high level logical view showing functional and technical components in a component diagram.
4. Deployment Diagram
Document how your proposed architecture maps to the intended deployment environment with a deployment diagram showing how your functional and technical components will be distributed over hardware nodes.