Hapter Oftware Aintenance: Acronyms
Hapter Oftware Aintenance: Acronyms
SOFTWARE MAINTENANCE
Acronyms Software maintenance is an integral part of a
CASE Computer -Aided Software software life cycle. However, it has not,
Engineering historically, received the same degree of
CM Configuration Management attention that the other phases have. Historically,
CMMi Capability Maturity Model development has had a much higher profile than
Integration maintenance in most organizations. This is now
CR Correction Request changing, as organizations strive to squeeze the
ICSM International Conference on most out of their development investment by
Software Maintenance keeping software operating as long as possible.
ISO International Organization for Concerns about the Year 2000 (Y2K) rollover
Standardization focused significant attention on the software
MR Modification Request maintenance phase, and the Open Source
PSM Practical Software and Systems paradigm has brought further attention to the
Measurement issue of maintaining code developed by others.
SCM Software Configuration Management In the Guide, software maintenance is defined as
SW-CMMi Capability Maturity Model the totality of activities required to provide cost-
Integration for Software effective support to a software system. Activities
SQA Software Quality Assurance are performed during the pre-delivery stage, as
V&V Verification and Validation well as during the post-delivery stage. Pre-
Y2K Year 2000 delivery activities include planning for post-
WCRE Working Conference on Reverse delivery operations, for maintainability, and for
Engineering logistics determination for transition activities.
Post-delivery activities include software
INTRODUCTION modification, training, and operating or
interfacing to a help desk.
Software development efforts result in the
The Software Maintenance Knowledge Area
delivery of a software product which satisfies
(KA) is related to all other aspects of software
user requirements. Accordingly, the software
engineering. Therefore, this KA description
product must change or evolve. Once in
refers specifically to all other chapters of the
operation, defects are uncovered, operating
Guide.
environments change, and new user requirements
The breakdown covers the areas typically
surface. The maintenance phase of the life cycle
discussed in texts and standards, although there
begins after a warranty period or post-
is less discussion on the pre-maintenance
implementation support delivery, but
activities, planning for example. Other topics,
maintenance activities occur much earlier.
such as measures, are often not addressed,
Software maintenance sustains the software
although they are receiving more attention now.
product throughout its operational life cycle.
The extent to which industry implements the
Modification requests are logged and tracked,
software maintenance concepts in the literature
the impact of proposed changes is determined,
and in standards varies by company and project.
code is modified, testing is conducted, and a new
version of the software product is released. Also,
training and daily support are provided to users.
Key Issues in
Maintenance Techniques for
Fundamentals Software
Process Maintenance
Maintenance
Nature of
Management Maintenance Activities Re-engineering
Maintenance
Evolution of Soffware
Categories of
Maintenance
[Pfl01]
[Art88]
[Pig97]
[Pre01]
[Sta94]
[Par86]
[Ben00]
[Boe81]
[Car90]
[Dor97]
[Jon98]
[Leh97]
[Abr93]
[Arn92]
[Dek92]
[Tak97]
[ISO12207-95]
[ISO14764-00]
[IEEE1219-98]
[IEEE610.12-90]
[ANSI/IEEE1061-
1. Fundamentals
3. Maintenance Process
Maintenance Process Models s4 s5.5 s8 c7s1 c5 c2
Maintenance Activities
Unique Activities c3 v1c9s1.9.1 s4.1-s4.2 s8.2.2.1, c11s11.2
s8.3.2.1
Supporting Activities A.7,A.11 c6,c7 c10s10.2,
c18
Maintenance Planning A.3 s7 c7,c8
Activity
Configuration Management c2,c10 A.11 s6.2 c11s11.5 c7
Quality c7s4 A.7 s6.3 s5.5.3.2
4. Techniques for Maintenance
Program Comprehension c14 v1c9s1.11.4 c3
Re-engineering c1,c3- v1c9s1.11.4 B.2
c6
Reverse Engineering c12 v1c9s1.11.3 B.3 c4
[IEEE1219-98] IEEE STD 1219: Standard for
1.RECOMMENDED REFERENCES FOR Software Maintenance, 1998.
SOFTWARE MAINTENANCE [ISO9126-01] ISO/IEC 9126:200: Information
The following set of references provides a strong Technology – Software Product Evaluation –
foundation on which to acquire knowledge on Quality characteristics and guidelines for their
specific topics identified in the breakdown. They use, 2nd ed.,, 2001.
were chosen to provide coverage of all aspects of [ISO12207-95] ISO/IEC 12207: Information
software maintenance. Priority was given to Technology-Software Life Cycle Processes, 1995.
standards and to maintenance-specific [ISO14764-00] ISO/IEC 14764: Software
publications, and then to general software Engineering-Software Maintenance, 2000.
engineering publications. [ITI01] IT Infrastructure Library, Service
[Abr93] A. Abran and H. Nguyenkim, Delivery and Service Support, Published by the
“Measurement of the Maintenance Process from Stationary Office, Office of Government of
a Demand-Based Perspective,” Journal of Commerce, UK, 2001.
Software Maintenance: Research and Practice, [Jon98] T. C. Jones. Estimating Software Costs.
Vol 5, no 2, 1993 McGraw-Hill, 1998.
[Arn92] R.S. Arnold. Software Reengineering. [Leh97] M.M. Lehman, Laws of Software
IEEE Computer Society, 1993. Evolution Revisited, EWSPT96, October 1996,
[Art88] L.J. Arthur. Software Evolution: The LNCS 1149, Springer Verlag, 1997.
Software Maintenance Challenge. John Wiley & [Lie78] B.Lientz, E.B. Swanson and G.E.
Sons, 1988. [Ben00] K.H. Bennett, Software Tompkins, Characteristics of Applications
Maintenance: A Tutorial, Software Engineering Software Maintenance Comm. ACM, Vol. 21,
edited by Dorfman and Thayer, IEEE Computer 1978.
Society Press, 2000. [Par86] G. Parikh. Handbook of Software
[Boe81] B.W. Boehm. Software Engineering Maintenance. John Wiley & Sons, 1986.
Economics. Prentice-Hall, 1981. [Pfl01] S.L. Pfleeger. Software Engineering—
[Car90] D.N. Card and R. L. Glass, Measuring Theory and Practice. Prentice Hall, 2nd ed.,
Software Design Quality, Prentice Hall, 1990. 2001.
[Dek92] S. Dekleva. Delphi Study of Software [Pig97] T.M. Pigoski. Practical Software
Maintenance Problems. Proceedings of the Maintenance: Best Practices for Managing your
International Conference on Software Software Investment. Wiley, 1997.
Maintenance, 1992. [Pre01] R.S. Pressman. Software Engineering: A
[Dor02] M. Dorfman and R. H. Thayer. Software Practitioner’s Approach. McGraw-Hill, 5th ed.,
Engineering (Vol. 1 & Vol. 2). IEEE Computer 2001.
Society Press, 2002. [SEI01] Software Engineering institute,
[Gra87] R.B. Grady and D. L. Caswell. Software Capability Maturity Model Integration, v1.1,
Metrics: Establishing a Company-wide Program. CMU/SEI-2002-TR-002, ESC-TR-2002-002,
Prentice-Hall, 1987. December 2001.
[IEEE610.12-90] IEEE STD 610.12: IEEE [Sta94] G.E. Stark, L. C. Kern, and C. V.
Standard Glossary of Software Engineering Vowell. A Software Metric Set for Program
Terminology, 1990. Maintenance Management. Journal of Systems
[IEEE1061-98] IEEE STD 1061. IEEE Standard and Software, Vol. 24, no. 3, March 1994.
for a Software Quality Metrics Methodology. [Tak97] A. Takang and P. Grubb. Software
IEEE Computer Society Press, 1998. Maintenance Concepts and Practice.
International Thomson Computer Press, 1996.