Software Development Lifecycle (SDLC)
Well defined processes are what describes the Software Life Cycle in its whole and each of its steps. It is what is “behind” the chosen Software Development Life Cycle. For a?process?in a software development environment we understand that it:
Understand the importance of processes is vital to follow and set the proper model process to develop any given software. I’ll definitely get back to the benefits of having good processes, but for now I’m going to focus on the types of Software Development Life Cycle. Once we understand the importance of well defined processes we can now proceed and designate the best model in which the processes will abstractly represented.
“… a software process model (sometimes called a Software Development Life Cycle or SDLC model) is a simplified representation of a software process. Each process model represents a process from a particular perspective and thus only provides partial information about that process” (SOMMERVILLE, 2016)
Regardless of what model will be chosen, at least three points must be taken into consideration:?
The most famous models out there are the sequential, iterative and incremental models. As per sequential models we understand: Waterfall and V-Model.?
Requirements?->?Design ->??Development?->?Testing ->?Deployment ->?Maintenance?
Business requirements ->??Acceptance Testing
领英推荐
System Requirements?->?System Testing
Architectural Design?->?Integration Testing
Detailed Design?->?Component Testing
The Waterfall and V-Models have drawbacks, tough. Nonetheless the testing phase is found in each and every phase of the V-model the duration of the delivery is still long. To try to overcome the disadvantages of the sequential model the Software Development Process evolved to the iterative and incremental?models.???
Both Incremental and Iterative models deliver a working part of the software in weeks or even days. It might be the major difference between them and the sequential model.
Yet, the use of a certain method will be defined by the characteristics of the reality in which the software is being developed and the adaptations that will need to be dealt with.?
*These are?personal?notes I’ve made during my preparation for the ISTQB Certified Tester Foundation Level (CTFL) exam. If you have anything to add or suggest, please feel free to comment??