The Waterfall Cycle
T- Technical
E- Economic, whether or not the product will fit into the price range of the company.
L- Law, these are implements set in place which need to be obliged with.
O-Operational, this is how the system works and whether it is reliable when it runs, you need it to run multiple times.
S-Schedule, The amount of time that you have to design and produce the product, for example landing on mars and having a 30 years time frame.
Analysis:
The result of this is a requirement specification and a user requirement doc.
Testing:
How and when you are going to test it and what the results are.
Installation:
This is detailing how it can be installed.
Can cover hardware and software
Evaluation:
Reflecting on the project, what went well and what didn't go as well.
Maintenance:
Is creating updates and fixing broken hardware.
These maintenance changes may take years.
Disadvantages of the Waterfall Model:
- Once in the testing stage it is very hard to go back this can be very expensive if you want to go back and make changes
- It isn't a very suitable model for large ongoing projects.
- It is a risky system
- The installation phase may not work therefore this is very costly.
- You cannot do two stages in the cycle at once, the processes move linear through stage by stage this isn't useful as there is no feedback loop so minor errors aren't easily spotted.
Spiral Model:
- In this model there is a constant cycle of planning and analysing, there are shorter iterations in each of the loops.
- There is no defined starting point therefore you can easily move between stages in the model, you can feedback between the stages.
- You do each stage more than once to return working software.
The Rapid Application Development:
- There is a prototype created (Which is an example model, in a smaller scale)
- with this prototype many tasks will be taken to test the demand for the product, to see whether clients like the idea or not, also you can test how well the prototype will work.
- The prototype will be developed and tested and then showed to the customer who will decide whether it is appropriate for their needs, this is good as the customer is allowed to see the product quickly.
- This type of programming in carried out with pairs working on each part of the task.
- You pre plan the tests and determined the results before you actually run the testing stage in the cycle.
- There is continue integration, meaning continuously updating the code and adding new parts.
- Sprint - This task takes no more than 2 weeks, the task in divided into a series of sections to be carried out.
- Scrum - There are small teams of 7 people no more, and within the team there are defined roles and each day they come together for a stand up meeting and they only talk about 3 things;
- what they did yesterday.
- what they are going to do today.
- Any issues that they have.
- The client can see the product in small releases after a few tasks are completed to make any necessary changes as soon as they are required.
- There is feedback between the stages.
Methodology name
|
Description of key features
|
Advantages
|
Disadvantages
|
Example System
|
Waterfall Cycle
|
Divides the process into sequential stages
|
It’s simple which makes it easy to manage
|
Once it's in the testing stage it's hard to go back
It isn't a good model for projects that are going to take a long time
It is a risky system
The instillation may not work which makes it costly
You can't do two things at once, it's done step by step and there's no feedback
| |
Spiral Model
|
Designed to manage risk and requires risks to be identified and evaluated at each stage
|
By focusing on the risks which are dealt with before they’re an issue
Large groups are suited for this project
|
Good risk analysis is expensive
| |
Agile Programming
|
Designed to deal with projects where there may be changed requirements
|
Can handle changes to the design later on the making of the product
|
Pricing isn’t fixed
project may be taken off track
| |
Extreme Programming
|
Agile method where the focus is on producing high quality code
|
Quality of code is very high
|
Requires a team of people who work well together
The client needs to be able to work with team
| |
Rapid application development
|
Involves building a prototype. This is evaluated and refined over multiple iterations until it becomes the final product
|
Suited to projects where the requirements aren’t clear from the start
|
RAD requires the client to give regular feedback; if they are unable to do this then its impractical
It doesn’t work well for large groups
Limited re-use
|
Mobile Applications
|
Games that will be playable on phones and applications will be RAD
Fitness trackers could be spiral or waterfall as they needed to be tested after each stage of programming as well as not being produced with any risks they need to be able to be tested and given feedback from clients.
No comments:
Post a Comment