Task
back to topQuestion 1 - Software Architecture - 80 marks
Given a case study, analyse the non-functional requirements of the proposed system, and define an architecture for the system. Illustrate the static structure of your architecture with logical and deployment views
Part 1 – Non-Functional Requirement (NFR) Analysis – 20 marks
Conduct an NFR analysis for the given case study using the checklist provided in the resources section as a starting point. Add to the checklist as appropriate for the case study. Present the results in tabular form. E.g.:
NFR
|
Question
|
Benefits
|
Costs
|
Response
|
Strategy
|
Priority
|
Security
|
Is security a concern?
What sort of different access levels might be necessary?
|
Protects the system from unintentional breaches of privacy.
etc
|
Makes the system harder to use, more expensive to build. May have performance implications.
|
Yes, security is a concern, we don’t want customers seeing other customers data, and we don’t want staff access other staffs records.
|
Authentication and Authorisation
|
2
|
Once you have considered all NFRs, rank them in priorityfrom the stakeholder’s perspective.Do not allocate the same priority to any NFRs – make a subjective executive decision and rank them.
Produce a summary of your (at least) 5 most important NFRs. Explain and justify why these are the most importantfrom the stakeholder’s point of view.
Part 2 – Architectural Analysis – 30 marks
Present this in the form of a Software Architecture Notebook. Use the following headings:
- Goals and Philosophy- identify the key non-functional requirements (e.g. security, reliability, availability, maintainability, compatibility, etc.) that the system is attempting to satisfy.
- Assumptions, Constraints and Dependencies- identify existing or proposed technology environments that will support or constrain the system. Identify external systems and databases with which the system will interact. Note: assumptions, constraints, and dependencies are pre-existing facts: they are observations, rather than the result of a choice.
- Architecturally Significant Requirements- identify key functional/non-functional requirements that have important implications for the technical architecture of the system and say what the implications are for those requirements.
- Decisions and Justifications- Identify the decisions made in determining the technical architecture and user interface technology. Justify these against the key goals and philosophies driving the architecture.
- Architectural Mechanisms– Identify the key strategies that you will implement to achieve the NFRs critical to your application.
- Architectural Style and Technological Framework– state the overall architectural style that you have chosen as the basis for your application and explain why it meets the goals of the architecture. Then identify the technical platform with which you will implement your design and explain why that platform is a suitable choice.
Part 3 – Architectural Views - 20 marks
Review the functional requirements for the system and identify a set of functional components. Review the system-wide services required by the system and identify a set of technical components. Illustrate your analysis with acomponent diagram showinglogical or conceptual functional and technical components.
Analyse the hardware and network layout of your proposed system andproduce a deployment diagramshowingthat layout. Identify execution environments in each of your hardware nodes. Then map the functional and technical components you previously identified into the various execution environments asdeployable software components. You may need to divide the logical components identified previously into smaller deployable units representing both horizontal divisions (presentation, business logic, and data layers) and vertical divisions (e.g. customer view, staff view, management view etc).
Part 4 - Reflection - 10 Marks
In your own words, reflect on the value of creating a software architecture. make sure you address the following points:
- The purpose of creating an architecture.
- To whom it is meant to communicate
- At what point in the system development life cycle it should be created.
- What value creating an architecture has to the overall development effort.
Question 2 - Database Design - 20 Marks
Given a set of domain objects for the case study, define a set of database tables in 3rd normal form to represent those objects. Identify and discuss any new entity objects that perhaps should be recognised in the domain model.
Presentation
All diagrams must adhere to the UML 2 standard.
DO NOT submit diagrams as project files. Export diagrams as high resolution PNG images and include them in a Word compatible document.
Concatenate all documents and diagrams into a SINGLE Word compatible document (PDFs acceptable) and upload your assignment to EASTS. Diagrams must be at a sufficient resolution for any included text to be readable.
If you wish to include high resolution images of diagrams generate 150 dpi PNG files (NOT JPEGS) and include the diagrams TOGETHER with the concatenated assignment submission file as described above in a ZIP file (NO OTHER COMPRESSION FORMAT). Upload the ZIP file to EASTS.
Rationale
back to topSubject learning outcomes
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 demonstrate use of a Computer Aided Software Engineering (CASE) tool to document the models in a system.
Graduate learning outcomes
This task also contributes to the assessment of the followingCSU Graduate Learning Outcome/s:
- Professional Practice (Knowledge) - CSU Graduates possess the knowledge and understanding of the discipline and the nature of professionalism required for the given profession or discipline in contemporary societies.
- Professional Practice (Skill) - CSU Graduates demonstrate discipline-specific technical capabilities and self-appraisal required for a beginning practitioner or professional.
Marking criteria and standards
back to top
Question 1 Part 1: NFR Analysis - 20 marks
|
Criteria
|
High Distinction
|
Distinction
|
Credit
|
Pass
|
Mark
|
17-20
|
15-16
|
13-14
|
10-12
|
How well does the NFR analysis reflect the concerns of stakeholders and consider the runtime and non-runtime system qualities necessary to make the system fit-for-purpose?
|
Understanding of system quality requirements demonstrated through insightful, accurate and comprehensive consideration of almost all NFRs.
All NFRs clearly stated in problem domain terms. Consideration of NFRs closely reflects stakeholder concerns.
All critical and significant NFRs thoroughly considered. Both runtime and non-runtime quality characteristics considered. Consideration of NFRs detailed and context specific.
Costs and benefits of addressing all NFRs clearly identified and discussed in relation to specific needs of the case study.
Appropriate strategies identified for almost all critical and significant NFRs
Prioritisation of NFRs clearly and correctly justified against specific needs of the case study.
|
Understanding of major system quality requirements demonstrated through accurate and thorough consideration of all key NFRs. Some minor requirements may have been overlooked.
Almost all NFRs stated in problem domain terms. Consideration of NFRs generally reflects stakeholder concerns.
Almost all critical and significant NFRs considered. Both runtime and non-runtime quality characteristics considered. Consideration of NFRs context specific.
Costs and benefits of addressing almost all NFRs identified and discussed in relation to specific needs of the case study.
Appropriate strategies identified for most key NFRs
Prioritisation of NFRs clearly justified against specific needs of the case study.
|
Understanding of major system quality requirements demonstrated through a correct consideration of most key NFRs. Some important requirements may have been overlooked.
Most NFRs stated in problem domain but some stated in solution domain terms. Consideration of NFRs partially reflects stakeholder concerns but also displays analyst bias.
Most critical and significant runtime NFRs considered. Consideration of NFRs generalised.
Costs and benefits of addressing NFRs identified and discussed in general.
Strategies identified for some key NFRs
Prioritisation of NFRs justified against general needs of the case study.
|
Understanding of major system quality requirements demonstrated through partially correct consideration of some key NFRs. Many important requirements may have been overlooked.
Some NFRs stated in problem domain but most stated in solution domain terms. Consideration of NFRs mainly reflects analyst bias.
Some critical and significant runtime NFRs addressed. Consideration of NFRs generalised.
Costs and benefits of addressing NFRs not discussed.
No strategies identified.
Prioritisation of NFRs justified against general considerations.
|
Question 1 Part 2: Architectural Notebook - 30 marks
|
Criteria
|
High Distinction
|
Distinction
|
Credit
|
Pass
|
Mark
|
26-30
|
20-25
|
19-22
|
15-18
|
How well does the Architectural Notebook demonstrate the ability to evaluate a problem and determine the appropriate architectural style for the solution?
|
Allgoals and philosophies well explained, andcompletelyconsistent with high priority NFRs.
Detailed and thoroughconsideration ofallaspects of Architecture Notebook.
Framework/architectural stylecompletelyappropriate to the case study, with any adaptations, modifications or additions explainedAllNFRs addressed.
Architecture Notebook well presented and is free of errors in grammar, punctuation, and spelling.
|
Almost allgoals and philosophies well explained, andalmost completelyconsistent with high priority NFRs.
Detailed and thoroughconsideration ofalmost allaspects of Architecture Notebook.
Framework/architectural style appropriate to the case study, with some adaptations, modifications or additions explained.MostNFRs addressed.
Architecture Notebook generally error-free, but some errors in language or grammar may occur.
|
Severalgoals and philosophies identified and explained.Generallyconsistent with high priority NFRs.
Generalconsideration ofmostaspects of Architecture Notebook.
Framework/architectural style generally appropriate to the case study.Most criticalNFRs addressed.
Architecture Notebook may contain errors in style or grammar occur, but these are not particularly distracting.
|
Somegoals and philosophies identified and explained.Partiallyconsistent with high priority NFRs.
Generalconsideration ofsomeaspects of Architecture Notebook.
Framework/architectural style partially appropriate to the case study.Some criticalNFRs addressed.
Architecture Notebook contains enough errors in style or grammar occur that they become distracting.
|
Question 1 Part 3: Architectural Views - 20 marks
|
Criteria
|
High Distinction
|
Distinction
|
Credit
|
Pass
|
Mark
|
17-20
|
15-16
|
13-14
|
10-12
|
How well do the architectural views reflect an ability to decompose a system into high-level logical components and then map these to deployable software components.
|
Fully correct understanding of functional and technical components consistent with case study requirements.
Almost completely correct understanding and depiction of hardware nodes and execution contexts, consistent with the chosen technical architecture.
Almost completely correct breakdown and mapping of software components to hardware nodes and execution contexts.
Well laid out, clear, syntactically correct presentation fully consistent with the environment, network and technical architecture chosen.
|
Mostly correct understanding and depiction of hardware and software components, consistent with the chosen technical architecture.
Mostly correct understanding and depiction of hardware nodes and execution contexts, consistent with the chosen technical architecture.
Mostly correct breakdown and mapping of software components to hardware nodes and execution contexts.
Clear, syntactically correct presentation mostly consistent with the environment, network and technical architecture chosen.
|
Generally correct understanding and depiction of hardware and software components. May only be partially consistent with chosen technical architecture.
Generally correct understanding and depiction of hardware nodes and execution contexts, consistent with the chosen technical architecture.
Generally correct breakdown and mapping of software components to hardware nodes and execution contexts.
Syntactically correct presentation generally consistent with the environment, network and technical architecture chosen.
|
Partially correct understanding and depiction of hardware and software components. May not be consistent with chosen technical architecture.
Partially correct understanding and depiction of hardware nodes and execution contexts.
Partially correct breakdown and mapping of software components to hardware nodes and execution contexts.
Understandable presentation generally consistent with the environment, network and technical architecture chosen.
|
Question 1 Part 4: Reflection - 10 marks |
Criteria |
High Distinction |
Distinction |
Credit |
Pass |
Mark |
9-10 |
8 |
7 |
5-6 |
.How well does the reflection demonstrate an understanding of the role of software architecture in an iterative incremental development process?
|
Displays a thorough and insightful understanding of the role of software architecture in terms of its purpose, stakeholders involved, and timing. No misconceptions or omissions. |
Displays a competent understanding of the role of software architecture in terms of its purpose, stakeholders involved, and timing. Few minor misconceptions or omissions.
|
Displays a generally sound of the role of software architecture in terms of its purpose, stakeholders involved, and timing. Several misconceptions or omissions.
|
Displays a basic understanding of the role of software architecture in terms of its purpose, stakeholders involved, and timing. Some major misconceptions or omissions.
|
Question 2: Database Design - 20 marks
|
Criteria
|
High Distinction
|
Distinction
|
Credit
|
Pass
|
Mark
|
17-20
|
15-16
|
13-14
|
10-12 |
How well does the database design reflect an understanding of the concepts of object-relational mapping and the process of database normalisation
|
Completely correct mapping of domain model into relationaltables.
Completely correct representation of all inheritance and compositional relationships.
Comprehensive and insightful identification and discussion of all useful and appropriate new domain objects.
Completely correct set of normalised tables that fully and minimally represent the domain model presented.
|
Nearly completely correct mapping of domain model into relational tables.
Nearly completely correct representation of most inheritance and compositional relationships.
Thorough identification and discussion of useful and appropriate new domain objects.
Nearly completely correct set of normalised tables that fully represent the domain model presented.
|
Generally correct mapping of domain model into relational tables.
Generally correct representation of inheritance and compositional relationships.
Identification and discussion of some useful and appropriate new domain objects.
Generally correct set of normalised tables that represent the domain model presented.
|
Partially correct mapping of domain model into relational tables.
Generally correct representation of some inheritance and compositional relationships.
Partially correct set of normalised tables that somewhat represent the domain model presented.
|
Presentation
back to topAll diagrams must adhere to the UML 2 standard.
DO NOT submit diagrams as project files. Export diagrams as high resolution PNG images and include them in a Word compatible document.
Concatenate all documents and diagrams into a SINGLE Word compatible document (PDFs acceptable) and upload your assignment to EASTS. Diagrams must be at a sufficient resolution for any included text to be readable.
If you wish to include high resolution images of diagrams generate 150 dpi PNG files (NOT JPEGS) and include the diagrams TOGETHER with the concatenated assignment submission file as described above in a ZIP file (NO OTHER COMPRESSION FORMAT).