This lecture note discusses software development process models. It begins by defining the software development process and outlining its key activities: specification, development, validation, and evolution. It then examines six common software development life cycle models - waterfall, evolutionary, V-shaped, spiral, agile, and rational unified process. For each model, it provides an overview and diagram of the process, discusses strengths and weaknesses, and compares it with other models. The note aims to educate students on established frameworks for developing software.
SDLC - Software Development Life Cycle
and Waterfall Model :
The SDLC aims to produce a high quality software that meets or exceeds customer expectations, reaches completion within times and cost estimates.
SDLC - Software Development Life Cycle
and Waterfall Model :
The SDLC aims to produce a high quality software that meets or exceeds customer expectations, reaches completion within times and cost estimates.
The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process. SDLC is a structure followed by a development team within the software organization. It consists of a detailed plan describing how to develop, maintain and replace specific software.
Software Development life cycle:
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. The life cycle defines a methodology for improving the quality of software and the overall development process.
Phases:
Planning
Analysis
Design
Implementation
Testing
The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system. @ paghdalyogesh@gmail.com
List of Software Development Model and MethodsRiant Soft
RiantSoft a Software Development Company derived the most useful and different types of Software Development Model for the users who want to know the development process. RiantSoft is specialized in custom software development with latest cutting edge technologies.
The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process. SDLC is a structure followed by a development team within the software organization. It consists of a detailed plan describing how to develop, maintain and replace specific software.
Software Development life cycle:
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. The life cycle defines a methodology for improving the quality of software and the overall development process.
Phases:
Planning
Analysis
Design
Implementation
Testing
The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system. @ paghdalyogesh@gmail.com
List of Software Development Model and MethodsRiant Soft
RiantSoft a Software Development Company derived the most useful and different types of Software Development Model for the users who want to know the development process. RiantSoft is specialized in custom software development with latest cutting edge technologies.
SDLC [sometimes termed as Systems Development Life-cycle] is an acronym for Software Development Life Cycle which follows a systematic process to unravel a software while following problem handling methodologies and analysis.
Introduction to Android and Android StudioSuyash Srijan
This is a presentation that I gave at Google Developer Group Oxford to introduce people to Android development and Android Studio IDE, which is used to build Android apps. This presentation gives a brief overview of the platform and fundamentals of the app and what developer tools are available.
PS: Some slides do not have any text accompanying it. That is either because it wasn't relevant or because the text would've been too long to put on the corresponding slide.
This ppt is done by my dear classmate Sap, almost each ppt I have uploaded is copied from net and other sources.I hope this will b a little useful for students..
SDLC-Software Development Life Cycle fundamentals /basics
The Presentation provides fundamentals of SDLC . The intent is to provide the high level overview to the readers .Details on teh SDLC process , Frameworks are provided.
Feedback for improving the contents are always welcome !
Introduction to Software Development Life Cycle: Phases & Modelsmanoharparakh
SDLC gives a complete idea about developing, designing, and maintaining a software project ensuring all the functionalities along with user requirements, objectives, and end goals are addressed. Have a look at the PPT to know more.
Iterative model.
Spiral model
RAD(Rapid application development)
model.
Iterative model.
Spiral model
RAD(Rapid application development)
model.
A Water Fall Model is easy to flow.
It can be implemented for any size of project.
Every stage has to be done separately at the right time so you cannot jump stages.
Documentation is produced at every stage of a waterfall model allowing people to understand what has been done.
Testing is done at every stage.
This model was not the first model to discuss iterative development.
As originally envisioned, the iterations were typically 6 months to 2 years long.
Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far.
Analysis and engineering efforts are applied at each phase of the project, with an eye toward the end goal of the project.
This model was not the first model to discuss iterative development.
As originally envisioned, the iterations were typically 6 months to 2 years long.
Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far.
Analysis and engineering efforts are applied at each phase of the project, with an eye toward the end goal of the project.
This model was not the first model to discuss iterative development.
As originally envisioned, the iterations were typically 6 months to 2 years long.
Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far.
Analysis and engineering efforts are applied at each phase of the project, with an eye toward the end goal of the project.
This approach carries less risk than a traditional Waterfall approach but is still far more risky and less efficient than a more Agile approaches.
In Iterative model, iterative process starts with a simple implementation of a small set of the software requirements and iteratively enhances the evolving versions until the complete system is implemented and ready to be deployed.
Iterative model.
Spiral model
RAD(Rapid application development)
model.
The first formal description of the waterfall model is often cited as a 1970 article by Winston W. Royce
Royce did not use the term "waterfall" in this article.
Royce presented this model as an example of a flawed, non-working model.
Software Development Life Cycle(SDLC) By Team Avengers (Dept. of Pharmacy)Suman Mia
SDLC, or Software Development Life Cycle, is a structured framework that outlines the process of developing software. It encompasses a series of phases that guide the development team through planning, designing, building, testing, deploying, and maintaining software systems. Each phase in the SDLC has its own set of activities, deliverables, and objectives, ensuring that the software is developed efficiently, meets requirements, and is of high quality.
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Safalta Digital marketing institute in Noida, provide complete applications that encompass a huge range of virtual advertising and marketing additives, which includes search engine optimization, virtual communication advertising, pay-per-click on marketing, content material advertising, internet analytics, and greater. These university courses are designed for students who possess a comprehensive understanding of virtual marketing strategies and attributes.Safalta Digital Marketing Institute in Noida is a first choice for young individuals or students who are looking to start their careers in the field of digital advertising. The institute gives specialized courses designed and certification.
for beginners, providing thorough training in areas such as SEO, digital communication marketing, and PPC training in Noida. After finishing the program, students receive the certifications recognised by top different universitie, setting a strong foundation for a successful career in digital marketing.
How libraries can support authors with open access requirements for UKRI fund...
CSC426 - SDLC Models
1. CSC 426 (Software Engineering) Lecture Note
Part I Cont’d:
SOFTWARE DEVELOPMENT PROCESS MODELS
AJAYI, Olusola Olajide
Department of Computer Science,
Faculty of Science,
Adekunle Ajasin University,
Akungba-Akoko,
Ondo State, Nigeria.
olusola.ajayi@aaua.edu.ng / ajsoftengr@gmail.com
08113699553 / 07056433798 / 08137044500
2. Software Development Process (SDP)_
•Munassar et al (2010) defined it as an
abstract representation of a process that
presents a description of a process from
some particular perspectives.
•In this class/study, SDP refers to activities
involved in producing/developing software.
3. SDP Cont’d – The Activities/Processes
Software Specification
Software Development
Software Validation
Software Evolution
4. SDP Cont’d – The Activities/Processes
Software
Specification
Software
Development
Software
Validation
Software
Evolution
Figure 1: Software Development Activities/Processes
5. SDP Activities/Processes – The Breakdown
•Software Specification: This activity involves
stating the functionalities (operations) as well as
the constraints/limitations of the software.
Major Activity Requirements.
•Software Development: This activity involves
developing (producing) a software according to the
specification outlined in the first stage of the
development process.
Major Activity Designs.
6. SDP Activities/Processes – The Breakdown Cont’d
•Software Validation: This activity checks the
software developed to ensure it conforms to the
specification earlier concluded upon.
Major Activity Testing.
•Software Evolution: This activity ensures that
the software produced is modifiable/adjustable.
Major Activity Maintenance.
7. SDP Activities/Processes – The Breakdown Cont’d
•Paraphrasing Pressman, R. S. (2010), we
can define SD Process as a roadmap to
defining, building, testing, & deploying
timely and high quality software applications.
Both User &
Developers are
involved
Only
Development
Team are
involved
Only
Development
Team are
involved
Both User &
Developers are
involved
Requirements Designs Testing Maintenance
8. SDLC Models
•This refers to the existing and
established frameworks for developing
software.
•For the purpose of this study, we shall
be examining six (6) common ones.
9. SDLC Models Cont’d
i. Waterfall Model
ii. Evolutionary Model
iii. V-Shape Model
iv. Spiral Model
v. Agile Development Model
vi. Rational Unified Process (RUP)
Model
10. SDLC Models Cont’d
i. Waterfall Model
Undoubtedly the oldest and famous of all the
available models. It acts as baseline for other
SDLC models. In other words, other models
are derivatives of Waterfall Model.
It major strength lies in the fact that it dwells
much on requirement gathering and
ascertaining of same (by way of feedbacks)
to prevent flaws in the development of the
project. Most suitable where requirement is
well understood.
11. SDLC Models Cont’d
i. Waterfall Model - VARIANTS
Requirement Analysis and
Definition/Specification
Implementation and Unit
Testing
Integration and System
Testing
Operation and
Maintenance
System and Software
Design
Figure 2: Classical Waterfall Model
12. SDLC Models Cont’d
i. Waterfall Model – VARIANTS cont’d
Figure 3: Pure Waterfall Model
13. SDLC Models Cont’d
i. Waterfall Model – STRENGTHS/ADVANTAGES
With her ‘define-b4-design’ & ‘design-b4-coding’
approach, it reduces flaws/errors in development.
Applications developed with it, are easily understood,
implementable and maintained.
Documentation is embraced and enhanced.
With its deep flow, quality assurance is ensured.
14. SDLC Models Cont’d
i. Waterfall Model – WEAKNESSES/DISADVANTAGES
Costly
Time-consuming, leading to late project delivery
15. Maintenance
SDLC Models Cont’d
i. Waterfall Model – SUMMARY
Summarily, Waterfall Model complies with the process flow
shown below:
Require
ments
Desig
ns
Testing
Figure 4: SDLC Process showing Waterfall Compliance
Compliance
16. SDLC Models Cont’d
ii. Evolutionary Model
This model involves the culmination of major
activities involved in developing software.
The model emphasize ‘fast/quick’ design
approach to solution development.
Unlike Waterfall, the strength of this model is
time-saving, which is achieved by rapid way
of developing software with adequate
feedbacks.
17. SDLC Models Cont’d
ii. Evolutionary Model - VARIANTS
The available variants include:
Throw-Away Prototyping Model
Rapid Application Development Model /
Iterative Prototyping Model
Incremental Prototyping Model
18. SDLC Models Cont’d
a. Throwaway Prototyping Model –
Emphasizes fast design + minimal
requirement analysis.
In this prototyping type, a small portion of an ‘on-
going’ system is given to the client/user for
evaluation purpose.
The feedbacks allow for some modifications to
be carried out on the main system, after which
the prototype is discarded/done with/thrown
away. This is why it is also refer to as a working
system – it is only developed for
evaluation/testing purposes, it is never part of
the final delivered system/software.
19. SDLC Models Cont’d
Figure 5: Throwaway Prototyping Model – Variant I
Requirement
Analysis
Design/Build
Demo
Software
Testing
(Customer
Test Run
Demo App)
21. SDLC Models Cont’d
b. Rapid Application Development (RAD)
This iterative model emphasizes component-
based construction in rapid software
development approach. It embraces,
encourages and enables participation of
development team in actualizing
speedy/timely development.
Figure 7 shows the different phases of RAD /
Iterative model as catered by different
development teams.
24. SDLC Models Cont’d
Figure 9: RAD Model – Variant III
Specificatio
n
Validation
Developmen
t
Initial
Version
Intermediate
Version
Final Version
Specification
Development
Validation
1st Version
Intermediate
Version
Final Version
or Product
25. SDLC Models Cont’d
Figure 10: RAD Model – Variant IV
Requirement
Analysis
Develop
Prototype
DeploymentClient/User
Evaluation
Feedback for
Modification
Final
Implementation
& Integration
Deployment &
Operation
Maintenance
26. SDLC Models Cont’d
c. Incremental Model – Like the Prototyping, it
emphasizes fast design + minimal
requirement analysis. However unlike
prototyping where the demo app is delivered,
the core product/app is delivered, used and
reviewed by the user, and feedback for
modifications.
Figure 11 shows the Incremental Model.
28. SDLC Models Cont’d
Differences between Waterfall & Evolutionary
Waterfall Evolutionary
Time consuming Time-saving
Costly Cheap
Inflexible Flexible
Process is easily
understood, implementable,
and maintainable
Clumsy process due to
excessive iterations and
prototypes
Sufficient requirement
analysis carried out
Insufficient requirement
analysis performed
Table 1: Differences between Waterfall and Evolutionary Models
29. SDLC Models Cont’d
iii. V-Shaped Model
This is an extension of the Waterfall Model,
whose development is bent upward after the
implementation/coding phase to form a V-Shape.
Figure 12 shows this.
31. SDLC Models Cont’d
i. V-Shaped Model – STRENGTHS/ADVANTAGES
Like the Waterfall, it is easy to understood,
implement and maintain.
Most suitable for use where requirements are clearly
spelt out.
Each development phase and the technologies/tools
involved, are known.
32. SDLC Models Cont’d
i. V-Shaped Model – WEAKNESSES/DISADVANTAGES
Again, like the Waterfall Model, it is inflexible
Costly
Time-consuming (even more than the Waterfall Model). Why?
33. SDLC Models Cont’d
Differences between Waterfall & V-Shaped
Waterfall V-Shaped
No planning at early stage –
jump start to requirement.
Planning is done as early
test approach.
Table 2: Differences between Waterfall and V-Shaped Models
34. SDLC Models Cont’d
iv. Spiral Model
This combines the features/characteristics and
strengths of prototyping and waterfall models in
tandem with adequate risk analysis. It is most
suitable for large, complex and security-
driven/risk-involving software projects.
It was described and presented by Barry Boehm
in 1986 in his paper, titled: ‘A Spiral Model of
Software Development and Enhancement’. It was
widely accepted not because it discusses
iterative processes of developing software like
other models but because it presented the
necessity for risk pattern and cost to be
examined from the requirement to the
development/deployment stage.
35. SDLC Models Cont’d
iv. Spiral Model
Figure 13: Spiral Model – A Typical Model, Variant I
36. SDLC Models Cont’d
iv. Spiral Model
Figure 14: Spiral Model – A Typical Model, Variant II
37. SDLC Models Cont’d
iv. Spiral Model
Figure 15: Spiral Model – A Full/Complete Model, Variant I
38. SDLC Models Cont’d
iv. Spiral Model
Figure 16: Spiral Model – A Full/Complete Model, Variant II
39. SDLC Models Cont’d
iv. Spiral Model – Phases & Activities
(1) OBJECTIVE/PLANNING Phase
i. Decide on the visibility/possibility of the project.
ii. Determine the cost of implementation.
iii. Specify project timeline.
iv. Suggest alternative approach to implementation.
40. SDLC Models Cont’d
iv. Spiral Model – Phases & Activities
(2) RISK ASSESSMENT/ANALYSIS Phase
What do we look out for? What do we analyze?
i. Developer’s level of experience.
ii. Requirement information.
iii. Delivery schedules.
iv. Key system operations.
41. SDLC Models Cont’d
iv. Spiral Model – TAXONOMY
(1) Risk: Implies an uncertain outcome that has potentials
for loss.
It refers to measurable parameter that determines
loss.
(2) Verification: Implies checks to ensure the team is
building the software product rightly.
(3) Validation: Implies checks to ensure the team is building
the right software product.
(4) Testing: Implies executing the program/application with
set of data (valid & invalid) to study the software
behavior.
(5) Debugging: Implies examining code(s) that cause(s)
failing in software performance.
43. SDLC Models Cont’d
iv. Spiral Model – STRENGTHS/ADVANTAGES
Risk avoidance.
Precise knowledge of requirements.
Accommodates frequent changes in requirements.
Like Waterfall, it is more realistic than other iterative
models in that it allows software product to evolve
as the development process progresses.
44. SDLC Models Cont’d
iv. Spiral Model – WEAKNESSES/DISADVANTAGES
Time consuming.
Not generic in application – Different application
with different risk factors; so, it has to be developed
and applied differently.
Complex process.
Involve excessive and rigorous documentation
process.
Unsuitable for small software projects.
45. SDLC Models Cont’d
Differences between Waterfall & Spiral
Waterfall Spiral
Risk is not considered Analyzes and manages risk
No adequate estimation of
budget
Adequate estimation of
budget achieved through
planning and progressive
phases
Costly Costlier
Table 3: Differences between Waterfall and Spiral Models
46. SDLC Models Cont’d
Spiral Model – Boehm’s Philosophy
Figure 18: Boehm’s Philosophy
that prompted Spiral Model
“Stop the life cycle—I want to
get off!”
“Life-cycle Concept Considered
Harmful.”
“The waterfall model is dead.”
“No, it isn’t, but it should be.”
47. SDLC Models
Under Topic Exercise (UTE) 1
i. Following the demonstrated discussion pattern of
this course and particularly under this topic, write
on:
a. Agile Model
b. RUP Model
ii. Enumerate the strengths and weaknesses of the
various Evolutionary Models.
iii. Come up with a modified Spiral Model and discuss
the activities of each phase of the model.
iv. In few paragraphs and in convincing ways, discuss
the necessities and benefits of modeling as a
pointer and preceding step to software
development.
48. SDLC Models
Under Topic Exercise (UTE) 2
i. Iterative vs Incremental Models – Comment on the
‘fight’.
ii. Discuss the differences between:
i. Evolutionary and V-Shaped Models
ii. Evolutionary and Spiral Models
iii. Evolutionary and Agile Models
iv. Evolutionary and RUP Models
iii. Between V-Shaped and Agile Models, which will you
prefer and why?
iv. V-Shaped and Agile: Which is more agile? Discuss.
v. Considering Spiral and Agile Models, which springs
up software faster and more reliably? Lecture a
fellow.