A presentation on software maintenanace
-
Upload
sanaja-urmy -
Category
Engineering
-
view
58 -
download
2
Transcript of A presentation on software maintenanace
1
A PRESENTATION ON SOFTWARE MAINTENANCE
2
PRESENTED BY Sanjana Urmy 13CSE30University Of Barisal
3
SOFTWARE MAINTENANCE DEFINITION
The process of modifying a software system or component after delivery to correct faults, improve performance or other attributes, or adapt to a changed environment.
4
THE SIX PURPOSE OF MAINTENANCE
Failure Avoidance
Risk Reduction
Maximum Production
Defect Elimination
Least Operating Costs
Equipment reliability
The job of maintenance is to provide reliable plan for least operating cost-we
don’t just fix equipment.
5
TYPES OF SOFTWARE MAINTENANCE
1. Corrective maintenance
2. Adaptive maintenance
3. Perfective maintenance
4. Preventive maintenance
Bug Fixing
Porting & Migration
Enhancements & scalability
Documentation Enhancements
6
Characteristics:- inefficient maintenance department- unpredictable equipment operation- all maintenance work unplanned
Results: steady degradation of equipment performance
Corrective maintenance:
Reactive modification of a software product performed after delivery to correct discovered problems.
7
Adaptive maintenance: Modification of a software product performed after delivery to keep a software product usable in a changed or changing environment.
Characteristics- close relationship with equipment suppliers.Results: continually improving equipment
8
Preventive maintenance: Modification of a software product after delivery to detect and correct latent faults in the software product before they become effective faults.
Characteristics:- more predictable- more efficient
Results: maintain level of equipment
9
Perfective maintenance: Modification of a software product after delivery to improve performance or maintainability.
Characteristics:- predictable maintenance requirements
- planned & scheduled equipment repairs
Results: maintain equipment performance with minimal disruption to production
10
DISTRIBUTION OF MAINTENANCE ACTIVITIES
corrective 21%
adaptive 25%
preventive 4%
perfective 50%
11
Software Re-engineering or Upgrading
12
Reverse Engineering
13
Program RestructuringIt is a process to re-structure and re-construct the existing software.
Forward Engineering:It is the process of building from a high-level model or concept to build in complexities and lower-level details.
14
MAINTENANCE COSTS
Maintenance costs are usually greater thandevelopment costs by a factor of 2 to 100. The costs arise from both technical and
nontechnicalfactors.
Reasons:Maintenance changes ,degrades the original systemstructure.Aging software results in high support costs.
15
MAINTENANCE COST FACTORS
Staff skills
Program age and structure
Team stability
Contractual responsibility
16
Cost of Maintenance
17
MAINTENANCE PROBLEMS
Someone else's program. Developer not available. Proper documentation doesn't exist. Not designed for change. Maintenance activity not highly regarded.
18
DISTRIBUTION OF MAINTENANCE EFFORT
Functionalityaddition or
modification(65%)
Fault repair(17%)
Softwareadaptation
(18%)
19
WHAT IS ERROR?? Error : Refers to difference between Actual
Output and Expected output. The mistakes made by programmer is known
as an “Error”. Error is terminology of Developer.
20
REASONS OF ERROR Error could happen because of the following reasons: Because of some confusion in understanding
the functionality of the software Because of some miscalculation of the values Because of misinterpretation of any value,
etc.
21
CATEGORIES OF SOFTWARE ERRORS: User interface errors such as output errors or
incorrect user messages. Function errors Hardware defects Incorrect program version Requirements errors Design errors Documentation errors Architecture errors Module interface errors Performance errors Boundary-related errors
22
WHAT IS FAULT?? Fault : It is a condition that causes the
software to fail to perform its required function.
Fault is incorrect step, process or data definition in a computer program which causes the program to behave in an unintended or unanticipated manner.
It is the result of the error.
23
ORIGINS OF FAULTS*specification mistakes– incorrect algorithms, incorrectly specified requirements (timing, power, environmental)* implementation mistakes– poor design, software coding mistakes* component defects– manufacturing imperfections, random device defects, components wear-outs* external factors– radiation, lightning, operator mistakes
24
STATISTIC ON FAULTS
**60-65% of software faults originate from– incomplete, missing, inadequate, inconsistent, unclear requirements **35-40% of software faults originate from– coding mistakes – proportional to • size of code • number of paths in
25
AN EXAMPLE OF SOFTWARE FAULT: In 1991, a change f 3 lines of code in a
program containing millions lines of code caused a local telephone system in California to stop.
Failure: The inability of a system or component to perform its required functions within specified performance requirements
26
27
SOFTWARE DOWNTIME The term downtime is used to refer to periods when a system is unavailable. Downtime or outage duration refers to a period of time that a system fails to provide or perform its primary function
28
29
30
DEFINITION : Software documentation is written text or
illustration that accompanies computer software. It either explains how it operates or how to use it, and may mean different things to people in different roles.
31
SOFTWARE DOCUMENTATION EXPLAINS:
-How it operates-How to use it
32
TYPES OF DOCUMENTATION Requirements Architecture/Design Technical End User Marketing
33
SOFTWARE SPECIFICATION A software specification is a
description of a software system to be developed. It lays out functional and non- functional requirements, and may include a set of use case that describe user interactions that the software must provide.
34
35
36
Thank you..