WebWorks Intl' Quality Assurance Service
Quality Assurance during SDLC
Software Development Life Cycle (SDLC) is a structure imposed on the development of a software product. The international standard for describing the method of selecting, implementing and monitoring the life cycle for software is ISO 12207.
Software development activities
Within the broader context of Application Lifecycle Management (ALM), the SDLC is basically the part of process in which coding/programming is applied to the problem being solved by the existing or planned application.
The phases of SDLC can vary somewhat but generally include the following:
- conceptualization
- requirements and cost/benefits analysis
- detailed specification of the software requirements
- software design
- programming
- testing
- user and technical training
- maintenance
There are many methodologies or models that can be used to guide the software development lifecycle either as a core model to the SDLC or as a complementary method. These include:
- rapid application development (RAD) (including methods like SCRUM, Agile & Extreme Programming)
- the linear or waterfall model (the original SDLC method)
- joint application development (JAD)
- the iterative model
- the v-model
- the prototyping model
- the fountain model
- the spiral model
- build and fix
- synchronize-and-stabilize
While some organizations may attempt to standardize on a single methodology, it is common to find a range of methodologies in place or a few models combined into a hybrid methodology to make the best fit for a particular development project. An enterprise solution for managing the SDLC must support multiple methodologies as well as combinations of methodologies (often deployed across multiple geographic locales with outsourcing or multinational enterprises).