SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
Software Schedules:
  Nailing Jello to the Wall

 Marghi Hopkins




NASA Project Management Challenge 2009


© 2009 The Aerospace Corporation
Why Are We Having This Conversation?
 Software schedules - still risky after all these years

    • Notwithstanding years of
            – Lessons learned
            – Process improvement
            – Metrics
    • We still routinely face
            – Large uncertainties in schedule
              estimation
            – Problematic schedule tracking
    • Is there any help?



Marghi.Hopkins@nasa.gov
Civil and Commercial Operations             2
Presentation Topics
   Related to software and schedules

    • Effects and trends in software
      scheduling
    • The system development lifecycle
    • The software subsystem
    • Symptoms and causes of scheduling
      problems
    • Several approaches to developing
      and maintaining accurate software
      schedules




Marghi.Hopkins@nasa.gov
Civil and Commercial Operations   3
Twenty Years And 40+ Missions:
 Summary Of Cost/Schedule Study Results*
 Effects of scheduling overruns
  • 10% schedule growth corresponds to 12% cost growth
  • Assumptions and allotments for schedule growth
            – General rule of thumb is 1 month per year
            – NASA/JPL guidance is 1.8 months per year
            – Four of six telescope missions exceeded NASA/JPL guidance
            – Five of six telescope missions exceeded general rule of thumb
    •    Reliability of estimates improves over the life cycle but still
         contains large uncertainty
    •    Greatest growth occurs in Phase D during Integration and Test
    •    Short schedules and increased complexity invite failure
            – Failed and impaired missions had short schedules or a combination of
              short schedules and high complexity
    *Bearden, Perspectives on NASA Mission Cost and Schedule Performance Trends, Presentation
         at GSFC Symposium, 3 June 2008 [http://ses.gsfc.nasa.gov/SE_Seminar_2008.htm]

Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                      4
Trends: More Complex, More Complicated

    • Complex
            – 1 : composed of two or more parts
            – 2 : difficult to analyze, understand, or explain
    • Complicated
            – 1 : consisting of parts intricately combined
            – 2: hard to separate, analyze, or solve
    • Classical Systems Engineering assumes a closed
      system: decomposable, linear, predictable
    • Newer problems tend to reside in open systems that
      exhibit predictable patterns of behavior, unpredictable
      patterns of behavior, or a combination of both


Marghi.Hopkins@nasa.gov
Civil and Commercial Operations               5
The Big Picture
    The system development lifecycle



                       SRR        PDR          CDR            SIR    TRR

                                                           System      System
  System       System        System          System
                                                         Integration Qualification
Requirements Architecture Detailed Design Implementation
                                                         and Testing   Testing


                                  SRR – System Requirements Review
                                  PDR – Preliminary Design Review
                                  CDR – Critical Design Review
                                  SIR – System Integration Review
                                  TRR – Test Readiness Review


Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                  6
The Section On Which We Are Focused
   The software subsystem
                        SRR                PDR            CDR                SIR           TRR

                                                                                   System        System
  System                            System        System          System
                                                                                  Integration   Qualification
Requirements                      Architecture Detailed Design Implementation
                                                                                  and Testing     Testing



                                                    Hardware Subsystem
                                                   Software Subsystem
                                     SRR
                                                 PDR       CDR
                                                                            SIR
             Software                                                                      TRR
                          Software Design
           Requirements
             Analysis   Architecture Detailed                      Software
                                                                               Integration Software
                                                                Implementation
                                                                                and Test Qualification
                                                                                           Testing
Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                             7
Looking Closer
   The software subsystem
System PDR                                    System CDR                       System SIR



                 System Detailed Design                    System Implementation


                                  SRR
                                        PDR    CDR
                                                              SIR
      Software                                                           TRR
                   Software Design
    Requirements
      Analysis   Architecture Detailed              Software
                                                                Integration Software
                                                 Implementation
                                                                 And Test Qualification
                                                                            Testing




Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                   8
Establishing A Schedule And Milestones
    The software subsystem




                                  System   SRR   PDR       CDR   SIR   TRR
                                  PDR
                                                                         Acceptance

Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                        9
Tracking The Schedule
    The software subsystem
    In a perfect world:
                                                 PROGRESS



                                  System   SRR   PDR        CDR   SIR   TRR
                                  PDR                                     Acceptance



   In our world:
                                                  ΠΡΟΓΡΕΣΣ


                                  System   SRR   PDR        CDR   SIR   TRR
                                  PDR
                                                                          Acceptance

Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                        10
Typical Software Scheduling And Tracking
 Problems
    • The software schedule seems reasonable but keeps
        changing
            – The project keeps receiving new requirements
            – Coding is finished, but integration and test is taking more time
              than expected
    • The software schedule is not reasonable and keeps
        slipping
            – COTS and reused code didn’t reduce the schedule as much
              as predicted
    • Tracking the schedule is difficult
            – The code is 90% done
            – The software status hasn’t changed since the last reporting
              period
Marghi.Hopkins@nasa.gov
Civil and Commercial Operations              11
Software Scheduling And Tracking Problems
 Well-known causes

    • Poor estimates,
            –    Ill-defined requirements
            –    Changing requirements
            –    Failure to understand the problem
            –    Inexperienced team
            –    Lack of metrics
            –    Poor or inappropriate use of metrics
            –    Lack of review by technical people
    • Poor tracking
            –    No tracking is done
            –    Inaccurate status of tasks
            –    Overly optimistic
            –    Improper use of Earned Value Measurement
Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                12
Software Scheduling And Tracking Problems
 Less well-recognized causes


    • The software schedule is not properly synchronized
        with the system schedule
            – A software schedule cannot realistically begin until after the
              System Preliminary Design Review (PDR), when the Review
              Board approves allocation of functionality to hardware and
              software systems
            – Starting the software schedule before System PDR generally
              results in slips, rework, and rescheduling
    • Failure to include the requirements-design-implement-
        test cycle at even the lowest levels, including bug fixes
        and requested changes

Marghi.Hopkins@nasa.gov
Civil and Commercial Operations             13
Software Scheduling And Tracking Problems
 Personal Experiences

    • Inadequate or no time in the schedule for the
        requirements-design-implement-test cycle, especially
        during integration and test
            – Little or no unit testing was done
            – Bugs were not correctly fixed or new bugs were installed
              because requirements and design were not reviewed
    • Forward progress reverses when problems must be
        fixed, but tracking does not include options for
        accurately conveying project status
            – No consideration of “are we going in the right direction?”
            – When 100 lines of code are counted as complete, does
              anybody ever subtract that 100 lines when the module fails in
              integration? No.

Marghi.Hopkins@nasa.gov
Civil and Commercial Operations             14
Using Technology To Enhance Project
 Scheduling
 Several Examples
    •   Evidence Based Scheduling* to get a confidence distribution curve
        showing you will meet the target completion date
            – Maximum 16 hour tasks – this forces you to do the detailed design
            – Capture individual project member’s elapsed time for each task
            – Calculate estimate/actual ratios to determine how fast the task was
              done relative to the estimate; perform a Monte Carlo simulation for
              each project member using data from the past 6 months
            – Calculate each project member’s probability of completing assigned
              tasks on a given date; the developer who finishes last determines
              when the team is done
    •   Using this approach produces a realistic project schedule

    *Spolsky, Evidence Based Scheduling, Article on the Joel on Software Homepage, 26
      October 2007 [http://www.joelonsoftware.com]


Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                  15
Benefits Of Evidence Based Scheduling


    • Significantly enhanced accuracy
    • Empirical evidence that allows you to understand
      project status in concrete terms
    • Real-time performance data that forces you to prioritize
      and help control scope creep
            – Given a bunch of blocks and a box that won’t hold them, you
              must get a bigger box or discard some of the blocks.
    • Realistic schedules that permit active project
      management to meet milestones, not just post-mortem
      analysis
    • Once procedures are set up, they can be quickly and
      easily deployed in later phases or other projects
Marghi.Hopkins@nasa.gov
Civil and Commercial Operations            16
Non-Technological Enhancements To Project
 Scheduling
   Several Examples
   • Track progress using something other than, or in
        addition to, lines of code
           –    Number of requirements met
           –    Number of Function Points implemented
           –    Number of test cases successfully executed
           –    Number of Use Cases that can be executed in a build
                   • Not difficult to calculate
                   • Use Cases are almost universally used now for requirements
                     analysis and design, so you use existing information
                   • Helps enforce using the requirements-design-implementation-test
                     cycle at all levels: system, CSCI, CSC, and unit
   • Functional, rather than quantitative status reports
        provide a more reliable view of progress than the sum of
        number of lines of code generated
Marghi.Hopkins@nasa.gov
Civil and Commercial Operations                   17
In Summary
    • The software schedule should begin after system PDR,
      not before
    • Provide sufficient time for the requirements-design-
      implement-test cycle at all levels

    • Project Management should include metrics that
        provide a realistic view of project status
            – Functional milestones, not amount of code
            – Current loads on all team members—and disparities between
              them
            – Specific identification of open issues and cost overruns
            – Dynamic timelines that show the impact of a slipped schedule



Marghi.Hopkins@nasa.gov
Civil and Commercial Operations            18

Mais conteúdo relacionado

Mais procurados

Ortiz.james
Ortiz.jamesOrtiz.james
Ortiz.jamesNASAPMC
 
Kapruch steve
Kapruch steveKapruch steve
Kapruch steveNASAPMC
 
Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...Engineering Software Lab
 
D.mathieson agile software_development_using_scrum
D.mathieson agile software_development_using_scrumD.mathieson agile software_development_using_scrum
D.mathieson agile software_development_using_scrumRamkumar Sundarakalatharan
 
Saltzman.john
Saltzman.johnSaltzman.john
Saltzman.johnNASAPMC
 
Dfr Presentation
Dfr   PresentationDfr   Presentation
Dfr Presentationeraz
 
Terry.cooke davies
Terry.cooke daviesTerry.cooke davies
Terry.cooke daviesNASAPMC
 
Performance based gas detection for hydrocarbon storage
Performance based gas detection for hydrocarbon storagePerformance based gas detection for hydrocarbon storage
Performance based gas detection for hydrocarbon storageKenexis
 
Stl litigation support services..shivraj patil
Stl   litigation support services..shivraj patilStl   litigation support services..shivraj patil
Stl litigation support services..shivraj patilsraaj
 
Odum.t.averbeck.r
Odum.t.averbeck.rOdum.t.averbeck.r
Odum.t.averbeck.rNASAPMC
 
Reliability doe the proper analysis approach for life data
Reliability doe the proper analysis approach for life dataReliability doe the proper analysis approach for life data
Reliability doe the proper analysis approach for life dataASQ Reliability Division
 
Mullane stanley-hamilton-wise
Mullane stanley-hamilton-wiseMullane stanley-hamilton-wise
Mullane stanley-hamilton-wiseNASAPMC
 
Posecco clustering meeting
Posecco clustering meetingPosecco clustering meeting
Posecco clustering meetingfcleary
 
Informatica certification
Informatica certificationInformatica certification
Informatica certificationbnjkukunuri
 
Initial Results Building a Normalized Software Database Using SRDRs
Initial Results Building a Normalized Software Database Using SRDRsInitial Results Building a Normalized Software Database Using SRDRs
Initial Results Building a Normalized Software Database Using SRDRsgallomike
 
Exp eng brochure
Exp eng brochureExp eng brochure
Exp eng brochurekkathrynlee
 

Mais procurados (20)

Ortiz.james
Ortiz.jamesOrtiz.james
Ortiz.james
 
Kapruch steve
Kapruch steveKapruch steve
Kapruch steve
 
Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...Parasoft Concerto A complete ALM platform that ensures quality software can b...
Parasoft Concerto A complete ALM platform that ensures quality software can b...
 
D.mathieson agile software_development_using_scrum
D.mathieson agile software_development_using_scrumD.mathieson agile software_development_using_scrum
D.mathieson agile software_development_using_scrum
 
Migration Services
Migration ServicesMigration Services
Migration Services
 
Saltzman.john
Saltzman.johnSaltzman.john
Saltzman.john
 
Dfr Presentation
Dfr   PresentationDfr   Presentation
Dfr Presentation
 
Terry.cooke davies
Terry.cooke daviesTerry.cooke davies
Terry.cooke davies
 
Performance based gas detection for hydrocarbon storage
Performance based gas detection for hydrocarbon storagePerformance based gas detection for hydrocarbon storage
Performance based gas detection for hydrocarbon storage
 
Stl litigation support services..shivraj patil
Stl   litigation support services..shivraj patilStl   litigation support services..shivraj patil
Stl litigation support services..shivraj patil
 
Odum.t.averbeck.r
Odum.t.averbeck.rOdum.t.averbeck.r
Odum.t.averbeck.r
 
CISQ Introduction & Objectives - Dr. Bill Curtis
CISQ Introduction & Objectives - Dr. Bill CurtisCISQ Introduction & Objectives - Dr. Bill Curtis
CISQ Introduction & Objectives - Dr. Bill Curtis
 
Energy and engineering services leverages growth
Energy and engineering services leverages growthEnergy and engineering services leverages growth
Energy and engineering services leverages growth
 
Data Leakage Prevention
Data Leakage PreventionData Leakage Prevention
Data Leakage Prevention
 
Reliability doe the proper analysis approach for life data
Reliability doe the proper analysis approach for life dataReliability doe the proper analysis approach for life data
Reliability doe the proper analysis approach for life data
 
Mullane stanley-hamilton-wise
Mullane stanley-hamilton-wiseMullane stanley-hamilton-wise
Mullane stanley-hamilton-wise
 
Posecco clustering meeting
Posecco clustering meetingPosecco clustering meeting
Posecco clustering meeting
 
Informatica certification
Informatica certificationInformatica certification
Informatica certification
 
Initial Results Building a Normalized Software Database Using SRDRs
Initial Results Building a Normalized Software Database Using SRDRsInitial Results Building a Normalized Software Database Using SRDRs
Initial Results Building a Normalized Software Database Using SRDRs
 
Exp eng brochure
Exp eng brochureExp eng brochure
Exp eng brochure
 

Destaque

Lyver.john
Lyver.johnLyver.john
Lyver.johnNASAPMC
 
Hill.terry
Hill.terryHill.terry
Hill.terryNASAPMC
 
Kelly.michael
Kelly.michaelKelly.michael
Kelly.michaelNASAPMC
 
Carsile.azarbain
Carsile.azarbainCarsile.azarbain
Carsile.azarbainNASAPMC
 
Cole ready aim fire impact!- status impact analysis - nasa
Cole   ready aim fire impact!- status impact analysis - nasaCole   ready aim fire impact!- status impact analysis - nasa
Cole ready aim fire impact!- status impact analysis - nasaNASAPMC
 
Inter bounds
Inter boundsInter bounds
Inter boundsNASAPMC
 
William.jarvis
William.jarvisWilliam.jarvis
William.jarvisNASAPMC
 
Baldwin.kristen
Baldwin.kristenBaldwin.kristen
Baldwin.kristenNASAPMC
 
Pinck.pascal
Pinck.pascalPinck.pascal
Pinck.pascalNASAPMC
 
Jansen.michael
Jansen.michaelJansen.michael
Jansen.michaelNASAPMC
 
Richard.laws
Richard.lawsRichard.laws
Richard.lawsNASAPMC
 
Arthur.chmielewski
Arthur.chmielewskiArthur.chmielewski
Arthur.chmielewskiNASAPMC
 
Neil.dennehy
Neil.dennehyNeil.dennehy
Neil.dennehyNASAPMC
 
Graybill.michael
Graybill.michaelGraybill.michael
Graybill.michaelNASAPMC
 
Shinn.s.hunter.h
Shinn.s.hunter.hShinn.s.hunter.h
Shinn.s.hunter.hNASAPMC
 
Frost.jim
Frost.jimFrost.jim
Frost.jimNASAPMC
 
Carmichael.kevin
Carmichael.kevinCarmichael.kevin
Carmichael.kevinNASAPMC
 
Chen.tim
Chen.timChen.tim
Chen.timNASAPMC
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski johnNASAPMC
 

Destaque (20)

Mino
MinoMino
Mino
 
Lyver.john
Lyver.johnLyver.john
Lyver.john
 
Hill.terry
Hill.terryHill.terry
Hill.terry
 
Kelly.michael
Kelly.michaelKelly.michael
Kelly.michael
 
Carsile.azarbain
Carsile.azarbainCarsile.azarbain
Carsile.azarbain
 
Cole ready aim fire impact!- status impact analysis - nasa
Cole   ready aim fire impact!- status impact analysis - nasaCole   ready aim fire impact!- status impact analysis - nasa
Cole ready aim fire impact!- status impact analysis - nasa
 
Inter bounds
Inter boundsInter bounds
Inter bounds
 
William.jarvis
William.jarvisWilliam.jarvis
William.jarvis
 
Baldwin.kristen
Baldwin.kristenBaldwin.kristen
Baldwin.kristen
 
Pinck.pascal
Pinck.pascalPinck.pascal
Pinck.pascal
 
Jansen.michael
Jansen.michaelJansen.michael
Jansen.michael
 
Richard.laws
Richard.lawsRichard.laws
Richard.laws
 
Arthur.chmielewski
Arthur.chmielewskiArthur.chmielewski
Arthur.chmielewski
 
Neil.dennehy
Neil.dennehyNeil.dennehy
Neil.dennehy
 
Graybill.michael
Graybill.michaelGraybill.michael
Graybill.michael
 
Shinn.s.hunter.h
Shinn.s.hunter.hShinn.s.hunter.h
Shinn.s.hunter.h
 
Frost.jim
Frost.jimFrost.jim
Frost.jim
 
Carmichael.kevin
Carmichael.kevinCarmichael.kevin
Carmichael.kevin
 
Chen.tim
Chen.timChen.tim
Chen.tim
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski john
 

Semelhante a Hopkins.marghi

Lou.wheatcraft
Lou.wheatcraftLou.wheatcraft
Lou.wheatcraftNASAPMC
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btechIIITA
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btechIIITA
 
ATI Professional Development Short Course Universal Arhitecture Description F...
ATI Professional Development Short Course Universal Arhitecture Description F...ATI Professional Development Short Course Universal Arhitecture Description F...
ATI Professional Development Short Course Universal Arhitecture Description F...Jim Jenkins
 
Corporate profile steep graph aras innovator
Corporate profile steep graph aras innovatorCorporate profile steep graph aras innovator
Corporate profile steep graph aras innovatoranuragonline001
 
Requirements Management Office - Strata
Requirements Management Office - Strata Requirements Management Office - Strata
Requirements Management Office - Strata IIBA UK Chapter
 
Hihn.jarius
Hihn.jariusHihn.jarius
Hihn.jariusNASAPMC
 
Getting started on fed ramp sec auth for csp
Getting started on fed ramp sec auth for cspGetting started on fed ramp sec auth for csp
Getting started on fed ramp sec auth for cspTuan Phan
 
Persistent Analytical Instrumentation Expertise
Persistent Analytical Instrumentation ExpertisePersistent Analytical Instrumentation Expertise
Persistent Analytical Instrumentation ExpertiseSebastien RATTIER
 
CRASH Special Report - JEE
CRASH Special Report - JEECRASH Special Report - JEE
CRASH Special Report - JEECAST
 
Value Reference Model - Information and Knowledge Mgt
Value Reference Model - Information and Knowledge MgtValue Reference Model - Information and Knowledge Mgt
Value Reference Model - Information and Knowledge MgtArnaldo Colombo
 
Introduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptIntroduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptManethPathirana
 
Introduction to Software Engineering ppt
Introduction to Software Engineering pptIntroduction to Software Engineering ppt
Introduction to Software Engineering pptdhruv04814902022
 
Introduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptIntroduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptDrPreethiD1
 
Introduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptIntroduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptCIRMV1
 
Introduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptIntroduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptAbdugafforAbduganiye
 
An ASAP Validation Implementation Approach by Qualit Consulting
An ASAP Validation Implementation Approach by  Qualit ConsultingAn ASAP Validation Implementation Approach by  Qualit Consulting
An ASAP Validation Implementation Approach by Qualit Consultingaesww
 
Profiling for SAP - Compliance Management, Access Control and Segregation of ...
Profiling for SAP - Compliance Management, Access Control and Segregation of ...Profiling for SAP - Compliance Management, Access Control and Segregation of ...
Profiling for SAP - Compliance Management, Access Control and Segregation of ...TransWare AG
 
Pulse Design & Delivery Panel
Pulse Design & Delivery PanelPulse Design & Delivery Panel
Pulse Design & Delivery PanelMauricio Godoy
 
OSD AT&L Defense Acquisition Process Chart
OSD AT&L Defense Acquisition Process ChartOSD AT&L Defense Acquisition Process Chart
OSD AT&L Defense Acquisition Process ChartTom "Blad" Lindblad
 

Semelhante a Hopkins.marghi (20)

Lou.wheatcraft
Lou.wheatcraftLou.wheatcraft
Lou.wheatcraft
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btech
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btech
 
ATI Professional Development Short Course Universal Arhitecture Description F...
ATI Professional Development Short Course Universal Arhitecture Description F...ATI Professional Development Short Course Universal Arhitecture Description F...
ATI Professional Development Short Course Universal Arhitecture Description F...
 
Corporate profile steep graph aras innovator
Corporate profile steep graph aras innovatorCorporate profile steep graph aras innovator
Corporate profile steep graph aras innovator
 
Requirements Management Office - Strata
Requirements Management Office - Strata Requirements Management Office - Strata
Requirements Management Office - Strata
 
Hihn.jarius
Hihn.jariusHihn.jarius
Hihn.jarius
 
Getting started on fed ramp sec auth for csp
Getting started on fed ramp sec auth for cspGetting started on fed ramp sec auth for csp
Getting started on fed ramp sec auth for csp
 
Persistent Analytical Instrumentation Expertise
Persistent Analytical Instrumentation ExpertisePersistent Analytical Instrumentation Expertise
Persistent Analytical Instrumentation Expertise
 
CRASH Special Report - JEE
CRASH Special Report - JEECRASH Special Report - JEE
CRASH Special Report - JEE
 
Value Reference Model - Information and Knowledge Mgt
Value Reference Model - Information and Knowledge MgtValue Reference Model - Information and Knowledge Mgt
Value Reference Model - Information and Knowledge Mgt
 
Introduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptIntroduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).ppt
 
Introduction to Software Engineering ppt
Introduction to Software Engineering pptIntroduction to Software Engineering ppt
Introduction to Software Engineering ppt
 
Introduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptIntroduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.ppt
 
Introduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.pptIntroduction-to-Software-Engineering.ppt
Introduction-to-Software-Engineering.ppt
 
Introduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).pptIntroduction-to-Software-Engineering (1).ppt
Introduction-to-Software-Engineering (1).ppt
 
An ASAP Validation Implementation Approach by Qualit Consulting
An ASAP Validation Implementation Approach by  Qualit ConsultingAn ASAP Validation Implementation Approach by  Qualit Consulting
An ASAP Validation Implementation Approach by Qualit Consulting
 
Profiling for SAP - Compliance Management, Access Control and Segregation of ...
Profiling for SAP - Compliance Management, Access Control and Segregation of ...Profiling for SAP - Compliance Management, Access Control and Segregation of ...
Profiling for SAP - Compliance Management, Access Control and Segregation of ...
 
Pulse Design & Delivery Panel
Pulse Design & Delivery PanelPulse Design & Delivery Panel
Pulse Design & Delivery Panel
 
OSD AT&L Defense Acquisition Process Chart
OSD AT&L Defense Acquisition Process ChartOSD AT&L Defense Acquisition Process Chart
OSD AT&L Defense Acquisition Process Chart
 

Mais de NASAPMC

Bejmuk bo
Bejmuk boBejmuk bo
Bejmuk boNASAPMC
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski johnNASAPMC
 
Yew manson
Yew mansonYew manson
Yew mansonNASAPMC
 
Wood frank
Wood frankWood frank
Wood frankNASAPMC
 
Wood frank
Wood frankWood frank
Wood frankNASAPMC
 
Wessen randi (cd)
Wessen randi (cd)Wessen randi (cd)
Wessen randi (cd)NASAPMC
 
Vellinga joe
Vellinga joeVellinga joe
Vellinga joeNASAPMC
 
Trahan stuart
Trahan stuartTrahan stuart
Trahan stuartNASAPMC
 
Stock gahm
Stock gahmStock gahm
Stock gahmNASAPMC
 
Snow lee
Snow leeSnow lee
Snow leeNASAPMC
 
Smalley sandra
Smalley sandraSmalley sandra
Smalley sandraNASAPMC
 
Seftas krage
Seftas krageSeftas krage
Seftas krageNASAPMC
 
Sampietro marco
Sampietro marcoSampietro marco
Sampietro marcoNASAPMC
 
Rudolphi mike
Rudolphi mikeRudolphi mike
Rudolphi mikeNASAPMC
 
Roberts karlene
Roberts karleneRoberts karlene
Roberts karleneNASAPMC
 
Rackley mike
Rackley mikeRackley mike
Rackley mikeNASAPMC
 
Paradis william
Paradis williamParadis william
Paradis williamNASAPMC
 
Osterkamp jeff
Osterkamp jeffOsterkamp jeff
Osterkamp jeffNASAPMC
 
O'keefe william
O'keefe williamO'keefe william
O'keefe williamNASAPMC
 
Muller ralf
Muller ralfMuller ralf
Muller ralfNASAPMC
 

Mais de NASAPMC (20)

Bejmuk bo
Bejmuk boBejmuk bo
Bejmuk bo
 
Baniszewski john
Baniszewski johnBaniszewski john
Baniszewski john
 
Yew manson
Yew mansonYew manson
Yew manson
 
Wood frank
Wood frankWood frank
Wood frank
 
Wood frank
Wood frankWood frank
Wood frank
 
Wessen randi (cd)
Wessen randi (cd)Wessen randi (cd)
Wessen randi (cd)
 
Vellinga joe
Vellinga joeVellinga joe
Vellinga joe
 
Trahan stuart
Trahan stuartTrahan stuart
Trahan stuart
 
Stock gahm
Stock gahmStock gahm
Stock gahm
 
Snow lee
Snow leeSnow lee
Snow lee
 
Smalley sandra
Smalley sandraSmalley sandra
Smalley sandra
 
Seftas krage
Seftas krageSeftas krage
Seftas krage
 
Sampietro marco
Sampietro marcoSampietro marco
Sampietro marco
 
Rudolphi mike
Rudolphi mikeRudolphi mike
Rudolphi mike
 
Roberts karlene
Roberts karleneRoberts karlene
Roberts karlene
 
Rackley mike
Rackley mikeRackley mike
Rackley mike
 
Paradis william
Paradis williamParadis william
Paradis william
 
Osterkamp jeff
Osterkamp jeffOsterkamp jeff
Osterkamp jeff
 
O'keefe william
O'keefe williamO'keefe william
O'keefe william
 
Muller ralf
Muller ralfMuller ralf
Muller ralf
 

Último

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServiceRenan Moreira de Oliveira
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfSpring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfAnna Loughnan Colquhoun
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdfJamie (Taka) Wang
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?SANGHEE SHIN
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 

Último (20)

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfSpring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdf
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 

Hopkins.marghi

  • 1. Software Schedules: Nailing Jello to the Wall Marghi Hopkins NASA Project Management Challenge 2009 © 2009 The Aerospace Corporation
  • 2. Why Are We Having This Conversation? Software schedules - still risky after all these years • Notwithstanding years of – Lessons learned – Process improvement – Metrics • We still routinely face – Large uncertainties in schedule estimation – Problematic schedule tracking • Is there any help? Marghi.Hopkins@nasa.gov Civil and Commercial Operations 2
  • 3. Presentation Topics Related to software and schedules • Effects and trends in software scheduling • The system development lifecycle • The software subsystem • Symptoms and causes of scheduling problems • Several approaches to developing and maintaining accurate software schedules Marghi.Hopkins@nasa.gov Civil and Commercial Operations 3
  • 4. Twenty Years And 40+ Missions: Summary Of Cost/Schedule Study Results* Effects of scheduling overruns • 10% schedule growth corresponds to 12% cost growth • Assumptions and allotments for schedule growth – General rule of thumb is 1 month per year – NASA/JPL guidance is 1.8 months per year – Four of six telescope missions exceeded NASA/JPL guidance – Five of six telescope missions exceeded general rule of thumb • Reliability of estimates improves over the life cycle but still contains large uncertainty • Greatest growth occurs in Phase D during Integration and Test • Short schedules and increased complexity invite failure – Failed and impaired missions had short schedules or a combination of short schedules and high complexity *Bearden, Perspectives on NASA Mission Cost and Schedule Performance Trends, Presentation at GSFC Symposium, 3 June 2008 [http://ses.gsfc.nasa.gov/SE_Seminar_2008.htm] Marghi.Hopkins@nasa.gov Civil and Commercial Operations 4
  • 5. Trends: More Complex, More Complicated • Complex – 1 : composed of two or more parts – 2 : difficult to analyze, understand, or explain • Complicated – 1 : consisting of parts intricately combined – 2: hard to separate, analyze, or solve • Classical Systems Engineering assumes a closed system: decomposable, linear, predictable • Newer problems tend to reside in open systems that exhibit predictable patterns of behavior, unpredictable patterns of behavior, or a combination of both Marghi.Hopkins@nasa.gov Civil and Commercial Operations 5
  • 6. The Big Picture The system development lifecycle SRR PDR CDR SIR TRR System System System System System System Integration Qualification Requirements Architecture Detailed Design Implementation and Testing Testing SRR – System Requirements Review PDR – Preliminary Design Review CDR – Critical Design Review SIR – System Integration Review TRR – Test Readiness Review Marghi.Hopkins@nasa.gov Civil and Commercial Operations 6
  • 7. The Section On Which We Are Focused The software subsystem SRR PDR CDR SIR TRR System System System System System System Integration Qualification Requirements Architecture Detailed Design Implementation and Testing Testing Hardware Subsystem Software Subsystem SRR PDR CDR SIR Software TRR Software Design Requirements Analysis Architecture Detailed Software Integration Software Implementation and Test Qualification Testing Marghi.Hopkins@nasa.gov Civil and Commercial Operations 7
  • 8. Looking Closer The software subsystem System PDR System CDR System SIR System Detailed Design System Implementation SRR PDR CDR SIR Software TRR Software Design Requirements Analysis Architecture Detailed Software Integration Software Implementation And Test Qualification Testing Marghi.Hopkins@nasa.gov Civil and Commercial Operations 8
  • 9. Establishing A Schedule And Milestones The software subsystem System SRR PDR CDR SIR TRR PDR Acceptance Marghi.Hopkins@nasa.gov Civil and Commercial Operations 9
  • 10. Tracking The Schedule The software subsystem In a perfect world: PROGRESS System SRR PDR CDR SIR TRR PDR Acceptance In our world: ΠΡΟΓΡΕΣΣ System SRR PDR CDR SIR TRR PDR Acceptance Marghi.Hopkins@nasa.gov Civil and Commercial Operations 10
  • 11. Typical Software Scheduling And Tracking Problems • The software schedule seems reasonable but keeps changing – The project keeps receiving new requirements – Coding is finished, but integration and test is taking more time than expected • The software schedule is not reasonable and keeps slipping – COTS and reused code didn’t reduce the schedule as much as predicted • Tracking the schedule is difficult – The code is 90% done – The software status hasn’t changed since the last reporting period Marghi.Hopkins@nasa.gov Civil and Commercial Operations 11
  • 12. Software Scheduling And Tracking Problems Well-known causes • Poor estimates, – Ill-defined requirements – Changing requirements – Failure to understand the problem – Inexperienced team – Lack of metrics – Poor or inappropriate use of metrics – Lack of review by technical people • Poor tracking – No tracking is done – Inaccurate status of tasks – Overly optimistic – Improper use of Earned Value Measurement Marghi.Hopkins@nasa.gov Civil and Commercial Operations 12
  • 13. Software Scheduling And Tracking Problems Less well-recognized causes • The software schedule is not properly synchronized with the system schedule – A software schedule cannot realistically begin until after the System Preliminary Design Review (PDR), when the Review Board approves allocation of functionality to hardware and software systems – Starting the software schedule before System PDR generally results in slips, rework, and rescheduling • Failure to include the requirements-design-implement- test cycle at even the lowest levels, including bug fixes and requested changes Marghi.Hopkins@nasa.gov Civil and Commercial Operations 13
  • 14. Software Scheduling And Tracking Problems Personal Experiences • Inadequate or no time in the schedule for the requirements-design-implement-test cycle, especially during integration and test – Little or no unit testing was done – Bugs were not correctly fixed or new bugs were installed because requirements and design were not reviewed • Forward progress reverses when problems must be fixed, but tracking does not include options for accurately conveying project status – No consideration of “are we going in the right direction?” – When 100 lines of code are counted as complete, does anybody ever subtract that 100 lines when the module fails in integration? No. Marghi.Hopkins@nasa.gov Civil and Commercial Operations 14
  • 15. Using Technology To Enhance Project Scheduling Several Examples • Evidence Based Scheduling* to get a confidence distribution curve showing you will meet the target completion date – Maximum 16 hour tasks – this forces you to do the detailed design – Capture individual project member’s elapsed time for each task – Calculate estimate/actual ratios to determine how fast the task was done relative to the estimate; perform a Monte Carlo simulation for each project member using data from the past 6 months – Calculate each project member’s probability of completing assigned tasks on a given date; the developer who finishes last determines when the team is done • Using this approach produces a realistic project schedule *Spolsky, Evidence Based Scheduling, Article on the Joel on Software Homepage, 26 October 2007 [http://www.joelonsoftware.com] Marghi.Hopkins@nasa.gov Civil and Commercial Operations 15
  • 16. Benefits Of Evidence Based Scheduling • Significantly enhanced accuracy • Empirical evidence that allows you to understand project status in concrete terms • Real-time performance data that forces you to prioritize and help control scope creep – Given a bunch of blocks and a box that won’t hold them, you must get a bigger box or discard some of the blocks. • Realistic schedules that permit active project management to meet milestones, not just post-mortem analysis • Once procedures are set up, they can be quickly and easily deployed in later phases or other projects Marghi.Hopkins@nasa.gov Civil and Commercial Operations 16
  • 17. Non-Technological Enhancements To Project Scheduling Several Examples • Track progress using something other than, or in addition to, lines of code – Number of requirements met – Number of Function Points implemented – Number of test cases successfully executed – Number of Use Cases that can be executed in a build • Not difficult to calculate • Use Cases are almost universally used now for requirements analysis and design, so you use existing information • Helps enforce using the requirements-design-implementation-test cycle at all levels: system, CSCI, CSC, and unit • Functional, rather than quantitative status reports provide a more reliable view of progress than the sum of number of lines of code generated Marghi.Hopkins@nasa.gov Civil and Commercial Operations 17
  • 18. In Summary • The software schedule should begin after system PDR, not before • Provide sufficient time for the requirements-design- implement-test cycle at all levels • Project Management should include metrics that provide a realistic view of project status – Functional milestones, not amount of code – Current loads on all team members—and disparities between them – Specific identification of open issues and cost overruns – Dynamic timelines that show the impact of a slipped schedule Marghi.Hopkins@nasa.gov Civil and Commercial Operations 18