An approach to Return on Investment (ROI) for Independent Verification and Validation (IV&V) at NASA



Similar documents
Software Test Costs and Return on

INDEPENDENT VERIFICATION AND VALIDATION OF EMBEDDED SOFTWARE

Optimizing IV&V Benefits Using Simulation

Importance of Testing in Software Development Life Cycle

Useful Automated Software Testing Metrics

Independent Project Oversight

Independent Validation of Software Safety Requirements for System of Systems by S. Driskell, J. Murphy, J.B. Michael, M. Shing

Using TechExcel s DevSuite to Achieve FDA Software Validation Compliance For Medical Software Device Development


IMPORTANCE OF SOFTWARE TESTING IN SOFTWARE DEVELOPMENT LIFE CYCLE

Improving RoI by Using an SDL

STATE BOARD OF ELECTIONS P.O. BOX 6486, ANNAPOLIS, MD PHONE (410)

Results Based Testing

Project Risk Management: Independent Software QA Ensures Success

Project Risk Management: IV&V as Insurance for Project Success

Sample Testing Using Cleanroom

SOFTWARE ASSURANCE STANDARD

Root Cause Analysis for Customer Reported Problems. Topics

THE ROLE OF IV&V IN THE SOFTWARE DEVELOPMENT LIFE CYCLE

SACM and CMDB Strategy and Roadmap. David Lowe ActionableITSM.com March 20, 2012

Verification and Validation of Software Components and Component Based Software Systems

The Quality Assurance Centre of Excellence

Importance of Processes in an SAP Implementation Project. 2 nd September 2014

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization

Get Confidence in Mission Security with IV&V Information Assurance

Basic Testing Concepts and Terminology

Camber Quality Assurance (QA) Approach

A Software Development Simulation Model of a Spiral Process

SOFTWARE QUALITY IN 2002: A SURVEY OF THE STATE OF THE ART

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

FSW QA Testing Levels Definitions

Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC

Automation can dramatically increase product quality, leading to lower field service, product support and

CASE STUDY: AgitarOne Ensures Quality of Outsourced Software Development at Major International Bank

How To Write An Slcm Project Plan

The Business Benefits of Measuring Return on Investment for Business Intelligence Implementations

Audit of Veterans Health Administration Blood Bank Modernization Project

Infrastructure Information Security Assurance (ISA) Process

Project Type Guide. Project Planning and Management (PPM) V2.0. Custom Development Version 1.1 January PPM Project Type Custom Development

Writing The Business Case for Automated Software Testing and Test Management Tools

How To Develop An Application

Effective Software Security Management

Business Solutions Manager Self and contribution to Team. Information Services

Development, Acquisition, Implementation, and Maintenance of Application Systems

Keywords: SQA,Black Box Testing( BBT), White Box testing(wbt).

Building Security into the Software Life Cycle

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements.

CALCULATING THE COSTS OF MANUAL REWRITES

<Project Name> Configuration Management Plan

IV&V and Software Risk Management

Quality Assurance - Karthik

Program Lifecycle Methodology Version 1.7

Software Development: The Waterfall Model

FIVE STEPS YOU NEED TO TAKE NOW TO TURN DATA INTO SALES

Software Testing. Knowledge Base. Rajat Kumar Bal. Introduction

MKS Integrity & CMMI. July, 2007

Measuring Return on Investment of Model-Based Design

Scrum: A disciplined approach to product quality and project success.

ENEA: THE PROVEN LEADER IN SAFETY CRITICAL AVIONICS SYSTEMS

State of Oregon. State of Oregon 1

Project Zeus. Risk Management Plan

Business white paper. Best practices for implementing automated functional testing solutions

Open Software and Trust Better Than Free? April 28, 2015 Start Time: 9am US Pacific /12 noon US Eastern/ 5pm London Time

11 Tips to make the requirements definition process more effective and results more usable

Cleanroom Software Engineering: Towards High-Reliability Software

PI Team Masters Forum - 2. The Successful Team Composition Engineering of Systems

US Nuclear Regulatory Commission

Software Project Management Matrics. Complied by Heng Sovannarith

Performance Testing Uncovered

CITY OF BOULDER IT GOVERNANCE AND DECISION-MAKING STRUCTURE. (Approved May 2011)

NODIS Library Program Formulation(7000s) Search

Software Error Analysis

Latest Trends in Testing. Ajay K Chhokra

Software Development Best Practices

Enterprise Data Governance

International Software Test Institute

Preempting ERP Project Failure Project Assurance through Collaborative Intervention

What Metrics to collect and why

Placing a Value on Enterprise Risk Management ADVISORY

Software Testing Tutorial

SECTION 4 TESTING & QUALITY CONTROL

Achieving Business Analysis Excellence

How To Improve Your Business Recipe Cards

Quality Management. Lecture 12 Software quality management

Effective Software Verification for Medical Devices

CSTE Mock Test - Part I - Questions Along with Answers

KPMG in India s Software testing services Test consulting case studies

RSA VIA LIFECYCLE AND GOVERNENCE: ROLE MANAGEMENT BEST PRACTICES

Software Development Lifecycle. Steve Macbeth Group Program Manager Search Technology Center Microsoft Research Asia

Session 190 PD, Model Risk Management and Controls Moderator: Chad R. Runchey, FSA, MAAA

Request for Proposal for Application Development and Maintenance Services for XML Store platforms

U.S. Nuclear Regulatory Commission. Plan of Action Strategic Workforce Planning

An Increase in Software Testing Robustness: Enhancing the Software Development Standard for Space Systems

Waters Software Development Life Cycle

TRACE PERFORMANCE TESTING APPROACH. Overview. Approach. Flow. Attributes

Do You Have the Right Stuff to be a Good Tester?

GENCO Systems Inc Germantown Road, Suite 300, Fairfax, VA 22030, Phone

IBM Software Testing and Development Control - How to Measure Risk

Example Software Development Process.

The Value of QA from the CIO s Perspective

Transcription:

An approach to Return on Investment (ROI) for Independent Verification and Validation (IV&V) at NASA Bob Hunt September 2012 1

NASA IV&V The NASA IV&V Program was established in 1993 as part of an Agency-wide strategy to provide the highest achievable levels of safety and cost-effectiveness for mission critical software. The NASA IV&V Program was founded under the NASA Office of Safety and Mission Assurance (OSMA) as a direct result of recommendations made by the National Research Council (NRC) and the Report of the Presidential Commission on the Space Shuttle Challenger Accident. IV&V is an Agency-level function, delegated from OSMA to Goddard Space Flight Center (GSFC) and managed by NASA IV&V. The NASA IV&V Program's primary business, software IV&V, is sponsored by OSMA as a software assurance technology. Having been reassigned as GSFC, NASA IV&V is Code 180 (Center Director's direct report). 2

IV&V Overview What is Independent Verification and Validation (IV&V)? Verification answers the question, "Are we building the product right?" Verification is the process of determining whether or not the software products of a given phase of the SDLC fulfill the established requirements for that phase. Validation answers the question, "Are we building the right product?" Validation evaluates the software products throughout the SDLC to ensure those products meet the mission and customer's needs. Verification often a by-product of bugs i.e. Microsoft Validation a by-product of mission failure i.e. AF C130J 3

What is Independence? IEEE defines independence in IV&V as three parameters: Technical independence is achieved by IV&V practitioners who use their expertise to assess development processes and products independent of the developer. Managerial independence requires responsibility for the IV&V effort to be vested in an organization separate from the organization responsible for performing the system implementation. The IV&V effort independently selects the segments of the software and system to analyze and test, chooses the IV&V techniques, defines the schedule of IV&V activities, and selects the specific technical issues and problems to act upon. Most projects view V&V as sufficient and do not recognize the added value the independence brings. Financial: Typically funded from Corporate General & Administrative (Expense). Projects may directly fund services. 4

What is Software IV&V? A systems engineering process employing rigorous methodologies for evaluating the correctness and quality of the software product throughout the SDLC. Is adapted to the characteristics of the project Independence is provided through various authority Air Force - Independent Readiness Review Team (IRRT) More reactive to already known troubled projects Assigned by a committee/senior command (The Role of Independent Assessments for Mission Readiness; Crosslink Fall 2007) FAA Designated Engineering Representative(DER) Proactive with an assigned DER at project inception (FAA CONSULTANT DER DIRECTORY June 20, 2011) NASA - NASA IV&V Facility; 100 University Drive Fairmont, WV 26554 Commercial Vendors SAIC; TrustedQA; (and more; see slide 10) IV&V is Defect Discovery, and does not include fixing defects 5

Return On Investment (ROI) ROI is a performance measure used to evaluate the efficiency of an investment or to compare the efficiency of a number of different investments. To calculate ROI, the benefit (return) of an investment is divided by the cost of the investment; the result is expressed as a percentage or a ratio. A return on investment formula can be expressed as: ROI = (Gain from Investment Cost of Investment)/Cost of Investment For NASA the key questions become: 1. What was the gain Tangible and Non-tangible or fiscal and nonfiscal? 2. What was the cost of the investment? 6

IV&V Costs and ROI Data Data from March 2008 KPMG WebEx QA/IV&V can typically cost 5 to 10 percent of the total cost of an IT project, depending on the complexity of the project and the specific scope of QA/IV&V activities* Several studies indicate that the ROI on QA/IV&V investments can be 2 to 10 times the investment in QA/IV&V activities** NASA PAE 2008 Study show ROI values from 1.5 to 12; but says, There is a wide range of opinions and studies regarding the cost effectiveness of IV&V. The study team was unable to identify a common methodology for calculating ROI, and individual Case Studies using the same methodology resulted in a range of values. *Estimating Direct Return on Investment of Independent Verification and Validation using COCOMO-II, J.B. Dabney, G. Barber, and D. Ohi, 2006 **A Case Study of IV&V Return on Investment (ROI), R.A. Rogers, D. McCaugherty, F. Martin, NASA, October 2000 7

Additional ROI Studies Using Software Process Simulation to Assess the Impact of IV&V Activities; David M. Raffo, Umanath Nayak, Siri-on Setamanit,Patrick Sullivan, Wayne Wakeland; Portland State University,Portland, Oregon, USA ESTIMATING DIRECT RETURN ON INVESTMENT OF INDEPENDENT VERIFICATION AND VALIDATION, James B. Dabney (Department of Systems Engineering, University of Houston), Gary Barber, Titan Systems Corp., NASA IV&V Facility ESTIMATING DIRECT RETURN ON INVESTMENT OF INDEPENDENT VERIFICATION AND VALIDATION USING COCOMO-II, James B. Dabney (Department of Systems Engineering, University of Houston), Gary Barber, Titan Systems Corp., NASA IV&V Facility All these studies have interesting approaches, but are difficult to apply when looking forward 8

How Does IV&V Differ from Project Testing The Key difference is independence Hailpern and Santhanam: "... debugging, testing, and verification activities can easily range from 50 to 75 percent of the total development cost. (Software debugging, testing and verification by Hailpern and Santhanam, 2002, seehttp://www.research.ibm.com/ journal/sj/411/hailpern.pdf) Data from The Case for Automated Software Testing (Bernie Gauf and Elfriede Dustin, IDT; Software Tech News) 9

What Should You Pay for IV&V You would expect IV&V cost to at least equal internal defect discovery costs unless less testing is required An increase factor of up to 2.0 is not unrealistic for complete IV&V versus Internal Software Project Testing (source Bob Hunt) IV&V is, conceptually, pretty simple: Identify the products and processes to undergo verification and validation (preferably before or in the early stages of development), Determine the criteria with which each of those products and processes can be evaluated (starting with standards where available e.g. the IEEE-1012-2004 standard for software verification and validation), Assess the products/processes while in production and upon completion to verify they meet the predefined criteria and note where they don t, Re-assess products/processes when deficiencies have been addressed. IV&V Vendors are very protective of any internal methodology they use to estimate IV&V costs - Then they guess 10

IV&V Cost Equation Assumptions: A Software Development program has a Total Development Cost of $X =($x/sm)(sm)* (simplistic express of software equations) The Cost of Internal Software Testing (IST) is 30% of the total Software Development cost, or IST = (0.3)($X)= (0.3)($x/SM)(Zsize) IV&V cost equals IST or IV&V=(1)(0.3)($x/SM)(Zsize) There are Y delivered defects per size metric The cost per size metric to rewrite code is the same as the cost per size metric to generate original code The Cost of Defect Recovery and Removal follows the 1:10:100 rule and all Y defects would have been found after fielding The simple cost Break Even Point is reached when: IV&V cost = IV&V Savings (1)(0.3)($x/SM)(Zsize)= (100)(Y)($x/SM) (0.3) Zsize = 100Y (0.3)Zsize/100 = Y *SM size metric could be expressed as Lines of Code, Function Points, 11

Some Data Assume 7 to 10 delivered defects per KSLOC Code Complete by Steve McConnell: (a) Industry Average: "about 15-50 errors per 1000 lines of delivered code. (b) Microsoft Applications: "about 10-20 defects per 1000 lines of code during in-house testing, and 0.5 defect per KLOC (KLOC IS CALLED AS 1000 lines of code) in released product (Moore 1992). (c) "Harlan Mills pioneered 'cleanroom development', a technique that has been able to achieve rates as low as 3 defects per 1000 lines of code during in-house testing and 0.1 defect per 1000 lines of code in released product (Cobb and Mills 1990). A few projects - for example, the spaceshuttle software - have achieved a level of 0 defects in 500,000 lines of code using a system of format development methods, peer reviews, and statistical testing. Capers Jones assumes 5 to 7 defects per function point 12

IS IV&V Worth the Cost It depends on who is paying for it, but the answer is yes When critical safety and life issues are at stake (and accidents are averted), the answer is again yes But what does it really cost Although numbers vary by project and environment, the costs to fix defects average what has come to be known as the "1:10:100" rule. (Achieving Software Quality Using Defect Filters; Randall Rice) A defect that costs $1 to fix in requirements or design costs $10 to fix in a traditional test phase and $100 to fix after the product goes into production (live) use Most ROI studies assume any defects found in IV&V would have made it to production (live usage) 13

NASA IV&V Benefits So Far I have Only Looked At Benefits That Can Be Measured In $ 1. The IV&V Program increases the likelihood of uncovering high risk defects early in the development lifecycle 2. The IV&V Program provides ongoing status indicators and performance reporting to NASA program level managers 3. The IV&V Program provides stakeholders with the visibility into progress and quality of the system software development effort 4. The IV&V Program reduces the need for rework by the developing contractor, and thereby reduces the total costs to programs and development projects 5. The IV&V Program reduces defects in delivered products 6. The IV&V Program may save lives 14

IV&V Life Cycle Functions IV&V Process provides tools and analysis procedures appropriate to each phase of the software development life cycle: Formulation Phase: Is development process sound, repeatable, and managed? Requirements Phase: Verify that system and software requirements are correct, complete, traceable and testable Analyze system-level requirements: Are test plans and acceptance criteria sufficient to validate system requirements and operational needs? Are testing methods sufficient to verify and validate software requirements? Are the correct software development, management, and support processes in place? Design Phase: Does the design support the requirements? Are test plans and test environments sufficient to verify and validate software and operational requirements? Does the design have any characteristics that will cause it to fail under operational scenarios? What solutions are appropriate? 15

IV&V Life Cycle Functions Typical IV&V functions by Software life-cycle phase (cont.): Coding Phase: Does the code reflect the design? Is the code correct? Verify that test cases trace to and cover software requirements and operational needs Verify that software test cases, expected results, and evaluation criteria fully meet testing objectives Analyze selected code unit test plans and results to verify full coverage of logic paths, range of input conditions, error handling, etc. Test Phase: Analyze correct dispositioning of software test anomalies Validate software test results versus acceptance criteria Verify tracing and successful completion of all software test objectives Operational Phase: Verify that regression tests are sufficient to identify adverse impacts of changes 16

IV&V Life Cycle Functions IV&V identifies deficiencies in program s test planning Program changes their procedures to address deficiencies vice IV&V independently test IV&V may independently test highly critical software using an IV&V test bed White box Stress Endurance Limit Developer motivated to show software works IV&V attempts to break software 17

Concerns No salutatory requirement for IV&V, but probably a good policy $25 M to $30 M annual budget for NASA IV&V Facility cost related to specific programs are spread over several years No consistent/agreed to measure of ROI this would be helpful Most analyses of ROI assume that defects would not have been found until fielding therefore they apply the 100 rule (see slide 9) 18

Closing Thoughts No software is delivered defect free The larger/more complex a system is the more likely IV&V will result in positive outcomes It is about critical safety and functionality more than cost Key Benefits: Early detection. Improved quality Lower Total Cost of Ownership (TOC) cost Reduced management burden IV&V is hard work that takes expertise independence, and a degree of rigor - There is no professional certification of IV&V engineers Understand you need competent, experienced professionals but this is not a mystical art. Bottom Line: IV&V is worth the cost 19

Please contact: Bob Hunt Email: BobHunt@DulosInc.com Phone: 703.201.0651 Jon Kilgore Email: jon.kilgore@kalmancoinc.com Phone: 757.262.7462 Jennifer Swartz Email: jennifer.swartz@kalmancoinc.com Phone: 330.416.8450 20