Designing, building and testing software systems can be a complicated process. This module aims to provide you with an understanding of software engineering concepts and a view of practical software development. It follows a disciplined approach to developing software systems to meet specified requirements. You’ll become familiar with techniques to support the work of the developers and the dialogue between software engineers and an organisation’s stakeholders. You’ll also develop a good understanding of the different approaches to and practices of software development, including those followed by agile methods.
What you will study
Comparing traditional approaches with agile processes and practices, you will learn about well-known software development processes, their phases, activities and techniques. This will help you develop a critical understanding of the diversity of contexts of organisations, problems, and development teams, allowing you to use your judgement in a real situation.
By studying this module, you will:
be able to understand the business domain for a problem requiring a software solution or a change to an existing solution
acquire the tools and knowledge to analyse and design such a solution or change
understand how any chosen software architecture will impact the satisfaction of all users' requirements and expectations
be able to apply and reuse design expertise from a set of design patterns
develop the skills for testing outputs of all activities throughout the development process.
You will be equipped to apply your knowledge to the design of a wide range of software systems, from small systems in a single organisation (which still need to interact with a range of other services online) to those working in large-scale distributed environments based on coalitions of systems.
Entry requirements
This module builds on study skills and subject knowledge acquired from study at OU levels 1 and 2.
You'll need some basic knowledge of object-oriented concepts and programming, sufficient to follow the meaning of short passages of code written in the Java language.
You should also be able to:
use your computer to carry out tasks such as writing with a word-processor, saving and locating files, installing software and accessing a website
perform simple calculations
read and understand written English of a style and complexity characteristic of a professional magazine or quality newspaper
write clearly in English.
Teaching and assessment
Support from your tutor
You’ll get help and support from an assigned tutor throughout your module.
They’ll help by:
marking your assignments and offering detailed feedback to help you improve
providing individual guidance, whether that’s for general study skills or specific module content
guiding you to additional learning resources
facilitating online discussions between your fellow students in the dedicated forums.
Online tutorials run throughout the module. While they’re not compulsory, we strongly encourage you to participate. Where possible, we’ll make recordings available.
Assessment
Course work includes:
3 Tutor-marked assignments (TMAs)
Examination
Some TMAs involve a collaborative exercise.
We regularly review the assessments in our modules, so we may update the examination method used for this module to an in-person exam or an online invigilated exam. When we are making such a change, we will make it clear on this page. If we need to make a change after you have registered, we will notify you as soon as possible. If you have additional requirements, we will support you to complete your assessments.
What's included
You’ll have access to a module website, which includes:
a week-by-week study planner
course-specific module materials
audio and video content
assessment details and submission section
online tutorial access
access to student forums.
We also provide physical:
study texts.
Computing requirements
Primary device – A desktop or laptop computer with at least 8 GB of RAM and a quad-core processor (2.4 GHz minimum speed). It’s possible to access some materials on a mobile phone, tablet or Chromebook; however, they will not be suitable as your primary device.
Peripheral device – Headphones/earphones with a built-in microphone for online tutorials.
Operating systems – Windows 11 or the latest supported macOS.
Internet access – Broadband or mobile connection.
Browser – Google Chrome and Microsoft Edge are recommended; Mozilla Firefox and Safari may be suitable.
Our OU Study app operates on supported versions of Android and iOS.
Software – Any additional software will be provided or is generally available for free.
If you have a disability
The OU strives to make all aspects of study accessible to everyone, and this Accessibility Statement outlines what studying TM354 involves. You should use this information to inform your study preparations and any discussions with us about how we can meet your needs.
To find out more about what kind of support and adjustments might be available, contact us or visit our Disability support website.
Future availability
Software engineering (TM354) starts once a year – in October.
It will next start in October 2027.
We expect it to start for the last time in October 2027.