SlideShare a Scribd company logo
Lecture tw0

Nana Kwabena Sarpong
(J-Prompt Professional Institute of Technology)
naksarpong@gmail.com




A software development life cycle is a set of
stages which indicates how we could develop
software. It usually shows either a descriptive
or prescriptive characterization of how
software is or should be developed.
Also called SDLC


SDLC is a process followed for a software
project, within a software organization. It
consists of a detailed plan describing how to
develop, maintain, replace and alter or
enhance specific software.


A typical Software Development life cycle
consists of the following stages:








Stage 1: Feasibility Study
Stage 2: Requirements Analysis
Stage 3: System Design
Stage 4: Development
Stage 5: Testing
Stage 6: Implementation
Stage 7: Maintenance




Ensure delivery of high quality systems
Provide strong management controls
Maximize productivity


There are various software development life
cycle models defined and designed which are
followed during software development process.
The are also called Software process Models







Water Fall Model *
Spiral Model
V Model
Iterative Model
Prototyping *
RAD(Rapid Application Development) *


The Waterfall Model was first Process Model
to be introduced. It is also referred to as a
linear-sequential life cycle model or classic
software life cycle or sequential model or
traditional waterfall process model .It is
very simple to understand and use. In a
waterfall model, each phase must be
completed before the next phase can beg in
and there is no overlapping in the phases
SDLC and Software Process Models


A feasibility study establishes whether or not
the project is to proceed. It may be that the
system is unnecessary, too expensive or too
risky. One approach to a feasibility study is to
perform cost-benefit analysis


All possible requirements of the system to be
developed are captured in this phase and
documented in a requirement specification
doc. the developer finds out what the user
(client or customer) wants the software to do
and records the requirements as clearly as
possible. The product of this stage is a
requirements specification.


The requirement specifications from first
phase are studied in this phase and system
design is prepared.


The detailed designs are converted into
instructions written in the programming
language. If system is large it is developed
into small programs or modules called units .
There may be a choice of programming
languages, from which one must be selected.
The product is the code


All units of the system coded are tested
separately for errors and failures (unit
testing). The overall system is also
tested(system testing).


Once all testing is done, the product is
deployed in the customer environment or
released into the market. At this phase the
system is put to use.
When the software is in use, sooner or later it
will almost certainly need fixing or enhancing.
Making these changes constitutes
maintenance. Software maintenance often
goes on for years after the software is first
constructed. The product of this activity is
the modified software

Organized approach with specific stages
Reflects common engineering practices
It is documentation driven, that is,
documentation is produced at every
stage
 Simple and easy to understand and use
 Clearly defined stages.
 Provides structure to inexperienced staff









Doesn’t cope well with changes required by
the client
Development teams might wait for each
other
The customer only sees a working version of
the product after it has been coded. This may
result in disaster if any undetected problems
are precipitated to this stage.
All requirements must be known upfront


Prototyping is the practice of building an
early version of a system which does not
necessarily reflect all the features of the final
system, but rather those which are of
interest.
In prototyping, the customer is presented at a
very early stage with a working version of the
system. (It may not be a complete system, but
it is at least part of the system and it works.) They
can check that it does what they want,
or specify modifications. The developer amends
the system and demonstrates it again
and again until it does what the customer wants.
Thus the main purpose of prototyping
is ensuring that the user’s needs are satisfied




Throwaway Prototyping
Evolutionary Prototyping




In throwaway prototyping the various
versions of the system are constructed and
then thrown away. (The final system is
implemented in some different way.)
A throwaway prototype implements only
those requirements that are poorly
understood. It is discarded after the desired
information is learned


Throwaway prototyping is sometimes called
rapid prototyping and as the name suggests,
a rapid prototype should cost very little and
take very little time to develop.
This type of prototyping is based on the idea
of developing an initial implementation,
exposing it to user comment and refining it
through repeated stages until an adequate
system has been developed



Evolutionary Prototyping has a very big
advantage over Throwaway Prototyping. The
advantage is in the fact that evolutionary
prototypes are functional systems. Although
they may not have all the features the users
have planned, they may be used on an
interim basis until the final system is
delivered.
▪ Prototypes may be easily changed or even discarded.
▪ Prototyping may improve communication between and among developers
and customers
▪ Users may be more satisfied with systems developed using prototyping.
▪ A prototype may provide the proof of concept necessary to attract funding.
▪ A prototype may serve as a marketing tool.
▪ A prototype may serve as the basis for operational specifications.
▪ Early visibility of the prototype may help management assess progress.
▪ Exploratory prototyping allows productive work to proceed despite initial
uncertainties.
▪ Prototypes may demonstrate progress at an early stage of development.
▪ Prototypes may provide early training for future users of the system.
▪ Prototyping may prevent unpleasant surprises by calling attention to
incomplete or inconsistent requirements, or to missing functionality.
▪ Prototyping may encourage an excess of change requests.
▪ Working prototypes may lead management and customers to believe
that the final product is almost ready for delivery.
▪ The excellent (or disappointing) performance characteristics of
prototypes may mislead the customer.
▪ Customers may not be prepared to provide the level or frequency of
feedback required for iterative prototyping.
▪ Customers may not be willing to participate in the iteration cycle
over the long haul
▪ Developers may have difficulty writing the back-end code needed to
support the slick front-end interface designed with the prototyping
tool.
▪ Due to time and market constraints, system specifications may be
frozen before the prototyping process has reached a definitive stage.
▪ During prototyping, the only "design specification" is the prototype
itself, which may allow uncontrolled change.
▪ Early prototypes may be of low fidelity, dismissed as toys.


RAD is a linear sequential software
development process model that emphasis
an extremely short development cycle using a
component based construction approach



Rapid Application Development as “an
approach to building computer systems
which combines Computer-Assisted Software
Engineering (CASE) tools and techniques






Business Modeling:
Data Modeling
Process Modeling
Application Generation
Testing and Turn over
 In this phase, define the flow of information



within the organization, so that it covers all the
functions. Questions like what information
drives the business process, what information
is generated, who generates it, where does
the information go, who process it and so on.
This helps in clearly understand the nature,
type ,source and process of information
 In this phase, convert the component of the

information flow into a set of data objects.
Each object is referred as an Entity that are
needed to support the business. The
attributes (character of each entity) are
identified and the relation between these
data objects (entities) is defined.


The data object defined in the data modeling
phase are transformed to achieve the
information flow necessary to implement a
business function. In addition adding
, deleting, modifying and retrieving the data
objects are included in process modeling.


In this phase, the generation of the application
and coding take place. Using fourth generation
programming languages or 4 GL tools is the
preferred choice for the software developers




Many of the programming components have
already been tested since RAD emphasis
reuse. This reduces overall testing time. But
new components must be tested and all
interfaces must be fully exercised
Resembles the final tasks in the SDLC
implementation phase, including data
conversion, testing, changeover to the new
system, and user training.


Due to emphasis on rapid development , it results
in the delivery of fully functional project in short
time period.



It encourages the development of program
component reusable.



Can obtain support from automated tools and
techniques.






It requires dedication and commitment on the part
of the developers as well as the client to meet
the deadline. If either party is indifferent in needs
of other, the project will run into serious problem.
Its application area is restricted to system that are
modular and reusable in nature.
It is not suitable for the applications that have a
high degree of technical risk.
It is not suitable for the large projects because
they require more manpower for creating
multiple RAD groups.
Ad

More Related Content

What's hot (20)

Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
J.T.A.JONES
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
Saravanan Manoharan
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
Manusha Dilan
 
What is waterfall
What is waterfallWhat is waterfall
What is waterfall
Abdullah Al Rumy
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
khushboo8093
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile model
zoomers
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLC
Adeel Rasheed
 
Agile Methodology ppt
Agile Methodology pptAgile Methodology ppt
Agile Methodology ppt
OECLIB Odisha Electronics Control Library
 
Chapter 5 Agile Software development
Chapter 5 Agile Software developmentChapter 5 Agile Software development
Chapter 5 Agile Software development
Didarul Amin
 
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)SDLC Model (Waterfall,Iterative Waterfall,Spiral)
SDLC Model (Waterfall,Iterative Waterfall,Spiral)
Shaikh Kamrul Islam (Konok kamrul)
 
Prototyping model
Prototyping modelPrototyping model
Prototyping model
Shirley Jenifer Joseph
 
Spiral model
Spiral modelSpiral model
Spiral model
Noraphyusin
 
Incremental model
Incremental modelIncremental model
Incremental model
Hpibmx
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
Abhinav Shukla
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
SADEED AMEEN
 
Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
dcsunu
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
SivaprasanthRentala1975
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
Hitesh Mohapatra
 
Rad model
Rad modelRad model
Rad model
Dyanara Pritz Menia
 
Agile Software Development Model
Agile Software Development ModelAgile Software Development Model
Agile Software Development Model
Ritika Balagan
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
J.T.A.JONES
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
Saravanan Manoharan
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile model
zoomers
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLC
Adeel Rasheed
 
Chapter 5 Agile Software development
Chapter 5 Agile Software developmentChapter 5 Agile Software development
Chapter 5 Agile Software development
Didarul Amin
 
Incremental model
Incremental modelIncremental model
Incremental model
Hpibmx
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
Abhinav Shukla
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
SADEED AMEEN
 
Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
dcsunu
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
Hitesh Mohapatra
 
Agile Software Development Model
Agile Software Development ModelAgile Software Development Model
Agile Software Development Model
Ritika Balagan
 

Viewers also liked (20)

Process model in Software engeneering
Process model in Software engeneering Process model in Software engeneering
Process model in Software engeneering
International Center for Chemical & Biological Sciences
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 
02 software process_models
02 software process_models02 software process_models
02 software process_models
University of Computer Science and Technology
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process Model
Achmad Solichin
 
IT Software Development Life Cycle
IT Software Development Life CycleIT Software Development Life Cycle
IT Software Development Life Cycle
Preshita Chaurasiya
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
HASEEB MUGHAL
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
university of education,Lahore
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Rody Middelkoop
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
Muhammad Ahmed
 
Software process model
Software process modelSoftware process model
Software process model
Muhammad Yousuf Abdul Qadir
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
Siva Ayyakutti
 
Introduction To Software Engineering
Introduction To Software EngineeringIntroduction To Software Engineering
Introduction To Software Engineering
Leyla Bonilla
 
A Software Problem (and a maybe-solution)
A Software Problem (and a maybe-solution)A Software Problem (and a maybe-solution)
A Software Problem (and a maybe-solution)
YangJerng Hwa
 
Lecture 19 design concepts
Lecture 19   design conceptsLecture 19   design concepts
Lecture 19 design concepts
IIUI
 
The Software Development Process
The Software Development ProcessThe Software Development Process
The Software Development Process
Cesar Augusto Nogueira
 
Jdbc
JdbcJdbc
Jdbc
Jussi Pohjolainen
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02
Asifuzzaman Hridoy
 
Lecture 05 Software Quality Management
Lecture 05 Software Quality ManagementLecture 05 Software Quality Management
Lecture 05 Software Quality Management
Achmad Solichin
 
Java Programming- Introduction to Java Applet Programs
Java Programming- Introduction to Java Applet ProgramsJava Programming- Introduction to Java Applet Programs
Java Programming- Introduction to Java Applet Programs
Trinity Dwarka
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testing
Makan Singh
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 
Lecture 02 Software Process Model
Lecture 02 Software Process ModelLecture 02 Software Process Model
Lecture 02 Software Process Model
Achmad Solichin
 
IT Software Development Life Cycle
IT Software Development Life CycleIT Software Development Life Cycle
IT Software Development Life Cycle
Preshita Chaurasiya
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
HASEEB MUGHAL
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
Muhammad Ahmed
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
Siva Ayyakutti
 
Introduction To Software Engineering
Introduction To Software EngineeringIntroduction To Software Engineering
Introduction To Software Engineering
Leyla Bonilla
 
A Software Problem (and a maybe-solution)
A Software Problem (and a maybe-solution)A Software Problem (and a maybe-solution)
A Software Problem (and a maybe-solution)
YangJerng Hwa
 
Lecture 19 design concepts
Lecture 19   design conceptsLecture 19   design concepts
Lecture 19 design concepts
IIUI
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02
Asifuzzaman Hridoy
 
Lecture 05 Software Quality Management
Lecture 05 Software Quality ManagementLecture 05 Software Quality Management
Lecture 05 Software Quality Management
Achmad Solichin
 
Java Programming- Introduction to Java Applet Programs
Java Programming- Introduction to Java Applet ProgramsJava Programming- Introduction to Java Applet Programs
Java Programming- Introduction to Java Applet Programs
Trinity Dwarka
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testing
Makan Singh
 
Ad

Similar to SDLC and Software Process Models (20)

System analsis and design
System analsis and designSystem analsis and design
System analsis and design
Rizwan Kabir
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
sraviinthiran
 
Prototyping
PrototypingPrototyping
Prototyping
Paul Anthony Solis
 
Slcm sharbani bhattacharya
Slcm sharbani bhattacharyaSlcm sharbani bhattacharya
Slcm sharbani bhattacharya
Sharbani Bhattacharya
 
SE-Lecture-2.pptx
SE-Lecture-2.pptxSE-Lecture-2.pptx
SE-Lecture-2.pptx
vishal choudhary
 
16346915.ppt
16346915.ppt16346915.ppt
16346915.ppt
PunitGupta71
 
SDLC Model
SDLC  ModelSDLC  Model
SDLC Model
University of Dhaka
 
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptxSELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
AnujYadav495147
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 
The process
The processThe process
The process
prakashvs7
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
eshtiyak
 
Software Development Life Cycle Part II
Software Development Life Cycle Part IISoftware Development Life Cycle Part II
Software Development Life Cycle Part II
Compare Infobase Limited
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.ppt
HumzaWaris1
 
Kelis king - software development life cycle (sdlc)
Kelis king  - software development life cycle (sdlc)Kelis king  - software development life cycle (sdlc)
Kelis king - software development life cycle (sdlc)
KelisKing
 
Kelis king - software development life cycle (sdlc)
Kelis king -  software development life cycle (sdlc)Kelis king -  software development life cycle (sdlc)
Kelis king - software development life cycle (sdlc)
KelisKing
 
ashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdfashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdf
NagavelliMadhavi
 
Software Maintenance
Software MaintenanceSoftware Maintenance
Software Maintenance
Bijay Bhandari
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
Nishant Srivastava
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Management
swatisinghal
 
Software development process basic
Software development process basicSoftware development process basic
Software development process basic
Anurag Tomar
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and design
Rizwan Kabir
 
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptxSELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
SELECTION OF AN APPROPRIATE PROJECT APPROACH.pptx
AnujYadav495147
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
eshtiyak
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.ppt
HumzaWaris1
 
Kelis king - software development life cycle (sdlc)
Kelis king  - software development life cycle (sdlc)Kelis king  - software development life cycle (sdlc)
Kelis king - software development life cycle (sdlc)
KelisKing
 
Kelis king - software development life cycle (sdlc)
Kelis king -  software development life cycle (sdlc)Kelis king -  software development life cycle (sdlc)
Kelis king - software development life cycle (sdlc)
KelisKing
 
ashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdfashimpptonsdlc-141119005634-conversion-gate02.pdf
ashimpptonsdlc-141119005634-conversion-gate02.pdf
NagavelliMadhavi
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
Nishant Srivastava
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Management
swatisinghal
 
Software development process basic
Software development process basicSoftware development process basic
Software development process basic
Anurag Tomar
 
Ad

Recently uploaded (20)

Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
Lorenzo Miniero
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
Shoehorning dependency injection into a FP language, what does it take?
Shoehorning dependency injection into a FP language, what does it take?Shoehorning dependency injection into a FP language, what does it take?
Shoehorning dependency injection into a FP language, what does it take?
Eric Torreborre
 
Viam product demo_ Deploying and scaling AI with hardware.pdf
Viam product demo_ Deploying and scaling AI with hardware.pdfViam product demo_ Deploying and scaling AI with hardware.pdf
Viam product demo_ Deploying and scaling AI with hardware.pdf
camilalamoratta
 
Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Everything You Need to Know About Agentforce? (Put AI Agents to Work)Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Cyntexa
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
Agentic Automation - Delhi UiPath Community Meetup
Agentic Automation - Delhi UiPath Community MeetupAgentic Automation - Delhi UiPath Community Meetup
Agentic Automation - Delhi UiPath Community Meetup
Manoj Batra (1600 + Connections)
 
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptxWebinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
MSP360
 
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Wonjun Hwang
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
AsyncAPI v3 : Streamlining Event-Driven API Design
AsyncAPI v3 : Streamlining Event-Driven API DesignAsyncAPI v3 : Streamlining Event-Driven API Design
AsyncAPI v3 : Streamlining Event-Driven API Design
leonid54
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
RTP Over QUIC: An Interesting Opportunity Or Wasted Time?
Lorenzo Miniero
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...
Raffi Khatchadourian
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
Shoehorning dependency injection into a FP language, what does it take?
Shoehorning dependency injection into a FP language, what does it take?Shoehorning dependency injection into a FP language, what does it take?
Shoehorning dependency injection into a FP language, what does it take?
Eric Torreborre
 
Viam product demo_ Deploying and scaling AI with hardware.pdf
Viam product demo_ Deploying and scaling AI with hardware.pdfViam product demo_ Deploying and scaling AI with hardware.pdf
Viam product demo_ Deploying and scaling AI with hardware.pdf
camilalamoratta
 
Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Everything You Need to Know About Agentforce? (Put AI Agents to Work)Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Everything You Need to Know About Agentforce? (Put AI Agents to Work)
Cyntexa
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptxWebinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
MSP360
 
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Wonjun Hwang
 
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
The No-Code Way to Build a Marketing Team with One AI Agent (Download the n8n...
SOFTTECHHUB
 
AsyncAPI v3 : Streamlining Event-Driven API Design
AsyncAPI v3 : Streamlining Event-Driven API DesignAsyncAPI v3 : Streamlining Event-Driven API Design
AsyncAPI v3 : Streamlining Event-Driven API Design
leonid54
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 

SDLC and Software Process Models

  • 1. Lecture tw0 Nana Kwabena Sarpong (J-Prompt Professional Institute of Technology) naksarpong@gmail.com
  • 2.   A software development life cycle is a set of stages which indicates how we could develop software. It usually shows either a descriptive or prescriptive characterization of how software is or should be developed. Also called SDLC
  • 3.  SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software.
  • 4.  A typical Software Development life cycle consists of the following stages:        Stage 1: Feasibility Study Stage 2: Requirements Analysis Stage 3: System Design Stage 4: Development Stage 5: Testing Stage 6: Implementation Stage 7: Maintenance
  • 5.    Ensure delivery of high quality systems Provide strong management controls Maximize productivity
  • 6.  There are various software development life cycle models defined and designed which are followed during software development process. The are also called Software process Models       Water Fall Model * Spiral Model V Model Iterative Model Prototyping * RAD(Rapid Application Development) *
  • 7.  The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model or classic software life cycle or sequential model or traditional waterfall process model .It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can beg in and there is no overlapping in the phases
  • 9.  A feasibility study establishes whether or not the project is to proceed. It may be that the system is unnecessary, too expensive or too risky. One approach to a feasibility study is to perform cost-benefit analysis
  • 10.  All possible requirements of the system to be developed are captured in this phase and documented in a requirement specification doc. the developer finds out what the user (client or customer) wants the software to do and records the requirements as clearly as possible. The product of this stage is a requirements specification.
  • 11.  The requirement specifications from first phase are studied in this phase and system design is prepared.
  • 12.  The detailed designs are converted into instructions written in the programming language. If system is large it is developed into small programs or modules called units . There may be a choice of programming languages, from which one must be selected. The product is the code
  • 13.  All units of the system coded are tested separately for errors and failures (unit testing). The overall system is also tested(system testing).
  • 14.  Once all testing is done, the product is deployed in the customer environment or released into the market. At this phase the system is put to use.
  • 15. When the software is in use, sooner or later it will almost certainly need fixing or enhancing. Making these changes constitutes maintenance. Software maintenance often goes on for years after the software is first constructed. The product of this activity is the modified software 
  • 16. Organized approach with specific stages Reflects common engineering practices It is documentation driven, that is, documentation is produced at every stage  Simple and easy to understand and use  Clearly defined stages.  Provides structure to inexperienced staff   
  • 17.     Doesn’t cope well with changes required by the client Development teams might wait for each other The customer only sees a working version of the product after it has been coded. This may result in disaster if any undetected problems are precipitated to this stage. All requirements must be known upfront
  • 18.  Prototyping is the practice of building an early version of a system which does not necessarily reflect all the features of the final system, but rather those which are of interest.
  • 19. In prototyping, the customer is presented at a very early stage with a working version of the system. (It may not be a complete system, but it is at least part of the system and it works.) They can check that it does what they want, or specify modifications. The developer amends the system and demonstrates it again and again until it does what the customer wants. Thus the main purpose of prototyping is ensuring that the user’s needs are satisfied 
  • 21.   In throwaway prototyping the various versions of the system are constructed and then thrown away. (The final system is implemented in some different way.) A throwaway prototype implements only those requirements that are poorly understood. It is discarded after the desired information is learned
  • 22.  Throwaway prototyping is sometimes called rapid prototyping and as the name suggests, a rapid prototype should cost very little and take very little time to develop.
  • 23. This type of prototyping is based on the idea of developing an initial implementation, exposing it to user comment and refining it through repeated stages until an adequate system has been developed 
  • 24.  Evolutionary Prototyping has a very big advantage over Throwaway Prototyping. The advantage is in the fact that evolutionary prototypes are functional systems. Although they may not have all the features the users have planned, they may be used on an interim basis until the final system is delivered.
  • 25. ▪ Prototypes may be easily changed or even discarded. ▪ Prototyping may improve communication between and among developers and customers ▪ Users may be more satisfied with systems developed using prototyping. ▪ A prototype may provide the proof of concept necessary to attract funding. ▪ A prototype may serve as a marketing tool. ▪ A prototype may serve as the basis for operational specifications. ▪ Early visibility of the prototype may help management assess progress. ▪ Exploratory prototyping allows productive work to proceed despite initial uncertainties. ▪ Prototypes may demonstrate progress at an early stage of development. ▪ Prototypes may provide early training for future users of the system. ▪ Prototyping may prevent unpleasant surprises by calling attention to incomplete or inconsistent requirements, or to missing functionality.
  • 26. ▪ Prototyping may encourage an excess of change requests. ▪ Working prototypes may lead management and customers to believe that the final product is almost ready for delivery. ▪ The excellent (or disappointing) performance characteristics of prototypes may mislead the customer. ▪ Customers may not be prepared to provide the level or frequency of feedback required for iterative prototyping. ▪ Customers may not be willing to participate in the iteration cycle over the long haul ▪ Developers may have difficulty writing the back-end code needed to support the slick front-end interface designed with the prototyping tool. ▪ Due to time and market constraints, system specifications may be frozen before the prototyping process has reached a definitive stage. ▪ During prototyping, the only "design specification" is the prototype itself, which may allow uncontrolled change. ▪ Early prototypes may be of low fidelity, dismissed as toys.
  • 27.  RAD is a linear sequential software development process model that emphasis an extremely short development cycle using a component based construction approach  Rapid Application Development as “an approach to building computer systems which combines Computer-Assisted Software Engineering (CASE) tools and techniques
  • 28.      Business Modeling: Data Modeling Process Modeling Application Generation Testing and Turn over
  • 29.  In this phase, define the flow of information  within the organization, so that it covers all the functions. Questions like what information drives the business process, what information is generated, who generates it, where does the information go, who process it and so on. This helps in clearly understand the nature, type ,source and process of information
  • 30.  In this phase, convert the component of the information flow into a set of data objects. Each object is referred as an Entity that are needed to support the business. The attributes (character of each entity) are identified and the relation between these data objects (entities) is defined.
  • 31.  The data object defined in the data modeling phase are transformed to achieve the information flow necessary to implement a business function. In addition adding , deleting, modifying and retrieving the data objects are included in process modeling.
  • 32.  In this phase, the generation of the application and coding take place. Using fourth generation programming languages or 4 GL tools is the preferred choice for the software developers
  • 33.   Many of the programming components have already been tested since RAD emphasis reuse. This reduces overall testing time. But new components must be tested and all interfaces must be fully exercised Resembles the final tasks in the SDLC implementation phase, including data conversion, testing, changeover to the new system, and user training.
  • 34.  Due to emphasis on rapid development , it results in the delivery of fully functional project in short time period.  It encourages the development of program component reusable.  Can obtain support from automated tools and techniques.
  • 35.     It requires dedication and commitment on the part of the developers as well as the client to meet the deadline. If either party is indifferent in needs of other, the project will run into serious problem. Its application area is restricted to system that are modular and reusable in nature. It is not suitable for the applications that have a high degree of technical risk. It is not suitable for the large projects because they require more manpower for creating multiple RAD groups.
  翻译: