Software engineering
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 to develop a critical understanding of the diversity of contexts of organisations, problems, and development teams, which will allow you to use your own 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 on 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.
If you are considering progressing to The computing and IT project (TM470), this is one of the OU level 3 modules on which you could base your project topic. Normally, you should have completed one of these OU level 3 modules (or be currently studying one) before registering for the project module.
Entry requirements
This is an OU level 3 module. OU level 3 modules build on study skills and subject knowledge acquired from previous studies at levels 1 and 2. They are only intended for students with recent experience of higher education in a related subject.
To study this module you will 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.
If you have any doubt about the suitability of the course, please speak to an .
What's included
Printed study texts, online study texts, website, and online forums.
Computing requirements
You’ll need broadband internet access and a desktop or laptop computer with an up-to-date version of Windows (10 or 11) or macOS Ventura or higher.
Any additional software will be provided or is generally freely available.
To join in spoken conversations in tutorials, we recommend a wired headset (headphones/earphones with a built-in microphone).
Our module websites comply with web standards, and any modern browser is suitable for most activities.
Our OU Study mobile app will operate on all current, supported versions of Android and iOS. It’s not available on Kindle.
It’s also possible to access some module materials on a mobile phone, tablet device or Chromebook. However, as you may be asked to install additional software or use certain applications, you’ll also require a desktop or laptop, as described above.