What is code maintenance?
What are the types of code changes you can have in the maintenance phase?
Fault repairs
Environmental adaptations
Functionality additions
Explain fault repairs
Fixing coding errors
Cost: cheap
Doesn’t involve much redesign
Explain environmental adpatation
Updates for new OS
Cost: A little more expensive than fault repairs
Doesn’t involve much redesign
Explain functionality additions
Meet business changes
Cost: Expensive, most common too!
Often involves redesign
Why is change expensive?
Poor original development practices
What are some poor original development practices?
Undocumented requirements
- Cant tell whats changed
Undocumented designs
- Cant understand plan
Low readability of code
- Cant figure out whats going on
Limited documentation
What is requirements change management?
The process of understanding and controlling change to requirements
What is the process of requirements change management?
What are emergency changes in code?
Problems which occur that require fast or emergency changes
- Updating code takes priority over documentation
What are the dangers of emergency changes in code?
When do we start code again?
Cost of change gets high
- Client notes it is costing a lot to have changes
- Software company realises code is getting hard to fix
How is maintenance different to software engineering?
Most SE involved the reuse or previous code
Evolution is another SE loop
Why is the maintenance of software important?