FIT2024 Lecture Notes - Lecture 9: Legacy System, Programming Style, Regression Testing

25 views pages
Week 9 - Software Evolution & Software
Maintenance
Software Evolution
A continuous change from a lesser, simpler , or worse state to a higher or better state
The system changes relate to changing business and user needs
The system evolves throughout its lifetime through a seamless process
The process is spiral process involving requirements, design, and implementation
throughout the lifetime of the system
Software Maintenance
Consists of the activities required to keep a software system operational and responsive
after it is accepted and placed into production
Need to have program understanding
Legacy software
Old software
Why does software have to change?
To adapt to meet new demands of new computing environments or
technology
To be enhance to implement new business requirements
To be extended to make it more usable with modern systems or
databases
Problems
Most computer systems are difficult and expensive to maintain
Software changes are often poorly designed and implemented
Repair and enhancement of software often injects new bugs that must later be
repaired
Factors affecting maintenance costs
Programming style
The way in which a program is written
Program Validation and Testing
The more time and effort spent on design and validation and program
testing, the fewer errors and the less need for corrective maintenance
Age of the System
The older the system, the more likely that its structure has degraded and
the harder maintenance will be
Attract staff who know the old languages/databases/operating system
becomes harder and more expensive
Unlock document

This preview shows of the document.
Unlock all pages and 3 million more documents.

Already have an account? Log in

Document Summary

A continuous change from a lesser, simpler , or worse state to a higher or better state. The system changes relate to changing business and user needs. The system evolves throughout its lifetime through a seamless process. The process is spiral process involving requirements, design, and implementation throughout the lifetime of the system. Consists of the activities required to keep a software system operational and responsive after it is accepted and placed into production. To adapt to meet new demands of new computing environments or technology. To be enhance to implement new business requirements. To be extended to make it more usable with modern systems or databases. Most computer systems are difficult and expensive to maintain. Software changes are often poorly designed and implemented. Repair and enhancement of software often injects new bugs that must later be repaired. The way in which a program is written.

Get access

Grade+
$40 USD/m
Billed monthly
Grade+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
10 Verified Answers
Class+
$30 USD/m
Billed monthly
Class+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
7 Verified Answers