Approaches to software development
Approaches to software development

Start this free course now. Just create an account and sign in. Enrol and complete the course for a free statement of participation or digital badge if available.

Free course

Approaches to software development

2.2 The role of development processes

A development process is a set of rules that defines how a software development project should be carried out, and a set of software engineering activities associated with the development of software. Each activity undertakes some clearly defined process, starting with a number of inputs from any preceding activities. On completion of an activity there may be one or more outputs, which are known as deliverables.

The order in which these activities are carried out is called a life cycle or process model, and outlines an overall process for the development of a software system. Project management and quality management activities permeate the life cycle of software development. A complete life cycle takes us from the first ideas about the need for a software system to its final withdrawal.

This approach of following a well-defined process has been promoted as the best way to meet the potential diversity of users’ needs, and the primary mechanism to understand and harmonise conflicting demands on the development process. However, this approach has also been contested as too prescriptive, heavy on documentation, and not helping to meet the expectations of customers. In this section, we will start by presenting a well-defined process for software development but will also discuss some lighter-weight alternatives.

In Section 1, we introduced the notion that a good software system is one that meets its users’ needs. In general, we will identify a customer as someone who pays for a software system, in contrast to the people who use it on a day-to-day basis – the users (although a customer may also be one of the intended users). A successful development project will deliver a product that meets, or even exceeds, the customer’s expectations.

Software can also be developed without an identified customer – in that case it is successful if it can find someone who will become a customer and buy it.

We will assume that a customer (or someone acting as a customer) has assessed the feasibility of some initial ideas with a potential group of users and has decided that a software system may be required.


Take your learning further

Making the decision to study can be a big step, which is why you'll want a trusted University. The Open University has 50 years’ experience delivering flexible learning and 170,000 students are studying with us right now. Take a look at all Open University courses.

If you are new to University-level study, we offer two introductory routes to our qualifications. You could either choose to start with an Access module, or a module which allows you to count your previous learning towards an Open University qualification. Read our guide on Where to take your learning next for more information.

Not ready for formal University study? Then browse over 1000 free courses on OpenLearn and sign up to our newsletter to hear about new free courses as they are released.

Every year, thousands of students decide to study with The Open University. With over 120 qualifications, we’ve got the right course for you.

Request an Open University prospectus371