Unit-4 - Software Maintenance
Unit-4 - Software Maintenance
Unit-4 - Software Maintenance
MAINTAINABILITY
Unit-4
Definitions
• High level language - a computer programming language that is
similar to a natural language and that requires each statement to be
translated or interpreted into machine language prior to execution
• Impact analysis - the determination of the major effects of a
proposed project or change.
• Object oriented programming - computer programming in which
code and data pertaining to a single entity (object) are encapsulated,
and communicate with the rest of the system via messages
• Quality assurance - the systematic monitoring and evaluation of
aspects of a project, service or facility to ensure that necessary
standards of excellence are being met.
Quality Assurance
• Quality is widely defined as 'fitness for purpose' and this encompasses
most of what many people mean when they talk about quality.
• building maintainability into a system and, as such, maintainability will
not be looked at as a quality factor by itself but rather as something
which is affected by the other quality factors –
• fitness for purpose
• correctness
• portability
• testability
• usability
• reliability
• efficiency
• integrity
• reusability
• interoperability.
• Another important issue which impacts upon
the quality of a system is the appropriate use
of standards
• There are also quality standards specifically
adapted to the software process
• UK's TICKIT-relates quality issues directly to software
production
• IEEE (STD) 1219-1993 -Standard for Software
Maintenance
1.Fitness for Purpose
• Fitness for purpose - does the product do the
job it was intended to do -is an obvious
criterion by which to measure quality. In order
to see what it means in terms of the
maintainability of a system it is necessary to
look at how it is measured
2.Correctness
• There is as yet no way of proving a system to be
correct. Nonetheless ,there is much that can be
done towards decreasing the level of errors in a
system
• Building correctness into a system has the
obvious advantage that less time will be spent
on corrective maintenance.
• A maintenance-conscious life-cycle model will
help maintain the correctness of a system.
3.Portability