Software Architectures and Design
Duration
- One Semester or equivalent
Contact hours
- 12 hours face to face + blended
On-campus unit delivery combines face-to-face and digital learning.
2024 teaching periods
Hawthorn Higher Ed. Semester 1 |
||
---|---|---|
Dates: Results: Last self enrolment: Census: Last withdraw without fail: |
Aims and objectives
The unit aims to facilitate an in-depth study of state-of-the-art approaches and techniques for system design with a special focus on the relationship between non-functional requirements and software architectures.
Unit Learning Outcomes (ULO)
1. Given a set of user goals and priorities, identify, formulate and analyse the requirements and constraints of a software system under consideration. (K3, K6, S1, A2, A4, A5).
2. Identify, construct and justify design abstractions at suitable levels for given user goals and system constraints. (K3, K6, S1, S2, S3, A4, A6).
3. Analyse a given system design in terms of the common design patterns used, and its benefits, limitations and appropriateness for the given user goals and priorities. (K3, S1, A2, A4).
4. Given a system’s specification, formulate and document architectural decisions in terms of common patterns, and analyse the benefits and limitations of these decisions. (K3, S1, S3, A4, A5).
Unit Learning Outcomes (ULO)
Students who successfully complete this unit will be able to:
2. Identify, construct and justify design abstractions at suitable levels for given user goals and system constraints. (K3, K6, S1, S2, S3, A4, A6).
3. Analyse a given system design in terms of the common design patterns used, and its benefits, limitations and appropriateness for the given user goals and priorities. (K3, S1, A2, A4).
4. Given a system’s specification, formulate and document architectural decisions in terms of common patterns, and analyse the benefits and limitations of these decisions. (K3, S1, S3, A4, A5).
5. Record and describe their design decisions and structures using a contemporary modelling language. (K3, S1, S3, A4, A5).
Swinburne Engineering Competencies (A1-7, K1-6, S1-4): find out more about Engineering Skills and Competencies including the Engineers Australia Stage 1 Competencies.
Unit information in detail
- Teaching methods, assessment and content.
Teaching methods
Hawthorn
Type | Hours per week | Number of Weeks | Total |
Live Online Lecture | 2 | 12 | 24 |
On Campus Class (Tutorial) | 1 | 12 | 12 |
Online (Learning Activities) | 2 | 12 | 24 |
Unspecified Activities, Independent Learning | 7.5 | 12 | 90 |
TOTAL | 150 hours |
Assessment
Types | Individual/Group Role | Weighting | Unit Learning Outcomes (ULOs) |
Analysis | Group | 15-25% | 1 |
Design Project Part 1 | Group | 15-25% | 2,3,4,5 |
Design Project Part 2 | Group | 15-25% | 2,3,4,5 |
Weekly Class Tests | Individual | 10-20% | 1,2,3,4,5 |
Final Semester Test | Individual | 20-40% | 1,2,3,4,5 |
As the minimum requirements of assessment to pass the unit and meet all Unit Learning Outcomes to a minimum standard, a student must achieve:
ii) At least 40% in the final exam, and
iii) At least 40% of the possible marks for the weekly questions and answers.
Students who do not successfully achieve hurdle requirements (ii) and (iii) will receive a total mark for the unit of at most 45%
Content
Specifications
• User goals
• Constraints
• Priorities
• Validation
• Analysis
Abstractions and Patterns
• Abstractions in software
• Levels of abstraction
• Object-oriented abstractions
• Common patterns (structural and behavioural)
• Pattern recognition and identification
• Pattern systems
Software Architectures
• Decisions vs. structures
• Architectural patterns
• Documentation and communication
Architectural Styles
• Message-driven architectures
• Client-server architectures
• Layered Architectures
• User goals
• Constraints
• Priorities
• Validation
• Analysis
Abstractions and Patterns
• Abstractions in software
• Levels of abstraction
• Object-oriented abstractions
• Common patterns (structural and behavioural)
• Pattern recognition and identification
• Pattern systems
Software Architectures
• Decisions vs. structures
• Architectural patterns
• Documentation and communication
Architectural Styles
• Message-driven architectures
• Client-server architectures
• Layered Architectures
Study resources
- Reading materials.
Reading materials
A list of reading materials and/or required texts will be made available in the Unit Outline.