Evolution Flashcards
True or False, Software maintenance costs more than software dev
True, most businesses software budget is spent on Maintenance
What are the processes involved in Software Evolution?
Change Impact Analysis, Release Planning and Change Implementation
What are Legacy Systems?
Older software systems that were designed on now obsolete software and hardware but are still useful to the businesses who use them
Why are legacy systems rarely replaced by a new system using modern tech?
It is risky and expensive to replace a legacy system
What is Software Re-engineering?
Re-structing and re-documenting software to make to easier to maintain
What is Refactoring?
Making changes to a program to preserve its functionality
What is the importance of software evolution?
Software evolution ensures that critical systems remain valuable to businesses by adapting to new requirements, fixing errors, and maintaining reliability
What are urgent change requests and when are they necassary?
Urgent changes bypass the full software engineering process and are necessary to fix critical faults, adapt to environment changes, or respond quickly to business needs.
List the phases of software change
Evolution, Servicing and Phase-out
List strategies for managing Legacy systems
Scrap the system, continue maintaining the system, re-engineering or Replace the system
List issues with agile methods during system evolution
Lack of documentation for evolution teams, need for automated test creation and lack of refactored and simplified code
What 3 factors influence maintainability and maintenance costs?
Number and complexity of system interfaces, Volatility of requirements, and Business processes where the system is used
What are the 6 components of a Legacy System?
System Hardware, Support Software, Application Software, Application Data, Business Processes and Business Policies and Rules
List 3 types of software Maintenance
Fault Repairs, Environmental Adaptation and Functionality Addition and modification
List the 4 categories of Legacy Systems and state what should be done with each
A: Low quality, Low Business Value - Scrap
B: Low Quality, High Business Value - should be replaced or re-engineered
C: High Quality, Low Business Value - Replace with COTS, Scrap or Maintain
D: High Quality, High Business Value - Continue in Operation