SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
General Idea of Iterative
 Models- Spiral Model

         CS 641
   13 September 2001
      Presented by
Matt Heusser & Tabrez Sait
What is “Process”?
Waterfall Model – Revisited




• Disadvantages of Waterfall Model
   – 1. Real projects are rarely so straightforward and sequential
   – 2. It is generally not possible to completely define (and
     freeze) all the requirements at the start of the project
   – 3. Problem is discovered in testing?
   – 4. Freight-Train Effect, or Late, or Over-Budget
What is “Wicked Problem”
• Problems we can’t really understand
  until we’ve developed a solution.

• “That is not what I want ... but now I
  know what I do want!”
The Mythical Man Month-
       Dr. Frederick Brooks
•   In software projects, what
    will take one person ten
    months can not be solved by
    ten people in one month.

•   Throwing people onto a late
    project will just make it later

•   Because of Wicked
    Problems, “Plan to the throw
    one away”
Rapid Prototyping
•   Put together a team of “Smart
    Guys” from multiple disciplines

•   Develop the GUI on Paper

•   Code the GUI in a fast language
    (Make it look like it’s working)
                                       <=Requirements=>
                                           **<=Prototype=>**
•   Show it to the USERS (A Picture
    is worth a 1,000 words)                     <=Design=>
                                                     <=Code=>

•   Get Feedback                                          <=Test=>
                                                                <=Deploy=>
Case Study- RAD
              Grand Community Calendar Project

– Project Manager, Developer, Community
  Members write user requirements
– Coder writes sample HTML
– Shows the web page; heads bob, some
  changes to navigation
– DBA, Coder, Project Manager determine the
  architecture (Design)
– Coding & Review
– Shifting Requirements priced project out-of-
  budget
Problems With Prototyping
•   No “Current” Documents


•   Functional Spec is Prototype +
    Feedback


•   Prototype is not “baseline”
    functionality


•   Same problems with Functional
    Spec as waterfall!
Prototyping Part II:
       The Rigged Demo
• Re-Visit and improve
  the prototype to serve     Listen To
  as a “baseline”            Customer

• Turns prototype into a
  “rigged demo”                          Build/Revise
                                           Mockup
                     Customer Test
• Show that to the
                     Drives Mockup
  customer
At the Demo Dialogue
• Customer:“This looks great, and it looks like you’re about
  done. When can we have it?”
• Developer: “Uh, it’s only a prototype – we plan to throw it
  away and start over.”
• Customer: “No – this is exactly what we need, and we need
  it now! We’ll take 50 prototypes!”
–   The Sales Guy begins to see $$
    signs.
–   Under Rigged Demo scenarios,
    there is either a lot of wasted effort,
    or prototypes that were never
    intended to ship end up shoved into
    production.
Case Studies
    Multi-Stage Prototyping
•    Telecommunication
      – The prototype made the sale!
      – Was pushed into production
      – From user requirements to “Ship”ing in 4 month
      – Errors, Bugs, High Turn-Over
      – Had to support bug fixes plus “incremental” change
•    Visual Product Explorer
      – Prototype created for internal consumption
      – Feedback Cycle
      – Modified for trade demo
      – Next step: How do we write the spec?
      – Product is the spec; shove it into production!
Iterative Models
                       What’s an Iteration?




•   Iterative Design: Code as much as you can questions surface, then start
    over.
•   Every model we’ll talk about below is a variation on the Iterative Model.
Spiral Model
Determine                      Evaluate
objectives,                    alternatives,
alternatives,                  identify and
constraints                    resolve risks




Plan next                      Develop verify
phases                         next level
                               product
Risk Assessment
• Spiral Model – risk driven rather
  than document driven
• The "risk" inherent in an activity is
  a measure of the uncertainty of the
  outcome of that activity
• High-risk activities cause schedule
  and cost overruns
• Risk is related to the amount and
  quality of available information.
  The less information, the higher
  the risk
• What happened with Denver
  Airport Luggage System?
Spiral Model
        Strength and Weaknesses
• Strengths
  –    Introduces risk management
  –    Prototyping controls costs
  –    Evolutionary development
  –    Release builds for beta testing
  –    Marketing advantage

• Weaknesses
   –   Lack of risk management experience
   –   Lack of milestones
   –   Management is dubious of spiral process
   –   Change in Management
   –   Prototype Vs Production
Win Win Spiral Model


• Win-Win Spiral Process Model is a model of a
  process based on Theory W, which is a
  management theory and approach "based on
  making winners of all of the system's key
  stakeholders as a necessary and sufficient
  condition for project success."
WinWin Spiral Model
••Identify Nextproduct & process definitions
    ••Validate commitment holders process
 Identify Stake holders win conditions
     Evaluate Product of Process and
     Reconcile Level Stake
      Define next level & product Alternatives
      Review, Win conditions
Win Win Spiral Cont
• Identifying the system's stakeholders and their
  win conditions and
• reconciling win conditions through negotiation to
  arrive at a mutually satisfactory set of objectives,
  constraints, and alternatives for the next level.
• Evaluate Product and Process Alternatives.
  Resolve Risks
• Define next level of product and process -
  including partitions
• Validate Product and Process Definitions
• Review, commitment
WinWin Spiral-
    Anchor Points

• Life Cycle Objective(LCO)
  – What should the system accomplish?
• Life Cycle Architecture(LCA)
  – What is the structure of the system?
• Initial Operational Capability(IOC)
  – The first released version
Contents of
 LCO and
   LCA
milestones
Key Elements of IOC Milestone
• Software preparation
  – Including both operational and support software with
    appropriate commentary and documentation
  – data preparation or conversion
  – the necessary licenses and rights
• Site preparation
  – including facilities, equipment, supplies and vendor
    support
• User, Operator and Maintenance preparation
  – including selection
  – team building
  – training
Win Win Spiral - Case Study

 • Extending USC Integrated Library System to access
   multimedia
   – Flexibility and Discipline let the projects teams adapt to
     challenges while staying on schedule
   – Use of risk management helped team focus on CSF for their
     projects
   – One cycle for each milestone
   – Communication and trust between stakeholders, shared vision
   – Don’t finish negotiations before prototyping
   – Client acceptance
Another Extreme
               CleanRoom Methodologies
•   From Hardware Cleanrooms
•   An incremental process that encourages continuous improvement;
•   Technical reviews that prevent defects and significantly reduce
    costs
•   Design and coding practices that make it easy to adapt as
    requirements change

•   Testing techniques that focus on
    measuring quality;
•   Solution-oriented teams that encourage
    cooperation, reduce the dependence on
    "gurus," and promote flexibility
•   Documentation structures that reveal
    the big picture and help team members
    maintain intellectual control.
Clean Room Continued




•  REAL Peer Review Mathematical proof of correctness
  (Challenges associated with it?)
• Functional Specifications as Box Diagrams (State, Black, Clear)
Yet Another Extreme: Hacking
• Hacking:
   – Code ‘n Fix
   – More Common than you thought
• Makes Sense for:
   –   Low-Risk, Small Project
   –   We know exactly what we want (not “Wicked”)
   –   Use once, then throw away
   –   Bugs can be tolerated/fixed
• Problem:
   – “Why not just re-use Hack X here with change Y …”
   – Hack Code is hard to maintain, but appealing from a
     management perspective.
• Case Study:
   – I’m guessing … just about every project you ever did as an
     undergraduate. 
Summary
              Summary



• Waterfall
   – good for budgeting, but doesn’t analyze risk or have a
     good way to manage errors found later in the process.
• Iterative
   – Models attempt to solve this by coding “as far as
     possible”, gathering feedback, and coding again..
   – Prototyping “Plan to throw one away”, then re-build it
     “right.”
   – Incremental (“Staged”) Delivery Builds the software
     by a series of waterfalls
Summary




• Spiral:
   – Addresses Risk at every stage & let the
     stakeholders determine the outcome.
• Win/Win
   – Seeks ways to provide customer feedback through
     anchor points, manages risk for management, and
     provides win conditions for developers.
• Cleanroom / Hacking
   – Are alternative models that work for large projects
     that must work right the first time, and small
     projects with little risk.
Resources
•   Generally Interesting Theories for REAL-WORLD Development:
•   Wicked Problems/State of Coding:
    – http://www.unidata.ucar.edu/staff/caron/collab/wicked.html
    – http://www.chc-3.com/pub/beautifulsoftware.htm         
•   Mythical Man Month
    – (
      http://www.amazon.com/exec/obidos/ASIN/0201835959/ref=bxgy_sr_text_a
      )
•   Code Complete
    – (
      http://www.amazon.com/exec/obidos/ASIN/1556154844/ref=bxgy_sr_text_a
      )
•   Joel Spolsky on Real-World Software Development
    – http://www.joelonsoftware.com
•   Software Engineering, A Practitioner’s Approach
    – http://www.mhhe.com/engcs/compsci/pressman/
Resources (2)
•   Spiral Model
     – Using the WinWin Spiral Model: A case study, Boehm Barry, July
       1998, Computer
•   Spiral Development workshop
     – www.sei.cmu.edu/cbs/spiral2000/february2000/BoehmSR.html
•   Anchoring the Software Process, Boehm Barry
     – http://www.csis.gvsu.edu/~ferguson/classes/cs641/papers/ASP.pdf
•   Denver Airport Project
     – http://www.time.com/time/magazine/archive/1994/940516/940516.tr
       ansportation.html
•   Cleanroom Model
     – http://www.cleansoft.com/cleansoft_mgrguide.html
     – http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr022.96.pdf
•   Hacking
     – http://www.plethora.net/~seebs/faqs/hacker.html
Homework
• Objective Question
   – One major difference between
     the Waterfall and iterative
     models is that the iterative
     models address risk. How do
     they do that?
• Subjective Question
   – Which of these models is the
     best for the Customer? The
     Seller? Why?

Mais conteúdo relacionado

Mais procurados

ERP implementation
ERP implementationERP implementation
ERP implementationSourabh Jain
 
Lecture 1 introduction to software engineering 1
Lecture 1   introduction to software engineering 1Lecture 1   introduction to software engineering 1
Lecture 1 introduction to software engineering 1IIUI
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Gurpreet singh
 
Implementation & Evaluation of MIS
Implementation & Evaluation of MISImplementation & Evaluation of MIS
Implementation & Evaluation of MISManoj Kumar
 
Collective bargaining
Collective bargainingCollective bargaining
Collective bargainingparags06
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering noteNeelamani Samal
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering ProcessesRa'Fat Al-Msie'deen
 
Modern Systems Analysis and Design 6th Edition Hoffer Test Bank
Modern Systems Analysis and Design 6th Edition Hoffer Test BankModern Systems Analysis and Design 6th Edition Hoffer Test Bank
Modern Systems Analysis and Design 6th Edition Hoffer Test BankLivingstonne
 

Mais procurados (20)

Modelling and simulation
Modelling and simulationModelling and simulation
Modelling and simulation
 
Trade Unions
Trade Unions Trade Unions
Trade Unions
 
Trade union
Trade unionTrade union
Trade union
 
Unit iii mis
Unit iii mis Unit iii mis
Unit iii mis
 
ERP implementation
ERP implementationERP implementation
ERP implementation
 
Lecture 1 introduction to software engineering 1
Lecture 1   introduction to software engineering 1Lecture 1   introduction to software engineering 1
Lecture 1 introduction to software engineering 1
 
State and industrial relations
State and industrial relationsState and industrial relations
State and industrial relations
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
 
Use Case Modeling
Use Case ModelingUse Case Modeling
Use Case Modeling
 
Implementation & Evaluation of MIS
Implementation & Evaluation of MISImplementation & Evaluation of MIS
Implementation & Evaluation of MIS
 
Collective bargaining
Collective bargainingCollective bargaining
Collective bargaining
 
Employee welfare
Employee welfareEmployee welfare
Employee welfare
 
The role of information system
The role of information system The role of information system
The role of information system
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering note
 
Requirements Engineering Processes
Requirements Engineering ProcessesRequirements Engineering Processes
Requirements Engineering Processes
 
Modern Systems Analysis and Design 6th Edition Hoffer Test Bank
Modern Systems Analysis and Design 6th Edition Hoffer Test BankModern Systems Analysis and Design 6th Edition Hoffer Test Bank
Modern Systems Analysis and Design 6th Edition Hoffer Test Bank
 
End user development
End user developmentEnd user development
End user development
 
Web Engineering
Web EngineeringWeb Engineering
Web Engineering
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERINGSOFTWARE ENGINEERING
SOFTWARE ENGINEERING
 

Destaque

Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentationSayedFarhan110
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanationUmar Farooq
 
The spiral model
The  spiral  modelThe  spiral  model
The spiral modelphatcom10
 
Spiral model
Spiral modelSpiral model
Spiral modelkhuram22
 
Spiral model : System analysis and design
Spiral model : System analysis and designSpiral model : System analysis and design
Spiral model : System analysis and designMitul Desai
 
Unit 1 introduction tosoftengg_mba tech ii year
Unit 1  introduction tosoftengg_mba tech ii yearUnit 1  introduction tosoftengg_mba tech ii year
Unit 1 introduction tosoftengg_mba tech ii yearPreeti Mishra
 
Evolutionary Software Process Module in Easy Terminology by Taha Shahid
Evolutionary Software Process Module in Easy Terminology by Taha ShahidEvolutionary Software Process Module in Easy Terminology by Taha Shahid
Evolutionary Software Process Module in Easy Terminology by Taha ShahidTahaa Shahid
 
Spiral Model - Software Development Life Cycle (SDLC)
Spiral Model - Software Development Life Cycle (SDLC)Spiral Model - Software Development Life Cycle (SDLC)
Spiral Model - Software Development Life Cycle (SDLC)ACM-KU
 
Spiral Model in Software Engineering with Case Study
Spiral Model in Software Engineering with Case StudySpiral Model in Software Engineering with Case Study
Spiral Model in Software Engineering with Case StudySahil Bansal
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 
Introduction of USB 3.1
Introduction of USB 3.1 Introduction of USB 3.1
Introduction of USB 3.1 Rainny Tu
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process modelsTauseef Ahmad
 

Destaque (20)

Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanation
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Spiral model of SDLC
Spiral model of SDLCSpiral model of SDLC
Spiral model of SDLC
 
The spiral model
The  spiral  modelThe  spiral  model
The spiral model
 
Spiral model
Spiral modelSpiral model
Spiral model
 
Spiral model : System analysis and design
Spiral model : System analysis and designSpiral model : System analysis and design
Spiral model : System analysis and design
 
Unit 1 introduction tosoftengg_mba tech ii year
Unit 1  introduction tosoftengg_mba tech ii yearUnit 1  introduction tosoftengg_mba tech ii year
Unit 1 introduction tosoftengg_mba tech ii year
 
Evolutionary Software Process Module in Easy Terminology by Taha Shahid
Evolutionary Software Process Module in Easy Terminology by Taha ShahidEvolutionary Software Process Module in Easy Terminology by Taha Shahid
Evolutionary Software Process Module in Easy Terminology by Taha Shahid
 
Spiral Model - Software Development Life Cycle (SDLC)
Spiral Model - Software Development Life Cycle (SDLC)Spiral Model - Software Development Life Cycle (SDLC)
Spiral Model - Software Development Life Cycle (SDLC)
 
Spiral model by yameen 3001
Spiral model by yameen 3001Spiral model by yameen 3001
Spiral model by yameen 3001
 
Spiral Model in Software Engineering with Case Study
Spiral Model in Software Engineering with Case StudySpiral Model in Software Engineering with Case Study
Spiral Model in Software Engineering with Case Study
 
Spiral Model
Spiral ModelSpiral Model
Spiral Model
 
Spiral model
Spiral modelSpiral model
Spiral model
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Introduction of USB 3.1
Introduction of USB 3.1 Introduction of USB 3.1
Introduction of USB 3.1
 
Spiral Model
Spiral ModelSpiral Model
Spiral Model
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 

Semelhante a 50500113 spiral-model

Final spiralmodel97
Final spiralmodel97Final spiralmodel97
Final spiralmodel97akshay8835
 
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Samuel Chin, PMP, CSM
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleAashima Wadhwa
 
Software process models
Software process modelsSoftware process models
Software process modelsMalik WaQas
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Marvin Heery
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMMubashir Ali
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM WatsonUserTesting
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cyclenayanbanik
 
Session2.ppt
Session2.pptSession2.ppt
Session2.pptMehuk1
 

Semelhante a 50500113 spiral-model (20)

Final spiralmodel97
Final spiralmodel97Final spiralmodel97
Final spiralmodel97
 
spiralmodel -1
 spiralmodel -1 spiralmodel -1
spiralmodel -1
 
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
 
1 sdlc model
1 sdlc model1 sdlc model
1 sdlc model
 
what-is-devops.ppt
what-is-devops.pptwhat-is-devops.ppt
what-is-devops.ppt
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Software process models
Software process modelsSoftware process models
Software process models
 
Sdlc
SdlcSdlc
Sdlc
 
Session2
Session2Session2
Session2
 
SDLC
SDLCSDLC
SDLC
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
ddd.ppt
ddd.pptddd.ppt
ddd.ppt
 
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
 

Último

Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 

Último (20)

Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 

50500113 spiral-model

  • 1. General Idea of Iterative Models- Spiral Model CS 641 13 September 2001 Presented by Matt Heusser & Tabrez Sait
  • 3. Waterfall Model – Revisited • Disadvantages of Waterfall Model – 1. Real projects are rarely so straightforward and sequential – 2. It is generally not possible to completely define (and freeze) all the requirements at the start of the project – 3. Problem is discovered in testing? – 4. Freight-Train Effect, or Late, or Over-Budget
  • 4. What is “Wicked Problem” • Problems we can’t really understand until we’ve developed a solution. • “That is not what I want ... but now I know what I do want!”
  • 5. The Mythical Man Month- Dr. Frederick Brooks • In software projects, what will take one person ten months can not be solved by ten people in one month. • Throwing people onto a late project will just make it later • Because of Wicked Problems, “Plan to the throw one away”
  • 6. Rapid Prototyping • Put together a team of “Smart Guys” from multiple disciplines • Develop the GUI on Paper • Code the GUI in a fast language (Make it look like it’s working) <=Requirements=> **<=Prototype=>** • Show it to the USERS (A Picture is worth a 1,000 words) <=Design=> <=Code=> • Get Feedback <=Test=> <=Deploy=>
  • 7. Case Study- RAD Grand Community Calendar Project – Project Manager, Developer, Community Members write user requirements – Coder writes sample HTML – Shows the web page; heads bob, some changes to navigation – DBA, Coder, Project Manager determine the architecture (Design) – Coding & Review – Shifting Requirements priced project out-of- budget
  • 8. Problems With Prototyping • No “Current” Documents • Functional Spec is Prototype + Feedback • Prototype is not “baseline” functionality • Same problems with Functional Spec as waterfall!
  • 9. Prototyping Part II: The Rigged Demo • Re-Visit and improve the prototype to serve Listen To as a “baseline” Customer • Turns prototype into a “rigged demo” Build/Revise Mockup Customer Test • Show that to the Drives Mockup customer
  • 10. At the Demo Dialogue • Customer:“This looks great, and it looks like you’re about done. When can we have it?” • Developer: “Uh, it’s only a prototype – we plan to throw it away and start over.” • Customer: “No – this is exactly what we need, and we need it now! We’ll take 50 prototypes!” – The Sales Guy begins to see $$ signs. – Under Rigged Demo scenarios, there is either a lot of wasted effort, or prototypes that were never intended to ship end up shoved into production.
  • 11. Case Studies Multi-Stage Prototyping • Telecommunication – The prototype made the sale! – Was pushed into production – From user requirements to “Ship”ing in 4 month – Errors, Bugs, High Turn-Over – Had to support bug fixes plus “incremental” change • Visual Product Explorer – Prototype created for internal consumption – Feedback Cycle – Modified for trade demo – Next step: How do we write the spec? – Product is the spec; shove it into production!
  • 12. Iterative Models What’s an Iteration? • Iterative Design: Code as much as you can questions surface, then start over. • Every model we’ll talk about below is a variation on the Iterative Model.
  • 13. Spiral Model Determine Evaluate objectives, alternatives, alternatives, identify and constraints resolve risks Plan next Develop verify phases next level product
  • 14. Risk Assessment • Spiral Model – risk driven rather than document driven • The "risk" inherent in an activity is a measure of the uncertainty of the outcome of that activity • High-risk activities cause schedule and cost overruns • Risk is related to the amount and quality of available information. The less information, the higher the risk • What happened with Denver Airport Luggage System?
  • 15. Spiral Model Strength and Weaknesses • Strengths – Introduces risk management – Prototyping controls costs – Evolutionary development – Release builds for beta testing – Marketing advantage • Weaknesses – Lack of risk management experience – Lack of milestones – Management is dubious of spiral process – Change in Management – Prototype Vs Production
  • 16. Win Win Spiral Model • Win-Win Spiral Process Model is a model of a process based on Theory W, which is a management theory and approach "based on making winners of all of the system's key stakeholders as a necessary and sufficient condition for project success."
  • 17. WinWin Spiral Model ••Identify Nextproduct & process definitions ••Validate commitment holders process Identify Stake holders win conditions Evaluate Product of Process and Reconcile Level Stake Define next level & product Alternatives Review, Win conditions
  • 18. Win Win Spiral Cont • Identifying the system's stakeholders and their win conditions and • reconciling win conditions through negotiation to arrive at a mutually satisfactory set of objectives, constraints, and alternatives for the next level. • Evaluate Product and Process Alternatives. Resolve Risks • Define next level of product and process - including partitions • Validate Product and Process Definitions • Review, commitment
  • 19. WinWin Spiral- Anchor Points • Life Cycle Objective(LCO) – What should the system accomplish? • Life Cycle Architecture(LCA) – What is the structure of the system? • Initial Operational Capability(IOC) – The first released version
  • 20. Contents of LCO and LCA milestones
  • 21. Key Elements of IOC Milestone • Software preparation – Including both operational and support software with appropriate commentary and documentation – data preparation or conversion – the necessary licenses and rights • Site preparation – including facilities, equipment, supplies and vendor support • User, Operator and Maintenance preparation – including selection – team building – training
  • 22. Win Win Spiral - Case Study • Extending USC Integrated Library System to access multimedia – Flexibility and Discipline let the projects teams adapt to challenges while staying on schedule – Use of risk management helped team focus on CSF for their projects – One cycle for each milestone – Communication and trust between stakeholders, shared vision – Don’t finish negotiations before prototyping – Client acceptance
  • 23. Another Extreme CleanRoom Methodologies • From Hardware Cleanrooms • An incremental process that encourages continuous improvement; • Technical reviews that prevent defects and significantly reduce costs • Design and coding practices that make it easy to adapt as requirements change • Testing techniques that focus on measuring quality; • Solution-oriented teams that encourage cooperation, reduce the dependence on "gurus," and promote flexibility • Documentation structures that reveal the big picture and help team members maintain intellectual control.
  • 24. Clean Room Continued • REAL Peer Review Mathematical proof of correctness (Challenges associated with it?) • Functional Specifications as Box Diagrams (State, Black, Clear)
  • 25. Yet Another Extreme: Hacking • Hacking: – Code ‘n Fix – More Common than you thought • Makes Sense for: – Low-Risk, Small Project – We know exactly what we want (not “Wicked”) – Use once, then throw away – Bugs can be tolerated/fixed • Problem: – “Why not just re-use Hack X here with change Y …” – Hack Code is hard to maintain, but appealing from a management perspective. • Case Study: – I’m guessing … just about every project you ever did as an undergraduate. 
  • 26. Summary Summary • Waterfall – good for budgeting, but doesn’t analyze risk or have a good way to manage errors found later in the process. • Iterative – Models attempt to solve this by coding “as far as possible”, gathering feedback, and coding again.. – Prototyping “Plan to throw one away”, then re-build it “right.” – Incremental (“Staged”) Delivery Builds the software by a series of waterfalls
  • 27. Summary • Spiral: – Addresses Risk at every stage & let the stakeholders determine the outcome. • Win/Win – Seeks ways to provide customer feedback through anchor points, manages risk for management, and provides win conditions for developers. • Cleanroom / Hacking – Are alternative models that work for large projects that must work right the first time, and small projects with little risk.
  • 28. Resources • Generally Interesting Theories for REAL-WORLD Development: • Wicked Problems/State of Coding: – http://www.unidata.ucar.edu/staff/caron/collab/wicked.html – http://www.chc-3.com/pub/beautifulsoftware.htm          • Mythical Man Month – ( http://www.amazon.com/exec/obidos/ASIN/0201835959/ref=bxgy_sr_text_a ) • Code Complete – ( http://www.amazon.com/exec/obidos/ASIN/1556154844/ref=bxgy_sr_text_a ) • Joel Spolsky on Real-World Software Development – http://www.joelonsoftware.com • Software Engineering, A Practitioner’s Approach – http://www.mhhe.com/engcs/compsci/pressman/
  • 29. Resources (2) • Spiral Model – Using the WinWin Spiral Model: A case study, Boehm Barry, July 1998, Computer • Spiral Development workshop – www.sei.cmu.edu/cbs/spiral2000/february2000/BoehmSR.html • Anchoring the Software Process, Boehm Barry – http://www.csis.gvsu.edu/~ferguson/classes/cs641/papers/ASP.pdf • Denver Airport Project – http://www.time.com/time/magazine/archive/1994/940516/940516.tr ansportation.html • Cleanroom Model – http://www.cleansoft.com/cleansoft_mgrguide.html – http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr022.96.pdf • Hacking – http://www.plethora.net/~seebs/faqs/hacker.html
  • 30. Homework • Objective Question – One major difference between the Waterfall and iterative models is that the iterative models address risk. How do they do that? • Subjective Question – Which of these models is the best for the Customer? The Seller? Why?