Software Evolution ,Reengineering and Refactoring Flashcards
Why is the evolution of software important for an organization
-For the business value of the software to be maintained
-The majority of the software budget is allotted to the changing and evolving of existing software
Can Urgent changes be implemented without going through all stages
Urgent changes may be implemented without going through all stages
How does evolution happen when agile methods are used?
Agile methods are based on incremental development so the transition from development to evolution is seamless
What kind of testing is particularly valuable when changes are made to a system?
Automated regression testing is particularly valuable when changes are made to a system
What is automated regression testing?
is a form of testing that makes sure that new software upgrades do not break the existing software application
Can additional user stories be created to reflect changes?
Changes may be expressed as additional user stories
What are legacy systems?
These are older systems that rely on languages and technologies that are no longer used for the development of new systems
What is the problem with legacy systems
They may be very dependent on older hardware ,software ,libraries, business processes
What are the layers of a legacy system
hardware,platform and infrastructure software,application software, business processes
Why is it hard to replace legacy systems
It is risky and expensive ,the legacy system does not have complete system system specification,Everything is tighly coupled(that is the system and business processes,Some business rules are undocumented,new software may be late and /or over budget
What is business value assessment
is a detailed planning process to assess the product will provide whether its value to its users, company, or financial values as well
What is system quality assessment
process to determine whether a product meets quality standards
What professional field does system quality assessment
Quality Assurance
What are some issues we may find when we conduct a business value assessment?
The system is not used as much, the system does not support useful business processes, The system does not work when the users need it(not dependable),and system has high business value
What are some things that are assessed when assessing the quality of a system?
-Assessing the the business processes to see how it supports the current goals of the business.
-How effective is the systems environment (.e.g. AWS servers) and how expensive is it it to maintain?
-Application assessment
what is the quality of the application software