SlideShare a Scribd company logo
1 of 29
C
SOFTWARE
DEVELOPMENT LIFE
CYCLE (SDLC)
DEFINITION
• A software life cycle is often called as a software development life cycle
and it is a particular abstraction that represents a software life cycle.
• The period of time that starts when a software product is conceived and
ends when the product is no longer available for use.
PHASES OF SDLC
1. Requirement phase
2. Design phase
3. Implementation phase
4. Test phase
5. Installation and check out phase
6. Operation and maintenance phase
BUILD AND FIX MODEL
• Sometimes, a product is constructed without specification. Basically, this
is an adhoc approach and not well defined.
• It is a simple two phase model.
• The first phase is to write code and the next phase is to fix it.
• Fixing in this context may be error correction or addition of further
functionality.
WATERFALL MODEL
• The waterfall model is a sequential software development model in
which development is seen as following steadily downwards like a
waterfall through several phases.
• This model maintains that one should move to next phase only when its
preceding phase is complete and perfect.
• Phases of development in the waterfall model are thus discrete and
there is no jumping back and forth or overlapping between them.
WATERFALL MODEL
PROBLEMS OF WATERFALL MODEL
• It is difficult to define all requirements at the beginning of a project.
• This model is not suitable for accommodating any change.
• A working version of the system is not seen until late in the project’s
life, thus delaying the discovery of serious errors.
PROTOTYPE MODEL
• Here, we first develop a working prototype of the software instead of
developing the actual software.
PROTOTYPE MODEL
ADVANTAGES OF PROTOTYPE MODEL
• Users are actively involved in the development.
• It provides better system to users, as users have natural tendency to
change their mind in specifying requirements.
• Since, in this methodology, a working model of the system is provided
to the users so that they can get a better understanding of the system
being developed.
• Errors can be detected much earlier as the system is made side by side.
• Quick user feedback is available leading to better solution.
DISADVANTAGES OF PROTOTYPE
MODEL
• Practically, this methodology may increase the complexity of the system
as scope of the system may expand beyond original plans.
• This model leads to implementing and then repairing way of building
system.
ITERATIVE ENHANCEMENT LIFE CYCLE
MODEL
• This model counters the limitation of the waterfall model and combines
the benefits of both prototyping and the waterfall models.
• The basic idea is that the software should be developed in increments,
where each increment adds some functional capability to the system
until the full system is implemented.
• At each step extensions and design modifications can be made.
• An advantage of this approach is that it can result in better testing,
since testing each increment is likely to be easier than testing entire
system like in the waterfall model.
ITERATIVE ENHANCEMENT LIFE CYCLE
MODEL
SPIRAL MODEL
• This is the recent model that has been proposed by Barry Boehm.
• The spiral model has many cycles.
• The radial dimension represents the cumulative cost incurred in
accomplishing the steps done so far and the angular dimension
represents the progress made in completing each cycle of spiral.
• The spiral model is divided into a number of framework activities called
task regions.
SPIRAL MODEL
TASK REGIONS IN SPIRAL MODEL
1. CUSTOMER COMMUNICATION: Task required to establish effective
communication between developer and customer.
2. PLANNING: Task required to define resources, timeliness and other
project related information.
3. RISK ANALYSIS: Task required to access both technical and
management risks.
4. ENGINEERING: Task required to build one or more representations of
the application.
TASK REGIONS IN SPIRAL MODEL
5. CONSTRUCTION AND RELEASE: Task required to construct, test,
install and provide user support.
6. CUSTOMER EVALUATION: Task required to obtain customer
feedback based on evaluation of the software representations
created during the engineering stage and implemented during the
installation stage.
SOFTWARE REQUIREMENTS
• Software requirement is a process to understand the exact
requirements of the customer and to document them properly.
• The hardest part of building a software system is deciding precisely
what to build.
ANALYSIS & SPECIFICATIONS
• Requirements describe the “what” of a system not the “how”.
• Requirements engineering produces one large document, contains a
description of what the system will do.
REQUIREMENT ELICITATION
• This is also known as gathering of requirements.
• Here, requirements are identified with the help of customer and existing
system processes, if available.
METHODS IN REQUIREMENT
ELICITATION
1. INTERVIEWS: First step to understand the problem statement of
customer, i.e., meeting with customer.
2. BRAINSTORMING SESSIONS: It is a kind of group discussion which
may lead to new ideas quickly and help to promote creative thinking.
3. FACILITATED APPLICATION SPECIFICATION TECHNIQUE (FAST): The
objective of FAST approach is to bridge the expectation gap, a
difference between what developers think they are supposed to build
and what customers think they are going to get.
METHODS IN REQUIRMENT
ELICITATION
4. THE USE CASE APPROACH: This approach uses a combination of text
and pictures in order to improve the understanding of requirements.
USE CASE DIAGRAMS
• Use case diagrams are graphical representations that may be
decomposed into further levels of abstraction.
• Use case is initiated by a user with a particular goal in mind and
competes successfully when that goal is satisfied.
• It describes the sequence of interactions between actors and the system
necessary to deliver services that satisfies the goal.
REQUIREMENT ANALYSIS
• Requirement analysis allows the system analyst to refine the software
allocation and build conceptual models of the data, functional and
behavioural domains that will be treated by software.
DATA MODELING
• Define data objects attributes and relationships.
• We use E-R diagrams for this purpose.
BEHAVIOURAL MODELING
• Finding out different states of the system.
• Specifying events that cause the system to change state.
• We use state transition diagrams for behavioural modelling.
FUNCTION MODELING
• Identify functions that transform data objects.
• Indicate how data flows through system.
• Represent producers and consumers of data.
REQUIREMENT DOCUMENTATION
• Requirement document is the way to represent requirements in a
consistent format.
• Requirement document is called SRS, i.e., Software Requirements
Specification.
• The SRS should be correct, unambiguous, complete, consistent,
verifiable, modifiable, traceable.
KEY POINTS
• For function modelling, we use Data Flow Diagrams (DFDs). DFD shows
the flow of data through a system.
• The requirement review process is carried out to improve the quality of
the SRS.
• The requirement review process may also be called as requirements
verification.
• For maximum benefits, review and verification should not be treated as
a discrete activity to be done only at the end of preparation of SRS. It
should be treated as continuous activity that is incorporated into the
elicitation, analysis and documentation.

More Related Content

What's hot

What's hot (20)

Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLC
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Sdlc
SdlcSdlc
Sdlc
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
 
Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Prototyping model
Prototyping modelPrototyping model
Prototyping model
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Unified process Model
Unified process ModelUnified process Model
Unified process Model
 
Waterfall model in SDLC
Waterfall model in SDLCWaterfall model in SDLC
Waterfall model in SDLC
 
Rad model
Rad modelRad model
Rad model
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
software development life cycle(SDLC)
software development life cycle(SDLC)software development life cycle(SDLC)
software development life cycle(SDLC)
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Software design
Software designSoftware design
Software design
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
 

Similar to Software development life cycle (SDLC)

software process model
software process modelsoftware process model
software process modeljuhi kumari
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )eshtiyak
 
Software Process Model.ppt
Software Process Model.pptSoftware Process Model.ppt
Software Process Model.pptSasiR18
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design Jayant Dalvi
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Software process Models
Software process ModelsSoftware process Models
Software process ModelsSADEED AMEEN
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesSiva Ayyakutti
 
Waterfall Model for Software Development.pptx
Waterfall Model for Software Development.pptxWaterfall Model for Software Development.pptx
Waterfall Model for Software Development.pptxPrimaAyundyayasti
 
SE_Unit 2.pdf it is a process model of it student
SE_Unit 2.pdf it is a process model of it studentSE_Unit 2.pdf it is a process model of it student
SE_Unit 2.pdf it is a process model of it studentRAVALCHIRAG1
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering processRaheel Aslam
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineeringArun Nair
 
DISE - Introduction to Software Engineering
DISE - Introduction to Software EngineeringDISE - Introduction to Software Engineering
DISE - Introduction to Software EngineeringRasan Samarasinghe
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 

Similar to Software development life cycle (SDLC) (20)

software process model
software process modelsoftware process model
software process model
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
 
Software Process Model.ppt
Software Process Model.pptSoftware Process Model.ppt
Software Process Model.ppt
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Waterfall Model for Software Development.pptx
Waterfall Model for Software Development.pptxWaterfall Model for Software Development.pptx
Waterfall Model for Software Development.pptx
 
SE_Unit 2.pdf it is a process model of it student
SE_Unit 2.pdf it is a process model of it studentSE_Unit 2.pdf it is a process model of it student
SE_Unit 2.pdf it is a process model of it student
 
Lesson 02.2
Lesson 02.2Lesson 02.2
Lesson 02.2
 
Pawan111
Pawan111Pawan111
Pawan111
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
 
SE-03.pptx
SE-03.pptxSE-03.pptx
SE-03.pptx
 
DITEC - Software Engineering
DITEC - Software EngineeringDITEC - Software Engineering
DITEC - Software Engineering
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering process
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
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...
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineering
 
DISE - Introduction to Software Engineering
DISE - Introduction to Software EngineeringDISE - Introduction to Software Engineering
DISE - Introduction to Software Engineering
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 

More from Simran Kaur

More from Simran Kaur (20)

Corporate social relationship as responsibility
Corporate social relationship as responsibilityCorporate social relationship as responsibility
Corporate social relationship as responsibility
 
Teaching aptitude
Teaching aptitudeTeaching aptitude
Teaching aptitude
 
Trade union
Trade unionTrade union
Trade union
 
Preposition
PrepositionPreposition
Preposition
 
Tense
TenseTense
Tense
 
Verb
VerbVerb
Verb
 
Let Get Make
Let Get MakeLet Get Make
Let Get Make
 
Modals
ModalsModals
Modals
 
Direct & indirect speech
Direct & indirect speechDirect & indirect speech
Direct & indirect speech
 
Active & Passive Voice
Active & Passive VoiceActive & Passive Voice
Active & Passive Voice
 
Business cycle
Business cycleBusiness cycle
Business cycle
 
Communication
CommunicationCommunication
Communication
 
Job analysis
Job analysisJob analysis
Job analysis
 
OSI Model
OSI ModelOSI Model
OSI Model
 
Pricing Strategy
Pricing StrategyPricing Strategy
Pricing Strategy
 
Marketing research
Marketing researchMarketing research
Marketing research
 
Theories of entrepreneurship
Theories of entrepreneurshipTheories of entrepreneurship
Theories of entrepreneurship
 
Software testing
Software testingSoftware testing
Software testing
 
Tree
TreeTree
Tree
 
Database management system
Database management systemDatabase management system
Database management system
 

Recently uploaded

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 

Recently uploaded (20)

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 

Software development life cycle (SDLC)

  • 2. DEFINITION • A software life cycle is often called as a software development life cycle and it is a particular abstraction that represents a software life cycle. • The period of time that starts when a software product is conceived and ends when the product is no longer available for use.
  • 3. PHASES OF SDLC 1. Requirement phase 2. Design phase 3. Implementation phase 4. Test phase 5. Installation and check out phase 6. Operation and maintenance phase
  • 4. BUILD AND FIX MODEL • Sometimes, a product is constructed without specification. Basically, this is an adhoc approach and not well defined. • It is a simple two phase model. • The first phase is to write code and the next phase is to fix it. • Fixing in this context may be error correction or addition of further functionality.
  • 5. WATERFALL MODEL • The waterfall model is a sequential software development model in which development is seen as following steadily downwards like a waterfall through several phases. • This model maintains that one should move to next phase only when its preceding phase is complete and perfect. • Phases of development in the waterfall model are thus discrete and there is no jumping back and forth or overlapping between them.
  • 7. PROBLEMS OF WATERFALL MODEL • It is difficult to define all requirements at the beginning of a project. • This model is not suitable for accommodating any change. • A working version of the system is not seen until late in the project’s life, thus delaying the discovery of serious errors.
  • 8. PROTOTYPE MODEL • Here, we first develop a working prototype of the software instead of developing the actual software.
  • 10. ADVANTAGES OF PROTOTYPE MODEL • Users are actively involved in the development. • It provides better system to users, as users have natural tendency to change their mind in specifying requirements. • Since, in this methodology, a working model of the system is provided to the users so that they can get a better understanding of the system being developed. • Errors can be detected much earlier as the system is made side by side. • Quick user feedback is available leading to better solution.
  • 11. DISADVANTAGES OF PROTOTYPE MODEL • Practically, this methodology may increase the complexity of the system as scope of the system may expand beyond original plans. • This model leads to implementing and then repairing way of building system.
  • 12. ITERATIVE ENHANCEMENT LIFE CYCLE MODEL • This model counters the limitation of the waterfall model and combines the benefits of both prototyping and the waterfall models. • The basic idea is that the software should be developed in increments, where each increment adds some functional capability to the system until the full system is implemented. • At each step extensions and design modifications can be made. • An advantage of this approach is that it can result in better testing, since testing each increment is likely to be easier than testing entire system like in the waterfall model.
  • 14. SPIRAL MODEL • This is the recent model that has been proposed by Barry Boehm. • The spiral model has many cycles. • The radial dimension represents the cumulative cost incurred in accomplishing the steps done so far and the angular dimension represents the progress made in completing each cycle of spiral. • The spiral model is divided into a number of framework activities called task regions.
  • 16. TASK REGIONS IN SPIRAL MODEL 1. CUSTOMER COMMUNICATION: Task required to establish effective communication between developer and customer. 2. PLANNING: Task required to define resources, timeliness and other project related information. 3. RISK ANALYSIS: Task required to access both technical and management risks. 4. ENGINEERING: Task required to build one or more representations of the application.
  • 17. TASK REGIONS IN SPIRAL MODEL 5. CONSTRUCTION AND RELEASE: Task required to construct, test, install and provide user support. 6. CUSTOMER EVALUATION: Task required to obtain customer feedback based on evaluation of the software representations created during the engineering stage and implemented during the installation stage.
  • 18. SOFTWARE REQUIREMENTS • Software requirement is a process to understand the exact requirements of the customer and to document them properly. • The hardest part of building a software system is deciding precisely what to build.
  • 19. ANALYSIS & SPECIFICATIONS • Requirements describe the “what” of a system not the “how”. • Requirements engineering produces one large document, contains a description of what the system will do.
  • 20. REQUIREMENT ELICITATION • This is also known as gathering of requirements. • Here, requirements are identified with the help of customer and existing system processes, if available.
  • 21. METHODS IN REQUIREMENT ELICITATION 1. INTERVIEWS: First step to understand the problem statement of customer, i.e., meeting with customer. 2. BRAINSTORMING SESSIONS: It is a kind of group discussion which may lead to new ideas quickly and help to promote creative thinking. 3. FACILITATED APPLICATION SPECIFICATION TECHNIQUE (FAST): The objective of FAST approach is to bridge the expectation gap, a difference between what developers think they are supposed to build and what customers think they are going to get.
  • 22. METHODS IN REQUIRMENT ELICITATION 4. THE USE CASE APPROACH: This approach uses a combination of text and pictures in order to improve the understanding of requirements.
  • 23. USE CASE DIAGRAMS • Use case diagrams are graphical representations that may be decomposed into further levels of abstraction. • Use case is initiated by a user with a particular goal in mind and competes successfully when that goal is satisfied. • It describes the sequence of interactions between actors and the system necessary to deliver services that satisfies the goal.
  • 24. REQUIREMENT ANALYSIS • Requirement analysis allows the system analyst to refine the software allocation and build conceptual models of the data, functional and behavioural domains that will be treated by software.
  • 25. DATA MODELING • Define data objects attributes and relationships. • We use E-R diagrams for this purpose.
  • 26. BEHAVIOURAL MODELING • Finding out different states of the system. • Specifying events that cause the system to change state. • We use state transition diagrams for behavioural modelling.
  • 27. FUNCTION MODELING • Identify functions that transform data objects. • Indicate how data flows through system. • Represent producers and consumers of data.
  • 28. REQUIREMENT DOCUMENTATION • Requirement document is the way to represent requirements in a consistent format. • Requirement document is called SRS, i.e., Software Requirements Specification. • The SRS should be correct, unambiguous, complete, consistent, verifiable, modifiable, traceable.
  • 29. KEY POINTS • For function modelling, we use Data Flow Diagrams (DFDs). DFD shows the flow of data through a system. • The requirement review process is carried out to improve the quality of the SRS. • The requirement review process may also be called as requirements verification. • For maximum benefits, review and verification should not be treated as a discrete activity to be done only at the end of preparation of SRS. It should be treated as continuous activity that is incorporated into the elicitation, analysis and documentation.