Upload
mohammad-hefaz
View
165
Download
1
Embed Size (px)
Citation preview
Ageing means to get old.Programs, like people, get old.In software engineering, software ageing refers to progressive performance degradation or the state of the software degrades with time.
* What is Software Ageing?
Software is a mathematical product;mathematics doesn’t decay with time. If a theorem was correct 200 years ago, it will be correct tomorrow. If a program is correct today, it will be correct 100 years from now. If it is wrong 100 years from now, it must have been wrong when it was written. It makes no sense to talk about software aging.
*Scientists Opinions
There are two, quite distinct, types of software aging. Lack of Movement: The first is caused by the failure of the product’s owners to modify it to meet changing needs; Ignorant Surgery: The second is the result of the changes that are made.
*What causes S.A?
Unless software is frequently updated, its user’s will become dissatisfied and change to a new product.Excellent software developed in the
60’s would work perfectly well today, but nobody would use it.
That software has aged even though nobody has touched it.
Actually, it has aged because nobody bothered to touch it.
*Lack of Movement
One must upgrade software to prevent aging.
Changing software can cause aging too.
Changes are made by people who do not understand the software.
Changes take longer and introduce new bugs.
Inconsistent and inaccurate documentation makes changing the software harder to do.
*Ignorant Surgery
Dynamic failure of the environmentTechnology challenges (Hardware and Software) Competition Business compatibility & stability Requirement evolution High cost Degrading quality Increasing complexity
*Other S.A Factors
i. A new life style• Imposing standards
ii.Planning for change • Analyze the future changes• Designate a distinct department
iii.No document ? nothing done• Documentation done after shipping the
product is usually inaccurate
*Planning ahead