KV5035 - Software Architecture

What will I learn on this module?

This module will give you an essential foundation in software architecture. You will learn about the importance of making high-level design choices when developing software systems. You will learn how to model and reason about architectural design choices and to take account of multiple perspectives and concerns. You will be introduced to a range of architectural styles and to their application. You will learn about the relationship between software architecture and software quality, including security, dependability, and scalability. The module will combine ways of thinking and reasoning about software systems with practical approaches to implementation. You will learn how to use appropriate frameworks and libraries, how to use tools for managing quality and risk, and how to create interfaces between system components. As part of the work you will build a component-based system.

‘Software Architecture’ will prepare you for your final year, providing approaches that will be valuable if you develop software for your Group and Individual Projects. Employers are looking for skilled software architects who can work as individuals and as members of a team in making high-level design choices and framing technical standards. Software Architect roles are often among the highest paid in the software industry.

During ‘Software Architecture’ you will work through practical exercises, making use of Northumbria’s state-of-the-art computer labs. You will also critically engage with research outputs as part of your research-rich learning. The assessment will be a final assignment to design, implement and document a software system following architectural principles.

How will I learn on this module?

You will learn through lectures, workshops, and independent learning. There will also be a regular, supervised “drop-in” session that will provide an opportunity for you to ask questions and gain further support with workshop tasks. When appropriate, examples will be taken from real business and industrial situations. Throughout the module you will be given the opportunity to examine and discuss the application of software architecture concepts in real and simulated situations. During the scheduled workshop and drop-in session staff will be available to provide support and feedback to you. These will be hands-on sessions in Northumbria’s computer labs, which are fully equipped with the latest industry-standard software.

How will I be supported academically on this module?

You will be supported by lecturers during the timetabled sessions when you will receive feedback on your work. You can approach staff outside formal teaching sessions to request an appointment to seek advice if required. The University’s eLearning Portal offers remote access to all lecture and seminar materials to reinforce your learning. In addition, the university library offers support for all students through providing electronic resources

What will I be expected to read on this module?

All modules at Northumbria include a range of reading materials that students are expected to engage with. Online reading lists (provided after enrolment) give you access to your reading material for your modules. The Library works in partnership with your module tutors to ensure you have access to the material that you need.

What will I be expected to achieve?

Knowledge & Understanding:
MLO1 – Demonstrate knowledge of approaches to modelling, representing and reasoning about software architectures, and knowledge of major and emerging architectural styles.

MLO2 – Demonstrate knowledge of components (such as packages, libraries, services, layers and resources), their interfaces, and associated quality issues including security.

MLO3 – Demonstrate knowledge of the tools and approaches used to build, maintain and test component-based software systems and for managing quality and risks across the project lifecycle.

Intellectual / Professional skills & abilities:
MLO4 – Use architectural patterns and concepts to build a component based system.

Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA):
MLO5 – Effectively communicate information, arguments and analyses about software using appropriate technical documentation

How will I be assessed?

The module will be assessed using two items of coursework, each worth 50%.

Firstly, you will create technical documentation of a system architecture using appropriate models and approaches. The documentation is limited to 1500 words plus diagrams. This part of the assessment addresses ML01, MLO3, MLO4 and MLO5.

Secondly, you will implement and test a component-based system using different languages, appropriate software libraries and frameworks , structured interfaces (e.g. JSON) and appropriate approaches to security and quality. You must submit well formatted code and configuration files for this system (up to 500 lines, not including library code). You must also submit a short video (max 3 minutes) of you performing component tests (e.g. using a tool such as Postman). This part of the assessment will address MLO1, MLO2, MLO3.

You will receive both informative and confirmatory feedback on your assessments.

There will also be formative assessment and feedback through your work on the course materials. The formative assessment will address all module learning outcomes. The formative assessment will not contribute to your final marks but will be helpful to you when completing the final assessments

Pre-requisite(s)

N/A

Co-requisite(s)

N/A

Module abstract

This module will extend your understanding of software design and development. You will learn how to take a high-level, architectural view of software that equips you for building large-scale, multi-component systems. You will acquire relevant theoretical and practical knowledge for designing and modelling software architecture, and will put this knowledge into practice by implementing a component based system. The module will be highly relevant to and suitable for students with diverse interests including software development, project management and systems thinking.

Course info

UCAS Code Z066

Credits 20

Level of Study Undergraduate

Mode of Study 4 years Full Time or 5 years with a placement (sandwich)/study abroad

School Computer Science

Location City Campus, Northumbria University

City Newcastle

Start September 2027

Fee Information

Module Information

Accuracy of information

All information is accurate at the time of sharing.

 

How your course is delivered

Full time Courses are primarily delivered via on-campus face to face learning but could include elements of online learning.

 

Changes to your course

Most courses run as described on our website and in our marketing materials. Occasionally we may need to make changes, for example due to a change in the law or regulatory requirements, requirements of a Professional, Statutory or Regulatory Body, or our quality assurance processes. Where a change is significant (in line with the Competition and Markets Authority's guidance on "substantial changes"), we will consult with affected students in advance where the change is being decided, and will explain the reason for the change and inform you at the earliest opportunity.

If we make a significant variation to your programme, you are entitled to: request a transfer to an alternative, appropriate programme; withdraw and have your tuition fees adjusted; or raise a complaint through the Student Complaints Procedure.

Optional modules listed on course pages may be subject to change depending on uptake numbers each year. Where a module you selected is withdrawn, the options above apply.

 

Contact time

Contact time is subject to increase or decrease in line with possible restrictions imposed by the government or the University in the interest of maintaining the health and safety and wellbeing of students, staff, and visitors if this is deemed necessary in future.

 

Images and video

The photography and video on this page are used for illustration. They may have been taken at different times and in different parts of the University, and may show facilities, equipment, staff, students or activities that are not part of this course. They are not a guarantee of the specific facilities or equipment you will use.

The course content, entry requirements and fees sections of this page, together with the Programme Specification, set out what this course includes. Our facilities are updated over time and may change during your studies. 

 

Useful Links

Find out about our distinctive approach at 
www.northumbria.ac.uk/exp

Admissions Terms and Conditions
northumbria.ac.uk/terms

Fees and Funding
northumbria.ac.uk/fees

Admissions Policy
northumbria.ac.uk/adpolicy

Admissions Complaints Policy
northumbria.ac.uk/complaints