CS3007A Software Project Management
Problem Sheet 8
Lecturer: Dr Robert Macredie
E-mail: Robert.Macredie@brunel.ac.uk,
Introduction
In the eighth session we talked about software maintenance. We tried to define software maintenance and considered its importance/relevance to SPM. We then looked at a range of important issues in software maintenance, grouping them around the relevance and impact that maintenance activities have on systems, the way in which software maintenance is perceived in the profession, and the ways it is perceived as a subject in information systems and computing. We then explored different types of maintenance. We concluded by considering the situation that many software-reliant organisations now find themselves in, having maintained systems over many years until they are 'unstable', and thought about ways in which they might address this problem.
Learning Outcomes
The learning outcomes for the problem sheet are as follows:
(i) you should be able to provide a broad definition of software
maintenance and argue its usefulness;
(ii) you should be able to explain the importance of software
maintenance to SPM and the contribution it makes to organisations
with software systems;
(iii) you should be able to define different classes of software
maintenance and explain the contribution that each makes to an
organisation dependent on software systems;
(iv) you should be able to discuss critically the problems facing
organisations operating software systems which have been subject
to many years of various maintenance activities.
Questions
(i) What important issues do you think should be represented in
a definition of software maintenance? Use this to frame of broad
definition of the term.
(ii) Why is software maintenance important in SPM? What problems
with SPM does it help address? What contribution does it make
to organisations with software systems?
(iii) Explain what you understand by the following classes of software
maintenance: corrective; perfective; adaptive; and preventive.
Define a brief scenario where each would be used.
(iv) What are the problems facing organisations operating software
systems which have been subject to many years of various
maintenance activities? Think about the problems which each of the
types of maintenance activity might bring over time and the problems
that they might bring collectively.
I would encourage you to work in groups of around five for this and subsequent exercises.
Robert Macredie
14 November 1998