Software Development Life Cycle Flashcards
What does SDLC stand for?
Software Development Life Cycle
What are the phases of SDLC?
- Planning
- Define Requirements
- Design and Prototyping
- Development
- Testing
- Deployment
- Operations and Maintenance
Describe the “Planning” Stage of SDLC
The planning phase is where the project is conceptualized.
Information is gathered from any possible stakeholders in order to create a very specific idea of what the project will include and how it can be accomplished.
The logistics of the project are also calculated in this phase including the cost, timetable, and project structure.
Describe the “Define and Analyse Requirements” phase of the SDLC
This is part of the planning phase where the development team takes the conceptual ideas of the project and more clearly defines what will be needed to achieve them.
Each feature of the project is taken and broken down in to pieces in order to clearly define its functionality and how it will be accomplished
Describe the “Design and Prototyping” phase of the SDLC
This phase is where the project leadership decides on the overall details of the project including:
- The overall architecture of the app
- Which technologies and languages will be used
- database design
- Security
- User Interface
- Platform support
These choices are then stored in the Software Design Document (SDD) which will be used as a set of rules for the software developers.
Describe the “Development” Phase of the SDLC
This phase is when the project is actually being developed by the software development team.
This process includes:
- Writing code
- Creating Documentation
- Testing and bug fixes
With test driven development, testing begins at this phase. Each individual component should be tested by the design team while in development before it can be seen as complete.
Describe the “Testing” phase of the SDLC
This phase is the final testing phase for the project after the development is complete.
Due to the scale and modular design process. Software will often have issues once the individual components of a project are combined in to the finished product.
In order to make sure the software functions correctly, every part of the project must be tested in order to ensure seamless functionality across the entire project
Describe the “Deployment” phase of the SDLC
The deployment phase is when the finished project is made available to users.
Depending on the product, this could be as simple as deploying a website or as complicated as integrating an entire new application into a companies existing infrastructure.
Describe the “Operations and Maintenance” phase of the SDLC
This is the final phase of the SDLC where the development team is responsible for collecting and resolving any remaining issues found while the product is being used by the customer.
With the Agile and Iterative models, This phase is also used to plan the features and changes that will be implemented in the next SDLC for the product
List all of the SDLC models
- Waterfall
- V-model
- Iterative and Incremental
- Prototyping
- Spiral
- Agile
- RAD
What are the two main SDLC methodologies and what are their differences?
Waterfall and Agile
The waterfall methodology is a linear plan where each phase of the SDLC directly precedes the next phase.
The agile methodology is a cyclical plan where a project is designed incrementally in order to allow adaptability and change during the development process.
Describe the waterfall model
Also known as the linear-sequential life cycle model, In the waterfall model, each phase of the SDLC must be completed before the next phase can begin.
Describe the Iterative and incremental model
The iterative and incremental model is where the full specifications of a project are not known at the beginning of development.
Instead, a basic set of requirements are used to create a small piece of a larger project. Afterwards, the project is the re-evaluated and the next set of features are determined and developed in the next SDLC iteration.
Describe the Spiral model
The spiral model is a combination of the waterfall model and the iterative model where a project goes through multiple iterations of a linear model where a finished product is released at the end of each “spiral”
at the end of each spiral, the SDLC starts from the beginning and goes through another linear model where new requirements are identified and added to the overall product.
Describe the V-model
The V-model is an extension of the basic waterfall method with the difference being that every phase of the SDLC has it’s own testing phase.