Describe the Waterfall Lifecycle Methodology
It has a linear, structured design in which progress to the next step is not made until the previous step is completed.
What are the advantages of the Waterfall Lifecycle?
What are the disadvantages of the Waterfall Lifecycle?
The requirements for the project must be correct and clear from the start as changes are hard to add in at a later stage.
Describe the Spiral Model Methodology
It has 4 quadrants: determine objectives, identify and manage risk, develop and test, plan next iteration.
Client feedback then informs future development and prototypes which feed back into future revisions.
What are the disadvantages of the Spiral Model?
What are the advantages of the Spiral Model?
Describe what agile methodologies are
A problem is broken down into sections which are developed in parallel. These sections can each be at different stages of development.
The design and analysis phase often occur together. New prototypes are delivered regularly from an early stage and worked on iteratively.
Describe extreme programming
An agile model built on user stories (system requirements set by the end user). As code is written, it is also reviewed and improved upon. This is generally done through paired programming, with one person writing the initial code, and another critiquing it.
What are the advantages of agile methodologies?
What are the disadvantages of agile methodologies?
Describe Rapid Application Development (RAD)
In RAD user requirements are iteratively gathered and used to make new prototypes. Each time a prototype is made feedback is received upon it so that the idea can be improved upon in the next prototype, until it meets the user requirements.
It’s commonly used when user requirements are initially incomplete or unclear and when a project needs to be completed quickly.
What are the advantages of Rapid Application Development?
What are the disadvantages of Rapid Application Development?
State the Key Stages of the Software Development lifecycle
Describe the Analysis phase of the Software Development Lifecycle
The stakeholders wishes are used to set out and clearly define the user requirements for the product.
This may involve defining the problem, analysing strengths and weaknesses of current ways to solve this problem and considering the types of data involved in solving the problem.
Describe the Design phase of the Software Development Lifecycle
Different aspects of the new system are designed, such as:
- User interface
- Inputs and outputs
- Algorithms
- Data structures
- Hardware set up
- Security features
There will be a focus on the volume, methods and frequencies of these features, as well as their compatibility and accessibility.
Describe the Implementation phase of the Software Development Lifecycle
The design is used to split the project into individual, self-contained modules, which are allocated to teams for programming.
There is likely to be documentation for this stage, explaining how the program was developed. This is for future use by programmers and so everyone involved in the development cycle understands what is going on.
Describe the Testing phase of the Software Development Lifecycle
Iterative testing is usually carried out throughout the development process and final testing once the product is largely complete. This can be done in-house or by end-users, and varies based on what stage development is at.
Describe the deployment/evaluation phase/s
The software is installed on the users’ systems.
The effectiveness of the software is then evaluated against the user requirements, utilising criteria such as functionality, reliability, and maintainability.
Describe the Maintenance phase of the Software Development Lifecycle
Any errors or improvements that could be made to the software are flagged by the end users. Programmers regularly send out software updates to fix bugs or security issues and make any needed improvements.