Skip to main content

About this free course

Become an OU student

Download this course

Share this free course

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.

2.5 Summary of Section 2

This section considered how you might approach the development of a good software system as follows.

  • Large software projects are prone to problems because of their size and complexity.
  • Software is inherently easy to change, and this makes it easy to introduce new errors (‘break’ it).
  • Software development is similar to engineering when it involves a defined process with clear activities, each of which has one or more products that can be tested against the users’ requirements.
  • A basic process for the development of software is a set of rules that define how a software development project should be carried out. It incorporates a number of activities, and a life cycle (or process model) that indicates how these activities are ordered. It helps to coordinate and control the use of those methods and any tools that support them.
  • Process models can be sequential, iterative, incremental or some combination of these.
  • A disciplined approach to software development implies that you must make some effort to record your activities from both a personal view and a project view. It means that documentation is an important task for all those who work on a project. In particular, it must be sufficient for the level of traceability required.
  • An agile approach to software development puts an emphasis on people rather than on process or documentation, on short iterations and quickly working software, and on the acceptance that systems change. It also encourages practices that promote cooperative work in software development.