SlideShare a Scribd company logo
1 of 26
OHT 7.1
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Chapter 7.1
OHT 7.2
Galin, SQA from theory to implementation © Pearson Education Limited 2004
• Software development methodologies:
- The software development life cycle (SDLC) model
- The prototyping model
- The spiral model
- The object-oriented model
• Factors affecting intensity of SQA activities
• Verification, validation and qualification
• Development and quality plans for small and for internal
projects
• A model for SQA defect removal effectiveness and cost
Chapter 7
OHT 7.3
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Introduction
•  We will start off talking about (in some
cases reviewing) popular development
models
• Will switch to discussion how SQA
activities are handled within the
development process, and
• Factors that need to be considered before
applying these activities…
• So, why this approach?
OHT 7.4
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Introduction
• Why discuss the models?
• Answer: They represent the framework of a
disciplined approach to development.
– Have milestones, deliverables, constraints, etc.
• SQA must take place in conjunction with the
completing of these activities or looking at the
work products produced from these activities.
• Need to understand the models before we can
produce plans that are integrated into these
models.
OHT 7.5
Galin, SQA from theory to implementation © Pearson Education Limited 2004
1. Classic and Other Software Development
Methodologies
• Will discuss
– The Software Development Life Cycle (SDLC)
– The prototyping model
– The spiral model
– The OO model
OHT 7.6
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• The ‘classic mode.’
– Still in WIDE use today.
– Captures the major building blocks in development
– Linear sequence
– Highly structured; plan-driven; Heavy-weight process
– Product delivered for evaluation and deployment at the
end of development and testing
– Big bang approach
– Used for major projects of length
– But serves as a framework for other models…
OHT 7.7
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Prototyping Model
• Replaces some of the parts of the SDLC with an
evolutionary and iterative process.
• Software prototypes are repeatedly provided to
customer for evaluation and feedback.
– Primarily iterate design and implementation.
– Development team provided requirements.
• Ultimately, the product reaches a satisfactory
completion.
• Then, the remainder of the process is carried out
in the context of another model, such as SDLC
OHT 7.8
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Spiral Model
• Uses an iterative approach designed to address each phases in
development by obtaining customer comments and change,
risk analysis, and resolution.
• The spiral model typically has a ‘spiral’ for each of the
traditional development phases.
• Within a cycle, specific engineering (design, development, etc.)
can take place using any other models, like SDLC, prototyping,..
• The Spiral Model (Barry Boehm) is a risk-centered
development model where each spiral includes major risk
activities / assessments.
• Was developed after SDLC in response to delayed risk in SDLC
• As the SDLC, it is considered a heavy-weight, plan-driven
methodology and is highly structured.
OHT 7.9
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The Object-Oriented Model
• Emphasis here is re-usability via reusable
objects and components.
• Component-based software development.
• For non-available components, developer may
– prototype needed modules,
– use an SDLC approach,
– purchase libraries of objects,
– develop ‘his’ own, etc.
OHT 7.10
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Now, in a bit more detail…
OHT 7.11
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• Requirements
Definition: done by
customers
• Analysis: analyze
requirements to form an
initial software model
• Design: Detailed
definition of
inputs/outputs and
processes including data
structures, software
structure, etc.
OHT 7.12
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• Coding: Design
translated into code.
– Coding includes SQA
activities such as
inspections, unit tests and
integration tests
– Many takeoffs from this:
These tests done by
developers: individual
(unit), group or team
(integration tests….)
OHT 7.13
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• System Tests: Goal: to
discover errors / correct
errors to achieve an
acceptable level of
quality. Carried out by
developers prior to
delivery.
• Sometimes ‘acceptance
tests’ carried out by
customer or in
conjunction with
developer
OHT 7.14
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• Installation / Conversion:
– After testing, system is
installed and/or replaces an
existing system;
– Requires software / data
conversion
– Important to not interrupt
daily activities during
conversion process.
• Install incrementally, run in
parallel; turn switch and
live with it, etc.
OHT 7.15
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The SDLC
• Operations and
Maintenance:
– Hopefully done for years.
– Maintenance:
• Corrective
• Adaptive
• Perfective
• Lots of variations to the
classic SDLC many in
response to problems….
• Notice the feedback
loops?
OHT 7.16
Galin, SQA from theory to implementation © Pearson Education Limited 2004
OHT 7.17
Galin, SQA from theory to implementation © Pearson Education Limited 2004
OHT 7.18
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The Prototyping Model
• One main idea behind prototyping is for the
development of fast prototypes and
customer availability for feedback.
• Often prototyping tools are used to help
• Developers respond to feedback and add
additional parts as application evolves into
an acceptable product.
• Recognize this process can be inserted into
the SDLC or other models.
OHT 7.19
Galin, SQA from theory to implementation © Pearson Education Limited 2004
REQUI REMENTS
DETERMI NATI ON
BY CUSTOMER
PROTOTYPE
DESI GM
PROTOTYPE
I MPLEMENTATI ON
SYSTEM CONVERSI ON
PROTOTYPE
EVALUATI ON
BY CUSTOMER
SYSTEM OPERATI ON
AND MAI NTENANCE
REQUI REMENTS FOR
CORRECTI ONS, CHANGES
AND ADDI TI ONS
REQUI REMENTS
FULFI LLED ?
SYSTEM TESTS AND
ACCEPTANCE TESTS
NO
YES
A good approach for small to
medium-sized projects.
Very important: customer involvement.
OHT 7.20
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Prototyping Model - more
• Advantages (book)
– Shorter development process
– Substantial savings in development resources (time)
– Better fit to customer requirements and reduced risk
of project failure
– Easier and faster user comprehension of new system
• Disadvantages
– Less flexibility and adaptability to changes and
additions
– Reduced preparation for unexpected instances of
failure
OHT 7.21
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The Spiral Model
• A heavy-weight, plan-driven, highly-
structured approach for large projects.
• Especially designed for those with higher
chances of failure.
• Combines iterative model, emphasizes risk
assessment, customer participation,
prototyping, and more
• Definitely an iterative process.
OHT 7.22
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Source: After Boehm 1988 (© 1988 IEEE)
Can see each spiral
includes:
Planning
Risk Analysis / Resolution
Engineering activities
(design, code, test…)
Customer Evaluation
(errors, changes, new
requirements…)
OHT 7.23
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Source: After Boehm 1998 (© 1988 IEEE)
Revised Spiral Model provides
customer with improved chances
for changes;
developer better chances to stay
within budget and time.
Done by increased emphasis on
customer participation and
on engineering activities.
Extra sections in spiral
dedicated to customer actions
and developer engineering
OHT 7.24
Galin, SQA from theory to implementation © Pearson Education Limited 2004
The Object-Oriented Model
• Easy integration of existing software modules (objects
/ components) into newly developed software systems.
• Process begins with OOA and OOD
• Then, acquire suitable components from reusable
software component libraries (or purchase them).
• Otherwise, develop as needed.
• Can involve adding to repertoire of library components.
• Economy: integrating reusable components; much
lower cost than developing
• Improved quality – using tested components
• Shorter development times: integration of reusable
software components.
OHT 7.25
Galin, SQA from theory to implementation © Pearson Education Limited 2004
OHT 7.26
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Now, onto
Factors Affecting the Intensity of Quality
Assurance Activities within the Development
Process…

More Related Content

Similar to CEN6070-Chapter7.1.ppt

Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecycleLee Barnes
 
Agile Project Management
Agile Project Management Agile Project Management
Agile Project Management CUPE_Projects
 
#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN Panigrahi#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN PanigrahiSN Panigrahi, PMP
 
testing throughout the software life cycle
testing throughout the software life cycletesting throughout the software life cycle
testing throughout the software life cycleRiat Rayendra
 
Best practices for fusion hcm cloud implementation
Best practices for fusion hcm cloud implementationBest practices for fusion hcm cloud implementation
Best practices for fusion hcm cloud implementationmohamed refaei
 
Agile Load Testing in the Real World
Agile Load Testing in the Real WorldAgile Load Testing in the Real World
Agile Load Testing in the Real WorldLee Barnes
 
Phases in Agile Development- 9.pptx
Phases in Agile Development- 9.pptxPhases in Agile Development- 9.pptx
Phases in Agile Development- 9.pptxAlishaFida1
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSuresh Koujalagi
 
IT1204- Software Engineering - L2
IT1204- Software Engineering - L2IT1204- Software Engineering - L2
IT1204- Software Engineering - L2BakerTilly US
 
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.pptloloka1
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
An Introduction to Agile
An Introduction to AgileAn Introduction to Agile
An Introduction to AgileDavidMcLachlan1
 

Similar to CEN6070-Chapter7.1.ppt (20)

Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile Lifecycle
 
PM_210 (1).pptx
PM_210 (1).pptxPM_210 (1).pptx
PM_210 (1).pptx
 
Agile Project Management
Agile Project Management Agile Project Management
Agile Project Management
 
System Development Life Cycle (SDLC) - Part II
System Development Life Cycle (SDLC) - Part IISystem Development Life Cycle (SDLC) - Part II
System Development Life Cycle (SDLC) - Part II
 
#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN Panigrahi#Fundamental understanding of agile - By SN Panigrahi
#Fundamental understanding of agile - By SN Panigrahi
 
testing throughout the software life cycle
testing throughout the software life cycletesting throughout the software life cycle
testing throughout the software life cycle
 
ID, UP, & RUP.pptx
ID, UP, & RUP.pptxID, UP, & RUP.pptx
ID, UP, & RUP.pptx
 
Best practices for fusion hcm cloud implementation
Best practices for fusion hcm cloud implementationBest practices for fusion hcm cloud implementation
Best practices for fusion hcm cloud implementation
 
Software Process Model
Software Process ModelSoftware Process Model
Software Process Model
 
Agile Load Testing in the Real World
Agile Load Testing in the Real WorldAgile Load Testing in the Real World
Agile Load Testing in the Real World
 
Phases in Agile Development- 9.pptx
Phases in Agile Development- 9.pptxPhases in Agile Development- 9.pptx
Phases in Agile Development- 9.pptx
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
SDLC - Software Development Life Cycle
SDLC - Software Development Life CycleSDLC - Software Development Life Cycle
SDLC - Software Development Life Cycle
 
IT1204- Software Engineering - L2
IT1204- Software Engineering - L2IT1204- Software Engineering - L2
IT1204- Software Engineering - L2
 
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
 
SDLC Final (1)
SDLC Final (1)SDLC Final (1)
SDLC Final (1)
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014
 
An Introduction to Agile
An Introduction to AgileAn Introduction to Agile
An Introduction to Agile
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 

Recently uploaded

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
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
 
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
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
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
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 

Recently uploaded (20)

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
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
 
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
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
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
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 

CEN6070-Chapter7.1.ppt

  • 1. OHT 7.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 7.1
  • 2. OHT 7.2 Galin, SQA from theory to implementation © Pearson Education Limited 2004 • Software development methodologies: - The software development life cycle (SDLC) model - The prototyping model - The spiral model - The object-oriented model • Factors affecting intensity of SQA activities • Verification, validation and qualification • Development and quality plans for small and for internal projects • A model for SQA defect removal effectiveness and cost Chapter 7
  • 3. OHT 7.3 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Introduction •  We will start off talking about (in some cases reviewing) popular development models • Will switch to discussion how SQA activities are handled within the development process, and • Factors that need to be considered before applying these activities… • So, why this approach?
  • 4. OHT 7.4 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Introduction • Why discuss the models? • Answer: They represent the framework of a disciplined approach to development. – Have milestones, deliverables, constraints, etc. • SQA must take place in conjunction with the completing of these activities or looking at the work products produced from these activities. • Need to understand the models before we can produce plans that are integrated into these models.
  • 5. OHT 7.5 Galin, SQA from theory to implementation © Pearson Education Limited 2004 1. Classic and Other Software Development Methodologies • Will discuss – The Software Development Life Cycle (SDLC) – The prototyping model – The spiral model – The OO model
  • 6. OHT 7.6 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • The ‘classic mode.’ – Still in WIDE use today. – Captures the major building blocks in development – Linear sequence – Highly structured; plan-driven; Heavy-weight process – Product delivered for evaluation and deployment at the end of development and testing – Big bang approach – Used for major projects of length – But serves as a framework for other models…
  • 7. OHT 7.7 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Prototyping Model • Replaces some of the parts of the SDLC with an evolutionary and iterative process. • Software prototypes are repeatedly provided to customer for evaluation and feedback. – Primarily iterate design and implementation. – Development team provided requirements. • Ultimately, the product reaches a satisfactory completion. • Then, the remainder of the process is carried out in the context of another model, such as SDLC
  • 8. OHT 7.8 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Spiral Model • Uses an iterative approach designed to address each phases in development by obtaining customer comments and change, risk analysis, and resolution. • The spiral model typically has a ‘spiral’ for each of the traditional development phases. • Within a cycle, specific engineering (design, development, etc.) can take place using any other models, like SDLC, prototyping,.. • The Spiral Model (Barry Boehm) is a risk-centered development model where each spiral includes major risk activities / assessments. • Was developed after SDLC in response to delayed risk in SDLC • As the SDLC, it is considered a heavy-weight, plan-driven methodology and is highly structured.
  • 9. OHT 7.9 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The Object-Oriented Model • Emphasis here is re-usability via reusable objects and components. • Component-based software development. • For non-available components, developer may – prototype needed modules, – use an SDLC approach, – purchase libraries of objects, – develop ‘his’ own, etc.
  • 10. OHT 7.10 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Now, in a bit more detail…
  • 11. OHT 7.11 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • Requirements Definition: done by customers • Analysis: analyze requirements to form an initial software model • Design: Detailed definition of inputs/outputs and processes including data structures, software structure, etc.
  • 12. OHT 7.12 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • Coding: Design translated into code. – Coding includes SQA activities such as inspections, unit tests and integration tests – Many takeoffs from this: These tests done by developers: individual (unit), group or team (integration tests….)
  • 13. OHT 7.13 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • System Tests: Goal: to discover errors / correct errors to achieve an acceptable level of quality. Carried out by developers prior to delivery. • Sometimes ‘acceptance tests’ carried out by customer or in conjunction with developer
  • 14. OHT 7.14 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • Installation / Conversion: – After testing, system is installed and/or replaces an existing system; – Requires software / data conversion – Important to not interrupt daily activities during conversion process. • Install incrementally, run in parallel; turn switch and live with it, etc.
  • 15. OHT 7.15 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The SDLC • Operations and Maintenance: – Hopefully done for years. – Maintenance: • Corrective • Adaptive • Perfective • Lots of variations to the classic SDLC many in response to problems…. • Notice the feedback loops?
  • 16. OHT 7.16 Galin, SQA from theory to implementation © Pearson Education Limited 2004
  • 17. OHT 7.17 Galin, SQA from theory to implementation © Pearson Education Limited 2004
  • 18. OHT 7.18 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The Prototyping Model • One main idea behind prototyping is for the development of fast prototypes and customer availability for feedback. • Often prototyping tools are used to help • Developers respond to feedback and add additional parts as application evolves into an acceptable product. • Recognize this process can be inserted into the SDLC or other models.
  • 19. OHT 7.19 Galin, SQA from theory to implementation © Pearson Education Limited 2004 REQUI REMENTS DETERMI NATI ON BY CUSTOMER PROTOTYPE DESI GM PROTOTYPE I MPLEMENTATI ON SYSTEM CONVERSI ON PROTOTYPE EVALUATI ON BY CUSTOMER SYSTEM OPERATI ON AND MAI NTENANCE REQUI REMENTS FOR CORRECTI ONS, CHANGES AND ADDI TI ONS REQUI REMENTS FULFI LLED ? SYSTEM TESTS AND ACCEPTANCE TESTS NO YES A good approach for small to medium-sized projects. Very important: customer involvement.
  • 20. OHT 7.20 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Prototyping Model - more • Advantages (book) – Shorter development process – Substantial savings in development resources (time) – Better fit to customer requirements and reduced risk of project failure – Easier and faster user comprehension of new system • Disadvantages – Less flexibility and adaptability to changes and additions – Reduced preparation for unexpected instances of failure
  • 21. OHT 7.21 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The Spiral Model • A heavy-weight, plan-driven, highly- structured approach for large projects. • Especially designed for those with higher chances of failure. • Combines iterative model, emphasizes risk assessment, customer participation, prototyping, and more • Definitely an iterative process.
  • 22. OHT 7.22 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Source: After Boehm 1988 (© 1988 IEEE) Can see each spiral includes: Planning Risk Analysis / Resolution Engineering activities (design, code, test…) Customer Evaluation (errors, changes, new requirements…)
  • 23. OHT 7.23 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Source: After Boehm 1998 (© 1988 IEEE) Revised Spiral Model provides customer with improved chances for changes; developer better chances to stay within budget and time. Done by increased emphasis on customer participation and on engineering activities. Extra sections in spiral dedicated to customer actions and developer engineering
  • 24. OHT 7.24 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The Object-Oriented Model • Easy integration of existing software modules (objects / components) into newly developed software systems. • Process begins with OOA and OOD • Then, acquire suitable components from reusable software component libraries (or purchase them). • Otherwise, develop as needed. • Can involve adding to repertoire of library components. • Economy: integrating reusable components; much lower cost than developing • Improved quality – using tested components • Shorter development times: integration of reusable software components.
  • 25. OHT 7.25 Galin, SQA from theory to implementation © Pearson Education Limited 2004
  • 26. OHT 7.26 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Now, onto Factors Affecting the Intensity of Quality Assurance Activities within the Development Process…