Presentation on theme: "Software Development Life Cycle. Why Do We need Software Development Models Helps to make sure that we cover all bases during planning and implementation."— Presentation transcript:
Why Do We need Software Development Models Helps to make sure that we cover all bases during planning and implementation of software development We can use it as a reference to see where we are or should be Can be used to create a project time line and cost
1. Cyclical Model Requirement analysis- Where you decide what needs to be done. Looking at client needs and everyone is on the same page. Design- Solution is planned based on the information gained form Requirement analysis. Pseudo code, drawings etc. Implementation- The design is turned into a solution. Code is written (normally longest part).
1. Cyclical Model Testing- Where the solution is tested not only for bugs but also against the Requirement Analysis to ensure a fully working solution is provided. Evolution- Constant evaluation and upgrades to meet any future requirements or issues.
2. Waterfall Feasibility- Is the solution possible. Do we have the required resources and knowledge. Analysis- Breaking down of the problem. What can we do to overcome Feasibility shortcomings. Getting an idea of what the solution will be Design- What the solution will look like. Pseudo code, drawings and flowcharts etc.
2. Waterfall Implement- Creation of the solution drawing from previous stages. Test- Does the solution solve the problem? Checking for bugs and usability. Maintain- Upgrades and making sure that the solution continues to work. Does the solution need to altered to meet another client need?
3.Spiral Start from the middle and work out. The idea is to constantly improve on an existing idea. Make a small prototype and keep improving on it.
Key Term- Prototyping What is it?- An early model of a solution to be used solely as a demonstration. When should it be used?- All of these models have the need for a prototype (normally early in the process). Why?- It is key in giving your client and you an indication you are on the right track. AdvantagesDisadvantages It offers and early indication of whether or not the solution developed will meet requirements Can spend too much time developing a prototype. Can be used as a stage to change/ alter requirements Can become too focused on prototype and alter it to make the final solution that it was not designed for. Helps Client understand what you are doing and the process behind it. Enables realistic idea and feedback. Client may see prototype as an unfinished solution and add more to requirements.
Advantages & Disadvantages ModelAdvantagesDisadvantages Cyclical-Clear defined stages -Simple to understand ‒Difficult to measure progress ‒No Software development till late on Waterfall-Simple, so suited for smaller projects -Easy to manage, as it is so rigid ‒It cannot be used if the specification could change. ‒No working software until late in the cycle Spiral-Suited for large projects as it is suited to developing several parts of a large solution -Software is developed early -Almost Never ending, so costs are high. -Hard to manage