A simple definition of SDLC phases: The steps you take when developing software applications and systems.
This article will describe the typical phases involved in software development using a Waterfall approach.
What is SDLC
SDLC stands for Software Development Life Cycle. It can also stand for Systems Development Life Cycle. And, according to the SDLC wiki, the SDLC is also referred to as the Application Development Life Cycle.
All in all, it’s the life cycle from start to end that is followed when developing software.
The SDLC phases (or steps) are dependent on the software development methodology that is being used. Additionally, SDLC phases are often tailored for the organization. So, you may see a different set of processes depending on where you go.
The SDLC phases are not the same as the phases of Project Management (Initiating, Planning, Executing, Monitoring and Controlling, Closing). However, there is certainly overlap and relation.
SDLC Phases in a Waterfall Methodology
What follows are typical SDLC phases in a Waterfall methodology and a description of each phase.
As part of the Planning phase, the need for the new or modified software system is identified. The basic scope is established and a team is created to deliver the solution.
The planning phase requires heavy involvement from the Project Manager. He or she will create the project management plans and documents (see Project Charter as an example) that will govern the application development process.
The Requirements phase is the activity of determining what the new or modified system will be required to do. Typically you will have Business Analysts, End-Users and other impacted project team members involved.
Together, they will meet and define what those requirements are. When completed, a deliverable document is normally produced. This should list each requirement, preferably following a matrix format.
The Design Phase is when the software architects and developers take the requirements and turn them into a documented design. This design is of the new system or changes to be made to the existing system.
The documented design often includes pictures, flowcharts, maps and data flow diagrams. This is done to visually indicate what will be occurring.
The Development Phase is when the people involved with programming the solution move forward to make the actual changes. They transform the requirements and design into an actual software system.
The activity of software testing occurs throughout each phase. However, the Testing Phase is more formally associated with people performing quality checks on the output of development.
This is usually done using documented test plans and scripts. There are many different types of testing including system, regression, end-user and several others.
The Implementation Phase is when the software development solution is moved into the production environment. By doing so it’s made available for business use.
A production check-out is often performed to ensure the migration occurred correctly.
The SDLC phases in a Waterfall Methodology include Planning, Requirements, Design, Testing and Implementation. These phases are taken sequentially in a predictive approach to software development.
Other more adaptive methodologies, including Agile, have similar phases taken in a more iterative sequence.
I hope you found this helpful!