SlideShare a Scribd company logo
Software Engineering
Dr. Kamal Gulati
(Part 3) – Models of SDLC (Contd..)
& Feasibility Study
Contents
1. Iterative model
2. Advantages of Iterative model
3. Disadvantages of Iterative model
4. When to use iterative model
5. Spiral Model
6. Advantages of Spiral model
7. Disadvantages of Spiral model
8. When to use Spiral model
9. Role of Management in Software Development
Iterative model
• An iterative life cycle model does not attempt
to start with a full specification of
requirements.
• Instead, development begins by specifying
and implementing just part of the software,
which can then be reviewed in order to
identify further requirements.
• This process is then repeated, producing a
new version of the software for each cycle of
the model.
Models of SDLC (Contd..)  & Feasibility Study
For Example:
• In the diagram above when we work iteratively we
create rough product or product piece in one
iteration, then review it and improve it in next
iteration and so on until it’s finished. As shown in
the image above, in the first iteration the whole
painting is sketched roughly, then in the second
iteration colors are filled and in the third iteration
finishing is done. Hence, in iterative model the
whole product is developed step by step.
Advantages of Iterative model
• In iterative model we can only create a high-level design of the
application before we actually begin to build the product and define
the design solution for the entire product. Later on we can design
and built a skeleton version of that, and then evolved the design
based on what had been built.
• In iterative model we are building and improving the product step
by step. Hence we can track the defects at early stages. This avoids
the downward flow of the defects.
• In iterative model we can get the reliable user feedback. When
presenting sketches and blueprints of the product to users for their
feedback, we are effectively asking them to imagine how the
product will work.
• In iterative model less time is spent on documenting and more time
is given for designing.
Disadvantages of Iterative model
• Each phase of an iteration is rigid with no
overlaps
• Costly system architecture or design issues
may arise because not all requirements are
gathered up front for the entire lifecycle
When to use iterative model:
• Requirements of the complete system are
clearly defined and understood.
• When the project is big.
• Major requirements must be defined;
however, some details can evolve with time.
Spiral Model
• The spiral model is similar to the incremental
model, with more emphasis placed on risk
analysis. 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 spirals builds on
the baseline spiral
• Planning Phase: Requirements are gathered during the
planning phase. Requirements like ‘BRS’ that is
‘Business Requirement Specifications’ and ‘SRS’ that is
‘System Requirement specifications’.
• Risk Analysis: 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. If any risk is found during the risk analysis then
alternate solutions are suggested and implemented.
• Engineering Phase: In this phase software is
developed, along with testing at the end of the phase.
Hence in this phase the development and testing is
done.
• Evaluation phase: This phase allows the customer to
evaluate the output of the project to date before the
project continues to the next spiral.
Models of SDLC (Contd..)  & Feasibility Study
Spiral development
• Process is represented as a spiral rather than
as a sequence of activities with backtracking.
• Each loop in the spiral represents a phase in
the process.
• No fixed phases such as specification or design
- loops in the spiral are chosen depending on
what is required.
• Risks are explicitly assessed and resolved
throughout the process.
Spiral model of the software process
Spiral model sectors
• Objective setting
– Specific objectives for the phase are identified.
• Risk assessment and reduction
– Risks are assessed and activities put in place to
reduce the key risks.
• Development and validation
– A development model for the system is chosen
which can be any of the generic models.
• Planning
– The project is reviewed and the next phase of the
spiral is planned.
Advantages of Spiral model
• High amount of risk analysis hence, avoidance
of Risk is enhanced.
• Good for large and mission-critical projects.
• Strong approval and documentation control.
• Additional Functionality can be added at a
later date.
• Software is produced early in the software life
cycle.
Disadvantages of Spiral model
• Can be a costly model to use.
• Risk analysis requires highly specific expertise.
• Project’s success is highly dependent on the
risk analysis phase.
• Doesn’t work well for smaller projects.
When to use Spiral model
• When costs and risk evaluation is important
• For medium to high-risk projects
• Long-term project commitment unwise because
of potential changes to economic priorities
• Users are unsure of their needs
• Requirements are complex
• New product line
• Significant changes are expected (research and
exploration)
Role of Management in Software
Development
• Proper management is an integral part of
software development.
• A large software development project involves
many people working for a long period of
time. We have seen that a development
process typically partitions the problem of
developing software into a set of phases.
• To meet the cost, quality, and schedule
objectives, resources have to be properly
allocated to each activity for the project, and
progress of different activities has to be
monitored and corrective actions taken, if
needed.
• For a large project, a proper management
process is essential for success. The activities in
the management process for a project can be
grouped broadly into three phases:-
• I Planning
• II Monitoring and control
• III Termination analysis
Planning
• Project management begins with planning, which
is perhaps the single largest responsibility of the
project management.
• The goal of this phase is to develop a plan for
software development following which the
objectives of the project can be met successfully
and efficiently.
• Project monitoring and control phase of the
management process is the longest in terms of
duration. It encompasses most of the
development process.
Monitoring and control
• It includes all activities the project
management has to perform while the
development is going on to ensure that
project objectives are met and the
development proceeds according to the
developed plan. As cost, schedule, and quality
are the major driving forces, most of the
activity of this phase revolves around
monitoring factors that affect them.
Termination analysis
• Termination analysis is performed when the
development process is over. The basic reason for
performing termination analysis is to provide
information about the development process.
Remember that a project is an instantiation of the
process. To understand the properties of the
process, data from many projects that used the
process can be used to make predictions and
estimations about future projects. The data about
the project is also needed to analyze the process.
Role of Matrices and Measurement
• During all the software development life cycle
it is very important to apply metrics and
measurement because metrics and
measurement set expectations.
• If there are well established metrics and
measurements in project then the test analyst
can easily track and report quality results to
the management.
You can consider some the following
areas where you can apply metrics and
measurement.
• Schedule of project
• Coverage
• Planned & actual cost
• Workload & resource usage
• Product risk & project risk
• Defects
Three Main Areas to check about
Metrics and Measurement.
• 1.) Defining Test Metrics:
Small and quality set of metrics should be chosen, large
set of metrics should be avoided as it is very confusing to
understand large set of metrics. Metrics should also be
uniform and everybody in team should agree with it.
• 2.) Tracking test metrics
After defining the metrics the next step is to track the
metrics. Since tracking is a constant activity so its always
nice to automate the tracking part. Automation reduces
time required to track the metrics, analyze them and
measure them.
• 3.) Reporting
Reporting of the metrics is the most important step, you
should report test metrics to stakeholders so that they
have clear picture of project progress.
Problem Analysis
• Problem analysis is the process of understanding
real-world problems and user needs and
proposing solutions to meet those needs.
• A problem can be defined as the difference
between things as perceived and things as desired.
– “what is” vs. “what should be”
– “what is given” vs. “what is needed”
• The goal of problem analysis is to gain a better
understanding of the problem being solved before
development begins.
The Five Steps in Problem Analysis
1. Gain agreement on the problem definition.
2. Understand the root causes—the problem
behind the problem.
3. Identify the stakeholders and the users.
4. Define the solution system boundary.
5. Identify the constraints to be imposed on the
solution.
Requirement specification
ThankYou&
KeepLearning!
?Follow us :
You can find me at
https://www.linkedin.com/in/drkamalgulati/
https://mybigdataanalytics.in/
https://www.facebook.com/DrKamalGulatiBig
DATA/

More Related Content

PDF
Soft engg introduction and process models
PPTX
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
PPTX
Beit 381 se lec 5, 6, 7 & 8 - 69 - 12 feb21,22,28,29 - sw process 1-3 sdlc m...
PPTX
Fundamentals of software development
PPTX
Chapter 2 software process models
PPTX
Software Engineering by Pankaj Jalote
Soft engg introduction and process models
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Beit 381 se lec 5, 6, 7 & 8 - 69 - 12 feb21,22,28,29 - sw process 1-3 sdlc m...
Fundamentals of software development
Chapter 2 software process models
Software Engineering by Pankaj Jalote

What's hot (20)

PPTX
Process model in SE
PPT
Intoduction to software engineering part 2
PDF
Software management framework
PPT
Software Engineering (Testing Overview)
DOCX
System development life cycle
PPT
Software Engineering 2 lecture slide
DOC
SOFTWARE ENGINEERING
PDF
CP7301 Software Process and Project Management notes
PPTX
Software Engineering concept
PDF
Process improvement & service oriented software engineering
PPT
eUnit 2 software process model
PPT
Software Engineering (Process Models)
PPTX
Software process
PPT
PPT
Software Engineering Fundamentals
PDF
Introduction to Software Engineering
PPTX
Software maintenance Unit5
PPSX
DISE - Introduction to Software Engineering
PPSX
Software Development
Process model in SE
Intoduction to software engineering part 2
Software management framework
Software Engineering (Testing Overview)
System development life cycle
Software Engineering 2 lecture slide
SOFTWARE ENGINEERING
CP7301 Software Process and Project Management notes
Software Engineering concept
Process improvement & service oriented software engineering
eUnit 2 software process model
Software Engineering (Process Models)
Software process
Software Engineering Fundamentals
Introduction to Software Engineering
Software maintenance Unit5
DISE - Introduction to Software Engineering
Software Development
Ad

Similar to Models of SDLC (Contd..) & Feasibility Study (20)

PPT
Process models
PDF
Software development life cycle
PPTX
Structured system analysis and design
PPT
Software Process Model.ppt
PPTX
Introduction to Software Engineering and Software Process Models
PDF
Software Engineering Perspective and Specialized Process Models
PPTX
Lecture-3 The Software Processsssss.pptx
PPTX
software engineering SOFTWARE PROCESS MODELS.pptx
PDF
Software vjhghjjkhjkkkghhjhEngineering.pdf
PDF
Effort Distribution on Waterfall and Agile
PPTX
Software development models and all about this topic
DOCX
MODELS USED IN SOFTWARE DEVELOPMENT
PPTX
Lec 3-4.pptx software process and sdlc models
PPTX
Basics of Object-Oriented SE (OOSE).....
PPTX
4. LIFECYCLE DATABASE DVP LIFECYCLE.pptx
PPTX
Software Development Process Models in Software Engineering.pptx
PPTX
Software cycles
PPTX
Software cycles
PPT
Process Model in Software Engineering.ppt
PPTX
ISTQB - Software development life cycle
Process models
Software development life cycle
Structured system analysis and design
Software Process Model.ppt
Introduction to Software Engineering and Software Process Models
Software Engineering Perspective and Specialized Process Models
Lecture-3 The Software Processsssss.pptx
software engineering SOFTWARE PROCESS MODELS.pptx
Software vjhghjjkhjkkkghhjhEngineering.pdf
Effort Distribution on Waterfall and Agile
Software development models and all about this topic
MODELS USED IN SOFTWARE DEVELOPMENT
Lec 3-4.pptx software process and sdlc models
Basics of Object-Oriented SE (OOSE).....
4. LIFECYCLE DATABASE DVP LIFECYCLE.pptx
Software Development Process Models in Software Engineering.pptx
Software cycles
Software cycles
Process Model in Software Engineering.ppt
ISTQB - Software development life cycle
Ad

More from Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU (20)

PPTX
Concept of Governance - Management of Operational Risk for IT Officers/Execut...
PPTX
CLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKET
PPT
Evolution and History of Programming Languages - Software/Hardware/System
Concept of Governance - Management of Operational Risk for IT Officers/Execut...
CLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKET
Evolution and History of Programming Languages - Software/Hardware/System

Recently uploaded (20)

PPTX
Cell Structure & Organelles in detailed.
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PPTX
Cell Types and Its function , kingdom of life
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
Basic Mud Logging Guide for educational purpose
PDF
RMMM.pdf make it easy to upload and study
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
Institutional Correction lecture only . . .
PDF
Business Ethics Teaching Materials for college
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
Complications of Minimal Access Surgery at WLH
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
Classroom Observation Tools for Teachers
Cell Structure & Organelles in detailed.
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Cell Types and Its function , kingdom of life
O7-L3 Supply Chain Operations - ICLT Program
VCE English Exam - Section C Student Revision Booklet
Basic Mud Logging Guide for educational purpose
RMMM.pdf make it easy to upload and study
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Anesthesia in Laparoscopic Surgery in India
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
O5-L3 Freight Transport Ops (International) V1.pdf
Institutional Correction lecture only . . .
Business Ethics Teaching Materials for college
STATICS OF THE RIGID BODIES Hibbelers.pdf
Complications of Minimal Access Surgery at WLH
Week 4 Term 3 Study Techniques revisited.pptx
Microbial diseases, their pathogenesis and prophylaxis
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
Classroom Observation Tools for Teachers

Models of SDLC (Contd..) & Feasibility Study

  • 1. Software Engineering Dr. Kamal Gulati (Part 3) – Models of SDLC (Contd..) & Feasibility Study
  • 2. Contents 1. Iterative model 2. Advantages of Iterative model 3. Disadvantages of Iterative model 4. When to use iterative model 5. Spiral Model 6. Advantages of Spiral model 7. Disadvantages of Spiral model 8. When to use Spiral model 9. Role of Management in Software Development
  • 4. • An iterative life cycle model does not attempt to start with a full specification of requirements. • Instead, development begins by specifying and implementing just part of the software, which can then be reviewed in order to identify further requirements. • This process is then repeated, producing a new version of the software for each cycle of the model.
  • 6. For Example: • In the diagram above when we work iteratively we create rough product or product piece in one iteration, then review it and improve it in next iteration and so on until it’s finished. As shown in the image above, in the first iteration the whole painting is sketched roughly, then in the second iteration colors are filled and in the third iteration finishing is done. Hence, in iterative model the whole product is developed step by step.
  • 7. Advantages of Iterative model • In iterative model we can only create a high-level design of the application before we actually begin to build the product and define the design solution for the entire product. Later on we can design and built a skeleton version of that, and then evolved the design based on what had been built. • In iterative model we are building and improving the product step by step. Hence we can track the defects at early stages. This avoids the downward flow of the defects. • In iterative model we can get the reliable user feedback. When presenting sketches and blueprints of the product to users for their feedback, we are effectively asking them to imagine how the product will work. • In iterative model less time is spent on documenting and more time is given for designing.
  • 8. Disadvantages of Iterative model • Each phase of an iteration is rigid with no overlaps • Costly system architecture or design issues may arise because not all requirements are gathered up front for the entire lifecycle
  • 9. When to use iterative model: • Requirements of the complete system are clearly defined and understood. • When the project is big. • Major requirements must be defined; however, some details can evolve with time.
  • 11. • The spiral model is similar to the incremental model, with more emphasis placed on risk analysis. 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 spirals builds on the baseline spiral
  • 12. • Planning Phase: Requirements are gathered during the planning phase. Requirements like ‘BRS’ that is ‘Business Requirement Specifications’ and ‘SRS’ that is ‘System Requirement specifications’. • Risk Analysis: 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. If any risk is found during the risk analysis then alternate solutions are suggested and implemented. • Engineering Phase: In this phase software is developed, along with testing at the end of the phase. Hence in this phase the development and testing is done. • Evaluation phase: This phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral.
  • 14. Spiral development • Process is represented as a spiral rather than as a sequence of activities with backtracking. • Each loop in the spiral represents a phase in the process. • No fixed phases such as specification or design - loops in the spiral are chosen depending on what is required. • Risks are explicitly assessed and resolved throughout the process.
  • 15. Spiral model of the software process
  • 16. Spiral model sectors • Objective setting – Specific objectives for the phase are identified. • Risk assessment and reduction – Risks are assessed and activities put in place to reduce the key risks. • Development and validation – A development model for the system is chosen which can be any of the generic models. • Planning – The project is reviewed and the next phase of the spiral is planned.
  • 17. Advantages of Spiral model • High amount of risk analysis hence, avoidance of Risk is enhanced. • Good for large and mission-critical projects. • Strong approval and documentation control. • Additional Functionality can be added at a later date. • Software is produced early in the software life cycle.
  • 18. Disadvantages of Spiral model • Can be a costly model to use. • Risk analysis requires highly specific expertise. • Project’s success is highly dependent on the risk analysis phase. • Doesn’t work well for smaller projects.
  • 19. When to use Spiral model • When costs and risk evaluation is important • For medium to high-risk projects • Long-term project commitment unwise because of potential changes to economic priorities • Users are unsure of their needs • Requirements are complex • New product line • Significant changes are expected (research and exploration)
  • 20. Role of Management in Software Development • Proper management is an integral part of software development. • A large software development project involves many people working for a long period of time. We have seen that a development process typically partitions the problem of developing software into a set of phases.
  • 21. • To meet the cost, quality, and schedule objectives, resources have to be properly allocated to each activity for the project, and progress of different activities has to be monitored and corrective actions taken, if needed. • For a large project, a proper management process is essential for success. The activities in the management process for a project can be grouped broadly into three phases:- • I Planning • II Monitoring and control • III Termination analysis
  • 22. Planning • Project management begins with planning, which is perhaps the single largest responsibility of the project management. • The goal of this phase is to develop a plan for software development following which the objectives of the project can be met successfully and efficiently. • Project monitoring and control phase of the management process is the longest in terms of duration. It encompasses most of the development process.
  • 23. Monitoring and control • It includes all activities the project management has to perform while the development is going on to ensure that project objectives are met and the development proceeds according to the developed plan. As cost, schedule, and quality are the major driving forces, most of the activity of this phase revolves around monitoring factors that affect them.
  • 24. Termination analysis • Termination analysis is performed when the development process is over. The basic reason for performing termination analysis is to provide information about the development process. Remember that a project is an instantiation of the process. To understand the properties of the process, data from many projects that used the process can be used to make predictions and estimations about future projects. The data about the project is also needed to analyze the process.
  • 25. Role of Matrices and Measurement • During all the software development life cycle it is very important to apply metrics and measurement because metrics and measurement set expectations. • If there are well established metrics and measurements in project then the test analyst can easily track and report quality results to the management.
  • 26. You can consider some the following areas where you can apply metrics and measurement. • Schedule of project • Coverage • Planned & actual cost • Workload & resource usage • Product risk & project risk • Defects
  • 27. Three Main Areas to check about Metrics and Measurement. • 1.) Defining Test Metrics: Small and quality set of metrics should be chosen, large set of metrics should be avoided as it is very confusing to understand large set of metrics. Metrics should also be uniform and everybody in team should agree with it. • 2.) Tracking test metrics After defining the metrics the next step is to track the metrics. Since tracking is a constant activity so its always nice to automate the tracking part. Automation reduces time required to track the metrics, analyze them and measure them. • 3.) Reporting Reporting of the metrics is the most important step, you should report test metrics to stakeholders so that they have clear picture of project progress.
  • 28. Problem Analysis • Problem analysis is the process of understanding real-world problems and user needs and proposing solutions to meet those needs. • A problem can be defined as the difference between things as perceived and things as desired. – “what is” vs. “what should be” – “what is given” vs. “what is needed” • The goal of problem analysis is to gain a better understanding of the problem being solved before development begins.
  • 29. The Five Steps in Problem Analysis 1. Gain agreement on the problem definition. 2. Understand the root causes—the problem behind the problem. 3. Identify the stakeholders and the users. 4. Define the solution system boundary. 5. Identify the constraints to be imposed on the solution.
  • 31. ThankYou& KeepLearning! ?Follow us : You can find me at https://www.linkedin.com/in/drkamalgulati/ https://mybigdataanalytics.in/ https://www.facebook.com/DrKamalGulatiBig DATA/