Download presentation
Presentation is loading. Please wait.
1
Methodologies By Akinola Soyinka
2
Waterfall Life Cycle This is a very simple and understandable methodology. In order for the next step to be carried out the current step has to be completed. Phases do not overlap and at the end of each phase a thorough review is carried out to determine whether the project is feasible. This means that the development is completed and reviewed first before the testing phase begins
3
Waterfall Life Cycle: Advantages
Easily understandable and usable structure-This makes it easy for programmers to collaborate because it is easy to see which tasks need to be done, and when each stage needs to be completed It is not difficult to manage the project, each stage is clear and defined- this means that it is easy to schedule different parts of the project, especially when the project is small and the requirements are clearly defined
4
Water Life Cycle: Disadvantages
It is harder to implement changes, especially when the project is in the advanced stages such as Testing. There is no functioning prototype until later stages of the project, this is not good for larger, more complicated projects. This methodology is not efficient if there is a high probability of the requirements changing (this means more repetitions of stages, which would be hugely inefficient, especially in longer projects)
5
Waterfall Life Cycle: Conclusion
Waterfall Life Cycles, although inefficient can be quite handy for shorter, less complicated projects Also it is useful when there is a low probability of requirement changes Thirdly when there is expert knowledge on the technology needed to complete the project When there is a clear vision of what the final product is going to be
6
Agile software development
Agile software follow a set of principles. These principles encourage an evolution of requirements as well as solutions through the collective effort of many teams in some instances. These styles of computing projects respond very flexibly to change, allowing for solutions to problems to be developed very quickly. User feedback is absolutely essential, or the collaborators would have little or no idea of how to proceed
7
Agile Software Development: Advantages
Working software is produced very early in the project-this allows programmers and user to have a clearer image of what the product could be. This means that they can tweak the product continually until the final product is produced. Also mistakes can be quickly undone. It deals with change easily in relation to waterfall life cycle. Unexpected changes do not pose as much as problem, because certain phases do not need to be repeated.
8
Agile Software Development: Disadvantages
Roles are not defined- this means that even though someone needs to have certain skills to participate in the project, they cannot be 100% sure of what to do, especially when the project is in the testing phase. This is do to the continuity. It requires communication and motivation. As many people are working at the same time, they must communicate as well to let everyone else know what they are doing, otherwise the project will fail. User input is needed, which means quite a few people need to be involved even though they may not develop the program. This costs money and time
9
Agile Software Development: Conclusion
Agile Software Development should be used in larger more complicated projects Agile Software Development should be used in projects where there is a high probability that the requirements will change. (ie developing an OS) Agile Software Development should be used to produce a product where there will be a lot of support and maintenance (developers making patches to fix in game problems for example)
10
Examples of Agile Software Development
Section 2
11
Extreme Programming(XP)
Extreme Programming focuses on things such as teamwork and respect. Everybody is treated equally, and each input or suggestion is carefully considered. User feedback is emphasised, the aims of the project are just to pass user requirements. It is a very popular Agile process.
12
Spiral Model The Spiral model places emphasis on analysing risks. In the Spiral model there are 4 stages called Planning, Risk Analysis, Engineering and Execution, Evaluation . In Planning, requirements are analysed and devised In Risk Analysis, the risks are considered and alternative ways of solving the problem are created. At the end a prototype will be produced. In Engineering and Execution the software is developed and is tested. In Evaluation the customers will return their feedback about the project. Thus the cycle starts again as the new requirements are analysed
13
Advantages and Disadvantages
Takes accounts of risks Improved speed of development Disadvantages: Costs a lot of money
14
RAD Rapid Application Design
RAD is another type of Agile software development. RAD focuses on developing a prototype and then asking the customer if the prototype is good enough (meets their expectations) . When the prototype meets all the customer expectations, the prototype is then released as the final product.
15
Advanatges
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.