SDLC Framework
SDLC Framework
Risks Rewards Goals Lifecycle comparisons Framework and Methodology comparisons How to implement Case study examples Q&A
2
Introduction
RequirementsUnrealistic or unarticulated project goalsBadly defined system requirements
RiskUnidentified and unmanaged risksUse of immature technologyProject team not able to handle the project's complexitySloppy development practices
CommunicationPoor communication among customers, developers, and
usersPoor reporting of the project's statusStakeholder politics
Planning Inaccurate estimates of needed resourcesCommercial pressuresPoor project management
3
Why do Large Projects Fail?
What and Why and WhenAnd How and Where and Who.
4
What is SDLC – Simplified Version
Who wants it? Who will benefit? Who is going to do it? Who is going to pay for it?
5
What is SDLC – Who
What do you want? What will it do? What will it impact? What benefit do you expect?
6
What is SDLC – What
When do you want it? When is the contractual deadline?
When is regulatory implementation?
When is the market window of opportunity?
7
What is SDLC – When
Where will it be built? In house Vendor Contractor On-shore or off-shore
Where will it run? In house Vendor Local implementation National or global implementation
8
What is SDLC – Where
Why do you want it? Why do you think it will benefit us?
Why do our clients, customers, beneficiaries want or need it?
9
What is SDLC – Why
How will you do it? Be very, very detailed.
10
What is SDLC – How
WaterfallFountainSpiral(螺旋 )RAD/JADRapid Prototyping
11
Life Cycle Comparisons
WaterfallAdvantages Linear and sequential Simplifies task scheduling – no overlapping steps Ensures points of review
Disadvantages Slow Does not adapt to changing
requirements Minimal user input Higher error rates
Planning
Analysis
LogicalDesign
PhysicalDesign
Implementation
Maintenance
12
Fountain
Based on the waterfall model
But observes that the sequence always contains cycles
Reflects the fact that some phases cannot begin before others and that some phases are poorly delineated
A mental image to help visualize what actually happens in many real software development projects
13
Spiral
14
Spiral Categorizes the many (and repeated) phases
of software development into a number of cyclically repeated sectors
System complexity and size grows with increasing radius, as do investment and risk
Disadvantages Difficult to convince some customers process
is controllable Needs considerable risk assessment If risk not discovered, problems will occur Risk analysis effort wasted for simple, easy
projects.
15
Rapid Application Development (RAD)
Joint Application Development (JAD)
Advantages Heavy user involvement More accurate requirements Higher user satisfaction Rapid Application Development (RAD) is a
methodology for compressing the analysis, design, build and test phases into a series of short, iterative development cycles. This has a number of distinct advantages over the traditional sequential development model.
One of the principles of RAD is to start developing as early as possible in the project,
Disadvantages Hard to decide when its done 16
Rapid Prototypingrapid prototyping (RP) refers to a
class of technologies that can automatically construct physical models from Computer-Aided Design (CAD) data.
The steps are: Create a CAD model of the
design Convert the CAD model to STL
format Slice the STL file into thin cross-
sectional layers Construct the model one layer
atop another Clean and finish the model
17
Rapid PrototypingAdvantages Iterative process Involves user in analysis and
design Captures requirements in
concrete(具體的 ) form Higher user satisfaction
Disadvantages Harder to estimate manpower
time Premature(過早的 ) launch of
prototype18