The 3rd Intl. Workshop on NL-based Software Engineering
Software Development Model - Waterfall, RAD & Agile
1. Software development
model Waterfall | RAD | Agile
Fakrudin Abu Bakar CVB130122001
Rinee Era Azwani Binti Sahar CVB130122076
Sharifah Nazieha Binti Syed Nazari CVB130122051
Madam Hajah Wan Asiah Binti Wan Muhamad Tahir
2. outlines
Waterfall
What Is Waterfall
Advantages & Disadvantages of Waterfall
RAD
What Is RAD
Advantages & Disadvantages of RAD
AgileW
hat Is Agile
Advantages & Disadvantages of Agile
Comparison Between RAD & Agile
3. waterfall
Waterfall model was the first model introduced
Introduced in 1970 by Winston Royce
Seen represented as a waterfall
Include phases that helps developers to be more organized in
developing a project
5. Advantages of waterfall
Help developers to be more manageable
Easy to understand and easy to be used
Detect errors early
Suitable to be used when team members located at different
place
6. disadvantages of waterfall
There are no turning back!
Need more experienced development staff
No advisable to be used to project where requirements keeps
changing
Need to start process all over again if there are any changes
Difficult to measure time
7. RAD
Rapid Application Development
Faster development, lower costs and high quality results
RAD was extended by James Martin in 1991 from the work
done by Scott Shultz’s iterative software development
methodology in 1984 (Plant and Murrel 2007)
Approach: To Speed up the development of prototypes
Normally consist of 4-6members; managers, developers
and users
8. RAD diagram
RAD centers on prototyping (Analysis - Test) and user
involvement stages
10. Advantages of RAD
Ease of implementation
Improved user satisfaction
Shorter time-to market (Coleman and Verbruggen 2008)
11. disadvantages of RAD
Speed of development may result in a poorly designed product
Need more experienced development staff
Strong project management and control required
(Coleman and Verbruggen 2008)
12. agile
Combination between incremental and iterative model
Advantage Disadvantage
Make any changes Time frame
Face-to-face conversation Lack on
14. Comparison between rad & agile
RAD Agile
Based on designing prototypes and then
reengineering them into production quality
code
Does not allow prototypes
Did not do this instead, developers focus by
first doing it badly and then improving on the
code
Break down the solution into features
RAD teams are managed by a project
manager
Team members are self-managing
None of these concepts were used in RAD
projects
Agile engineering practices. Problems in the
design or the code base are highlighted and
fixed as quickly as possible, team has the
confidence to change the code base without
breaking the product
Work as individuals, resulting in
unmaintainable and poorly designed code
Agile teams focus on team communication
and designing as a group
15. Comparison between rad & agile
RAD Agile
Demonstrate screen mockups, or prototypes
to product owner
Agile teams only demonstrate completed
work
RAD teams did not traditionally include non
technical team members
Agile teams are inclusive (including or
covering all the services) of testers and
analysts and user experience specialists
Comparison of RAD and Agile (Evans 2006)
16. Comparison between waterfall & agile
Waterfall Agile
Uses stages or phases - requirement
analysis, system design, implementation,
testing, deployment and maintenance
Uses iterations known as sprints – confirmed
requirements, develop and test system,
released and start on the next project.
Suitable for big projects. Suitable for small projects
Does not involve clients. Clients are highly involved in the
development of the project.
In waterfall, the project leader is called as
project manager and most of them are from
IT background.
Scrum Master is in control of the whole
project and they may not have an IT
background.
Interactions with users only happens when
gathering the requirements and for user
testing.
In Agile, constants meet ups is required to
interact with users.
There is no turning back to the previous
phase if there are any requirements or
problems occur.
If there are any new requirements, the
processes of the project are still running.
17. References
Plant, R. and Murrel, S. (2007) An Executive's Guide to Information Technology: Principles,
Business Models, and Terminology, 279. 1st edn. New York: Cambridge University Press
Ziman, I. (2011) ‘RAD Applied in the Context of Investment Banking Trading Systems
Development’ [online] 15 (4), 134. Available from <http://revistaie.ase.ro/content/60/10%20-
%20Ziman.pdf> [4 November 2014]
Coleman, G. and Verbruggen, R. (2008) ‘A quality software process for rapid application
development’ [online] 107-122. Available from
<http://www.itu.dk/people/katten/speciale/RAD_a_quality_software_process.pdf> [4
November 2014]
Programmers Stack Exchange (2013) Is the following diagrams correct for RAD and Agile
methodologies? <http://programmers.stackexchange.com/questions/193488/is-the-following-diagrams-
correct-for-rad-and-agile-methodologies>
Evans, S. (2006) 10 Reasons why Agile is not Rapid Application Development (RAD) (online)
available from <http://consultingblogs.emc.com/simonevans/archive/2006/04/18/10-Reasons-why-
Agile-is-not-Rapid-Application-Development-_2800_RAD_2900_.aspx> [11 November
2014]