software enginnering

18
Amity Institute of Information Technology Software Engineering Maintenance Process, Maintenance Model Submitted by Ashish Kumar

Upload: ashish-kumar

Post on 23-Feb-2017

340 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Software enginnering

Amity Institute of Information Technology

Software Engineering

Maintenance Process, Maintenance Model

Submitted byAshish Kumar

Page 2: Software enginnering

Amity Institute of Information Technology

2

• 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.

• correcting errors found after the software has been delivered.

Software Maintenance

Page 3: Software enginnering

Amity Institute of Information Technology

3

Types of Maintenance

1. Corrective maintenance:

2. Adaptive maintenance

3. Preventive maintenance

4. Perfective maintenance

Page 4: Software enginnering

Amity Institute of Information Technology

4

Types of Maintenance

• Maintenance to repair software faults Changing a system to correct deficiencies in the way meets its

requirements.

• Maintenance to adapt software to a different operating environment

Changing a system so that it operates in a different environment (computer, OS, etc.) from its initial implementation

• Maintenance to add to or modify the system’s functionality Modifying the system to satisfy new requirements

Page 5: Software enginnering

Amity Institute of Information Technology

5

• Corrective maintenance: Reactive modification of a software product performed after delivery to correct discovered problems.(correcting errors)

example: light bulb replacement

Types of Maintenance

Page 6: Software enginnering

Amity Institute of Information Technology

6

• Adaptive maintenance: Modification of a software product performed after delivery to keep a software product usable in a changed or changing environment(both hardware and software).

example: websites etc.

Types of Maintenance

Page 7: Software enginnering

Amity Institute of Information Technology

7

• Preventive maintenance: Modification of a software product after delivery to detect and correct latent faults in the software product before they become effective faults.(increasing the system’s maintainability)

example: changing oil & filters

Types of Maintenance

Page 8: Software enginnering

Amity Institute of Information Technology

8

• Perfective maintenance: Modification of a software product after delivery to improve performance or maintainability.(adapting to changing user requirements)

example: software updates and service packs

Types of Maintenance

Page 9: Software enginnering

Amity Institute of Information Technology

9

The Maintenance ProcessMaintenance process vary considerably depending on the types of software being maintained, the development processes used in an organization and people involved in the process.

Change requests

Impact analysis

Release planning

Change implementation

System release

Fault repair

Flat form adaptation

System enhancement

Overview of the Maintenance Process

Page 10: Software enginnering

Amity Institute of Information Technology

Factors effect maintenance

10

Lack of documentation Lack of time to update existing documentation Quality of original application Documentation quality Rotation of maintenance people Different programming styles conflict Lack of documentation and tools Bad maintenance management Documentation policy

Page 11: Software enginnering

Amity Institute of Information Technology

11

Maintenance effort distribution

softwareadaption

(18%)

Fault repair(17%)

functionalityaddition or

modification(65%)

Page 12: Software enginnering

Amity Institute of Information Technology

12

Model of Maintenance EffortModel of maintenance effort M = p + K^(c-d)

• M = total maintenance effort over entire lifecycle

• p = productive efforts: analysis, design, code, test • c = complexity due to lack of structured design and

documentation • d = degree of familiarization with the system

• K = empirically determined constant

Page 13: Software enginnering

Amity Institute of Information Technology

Model of Maintenance Effort

13

Model of maintenance effort M = p + K^(c-d)

• Cost of maintenance increases exponentially.

• Costs are reduced by structured development

• Costs are reduced by giving the maintenance team time to become thoroughly familiar with the system

Page 14: Software enginnering

Amity Institute of Information Technology

14

Software Maintenance Models Quick-fix Model

This is basically an approach to maintaining software. It is a fire fighting approach, waiting for the problem to occur and then trying to fix it as quickly as possible

Page 15: Software enginnering

Amity Institute of Information Technology

15

Iterative Enhancement Model Analysis Characterization of proposed modifications Redesign and implementation

Page 16: Software enginnering

Amity Institute of Information Technology

16

Reuse Oriented Model Identification of the parts of the old system that are candidates for reuse. Understanding these system parts. Modification of the old system parts appropriate to the new requirements. Integration of the modified parts into the new system.

Page 17: Software enginnering

Amity Institute of Information Technology

17

Boehm’s Model• Boehm proposed a model for the maintenance process based upon the economic

models and principles. • Boehm represent the maintenance process as a closed loop cycle.

Page 18: Software enginnering

Amity Institute of Information Technology

Thank You

18