SDD - The Development Methodologies Flashcards
Which are the two types of development methodologies you need to know for this year?
- Iterative Development Process
- Agile Methodologies
What is another name for the Iterative Development Methodology?
The Waterfall Development Methodology
Define the Iterative Development Methodology.
It follows a traditional (old method), linear approach, where all development stages are followed in order so that all the analysis is done, then all the design is done, then all the implementation is done, and so on until the whole process is completed.
This means that the whole software package is created at one go and the client will get the whole software at the end.
How many stages does the Iterative Development Methodology (Waterfall Method) consist of?
What are they?
It consists of seven stages, which are Analysis - Design - Implementation - Testing - Documentation - Evaluation - Maintenance.
Why is the Iterative Development Methodology method called iterative?
Because it is iterative, i.e. you can go back to any of the previous stages at any point of the life cycle, if:
- new information becomes available
- changes need to be made
- errors are discovered.
Define Agile Methodologies.
Agile methodologies focus on creating software quickly so that the client can test it and report back. It works on creating and delivering small increments of the software rather than all at once.
Are Agile Methodologies iterative?
Yes, the stages of development can be revisited at any time so that changes can be made at any stage/s.
How is the client interaction in a Waterfall Method?
Client is heavily involved in the analysis stage.
Client is also involved at the end of the development to evaluate if the software meets their needs and if it matches the agreed specification.
How is the client interaction in an Agile Methodology?
The client is heavily involved in all the stages and throughout the whole process, giving constant feedback on prototypes of the software during development. This allows for changes to be implemented quickly and easily.
What is the teamwork like in a Waterfall Method?
Teams of analysts, programmers, testers and documenters all work independently on each phase of the development, with very little communication.
What is the teamwork like in an Agile Methodology?
Teams of developers communicate and collaborate, rather than teams of experts operating in isolation. This involves fast face-to-face communication between individuals with different skills.
What is the documentation like in a Waterfall Method?
A detailed project specification that is created at the beginning of a project and involves design, program commentary and test plans.
What is the documentation like in an Agile Methodolgy?
Agile focuses on reducing documentation and spends time on small cycles of coding, testing and adapting to change instead. Any documentation produced, such as internal commentary in code, should focus purely on progressing the report.
How is progress measured in a Waterfall Method?
A strict plan is followed, with progress measured against timescales set at the beginning of the project.
How is progress measured in an Agile Methodology?
The project is broken down into a series of short development goals (sprints). Progress is measured by the time it takes to produce prototypes or working components of the software.
Is the Waterfall Method adaptive or predictive?
It is predictive.
Focuses on analysing and planning the future in detail and catering for known risks.
It relies on effective early phase analysis and if this goes very wrong, the project may have difficulty changing direction.
Is Agile Methodology adaptive or predictive?
It is adaptive.
It focuses on adapting quickly to changing realities.
An adaptive team can plan the next month easily but the further away the date is the vaguer the plan would be.
What is testing like in a Waterfall Methodology?
Testing is carried out at the end, once the implementation has been completed.