Presentation is loading. Please wait.

Presentation is loading. Please wait.

Maintenance = Software Evolution Any changes after the client has accepted the product is considered maintenance. n Any Changes? n What might these be?

Similar presentations


Presentation on theme: "Maintenance = Software Evolution Any changes after the client has accepted the product is considered maintenance. n Any Changes? n What might these be?"— Presentation transcript:

1 Maintenance = Software Evolution Any changes after the client has accepted the product is considered maintenance. n Any Changes? n What might these be?

2 Categories of Maintenance Software maintenance: the of modification of a software product after it has been delivered. Three maintenance categories corrective adaptive perfective

3 Maintenance Categories :  Corrective maintenance: Overcoming existing faults in the delivered software :  Adaptive maintenance: Makes the software usable in a changed environment :  Perfective maintenance: Improves performance, maintainability or other software attributes

4 Successful software requires maintenance The only software that doesn't need maintenance is software that is so bad, it is never used.

5

6 Maintenance Costs n During the software life cycle, more time is spent on maintenance than on any other phase! n 67% of the total cost of a product can be attributed to maintenance

7

8 Maintenance is Difficult Some consider maintenance to be the most difficult of part of software development.

9 Maintenance is Difficult It incorporates all other design and development phases

10 Topics of Discussion n Maintenance is complex, it is hard to know what the problem really is! n Maintenance incorporates aspects of all the other phases of software development. n Maintenance is not viewed as “glamorous.”

11 Maintenance is complex How does maintenance start? A problem/fault is reported by the customer. In the opinion of the user the product is not working as specified. 1) There could be nothing wrong at all. Why? 2) There is a fault and it needs to be corrected.

12 Maintenance is complex: There is nothing wrong! n User misunderstands the documentation. n User is using the product incorrectly n The “problem” doesn’t lie with product. Rather, the user manual is misleading or badly worded.

13 Maintenance is complex: There IS something wrong n Where is the fault? Above average debugging skill is needed! n Fix the problem without adding new ones - Above average programming skill n Has the problem been fixed? - Above average testing skills n Process must be documented - Good documentation skills

14 Maintenance: Creation and Adaption n To adapt products to changing environments requires going back to the beginning -- Maintenance programmers must got through all the stages: requirements, specification, design, implementation and testing. n Creating new modules to satisfy the expanding needs of customers -- Maintenance programmers perform all the design and development stages on this new sections. And THEN, have to meld these additions seamlessly into existing code.

15 Thankless Job?! n Dealing with dissatisfied customers: if the user were happy with the product it wouldn’t need maintenance n User’s problems have been caused by the individuals who developed the product, not the maintainer. n The code may be badly written frustrating the maintainer. n Maintenance is often looked down upon by other developers.


Download ppt "Maintenance = Software Evolution Any changes after the client has accepted the product is considered maintenance. n Any Changes? n What might these be?"

Similar presentations


Ads by Google