Module title: Software Architecture

SCQF level: 10:
SCQF credit value: 20.00
ECTS credit value: 10

Module code: SET10101
Module leader: Xiaodong Liu
School School of Computing
Subject area group: Software Engineering
Prerequisites

Module code: SET09102 or SET09101
Examples of equivalent learning: Software Design and Development

2019/0, Trimester 1, Face-to-Face, Edinburgh Napier University
Occurrence: 001
Primary mode of delivery: Face-to-Face
Location of delivery: MERCHISTON
Partner: Edinburgh Napier University
Member of staff responsible for delivering module: Xiaodong Liu
Module Organiser:


Learning, Teaching and Assessment (LTA) Approach:
Learning & Teaching methods including their alignment to LOs
This module gives the student an insight into design techniques and programming languages used in industry (professionally useful) and uses learner focussed techniques in lectures (for example buzz sessions) LOs 1,2,3,4,5).
Case studies, drawn from real life examples and research projects, will be used to demonstrate the use of different architectures (LOs 1, 2, 3, 4, 5).
Architectural styles are then placed in context: examples of architectural description languages and their use, the benefits of architecture reviews and techniques for architectural analysis, architecture verification and code generation (LOs 2, 3, 4, 5).
Product line development is introduced together with process models for the development of domain specific software architectures. Open systems and standards and the use of commercial off the shelf components are introduced as key topics in the specification of architectures in industry (LOs 1, 2, 3, 4).

Assessment (formative or summative):
50% Supervised Assessment covering all LOs with particular focus on LO1, LO2, LO3 and LO5; 50% Continuous Assessment concentrating particularly on LO1, LO2, LO3, and LO4 while maintaining a full coverage of all LOs.



Formative Assessment:
The University is currently undertaking work to improve the quality of information provided on methods of assessment and feedback. Please refer to the section on Learning and Teaching Approaches above for further information about this module’s learning, teaching and assessment practices, including formative and summative approaches.

Summative Assessment:
The University is currently undertaking work to improve the quality of information provided on methods of assessment and feedback. Please refer to the section on Learning and Teaching Approaches above for further information about this module’s learning, teaching and assessment practices, including formative and summative approaches.

Student Activity (Notional Equivalent Study Hours (NESH))
Mode of activityLearning & Teaching ActivityNESH (Study Hours)
Face To Face Lecture 24
Face To Face Practical classes and workshops 20
Face To Face Tutorial 4
Face To Face Centrally Time Tabled Examination 2
Independent Learning Guided independent study 138
Independent Learning Groupwork (Independent Study) 12
Total Study Hours200
Expected Total Study Hours for Module200


Assessment
Type of Assessment Weighting % LOs covered Week due Length in Hours/Words
Practical Skills Assessment 50 1,2,3,4,5 10 HOURS= 50, WORDS= 0
Centrally Time Tabled Examination 50 1,2,3,4,5 14/15 HOURS= 2, WORDS= 0
Component 1 subtotal: 50
Component 2 subtotal: 50
Module subtotal: 100

Description of module content:

The module investigates and applies a number of architectural styles, including:

main program / sub program
object oriented
layered systems
independent component architectures
pipe and filter systems
implicit invocation
data-centred
service-oriented architecture

A number of architectural patterns are also considered, including:

broker
interceptor
model view controller
microkernel

Architecture solutions, including novel styles and patterns, are then explored for emerging software systems, currently including:

Pervasive systems
Mobile computing systems
Service oriented systems
Embedded systems
Grid computing systems

QoS-based architecture design and analysis is introduced due to the increasing significance of quality requirements in modern systems. Approaches include:

Aspect-oriented architecture design
Feature-oriented architecture design

Learning Outcomes for module:

Upon completion of this module you will be able to

LO1: Recognise major and emerging architectural styles and architectural patterns

LO2: Specify and analyse components and connectors of a software system

LO3: Generate architectural alternatives for a problem and choose between them

LO4: Design and construct a software system that satisfies an architectural specification

LO5: Design and analyse architectures in emerging contexts

Indicative References and Reading List - URL:
SET10101: Software Architecture