SlideShare a Scribd company logo
Software Process and SDLC Models
Prepared by
Dr. Annu Priya
Object Oriented Software Engineering
(OOSE)
22CS017
Index
• Software Process
• Software Process Model
• Need of Software Process Model
• SDLC Model
• Types of SDLC Models
• Water Fall Model
• Practice Questions
Software Process
What is software process?
A software process is the set of activities and associated outcome that produce a
software product. Software engineers mostly carry out these activities. These are four
key process activities, which are common to all software processes. These activities are:
1. Software specifications: The functionality of the software and constraints on its
operation must be defined.
2. Software development: The software to meet the requirement must be produced.
3. Software validation: The software must be validated to ensure that it does what the
customer wants.
4. Software evolution: The software must evolve to meet changing client needs.
Software Process Models
A software process model is a specified definition of a software process, which is presented
from a particular perspective. Models, by their nature, are a simplification, so a software
process model is an abstraction of the actual process, which is being described. Process
models may contain activities, which are part of the software process, software product, and
the roles of people involved in software engineering.
1. A workflow model: This shows the series of activities in the process along with their
inputs, outputs, and dependencies. The activities in this model perform human actions.
2. A dataflow or activity model: This represents the process as a set of activities, each of
which carries out some data transformations. It shows how the input to the process, such
as a specification, is converted to an output, such as a design. The activities here may be at
a lower level than activities in a workflow model. They may perform transformations
carried out by people or by computers.
3. A role/action model: This means the roles of the people involved in the software process
and the activities for which they are responsible.
30-11-2024
Need for Process Model
• The software development team must decide the process model that is to be used for
software product development, and then the entire team must adhere to it. This is
necessary because the software product development can then be done systematically.
Each team member will understand what the next activity is and how to do it. This
process model will bring the definiteness and discipline to the overall development
process. Every process model consists of definite entry and exit criteria for each phase.
Hence the transition of the product through various phases is definite.
• If the process model is not followed for software development, then any team member
can perform any software development activity; this will ultimately cause chaos, and the
software project will definitely fail without using the process model; it is difficult to
monitor the progress of software products. Thus, the process model plays an important
role in software engineering.
30-11-2024
Need for Process Model (cont.)
Software processes provide structured methods for developing and maintaining software.
They include approaches like Waterfall for linear projects, Agile for flexibility, Scrum
for teamwork, and DevOps for automation and collaboration. Each has unique strengths,
tailored to different project needs. Choosing the right process enhances efficiency and
product quality.
SDLC Models
• The software development life cycle (SDLC) is a spiritual model used in project
management that defines the stages included in an information system development
project, from an initial feasibility study to the maintenance of the completed
application.
• There are different software development life cycle models that specify and design,
which are followed during the software development phase. These models are also
called "Software Development Process Models." Each process model follows a
series of phases unique to its type to ensure success in the step of software
development.
• Here are some important phases of the SDLC life cycle:
SDLC life cycle
SDLC life cycle
SDLC Models
Figure 1: Types of SDLC Models
Winston Royce introduced the Waterfall Model in 1970. This model has five
phases:
• Requirements analysis and specification,
• Design
• Implementation, and
• Unit testing,
• Integration and system testing, and
• Operation and maintenance.
• The steps always follow in this order and do not overlap. The developer
must complete every phase before the next phase begins. This model is
named the "Waterfall Model" because its diagrammatic representation
resembles a cascade of waterfalls.
Waterfall Model
Waterfall Model
Figure 2: Waterfall Model
• Requirements analysis and specification phase: The aim of this phase is to
understand the exact requirements of the customer and to document them properly. Both
the customer and the software developer work together so as to document all the
functions, performance, and interfacing requirements of the software. It describes the
"what" of the system to be produced and not "how." In this phase, a large document
called the Software Requirement Specification (SRS) document is created, which
contains a detailed description of what the system will do in the common language.
• Design Phase: This phase aims to transform the requirements gathered in the SRS into
a suitable form that permits further coding in a programming language. It defines the
overall software architecture together with high-level and detailed design. All this work
is documented as a Software Design Document (SDD).
Waterfall Model
• Implementation and unit testing: During this phase, design is implemented. If the
SDD is complete, the implementation or coding phase proceeds smoothly, because all
the information needed by software developers is contained in the SDD. During
testing, the code is thoroughly examined and modified. Small modules are tested in
isolation initially. After that, these modules are tested by writing some overhead code
to check the interaction between these modules and the flow of intermediate output.
• Integration and System Testing: This phase is highly crucial as the quality of the end
product is determined by the effectiveness of the testing carried out. The better output
will lead to satisfied customers, lower maintenance costs, and accurate results. Unit
testing determines the efficiency of individual modules. However, in this phase, the
modules are tested for their interactions with each other and with the system.
• Operation and maintenance phase: Maintenance is the task performed by every user
once the software has been delivered to the customer, installed, and operational.
Waterfall Model
Waterfall Model
• ADVANTAGES:
• The waterfall model works well for smaller projects where requirements are very
well understood. This model is simple to implement; also, the number of resources
that are required for it is minimal.
• The requirements are simple and explicitly declared; they remain unchanged during
the entire project development.
• The start and end points for each phase are fixed, which makes it easy to cover
progress.
• The release date for the complete product, as well as its final cost, can be
determined before development.
• It gives easy control and clarity for the customer due to a strict reporting system.
• It is easy to manage due to the rigidity of the model—each phase has specific
deliverables and a review process.
• In this model, phases are processed and completed one at a time. Phases do not
overlap.
30-11-2024
Waterfall Model
• DISADVANTAGES:
• Very less customer interaction is involved during the development of the
product. In this model, the risk factor is higher, so this model is not suitable for
more significant and complex projects.
• This model cannot accept the changes in requirements during development.
• It becomes tough to go back to the phase. For example, if the application has
now shifted to the coding phase and there is a change in requirement, it
becomes tough to go back and change it.
• Since the testing is done at a later stage, it does not allow identifying the
challenges and risks in the earlier phase, so the risk reduction strategy is
difficult to prepare. Once an application is in the testing stage, it is very
difficult to go back and change something that was not well thought out in the
concept stage.
• No working software is produced until late during the life cycle.
• High amounts of risk and uncertainty.
• Poor model for big and complex projects.
• Not suitable for the projects where requirements are at a moderate to high risk
of changing.
30-11-2024
Waterfall Model
• When to use the waterfall model:
• This model is used only when the requirements are very well known, clear, and
fixed.
• Technology is understood.
• There are no ambiguous requirements.
• Ample resources with required expertise are available freely.
• The project is short.
30-11-2024
Example of waterfall model
• An example of the waterfall methodology is the construction of a building. The project
starts with gathering requirements from the client, followed by the design phase, where
blueprints and plans are created. Then, the construction phase begins, where the building
is constructed according to the design. After completion, the building undergoes
inspections and testing before it is finally handed over to the client.
• Another example is the development of a software application. The requirements are
gathered from the client, followed by the design phase, where the system architecture and
user interface are designed. Then, the development phase begins, where the code is
written, and the software is built. After development, extensive testing is conducted to
ensure the software functions as intended. Finally, the software is given to the end users.
• What is the importance of the SDLC process?
• Explain the phases in a typical SDLC process briefly.
• How does the Waterfall Methodology differ from other SDLC methodologies?
• Can you explain each stage of the waterfall methodology?
• What are the applications of the waterfall model?
• Why is waterfall better than Agile?
• Discuss various reasons for the failure of the waterfall model.
• Is it possible to go back to an earlier phase once the development team moves
into the later phases? If yes, then how?
• Do all projects require the same level of verification during each phase of the
Waterfall Methodology?
Practice Questions
Task of the day
• Design a SRS document for Restaurant Management System.
• Scenario: The system helps to manage the restaurant more effectively and efficiently by
computerizing meal ordering, billing, and inventory control. The system processes transactions
and stores the resulting data. Reports will be generated from this data, which help the manager
to make appropriate business decisions for the restaurant.
30-11-2024
Bibliography
• https://www.tutorialspoint.com/software_engineering/
• https://courses.cs.vt.edu/csonline/SE/Lessons/Qualities/index.html
• https://www.tutorialspoint.com/sdlc/sdlc_waterfall_model.htm
• https://www.geeksforgeeks.org/software-engineering-spiral-model/
• https://www.geeksforgeeks.org/software-engineering-sdlc-v-model/
30-11-2024
Computer Networks

More Related Content

PPT
Software Process Model.ppt
PPTX
SOFTWARE LIFE CYCLE MODELS and Ultimate objective of SE
PPTX
Waterfall model
PPTX
Software development life cycle (SDLC) Models
PPT
software engineering evolution and all of its models
PPT
SDLC - Software Development Life Cycle
PPTX
Software Development Process Models in Software Engineering.pptx
PPTX
Process Models
Software Process Model.ppt
SOFTWARE LIFE CYCLE MODELS and Ultimate objective of SE
Waterfall model
Software development life cycle (SDLC) Models
software engineering evolution and all of its models
SDLC - Software Development Life Cycle
Software Development Process Models in Software Engineering.pptx
Process Models

Similar to Lec 3-4.pptx software process and sdlc models (20)

PPTX
Process Models
PDF
Security Cosc gvggghghhhhhhhhhhhhhhhhhhhhh
PPTX
Structured system analysis and design
PPT
Process models
PPTX
software engineering SOFTWARE PROCESS MODELS.pptx
PPTX
Manual Testing Module 3-SDLC.pptx sdlc cycle most important part in manual
PPT
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
PPTX
V sdlc se
PPTX
Lecture 2 Software Development Process and SDCL models.pptx
PPTX
SDLC (Software development life Cycle)
PPSX
software co1.ppsx
PPT
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
PDF
Chapter 2
PPTX
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
PPTX
Waterfall Model for Software Development.pptx
PPTX
Software Design Architecture SDA SDLC DETAILS
PPT
Lecture46jacysnsvyyhjkcrukmactukk 02.ppt
PDF
Software Process Models
PPTX
Basics of Object-Oriented SE (OOSE).....
PDF
SDLC Models.pdf
Process Models
Security Cosc gvggghghhhhhhhhhhhhhhhhhhhhh
Structured system analysis and design
Process models
software engineering SOFTWARE PROCESS MODELS.pptx
Manual Testing Module 3-SDLC.pptx sdlc cycle most important part in manual
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
V sdlc se
Lecture 2 Software Development Process and SDCL models.pptx
SDLC (Software development life Cycle)
software co1.ppsx
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
Chapter 2
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Waterfall Model for Software Development.pptx
Software Design Architecture SDA SDLC DETAILS
Lecture46jacysnsvyyhjkcrukmactukk 02.ppt
Software Process Models
Basics of Object-Oriented SE (OOSE).....
SDLC Models.pdf
Ad

Recently uploaded (20)

PPTX
Classification Systems_TAXONOMY_SCIENCE8.pptx
PPTX
DRUG THERAPY FOR SHOCK gjjjgfhhhhh.pptx.
PDF
bbec55_b34400a7914c42429908233dbd381773.pdf
PPTX
2. Earth - The Living Planet earth and life
PDF
HPLC-PPT.docx high performance liquid chromatography
PPTX
Derivatives of integument scales, beaks, horns,.pptx
PDF
Biophysics 2.pdffffffffffffffffffffffffff
PPTX
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
PDF
IFIT3 RNA-binding activity primores influenza A viruz infection and translati...
PDF
Formation of Supersonic Turbulence in the Primordial Star-forming Cloud
PPTX
EPIDURAL ANESTHESIA ANATOMY AND PHYSIOLOGY.pptx
PPTX
INTRODUCTION TO EVS | Concept of sustainability
PDF
AlphaEarth Foundations and the Satellite Embedding dataset
PDF
SEHH2274 Organic Chemistry Notes 1 Structure and Bonding.pdf
PDF
Sciences of Europe No 170 (2025)
PPTX
TOTAL hIP ARTHROPLASTY Presentation.pptx
PPTX
ECG_Course_Presentation د.محمد صقران ppt
PPTX
GEN. BIO 1 - CELL TYPES & CELL MODIFICATIONS
PDF
diccionario toefl examen de ingles para principiante
PPTX
G5Q1W8 PPT SCIENCE.pptx 2025-2026 GRADE 5
Classification Systems_TAXONOMY_SCIENCE8.pptx
DRUG THERAPY FOR SHOCK gjjjgfhhhhh.pptx.
bbec55_b34400a7914c42429908233dbd381773.pdf
2. Earth - The Living Planet earth and life
HPLC-PPT.docx high performance liquid chromatography
Derivatives of integument scales, beaks, horns,.pptx
Biophysics 2.pdffffffffffffffffffffffffff
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
IFIT3 RNA-binding activity primores influenza A viruz infection and translati...
Formation of Supersonic Turbulence in the Primordial Star-forming Cloud
EPIDURAL ANESTHESIA ANATOMY AND PHYSIOLOGY.pptx
INTRODUCTION TO EVS | Concept of sustainability
AlphaEarth Foundations and the Satellite Embedding dataset
SEHH2274 Organic Chemistry Notes 1 Structure and Bonding.pdf
Sciences of Europe No 170 (2025)
TOTAL hIP ARTHROPLASTY Presentation.pptx
ECG_Course_Presentation د.محمد صقران ppt
GEN. BIO 1 - CELL TYPES & CELL MODIFICATIONS
diccionario toefl examen de ingles para principiante
G5Q1W8 PPT SCIENCE.pptx 2025-2026 GRADE 5
Ad

Lec 3-4.pptx software process and sdlc models

  • 1. Software Process and SDLC Models Prepared by Dr. Annu Priya Object Oriented Software Engineering (OOSE) 22CS017
  • 2. Index • Software Process • Software Process Model • Need of Software Process Model • SDLC Model • Types of SDLC Models • Water Fall Model • Practice Questions
  • 3. Software Process What is software process? A software process is the set of activities and associated outcome that produce a software product. Software engineers mostly carry out these activities. These are four key process activities, which are common to all software processes. These activities are: 1. Software specifications: The functionality of the software and constraints on its operation must be defined. 2. Software development: The software to meet the requirement must be produced. 3. Software validation: The software must be validated to ensure that it does what the customer wants. 4. Software evolution: The software must evolve to meet changing client needs.
  • 4. Software Process Models A software process model is a specified definition of a software process, which is presented from a particular perspective. Models, by their nature, are a simplification, so a software process model is an abstraction of the actual process, which is being described. Process models may contain activities, which are part of the software process, software product, and the roles of people involved in software engineering. 1. A workflow model: This shows the series of activities in the process along with their inputs, outputs, and dependencies. The activities in this model perform human actions. 2. A dataflow or activity model: This represents the process as a set of activities, each of which carries out some data transformations. It shows how the input to the process, such as a specification, is converted to an output, such as a design. The activities here may be at a lower level than activities in a workflow model. They may perform transformations carried out by people or by computers. 3. A role/action model: This means the roles of the people involved in the software process and the activities for which they are responsible. 30-11-2024
  • 5. Need for Process Model • The software development team must decide the process model that is to be used for software product development, and then the entire team must adhere to it. This is necessary because the software product development can then be done systematically. Each team member will understand what the next activity is and how to do it. This process model will bring the definiteness and discipline to the overall development process. Every process model consists of definite entry and exit criteria for each phase. Hence the transition of the product through various phases is definite. • If the process model is not followed for software development, then any team member can perform any software development activity; this will ultimately cause chaos, and the software project will definitely fail without using the process model; it is difficult to monitor the progress of software products. Thus, the process model plays an important role in software engineering. 30-11-2024
  • 6. Need for Process Model (cont.) Software processes provide structured methods for developing and maintaining software. They include approaches like Waterfall for linear projects, Agile for flexibility, Scrum for teamwork, and DevOps for automation and collaboration. Each has unique strengths, tailored to different project needs. Choosing the right process enhances efficiency and product quality.
  • 7. SDLC Models • The software development life cycle (SDLC) is a spiritual model used in project management that defines the stages included in an information system development project, from an initial feasibility study to the maintenance of the completed application. • There are different software development life cycle models that specify and design, which are followed during the software development phase. These models are also called "Software Development Process Models." Each process model follows a series of phases unique to its type to ensure success in the step of software development. • Here are some important phases of the SDLC life cycle:
  • 8. SDLC life cycle SDLC life cycle
  • 9. SDLC Models Figure 1: Types of SDLC Models
  • 10. Winston Royce introduced the Waterfall Model in 1970. This model has five phases: • Requirements analysis and specification, • Design • Implementation, and • Unit testing, • Integration and system testing, and • Operation and maintenance. • The steps always follow in this order and do not overlap. The developer must complete every phase before the next phase begins. This model is named the "Waterfall Model" because its diagrammatic representation resembles a cascade of waterfalls. Waterfall Model
  • 11. Waterfall Model Figure 2: Waterfall Model
  • 12. • Requirements analysis and specification phase: The aim of this phase is to understand the exact requirements of the customer and to document them properly. Both the customer and the software developer work together so as to document all the functions, performance, and interfacing requirements of the software. It describes the "what" of the system to be produced and not "how." In this phase, a large document called the Software Requirement Specification (SRS) document is created, which contains a detailed description of what the system will do in the common language. • Design Phase: This phase aims to transform the requirements gathered in the SRS into a suitable form that permits further coding in a programming language. It defines the overall software architecture together with high-level and detailed design. All this work is documented as a Software Design Document (SDD). Waterfall Model
  • 13. • Implementation and unit testing: During this phase, design is implemented. If the SDD is complete, the implementation or coding phase proceeds smoothly, because all the information needed by software developers is contained in the SDD. During testing, the code is thoroughly examined and modified. Small modules are tested in isolation initially. After that, these modules are tested by writing some overhead code to check the interaction between these modules and the flow of intermediate output. • Integration and System Testing: This phase is highly crucial as the quality of the end product is determined by the effectiveness of the testing carried out. The better output will lead to satisfied customers, lower maintenance costs, and accurate results. Unit testing determines the efficiency of individual modules. However, in this phase, the modules are tested for their interactions with each other and with the system. • Operation and maintenance phase: Maintenance is the task performed by every user once the software has been delivered to the customer, installed, and operational. Waterfall Model
  • 14. Waterfall Model • ADVANTAGES: • The waterfall model works well for smaller projects where requirements are very well understood. This model is simple to implement; also, the number of resources that are required for it is minimal. • The requirements are simple and explicitly declared; they remain unchanged during the entire project development. • The start and end points for each phase are fixed, which makes it easy to cover progress. • The release date for the complete product, as well as its final cost, can be determined before development. • It gives easy control and clarity for the customer due to a strict reporting system. • It is easy to manage due to the rigidity of the model—each phase has specific deliverables and a review process. • In this model, phases are processed and completed one at a time. Phases do not overlap. 30-11-2024
  • 15. Waterfall Model • DISADVANTAGES: • Very less customer interaction is involved during the development of the product. In this model, the risk factor is higher, so this model is not suitable for more significant and complex projects. • This model cannot accept the changes in requirements during development. • It becomes tough to go back to the phase. For example, if the application has now shifted to the coding phase and there is a change in requirement, it becomes tough to go back and change it. • Since the testing is done at a later stage, it does not allow identifying the challenges and risks in the earlier phase, so the risk reduction strategy is difficult to prepare. Once an application is in the testing stage, it is very difficult to go back and change something that was not well thought out in the concept stage. • No working software is produced until late during the life cycle. • High amounts of risk and uncertainty. • Poor model for big and complex projects. • Not suitable for the projects where requirements are at a moderate to high risk of changing. 30-11-2024
  • 16. Waterfall Model • When to use the waterfall model: • This model is used only when the requirements are very well known, clear, and fixed. • Technology is understood. • There are no ambiguous requirements. • Ample resources with required expertise are available freely. • The project is short. 30-11-2024
  • 17. Example of waterfall model • An example of the waterfall methodology is the construction of a building. The project starts with gathering requirements from the client, followed by the design phase, where blueprints and plans are created. Then, the construction phase begins, where the building is constructed according to the design. After completion, the building undergoes inspections and testing before it is finally handed over to the client. • Another example is the development of a software application. The requirements are gathered from the client, followed by the design phase, where the system architecture and user interface are designed. Then, the development phase begins, where the code is written, and the software is built. After development, extensive testing is conducted to ensure the software functions as intended. Finally, the software is given to the end users.
  • 18. • What is the importance of the SDLC process? • Explain the phases in a typical SDLC process briefly. • How does the Waterfall Methodology differ from other SDLC methodologies? • Can you explain each stage of the waterfall methodology? • What are the applications of the waterfall model? • Why is waterfall better than Agile? • Discuss various reasons for the failure of the waterfall model. • Is it possible to go back to an earlier phase once the development team moves into the later phases? If yes, then how? • Do all projects require the same level of verification during each phase of the Waterfall Methodology? Practice Questions
  • 19. Task of the day • Design a SRS document for Restaurant Management System. • Scenario: The system helps to manage the restaurant more effectively and efficiently by computerizing meal ordering, billing, and inventory control. The system processes transactions and stores the resulting data. Reports will be generated from this data, which help the manager to make appropriate business decisions for the restaurant. 30-11-2024
  • 20. Bibliography • https://www.tutorialspoint.com/software_engineering/ • https://courses.cs.vt.edu/csonline/SE/Lessons/Qualities/index.html • https://www.tutorialspoint.com/sdlc/sdlc_waterfall_model.htm • https://www.geeksforgeeks.org/software-engineering-spiral-model/ • https://www.geeksforgeeks.org/software-engineering-sdlc-v-model/ 30-11-2024

Editor's Notes

  • #11: Reference: https://www.google.co.in/search?q=waterfall+model+in+software+engineering&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiw4fipo-feAhVygUsFHZtXA-UQ_AUIDygC&biw=1366&bih=657#imgrc=Vp6OG-z3LtobqM: