Chapter 11 : Maintaining the System
11.1 The Changing System
Maintenance: any work done to change the system after it is in operation.
Software does not degrade or require periodic maintenance.
Lehman’s System Types :
1. S-system: formally defined, derivable from a specification.
2. P-system: requirements based on approximate solution to a problem, but real-
world remains stable.
3. E-system: embedded in the real world and changes as the world does.
11.2 The Nature of Maintenance
Types of Maintenance :
1. Corrective: maintaining control over day-to-day functions.
2. Adaptive: maintaining control over system modifications.
3. Perfective: perfecting existing functions.
4. Preventive: preventing system performance from degrading to unacceptable
levels.
Who Performs Maintenance :
1. Separate maintenance team
2. Part of development team.
11.3 Maintenance Problems
· Staff problems: Limited understanding, management priorities and morale.
· Technical problems: Artifacts and paradigms and testing difficulties.
11.4 Measuring Maintenance Characteristics : Maintainability is not only restricted to code, but also including specification, design, and test plan documentations. Maintainability can be viewed in two ways, either external view of the software or internal view of the software.
11.5 Maintenance Techniques and Tools
· Configuration management
– Configuration control board
– Change control
· Impact analysis
· Automated maintenance tools
11.6 Software Rejuvenation
1. Redocumentation: static analysis adds more information.
2. Restructuring: transform to improve code structure.
3. Reverse engineering: recreate design and specification information from the code.
4. Reengineering: reverse engineer and then make changes to specification and design
to complete the logical model; then generate new system from revised specification
and design
11.7 Information System Example
Piccadilly System
- The software can not be an S-system.
- The software can not be a P-system.
- The software must be E-system.
11.8 Real Time Example : Developers focused on mitigating random failure. The inertial reference system failed because of a design fault, not a result of a random failure. Needs to change the failure strategy and implement a series of preventive enhancements. Invokes change control and configuration management
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment