SlideShare a Scribd company logo
1 of 12
Software
Process Models
Introduction:
A software process model is an abstract representation of a process. It presents a description of a process from some
particular perspective as:

1. Specification.
2. Design.
3. Validation.
4. Evolution.

The goal of software process model is to provide guidance for systematically coordinating and controlling the tasks
that must be performed in order to achieve the end product and the project objectives.

General Software Process Models are

1. Waterfall model: Separate and distinct phases of specification and development.
2. Prototype model.
3. Rapid application development model (RAD).
4. Evolutionary development: Specification, development and validation are interleaved.
5. Incremental model.
6. Iterative model.
7. Spiral model.
8. Component-based software engineering : The system is assembled from existing components.

1)

The Waterfall Model :
The waterfall model is the classical model of software engineering. This model is one of the oldest models and is
widely used in government projects and in many major companies. As this model emphasizes planning in early
stages, it ensures design flaws before they develop. In addition, its intensive document and planning make it work
well for projects in which quality control is a major concern.

The pure waterfall lifecycle consists of several nonoverlapping stages, as shown in the following figure. The model
begins with establishing system requirements and software requirements and continues with architectural design,
detailed design, coding, testing, and maintenance.The waterfall model serves as a baseline for many other lifecycle
models.

System Requirements

Software Requirements

Archietectural Design

Detailed Design

Coding

Testing

Maintanace

Advantages :
1. Easy to understand and implement.
2. Widely used and known (in theory!).
3. Reinforces good habits: define-before- design, design-before-code.
4. Identifies deliverables and milestones.
5. Document driven , Published documentation standards.
6. Works well on mature products and weak teams.
7.Fits other engineering process models: civil, mech etc

Disadvantages :
1.Idealized, doesn’t match reality well.
2. Doesn’t reflect iterative nature of exploratory development.
3. Unrealistic to expect accurate requirements so early in project.
4. Software is delivered late in project, delays discovery of serious errors.
5. Difficult to integrate risk management.
6. Difficult and expensive to make changes to documents.
7. Significant administrative overhead, costly for small teams and projects.

2)

V-Shaped Model :
Just like the waterfall model, the V-Shaped life cycle is a sequential path of execution of
processes. Each phase must be completed before the next phase begins.
Testingis emphasized in this model more than the waterfall model. The testing procedures are
developed early in the life cycle before any coding is done, during each of the phases preceding
implementation. Requirements begin the life cycle model just like the waterfall model. Before
development is started, a system test plan is created. The test plan focuses on meeting the
functionality specified in requirements gathering. The high-level design phase focuses on system
architecture and design. An integration test plan is created in this phase in order to test the pieces
of the software systems ability to work together. However, the low-level design phase lies where
the actual software components are designed, and unit tests are created in this phase as well. The
implementation phase is, again, where all coding takes place. Once coding is complete, the path
of execution continues up the right side of the V where the test plans developed earlier are now
put to use.
Advantages :
1. Simple and easy to use.
2. Each phase has specific deliverables.
3. Higher chance of success over the waterfall model due to the early development of test plans
During the life cycle.
4. Works well for small projects where requirements are easily understood.

Disadvantages :
1. Very rigid like the waterfall model.
2. Little flexibility and adjusting scope is difficult and expensive.
3. Software is developed during the implementation phase, so no early prototypes of the software
are produced.
4. This Model does not provide a clear path for problems found during testing phases.
3)

Spiral Model :
The spiral model combines the idea of iterative development with the systematic, controlled
aspects of the waterfall model.

The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A
software project repeatedly passes through these phases in iterations (called Spirals in this
model). The baseline spiral, starting in the planning phase, requirements are gathered and risk is
assessed. Each subsequent spiral builds on the baseline spiral. Requirements are gathered during
the planning phase. In the risk analysis phase, a process is undertaken to identify risk and
alternate solutions. A prototype is produced at the end of the risk analysis phase. Software is
produced in the engineering phase, along with testing at the end of the phase. The evaluation
phase allows the customer to evaluate the output of the project to date before the project
continues to the next spiral.
Advantages :
1. High amount of risk analysis.
2. Good for large and mission-critical projects.
3 Software is produced early in the software life cycle.

Disadvantages :
1. Can be a costly model to use.
2. Risk analysis requires highly specific expertise.
3. Project’s success is highly dependent on the risk analysis phase.
4. Doesn’t work well for smaller projects.
4)

Iterative Model :
The problems with the Waterfall Model created a demand for a new method of developing

systems which could provide faster results, require less up-front information, and offer greater flexibility.
With Iterative Development, the project is divided into small parts. This allows the development team to
demonstrate results earlier on in the process and obtain valuable feedback from system users.Often, each
iteration is actually a mini-Waterfall process with the feedback from one phase providing vital
information for the design of the next phase. In a variation of this model, the software products, which are
produced at the end of each step (or series of steps), can go into production immediately as incremental
releases.
Advantages :
1 Some working functionality can be developed quickly and early.
2. Testing and debugging during smaller iteration is easy.
3 With every increment operational product is delivered.
4. Issues, challenges & risks identified from each increment can be utilized/applied to the next
increment.
5. It supports changing requirements.

Disadvantages :
1. Not suitable for smaller projects.
2 Project’s progress is highly dependent upon the risk analysis phase.
3 Costly system architecture or design issues may arise because not all requirements are
gathered up front for the entire lifecycle.
5)

Big Bang Model :
The Big Bang model is SDLC model where we do not follow any specific process. The
development just starts with the required money and efforts as the input, and the output is the
software developed which may or may not be as per customer requirement. There is no formal
development followed and very little planning is required. Even the customer is not sure about
what exactly he wants and the requirements are implemented on the fly without much analysis.
This model is ideal for small projects with one or two developers working together and is also
useful for academic or practice projects. It.s an ideal model for the product where requirements
are not well understood and the final release date is not given.
Advantages :
1 This is a very simple model.
2. Little or no planning required.
3 Easy to manage.
4 Gives flexibility to developers.
5 Is a good learning aid for new comers or students.

Disadvantages :
1. Very High risk and uncertainty.
2 Not a good model for complex and object-oriented projects.
3 Can turn out to be very expensive if requirements are misunderstood.
COMPARISION
Features

water fall

Iterative

Spiral model

V-shaped

Big Bang

Requirement
Specification

Beginning

Beginning

Beginning

Beginning

Frequently
Changed

Understanding
Requirements

Well Understood

Not Well
understood

Well Understood

Well Understood

Not Well
understood

Cost

Low

Low

Expensive

Expensive

Low

Availability of
reuseable
component

No

Yes

Yes

Complexity of
system

Simple

Simple

complex

Simple

Simple

Risk Analysis

Only at beginning

Less Risk
Analysis

yes

yes

Less Risk
Analysis

User Involvement
in all phases of
SDLC

At beginning

Intermediate

High

At beginning

Intermediate

Guarantee of
Success

Less

High

High

High

Less

Overlapping
Phases

No overlapping

No overlapping

yes overlapping

No overlapping

No overlapping

Implementation
time

long

Less

Depends on
project

long

Depends on
project

Flexibility

Rigid

Less Flexible

Flexible

Less Flexible

Less Flexible

Changes
Incorporated

Difficult

Easy

Easy

Easy

Easy

Expertise
Required

High

High

High

High

Low

No

More Related Content

What's hot

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 modelzoomers
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLCAdeel Rasheed
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project ManagementRamesh Babu
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile MethodologyHaresh Karkar
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process IntroductionNguyen Hai
 
Agile methodology
Agile methodologyAgile methodology
Agile methodologyDhruv Kumar
 
What is Agile Project Management? | Agile Project Management | Invensis Learn...
What is Agile Project Management? | Agile Project Management | Invensis Learn...What is Agile Project Management? | Agile Project Management | Invensis Learn...
What is Agile Project Management? | Agile Project Management | Invensis Learn...Invensis Learning
 
Agile vs. waterfall
Agile vs. waterfallAgile vs. waterfall
Agile vs. waterfallDvir Zohar
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar ReportMohit Kumar
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleSlideshare
 

What's hot (20)

Agile model
Agile modelAgile model
Agile model
 
V model
V modelV model
V model
 
The Spiral Model
The Spiral ModelThe Spiral Model
The Spiral Model
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Sdlc
SdlcSdlc
Sdlc
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
Software project management
Software project managementSoftware project management
Software project management
 
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
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLC
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile Methodology
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
What is Agile Project Management? | Agile Project Management | Invensis Learn...
What is Agile Project Management? | Agile Project Management | Invensis Learn...What is Agile Project Management? | Agile Project Management | Invensis Learn...
What is Agile Project Management? | Agile Project Management | Invensis Learn...
 
Agile vs. waterfall
Agile vs. waterfallAgile vs. waterfall
Agile vs. waterfall
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar Report
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

Similar to MODELS USED IN SOFTWARE DEVELOPMENT

Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process modelsTauseef Ahmad
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle modelsWasif Khan
 
Information systems development methodologies (autosaved)
Information systems development methodologies (autosaved)Information systems development methodologies (autosaved)
Information systems development methodologies (autosaved)Vaska Shefteroska
 
Process Model in Software Engineering.ppt
Process Model in Software Engineering.pptProcess Model in Software Engineering.ppt
Process Model in Software Engineering.pptAtharvaBavge
 
Software development process models
Software development process modelsSoftware development process models
Software development process modelsMuntha Ulfat
 
Prototyping model, Evolution and spiral models.pdf
Prototyping model, Evolution and spiral models.pdfPrototyping model, Evolution and spiral models.pdf
Prototyping model, Evolution and spiral models.pdfssusere796b3
 
software construction modules,language,tools,design
software construction modules,language,tools,designsoftware construction modules,language,tools,design
software construction modules,language,tools,designnemali akhilesh
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design Jayant Dalvi
 
Process Models in Software Engineering
Process Models in Software EngineeringProcess Models in Software Engineering
Process Models in Software EngineeringGohAr_MaLiik
 
61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptxSuhleemAhmd
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.pptbhadjaashvini1
 
Spiral Model.pdf
Spiral Model.pdfSpiral Model.pdf
Spiral Model.pdfSelvamMano4
 
Software engineering model
Software engineering modelSoftware engineering model
Software engineering modelManish Chaurasia
 
SDLC (Software development life Cycle)
SDLC (Software development life Cycle)SDLC (Software development life Cycle)
SDLC (Software development life Cycle)PrithvirajChauhan61
 

Similar to MODELS USED IN SOFTWARE DEVELOPMENT (20)

Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process models
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
 
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
 
Information systems development methodologies (autosaved)
Information systems development methodologies (autosaved)Information systems development methodologies (autosaved)
Information systems development methodologies (autosaved)
 
Process Model in Software Engineering.ppt
Process Model in Software Engineering.pptProcess Model in Software Engineering.ppt
Process Model in Software Engineering.ppt
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 
Prototyping model, Evolution and spiral models.pdf
Prototyping model, Evolution and spiral models.pdfPrototyping model, Evolution and spiral models.pdf
Prototyping model, Evolution and spiral models.pdf
 
software construction modules,language,tools,design
software construction modules,language,tools,designsoftware construction modules,language,tools,design
software construction modules,language,tools,design
 
Software engineering the process
Software engineering the processSoftware engineering the process
Software engineering the process
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
 
Process Models in Software Engineering
Process Models in Software EngineeringProcess Models in Software Engineering
Process Models in Software Engineering
 
The process
The processThe process
The process
 
61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx61f4fc87-9977-4003-baf8-37f13200977b.pptx
61f4fc87-9977-4003-baf8-37f13200977b.pptx
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
Spiral Model.pdf
Spiral Model.pdfSpiral Model.pdf
Spiral Model.pdf
 
Software process
Software processSoftware process
Software process
 
Software engineering model
Software engineering modelSoftware engineering model
Software engineering model
 
Process models
Process modelsProcess models
Process models
 
SDLC (Software development life Cycle)
SDLC (Software development life Cycle)SDLC (Software development life Cycle)
SDLC (Software development life Cycle)
 

More from PaYal Umraliya

Information systems by checkmate...
Information systems by checkmate...Information systems by checkmate...
Information systems by checkmate...PaYal Umraliya
 
CRUD(IN_UP_DEL) IN JAVA
CRUD(IN_UP_DEL) IN JAVA CRUD(IN_UP_DEL) IN JAVA
CRUD(IN_UP_DEL) IN JAVA PaYal Umraliya
 
Localization and globalization in c#
Localization and globalization in c#Localization and globalization in c#
Localization and globalization in c#PaYal Umraliya
 

More from PaYal Umraliya (6)

Information systems by checkmate...
Information systems by checkmate...Information systems by checkmate...
Information systems by checkmate...
 
CRUD(IN_UP_DEL) IN JAVA
CRUD(IN_UP_DEL) IN JAVA CRUD(IN_UP_DEL) IN JAVA
CRUD(IN_UP_DEL) IN JAVA
 
Introduction to wpf
Introduction to wpfIntroduction to wpf
Introduction to wpf
 
Localization and globalization in c#
Localization and globalization in c#Localization and globalization in c#
Localization and globalization in c#
 
tittanium
tittaniumtittanium
tittanium
 
Wsn by checkmate
Wsn by checkmateWsn by checkmate
Wsn by checkmate
 

Recently uploaded

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Recently uploaded (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

MODELS USED IN SOFTWARE DEVELOPMENT

  • 2. Introduction: A software process model is an abstract representation of a process. It presents a description of a process from some particular perspective as: 1. Specification. 2. Design. 3. Validation. 4. Evolution. The goal of software process model is to provide guidance for systematically coordinating and controlling the tasks that must be performed in order to achieve the end product and the project objectives. General Software Process Models are 1. Waterfall model: Separate and distinct phases of specification and development. 2. Prototype model. 3. Rapid application development model (RAD). 4. Evolutionary development: Specification, development and validation are interleaved. 5. Incremental model. 6. Iterative model. 7. Spiral model. 8. Component-based software engineering : The system is assembled from existing components. 1) The Waterfall Model :
  • 3. The waterfall model is the classical model of software engineering. This model is one of the oldest models and is widely used in government projects and in many major companies. As this model emphasizes planning in early stages, it ensures design flaws before they develop. In addition, its intensive document and planning make it work well for projects in which quality control is a major concern. The pure waterfall lifecycle consists of several nonoverlapping stages, as shown in the following figure. The model begins with establishing system requirements and software requirements and continues with architectural design, detailed design, coding, testing, and maintenance.The waterfall model serves as a baseline for many other lifecycle models. System Requirements Software Requirements Archietectural Design Detailed Design Coding Testing Maintanace Advantages : 1. Easy to understand and implement. 2. Widely used and known (in theory!). 3. Reinforces good habits: define-before- design, design-before-code. 4. Identifies deliverables and milestones. 5. Document driven , Published documentation standards.
  • 4. 6. Works well on mature products and weak teams. 7.Fits other engineering process models: civil, mech etc Disadvantages : 1.Idealized, doesn’t match reality well. 2. Doesn’t reflect iterative nature of exploratory development. 3. Unrealistic to expect accurate requirements so early in project. 4. Software is delivered late in project, delays discovery of serious errors. 5. Difficult to integrate risk management. 6. Difficult and expensive to make changes to documents. 7. Significant administrative overhead, costly for small teams and projects. 2) V-Shaped Model : Just like the waterfall model, the V-Shaped life cycle is a sequential path of execution of processes. Each phase must be completed before the next phase begins. Testingis emphasized in this model more than the waterfall model. The testing procedures are developed early in the life cycle before any coding is done, during each of the phases preceding implementation. Requirements begin the life cycle model just like the waterfall model. Before development is started, a system test plan is created. The test plan focuses on meeting the functionality specified in requirements gathering. The high-level design phase focuses on system architecture and design. An integration test plan is created in this phase in order to test the pieces of the software systems ability to work together. However, the low-level design phase lies where the actual software components are designed, and unit tests are created in this phase as well. The implementation phase is, again, where all coding takes place. Once coding is complete, the path of execution continues up the right side of the V where the test plans developed earlier are now put to use.
  • 5. Advantages : 1. Simple and easy to use. 2. Each phase has specific deliverables. 3. Higher chance of success over the waterfall model due to the early development of test plans During the life cycle. 4. Works well for small projects where requirements are easily understood. Disadvantages : 1. Very rigid like the waterfall model. 2. Little flexibility and adjusting scope is difficult and expensive. 3. Software is developed during the implementation phase, so no early prototypes of the software are produced. 4. This Model does not provide a clear path for problems found during testing phases.
  • 6. 3) Spiral Model : The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A software project repeatedly passes through these phases in iterations (called Spirals in this model). The baseline spiral, starting in the planning phase, requirements are gathered and risk is assessed. Each subsequent spiral builds on the baseline spiral. Requirements are gathered during the planning phase. In the risk analysis phase, a process is undertaken to identify risk and alternate solutions. A prototype is produced at the end of the risk analysis phase. Software is produced in the engineering phase, along with testing at the end of the phase. The evaluation phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral.
  • 7. Advantages : 1. High amount of risk analysis. 2. Good for large and mission-critical projects. 3 Software is produced early in the software life cycle. Disadvantages : 1. Can be a costly model to use. 2. Risk analysis requires highly specific expertise. 3. Project’s success is highly dependent on the risk analysis phase. 4. Doesn’t work well for smaller projects.
  • 8. 4) Iterative Model : The problems with the Waterfall Model created a demand for a new method of developing systems which could provide faster results, require less up-front information, and offer greater flexibility. With Iterative Development, the project is divided into small parts. This allows the development team to demonstrate results earlier on in the process and obtain valuable feedback from system users.Often, each iteration is actually a mini-Waterfall process with the feedback from one phase providing vital information for the design of the next phase. In a variation of this model, the software products, which are produced at the end of each step (or series of steps), can go into production immediately as incremental releases.
  • 9. Advantages : 1 Some working functionality can be developed quickly and early. 2. Testing and debugging during smaller iteration is easy. 3 With every increment operational product is delivered. 4. Issues, challenges & risks identified from each increment can be utilized/applied to the next increment. 5. It supports changing requirements. Disadvantages : 1. Not suitable for smaller projects. 2 Project’s progress is highly dependent upon the risk analysis phase. 3 Costly system architecture or design issues may arise because not all requirements are gathered up front for the entire lifecycle.
  • 10. 5) Big Bang Model : The Big Bang model is SDLC model where we do not follow any specific process. The development just starts with the required money and efforts as the input, and the output is the software developed which may or may not be as per customer requirement. There is no formal development followed and very little planning is required. Even the customer is not sure about what exactly he wants and the requirements are implemented on the fly without much analysis. This model is ideal for small projects with one or two developers working together and is also useful for academic or practice projects. It.s an ideal model for the product where requirements are not well understood and the final release date is not given.
  • 11. Advantages : 1 This is a very simple model. 2. Little or no planning required. 3 Easy to manage. 4 Gives flexibility to developers. 5 Is a good learning aid for new comers or students. Disadvantages : 1. Very High risk and uncertainty. 2 Not a good model for complex and object-oriented projects. 3 Can turn out to be very expensive if requirements are misunderstood.
  • 12. COMPARISION Features water fall Iterative Spiral model V-shaped Big Bang Requirement Specification Beginning Beginning Beginning Beginning Frequently Changed Understanding Requirements Well Understood Not Well understood Well Understood Well Understood Not Well understood Cost Low Low Expensive Expensive Low Availability of reuseable component No Yes Yes Complexity of system Simple Simple complex Simple Simple Risk Analysis Only at beginning Less Risk Analysis yes yes Less Risk Analysis User Involvement in all phases of SDLC At beginning Intermediate High At beginning Intermediate Guarantee of Success Less High High High Less Overlapping Phases No overlapping No overlapping yes overlapping No overlapping No overlapping Implementation time long Less Depends on project long Depends on project Flexibility Rigid Less Flexible Flexible Less Flexible Less Flexible Changes Incorporated Difficult Easy Easy Easy Easy Expertise Required High High High High Low No