4. Analysis from the scenario
The campus need
a proper Student
Management
System.
1
The system should
have the secure
database system.
2
Payment gateway
system.
3
Cloud based
recovery system.
4
Parallel messaging
system.
5
5. SDLC Model
The Software
Development Life Cycle
(SDLC) provides a
systematic process for
building and delivering
software applications
from inception to
completion.
7. Waterfall Model
Waterfall is the oldest
and most
straightforward of the
structured SDLC
methodologies.
There are strict phases
and each phase needs to
be completed first
before going to the next
phase.
Each phase relies on
information from the
previous stage and has
its own project plan.
10. Disadvantages Of Waterfall Model
Adjusting
scope during
the life cycle
can kill a
project
No working
software is
produced
until late
during the life
cycle.
High amounts
of risk and
uncertainty.
Poor model
for complex
and object-
oriented
projects.
Poor model
for long and
ongoing
projects.
Poor model
where
requirements
are at a
moderate to
high risk of
changing.
11. When To Use Waterfall Model
Such model is
highly used where
requirements are
clear and there
will be no changes
in the
development
time.
We can find such
scenarios in
defence projects,
where
requirements will
be clear since
before they write
requirements they
will analyses well.
We can also name
this kind of life
cycle model for
migration projects,
where
requirements will
be same only
platform or
languages may
vary / change.
Also can use for
projects where
sponsor
themselves will do
testing activities,
since till the
completion of the
coding we will not
deliver the project.
12. Spiral Model
• One of the most flexible SDLC
methodologies, the Spiral model
takes ideas from the Iterative
model and its repetition but also
combined with the structured and
systematic development of the
waterfall model with a heavy
emphasis on risk analysis.
• The project passes through four
phases (Design, Contract, Evaluate
and Identify)
13. Advantages of Spiral Model
• High amount of risk analysis
• Good for large and mission-critical projects.
• Software is produced early in the software life cycle.
• The most possibility for a successful output.
14. Disadvantages of Spiral Model
• Can be a costly model to use.
• Risk analysis requires highly specific expertise.
• Project’s success is highly dependent on the
risk analysis phase.
• Doesn’t work well for smaller projects.
15. When to Use
Spiral Model
• For a typical shrink-wrap application,
• The spiral model might mean that you have a rough-cut of
user elements (without the polished / pretty graphics) as an
operable application, add features in phases, and, at some
point, add the final graphics.
• The spiral model is used most often in large projects.
• The US military has adopted the spiral model for its Future
Combat Systems program.
16. Prototype Model
During Prototyping model, the software
development team, clarify requirements
and/or design elements, that generate
Mockups and prototypes of screens, reports,
and processes.
When a prototype is generated, the
developer produces the minimum amount
of code necessary to clarify the
requirements or design elements under
consideration.
18. Advantages of Prototype Model
The software designer and
implementer can obtain
feedback from the users
early in the project.
01
The client and the
contractor can compare if
the software made
matches the software
specification, according to
which the software
program is built.
02
It also allows the software
engineer some insight into
the accuracy of initial
project estimates and
whether the deadlines and
milestones proposed can
be successfully met.
03
19. Disadvantages of Prototype Model
• Often clients expect that a few minor changes to the
prototype will more than suffice their needs.
• The developers may lose focus on the real purpose of
the prototype and compromise the quality of the
product.
• prototype as the software specification is normally
reserved for software development within an
organisation.
20. When to Use Prototype Model
1
Prototyping is very
effective in the analysis
and design of on-line
systems.
2
Systems with little user
interaction, such as batch
processing or systems that
mostly do calculations, benefit
little from prototyping.
3
Prototyping is especially
good for designing good
human-computer
interfaces.
21. Rapid Application Development (RAD)
Rapid Application
Development
Model or RAD for
short, is a “try
before you buy”
approach to
software
development.
end users can
produce better
feedback when
examining a live
system.
lower level of
rejection when the
application is
placed into
production, but
this success most
often comes at the
expense.
The end user is
allowed to work
with the screens
online.
23. Advantages of RAD Model
• RAD reduces the development time and reusability of
components help to speed up development.
• All functions are modularized so it is easy to work with.
• For large projects RAD require highly skilled engineers
in the team.
• Customers are the witness in lots of time.
24. Disadvantages of RAD Model
• Both end customer and developer should be committed to
complete the system in a much abbreviated time frame.
• If commitment is lacking RAD will fail.
• RAD is based on Object Oriented approach and if it is
difficult to modularize the project the RAD may not work
well.
25. When to Use RAD Model
When there is a need to
create a system that can
be modularized in 2-3
months of time.
It should be used if there
is high availability of
designers for modelling
and the budget is high
enough to afford their cost
along with the cost of
automated code
generating tools.
This model should be
chosen only if resources
with high business
knowledge are available
and there is a need to
produce the system in a
short span of time.
26. Agile Model
Agile model believes that every project needs
to be handled differently and the existing
methods need to be tailored to best suit the
project requirements.
In Agile, the tasks are divided to time boxes
(small time frames) to deliver specific
features for a release.
Iterative approach is taken and working
software build is delivered after each
iteration.
29. Advantages of Agile Model
• Is a very realistic approach to software development.
• Promotes teamwork and cross training.
• Functionality can be developed rapidly and demonstrated.
• Resource requirements are minimum.
• Suitable for fixed or changing requirements
• Delivers early partial working solutions.
• Good model for environments that change steadily.
• Minimal rules, documentation easily employed.
• Enables concurrent development and delivery within an overall planned
context.
• Little or no planning required.
• Easy to manage.
• Gives flexibility to developers.
30. Disadvantages of Agile
Model
• Not suitable for handling complex dependencies.
• More risk of sustainability, maintainability and extensibility.
• An overall plan, an agile leader and agile PM practice is a
must without which it will not work.
• Strict delivery management dictates the scope, functionality
to be delivered, and adjustments to meet the deadlines.
• Depends heavily on customer interaction, so if customer is
not clear, team can be driven in the wrong direction.
• There is a very high individual dependency, since there is
minimum documentation generated.
• Transfer of technology to new team members may be quite
challenging due to lack of documentation.
31. Comparison
Waterfall Spiral Prototype RAD Agile
Understanding
Requirements
Beginning Beginning Not well
understood at
beginning
Intermediate Advanced
Duration Long Long Long Short Short
Cost Low Expensive High High Medium
Document and
training required
Vital Yes Weak Yes No
Guarantee of
success
Less High Good High High
Client satisfaction Low Low High High high
Risk involvement High Very low Low Medium Low
Developers level Beginners Intermediate Intermediate Advanced Advanced
Implementation Easy Complex Easy Easy easy
32. ABC Campus
Vocational and tertiary training providers in Singapore.
Provide higher education with strong UK collaboration.
Provide foundation and degree level courses.
• IT
• Quantity Surveying
• Civil Engineering
• Telecommunication Engineering
• Law
• Business Management
• Biomedical Science
Provide higher qualification with private sector education.
35. Why Agile?
• It is more frequent delivery of business value (week rather than
months).
• Sustainable pace of delivery.
• Can make the changes with the business needs.
• Constant delivery of help full software.
• Customers, developers and testers constantly with each other will
be in conversation.
• Late changes requirements also welcome and the systematic
alternation to changing situation.
37. The Reasons
Water Fall
• Not in use
Nowadays.
• Takes much time
• Risk analysis is
difficult
• Modify is difficult
Spiral
• costly model to
use.
• Risk analysis
requires highly
specific expertise.
• Doesn’t work well
for smaller
projects.
RAD
• can't be used for
smaller projects
• Not all application
is compatible with
RAD
• When technical
risk is high, it is
not suitable
• Requires highly
skilled designers
or developers
Proto Type
• Insufficient
analysis
• User confusion of
prototype and
finished system
• Developer
misunderstanding
of user objectives
• Expense of
implementing
prototyping
38. References
Google, 2005. Google Search Engine. [Online]
Available at: www.google.com
[Accessed 05 August 2017].
ISTQB, 2014. ISTQB. [Online]
Available at: http://istqbexamcertification.com/what-are-the-software-development-life-cycle-sdlc-phases/
[Accessed 16 July 2017].
Point, T., 2014. Tutorial Points. [Online]
Available at: https://www.tutorialspoint.com/sdlc/sdlc_overview.htm
[Accessed 19 July 2017].
TechTarget, 2014. Tech Targrt. [Online]
Available at: http://searchsoftwarequality.techtarget.com/definition/systems-development-life-cycle
[Accessed 9 August 2017].