1.2.3. Software Development Flashcards
(96 cards)
What is the Software Development Life Cycle (SDLC)?
The SDLC is the set of distinct phases you go through when developing a software solution, including feasibility, requirements, design, implementation, testing, deployment, evaluation, and maintenance.
What does the software development methodology describe?
It describes the arrangement and progression (both forwards and backwards) between the phases of the software development life cycle.
What is the first phase of the SDLC and what does it involve?
Feasibility: checking if the problem can be solved given technology, time, and costs.
What happens during the requirements phase?
Determining what the finished system needs to do.
What is involved in the analysis and design phase?
Working out how the system should perform its required functions.
What happens during implementation?
Writing the actual code for the software.
What is the purpose of the testing phase?
To thoroughly check that the code works as intended.
What does deployment mean in the SDLC?
Installing the finished software in the target environment.
Why is the evaluation phase important?
To check with the user if the system is complete and meets their original needs.
What is the maintenance phase?
Ongoing updates, improvements, patches, and ensuring the software continues to work after release.
Name the five software development methodologies you need to know.
Waterfall, Rapid Application Development (RAD), Spiral, Agile, and Extreme Programming (XP).
What characterizes the Waterfall model?
A linear cascading effect where each phase has a defined start and end, progressing sequentially.
How is the Waterfall model sometimes evolved?
By allowing movement backwards to previous stages to rework as needed.
What is Rapid Application Development (RAD)?
A methodology involving successive prototypes shown to users for feedback and iteration until the final version is achieved.
How does RAD handle user feedback?
Users provide feedback on each prototype which leads to further design, coding, and evaluation.
What is the Spiral model primarily focused on?
Managing and addressing risks unique to each project.
How does the Spiral model function?
It acts as a process model generator, choosing methodologies based on risk and iterating through four quadrants: objectives, risk resolution, development/testing, and planning next iteration.
Is the Spiral model a fixed sequence of steps?
No, it is flexible and depends on the unique risks of the project.
What are the four main quadrants of the Spiral model?
Determine objectives, identify and resolve risks, develop and test, plan the next iteration.
What happens at the end of the Spiral model process?
An operational prototype is produced, and the main development and testing phase begins.
What are Agile methodologies?
A group of iterative development methodologies focusing on evolving requirements and time-boxed development cycles.
What is a time box in Agile?
A fixed length of time (e.g., one week) during which an iteration must be completed, tested, and evaluated.
What phases are typically included within an Agile time box?
Implementation, testing, and evaluation.
When are requirements and design done in Agile?
Mostly at the start and reviewed periodically during the project.