System Development Life Cycle
(SDLC)
KavinduChethiyaYakupitiya
BSc(Hons)IT[KDU],PGDInCyberSecurity[SLIIT],MSc(Hons)inCyberSecurity-Reading[SLIIT]
What is a SDLC?
❑The systems development life cycle (SDLC) is the process of
determining how an information system (IS) can support business
needs, designing the system, building it, and delivering it to users.
•The key person in the SDLC is the systems analyst, who analyzes the business
situation, identifies the opportunities for improvements, and designs an IS to
implement the improvements.
•It is also called as Software Development Process.
Key Steps of SDLC.
Overview of SDLC.
The SDLCis composed of Sixfundamental phases:
•Planning
•Analysis
•Design
•Development/Implementation
•Testing & Integration
•Maintenance.
❑Each of the phases is composed of steps, which rely on techniques that produce
deliverables(specific documents that explain various elements of the system).
Step 01 –Planning.
▪Planning address main two questions?
✓Why?
✓How?
•Thisphaseisthefundamentalprocessofunderstandingwhyaninformation
systemshouldbebuilt,anddetermininghowtheprojectteamwillgoabout
buildingit.
•ThisisthephasewhereBusinessanalystgatheralltherequirementsinorderto
buildthesystem.(RequirementGathering)
•Thenewsystemrequirementsaredefined.Inparticular,thedeficienciesinthe
existingsystemmustbeaddressedwithspecificproposalsforimprovement.
Otherfactorsdefinedincludeneededfeatures,functionsandcapabilities.
Step 02 –Analysis.
•Analysis address four main questions?
✓Who?
✓What?
✓Where?
✓When?
•The analysis phase answers the questions of whowill use the system, whatthe
system will do, and whereand whenit will be used.
•During this phase the project team investigates any current system(s), identifies
improvement opportunities, and develops a concept for the new system.
Step 03 –Design.
•Design phase address one main question?
✓How
•The design phase decides howthe system will operate, in terms of the
hardware, software, and network infrastructure; the user interface,
forms, and reports that will be used; and the specific programs,
diagrams, databases, and files that will be needed.
Step 04 –Development/Implementation.
•During the implementation phase, the system is either developed or
purchased (in the case of packaged software) and installed.
•This phase is usually the longest and most expensive part of the process.
•The new system is developed. The new components and programs must
be obtained and installed. Users of the system must be trained in its use.
Step 05 –Testing & Integration.
•System Integration Testingis defined as a type ofsoftware
testingcarried out in anintegratedhardware andsoftwareenvironment
to verify the behavior of the completesystem.
•It also verifies asoftware system'scoexistence with others andteststhe
interface between modules of thesoftwareapplication.
•This is the stage where we check our final output/final system is working
error free and developed according to the given requirements.
Step 06 –Maintenance.
•Themaintenancephase of theSDLCoccurs after the product is in full
operation.Maintenanceof software can include software upgrades,
repairs, and fixes of the software if it breaks.
•During themaintenancephase, errors or defects may exist, which would
require repairs during additional testing of the software.
Advantages of SDLC.
•Gives a defined view of the entire system, resources, timeline, and goals
•Design reviews help to ensure the reliability and quality of the final
product
•Enhanced control over large or complex projects
•Involves comprehensive and explicit steps
•Provide goals and deliverables that meet the standards of each party
involved in the project, requires keeping detailed documentation
throughout the entire process
•Easy evaluation of costs and growth of the developed system
Methodologies of SDLC (Types).
•There are only 2 types in SDLC Methodologies.
1.Traditional Methodology.
-Waterfall Model
-Prototyping Model
-Spiral Model
-V Model
-Rapid Application Development
2.Agile Methodology.
-Kanban.
-Scrum.
-Extreme Programming (XP)
-Dynamic Systems Development Method (DSDM)
-Lean Development Method