How To Decide When To Fix A Defect



Similar documents
Nico Zazworka, Ph.D.

Managing Technical Debt in Software-Reliant Systems

Installed Base and Life Cycle Management: Key for Optimizing Service Produktivity

A Quality Assurance Approach to Technical Debt

Debt-Prone Bugs: Technical Debt in Software Maintenance

ABB today Working for a sustainable world

Gothenburg University Publications

International Credit Management Organizational Models for Local and International Players

Automating container terminals Safer, greener and more productive


Root Cause Analysis for Customer Reported Problems. Topics

A Comparison of Software Cost, Duration, and Quality for Waterfall vs. Iterative and Incremental Development: A Systematic Review

For participants/students in MPH, other health education programs, researchers and other interested health professionals.

Degree Programme in International Business Management (Masters Degree) Management and Business Research Strategies

Comparing Agile Software Processes Based on the Software Development Project Requirements

Management Science Letters

Agile development of safety-critical software while meetings standards' requirements

International Journal of Information Technology & Computer Science ( IJITCS ) (ISSN No : ) Volume 5 : Issue on September / October, 2012

Trends and New Directions in Software Architecture

Multi-Dimensional Success Factors of Agile Software Development Projects

Success Factors of Agile Software Development


AGILE SOFTWARE DEVELOPMENT A TECHNIQUE

South East of Process Main Building / 1F. North East of Process Main Building / 1F. At 14:05 April 16, Sample not collected

How To Understand And Understand The Business Strategy Of Ancient Bb

Software Requirements, Third Edition

A CONSOLIDATED UNDERSTANDING OF TECHNICAL DEBT

Introduction to Software Engineering: Project Management ( Highlights )

Controlling Change on Agile Software Development Projects

A QUALITY-BASED COST ESTIMATION MODEL FOR THE PRODUCT LINE LIFE CYCLE

Configuration management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1

Knowledge-based Approach in Information Systems Life Cycle and Information Systems Architecture

A Case Study Research on Software Cost Estimation Using Experts Estimates, Wideband Delphi, and Planning Poker Technique

An Agent-Based Concept for Problem Management Systems to Enhance Reliability

A Study of the Impact of Open Source License Selection on Software Technical Debt

Business Analyst Work Plan. Presented by: Billie Johnson, CBAP CSM

How To Understand The Perception Of Ancient Methodologies In Sri Lanka

On the Agile Development of Virtual Reality Systems

How To Understand The Limitations Of An Agile Software Development

Agile Software Engineering, a proposed extension for in-house software development

Product Derivation Process and Agile Approaches: Exploring the Integration Potential

CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY

IT4304 Rapid Software Development (Optional)

USING DEFECT ANALYSIS FEEDBACK FOR IMPROVING QUALITY AND PRODUCTIVITY IN ITERATIVE SOFTWARE DEVELOPMENT

Core Issues Affecting Software Architecture in Enterprise Projects

Publication I International Society of Agile Manufacturing (ISAM) Reprinted by permission of International Society of Agile Manufacturing.

The Co-Evolution of Agile and Continuous Integration. Jeffrey Fredrick Technical Evangelist

Agile Development and Software Architecture: Understanding Scale and Risk

Understandings and Implementations of Continuous Delivery

Measure It? Manage It? Ignore It? Software Practitioners and Technical Debt

AVEVA Standard Support Service Policy for the AVEVA Product Suite

Story Card Based Agile Software Development

Value Creation and Capture: A Model of the Software Development Process

Value-Based Software Engineering: Overview and Agenda

Six Sigma in Project Management for Software Companies

USAGE OF KANBAN METHODOLOGY AT SOFTWARE DEVELOPMENT TEAMS

April ABB in Norway. Power and productivity for a better world ABB. Slide 1

Agile Software Development Methodologies & Correlation with Employability Skills

Reducing Friction in Software Development

Configuration Management. Software Configuration Management. Example of System Families. Configuration Management

Agile with XP and Scrum

Impact Analysis: An Essential Part of Software Configuration Management

On Software Architecture, Agile Development, Value and Cost

Agile Project Management: Key Differences with Case Study Examples Paul E. McMahon, Principal PEM Systems

SafeHaven. Support Service Plans

Agile Software Development Methodologies and Its Quality Assurance

Cost Estimation Tool for Commercial Software Development Industries

Scaling Down Large Projects to Meet the Agile Sweet Spot

SOFTWARE DEVELOPMENT METHODOLOGIES, TRENDS, AND IMPLICATIONS

Basic Activities of Software configuration Management

Life Cycle Models. V. Paúl Pauca. CSC Fall Department of Computer Science Wake Forest University. Object Oriented Software Engineering

PENETRATION TESTING IN AGILE SOFTWARE DEVELOPMENT PROJECTS

Degree Programme in International Business Management (Masters Degree)

Agile Product Management

Transcription:

Will Snipes, Brian Robinson ABB Corporate Research; Yuepu Guo, Carolyn Seaman University of Maryland Baltimore County Defining the Decision Factors for Managing Defects: A Technical Debt Perspective September 27, 2011 Slide 1

Power and automation are all around us You will find ABB technology Orbiting the earth and working beneath it, Crossing oceans and on the sea bed, In the fields that grow our crops and packing the food we eat, On the trains we ride and in the facilities that process our water, In the plants that generate our power and throughout our homes. September 27, 2011 Slide 2

Outline Background Focus and Methodology Findings Conclusion Month DD, YYYY Slide 3

Objective Evaluate how do Change Control Boards (CCB) make decisions on when to fix a defect Does technical debt apply to the decision making process? Month DD, YYYY Slide 4

Defects as Technical Debt When is a defect technical debt? Classifications of technical debt Intentional Sort term Long term Unintentional Month DD, YYYY Slide 5

Change Control Boards (CCB) Meets regularly to approve work that makes changes to a product (features and defects) Decisions regarding defects: Fix in current release Defer fixing Do not fix Month DD, YYYY Slide 6

Methodology Study defect history data Qualitative data analysis Review conclusions with all participants Construct interview questionnaire Confirm interview responses i Select Subject matter experts Conduct interviews via telephone, Month DD, YYYY Slide 7

Interviews of Change Control Board (CCB) Subject Matter Experts CCB participants in 2 products CCB Participants: Technical Product Manager Product Manager Test Manager Project Manager. Average 7 years experience per participant Products > 500k SLOC each

Questionnaire Open questions to participants: Decision factors? Cost Categories? Actual costs? How do costs change with different decisions? Were there positive/negative consequences of each decision? Month DD, YYYY Slide 9

Findings: Decision Factors for CCB s Decision factors for when to fix a defect: Severity Existence of a workaround Urgency of fix required by customer Effort to implement the fix Risk of the proposed fix Scope of testing required CCB teams make complex decisions with mostly qualitative criteria. Month DD, YYYY Slide 10

Findings: Cost Categories and Decisions Fix Investigation Modification Fix in the current release for a discovered defect Validation Month DD, YYYY Slide 11

Findings: Cost Categories and Decisions Fix Investigation Defer Fix Workaround Modification Validation Validation Customer support Month DD, YYYY Slide 12

Findings: Cost Categories and Decisions Fix Investigation Defer Fix Workaround Modification Validation Validation Customer support Month DD, YYYY Slide 13

Findings: Cost Categories and Decisions Fix Defer Fix If Must Patch Investigation Workaround Investigation Modification Validation Patch Validation Customer support Validation Month DD, YYYY Slide 14

Findings: Costs in relative terms Fix Month DD, YYYY Slide 15 Principal

Findings: Costs in relative terms Fix Defer Fix Month DD, YYYY Slide 16 Principal + Interest

Findings: Costs in relative terms Fix Principal Month DD, YYYY Slide 17 If Must Patch Defer Fix + Interest + Penalty

Findings and Opportunities Findings: Severity of impact to the customer s operation is the key factor Deferring a defect introduces interest cost and risk of penalty Opportunities Apply cost-benefit analysis for decision support Month DD, YYYY Slide 18

Conclusions CCB s : Manage current and future cost Use customer oriented decision criteria Balance Risk Fix/Defer decision can use cost-benefit analysis Month DD, YYYY Slide 19

REFERENCES 1. "IEEE standard glossary of software engineering terminology," Tech. Rep., 1990. Month DD, YYYY Slide 20 2. C. Jones, "Strategies for managing requirements creep," Computer, vol. 29, no. 6, pp. 92-94, Jun. 1996. 3. K. Tate, Sustainable software development : an agile perspective, A. Cockburn and J. Highsmith, Eds. Addison-Wesley, 2006. 4. S. McConnell. (2007). 10x Software Development. Available: http://forums.construx.com/blogs/stevemcc/archive/2007/11/01/technical-debt-2.aspx 5. M. Fowler. (2009). Technical Debt Quadrant. Available: http://www.martinfowler.com/bliki/technicaldebtquadrant.html 6. J. Rothman. (2006). An Incremental Technique to Pay Off Testing Technical Debt. Available: http://www.stickyminds.com/sitewide.asp?function=edetail&objecttype=col&objectid=1101 1&tth=DYN&tt=siteemail&iDyn=2 7. N. Brown, Y. Cai, Y. Guo, R. Kazman, M. Kim, P. Kruchten, E. Lim, A. MacCormack, R. Nord, I. Ozkaya, R. Sangwan, C. Seaman, K. Sullivan, N. Zazwork, Managing Technical Debt in software-reliant Systems, a, Proceedings of the 18th FSE/SDP Workshop on Future of Software Engineering Research, 47-52, 2010 8. C. Seaman and Y. Guo, Measuring and Monitoring Technical Debt, Advances in Computers, vol. 82, pp. 25-46, 2011. 9. Y. Guo, C. Seaman, A Portfolio Approach to Technical Debt Management,, Proceeding of the 2nd Workshop on Managing Technical Debt, 31-34, 2011 10. B. W. Boehm, "Software Risk Management: Principles and Practices," IEEE Software, vol. 8, pp. 32, 1991. 11. M.B. Miles, A.M. Huberman, "Qualitative Data Analysis: An Expanded Sourcebook", 2nd ed., Sage, 1994.