The document discusses the concept of software evolution, which refers to the process of developing software and then continuously updating it over time by adding new features, removing outdated functionality, and fixing bugs. It provides details on the typical stages of a software system's lifecycle including evolution, servicing, and phase-out. It also explains why software evolution is important and discusses models like the spiral model that are used for software evolution and risk management.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
38 views16 pages
Evolution Phase Presentation
The document discusses the concept of software evolution, which refers to the process of developing software and then continuously updating it over time by adding new features, removing outdated functionality, and fixing bugs. It provides details on the typical stages of a software system's lifecycle including evolution, servicing, and phase-out. It also explains why software evolution is important and discusses models like the spiral model that are used for software evolution and risk management.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16
Evolution Phase
What is Software Evolution?
• During the development of a software they're various phases one such is the Evolution phase otherwise known as Software Evolution. It is basically the process of developing the software then updating it overtime for various reasons, e.g. to add new features or to remove out-of-date functionalities and so on. Software Development Stages • Evolution- The stage in a software system’s life cycle where it is in operational use and is evolving as new requirements are proposed and implemented in the system. • Servicing- At this stage the software remains useful but the only changes made are those required to keep it operational like bug fixes and changes to reflect changes in the software’s environment. • Phase-out- And here the software may still be used but no further changes are made to it. Why is the Software Evolution Important? • Software Evolution is important because over time the Company/Business who owns the software may have a change in their needs or way of working. So Software Evolution is inevitable because a software have to be kept up- to-date to match current times and phones and computers also have updates to the software have to be up-to-date to prevent performance issues. • Other reasons includes: i) Errors and bugs may occur over time, ii) Security risks may arise due to the outdated software and Also to have the refreshing feeling of having a New functionality and features. The Spiral Model of Development and Evolution • The spiral model is a systems development lifecycle (SDLC) method used for risk management that combines the iterative development process model with elements of the Waterfall model. The spiral model is used by software engineers and is favored for large, expensive and complicated projects. The Software Evolution Process 2. System Implementation or Change Implementation 4. Change Request
1. Release Planning 3. Impact Analysis
This is a simple version of the Software Evolution Process
Release Planning
• During the releasing planning of software evolution
process if all the proposal has been changed means new functionality, adaptation and fault repair are occur in the system. In this situation to make a discussion which changes the implementation for the next version of the system to release. System Implementation or Change Implementation • System Implementation or change Implementation is the iteration of software process development where the structure of a new version of the software is design, implementation, and testing. In the critical software evolution process, there is change implementation of the first stage should modify the system implementation, design, and specification that can be effective to change the system process. Impact Analysis • After the process of the system implementation then the next step is the impact analysis process. In which the impact analysis process complete details of the necessary information are analyzed and emerge change should not appear in the change analysis process. Change Request • In the change request process, the necessary information is required and the impact analysis process analyzed the necessary information and pass to the next step release planning process. The release planning process passes the information to the next step of the change implementation process so any problem in the implementation process retrieves the information to the previous step of release planning. If no problem in the change implementation processes the pass the information to the system release process. All the information are complete the system analysis process retrieves the first step of change request process so the evolution process is done. The change request process sometimes is related to the system release process. Lehman's laws of software evolution • In software engineering, the laws of software evolution refer to a series of laws that Lehman and Belady formulated starting in 1974 with respect to software evolution, The laws describe a balance between forces driving new developments on one hand, and forces that slow down progress on the other hand. Over the past decades the laws have been revised and extended several times. Law of Continuing Change
• This law states that any software system that represents
some real-world reality undergoes continuous change or become progressively less useful in that environment. Law of increasing complexity
• As an evolving program changes, its structure becomes
more complex unless effective efforts are made to avoid this phenomenon. Law of conservation of organization stability
• Over the lifetime of a program, the rate of development of that
program is approximately constant and independent of the resource devoted to system development. Law of conservation of familiarity
• This law states that during the active lifetime of the
program, changes made in the successive release are almost constant. The End