Copyright ©2001 Software Quality Consulting Inc.Slide 1 An overview of Management’s Role in Achieving Predictable Software Development Q Software Quality.

Slides:



Advertisements
Similar presentations
Process and Product Quality Assurance (PPQA)
Advertisements

Configuration Management
A presentation from June 20, 2000 Jim Brosseau The ‘How-To’ of Software Process Improvement.
The “Lifecycle” of Software. Chapter 5. Alternatives to the Waterfall Model The “Waterfall” model can mislead: boundaries between phases are not always.
Game Development Essentials An Introduction. Chapter 11 Production & Management developing the process.
Chapter 10 Schedule Your Schedule. Copyright 2004 by Pearson Education, Inc. Identifying And Scheduling Tasks The schedule from the Software Development.
Computer Engineering 203 R Smith Project Tracking 12/ Project Tracking Why do we want to track a project? What is the projects MOV? – Why is tracking.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #7 Software Engineering.
CS 325: Software Engineering April 7, 2015 Software Configuration Management Task Scheduling & Prioritization Reporting Project Progress Configuration.
Agile Software Development. Traditional Software Development 1.Initiation (RFP) 2.Feasibility study Technical – can we build it? Economic – should we.
Requirements Structure 2.0 Clark Elliott Instructor With debt to Chris Thomopolous and Ali Merchant Original Authors.
Capability Maturity Model (CMM) in SW design
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Why Software.
Applied Software Project Management 1 Introduction Dr. Mengxia Zhu Computer Science Department Southern Illinois University Carbondale.
The Analyst as a Project Manager
Development Processes and Product Planning
Systems Analysis and Design. Systems Development Life Cycle (SDLC) Systems Analysis Systems Design Programming Testing Conversion On-going maintenance.
Software Management Plan (part I) Software management’s 7 deadly sins The “3 P’s” of software management Why big software projects fail: the key 12 questions.
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
12 Steps to Useful Software Metrics
Change Request Management
Capability Maturity Model
SOFTWARE QUALITY ASSURANCE Asst. Prof. Dr. Selim BAYRAKLI Maltepe University Faculty of Engineering SE 410.
Release & Deployment ITIL Version 3
Prepare for Change Ideas for Today and Tomorrow. Change is inevitable: Internal Factors Aging infrastructures Aging workforce Projects vs. programs New.
Presented by: Insert Name Safety Management Consultant
Software Project Management Lecture # 8. Outline Chapter 25 – Risk Management  What is Risk Management  Risk Management Strategies  Software Risks.
© 2007 Heuristic Management Systems Inc. Learning to Thrive in a Risk-averse Culture Chris Vandersluis President,
Software Project Management
Capability Maturity Model Part One - Overview. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First.
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Chapter 1: Introduction.
N By: Md Rezaul Huda Reza n
Project Management Chapter 3. Objectives Become familiar with estimation. Be able to create a project workplan. Understand why project teams use timeboxing.
1 Chapter 4: Project Integration Management. 2 Learning Objectives Describe an overall framework for project integration management as it relates to the.
Team Chartering Six Sigma Foundations Continuous Improvement Training Six Sigma Foundations Continuous Improvement Training free six sigma site.
Software Project Management Lecture # 8. Outline Earned Value Analysis (Chapter 24) Topics from Chapter 25.
Resources Performance time. resources Performance time 2.
Certificate IV in Project Management Introduction to Project Management Course Number Qualification Code BSB41507.
Facts and Fallacies of Software Engineering (Rob Glass) CSE301 University of Sunderland Discussed by Harry R. Erwin, PhD.
1 Project Management Introduction. 2 Chap 1 What is the impact? 1994: 16% of IT projects completed “On-Time” 2004 : 29% of IT projects “On- Time” 53%
ORGANIZATIONAL BEHAVIOR
Software Requirements Engineering: What, Why, Who, When, and How
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Project monitoring and Control
Team Skill 6: Building the Right System Managing Change (28)
Georgia Institute of Technology CS 4320 Fall 2003.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Introducing Project Management Update December 2011.
Project Management Methodology
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Project management Topic 1 Project management principles.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Chap 4. Project Management - Organising, planning and scheduling
Stand Up Comedy Project/Product Management
SOFTWARE PROCESS IMPROVEMENT SHARATH CHANDAR REDDY ALETI CSC 532 TERM PAPER.
What is project management?
R i s k If you don’t attack risks, they will attack you.
Capability Maturity Model. CS460 - Senior Design Project I (AY2004)2 Immature Organisations Software processes are often rigorously followed. Organisation.
The Denison Organizational Culture Model & Link to Performance
Project Management A Practical Approach Sridhar Pandurangiah Director - Engineering Sridhar Pandurangiah Director - Engineering.
Configuration Management
Organisation Control KPI’s & an industry Review
Managing the Project Lifecycle
Systems Analysis and Design in a Changing World, 4th Edition
How to fail at delivering software
Capability Maturity Model
Capability Maturity Model
Quality & Risk Management
Presentation transcript:

Copyright ©2001 Software Quality Consulting Inc.Slide 1 An overview of Management’s Role in Achieving Predictable Software Development Q Software Quality Consulting Inc. Steven R. Rakitin  Consulting President  Training  Quality Systems Phone: www.swqual.com Q Software Quality Consulting Inc. Steven R. Rakitin  Consulting President  Training  Quality Systems Phone: www.swqual.com

Copyright ©2001 Software Quality Consulting Inc.Slide 2 Topics Motivation –Economics of Software Development Balancing Quality, Features, and Schedule –Management’s Role Balancing People, Process, and Product –Management’s Role

Copyright ©2001 Software Quality Consulting Inc.Slide 3 Motivation Software Development is like the stock market You’d be way ahead of the game if only you could predict what will happen

Copyright ©2001 Software Quality Consulting Inc.Slide 4 Motivation Many software development organizations lack: –Discipline –Credibility –Predictability As a result, these organizations are unable to accurately predict when products will be released. To be competitive in today’s global economy, these issues must be addressed. Many software development organizations lack: –Discipline –Credibility –Predictability As a result, these organizations are unable to accurately predict when products will be released. To be competitive in today’s global economy, these issues must be addressed. When will the software be done?

Copyright ©2001 Software Quality Consulting Inc.Slide 5 Motivation Managers have the ability to change the organization and influence the behavior of developers, QA, and project managers. –How can you exert this influence? –What behaviors should be encouraged and which should be discouraged? –How can you know if you are on the right track? Managers have the ability to change the organization and influence the behavior of developers, QA, and project managers. –How can you exert this influence? –What behaviors should be encouraged and which should be discouraged? –How can you know if you are on the right track?

Copyright ©2001 Software Quality Consulting Inc.Slide 6 The Goal Delighting your Customers by consistently delivering Quality products on time. Predictable Software Development

Copyright ©2001 Software Quality Consulting Inc.Slide 7 Unpredictable Organizations –Planning new product releases is difficult –Staffing projects difficult –Customer frustrated from promises not kept –Employees frustrated from promises not kept –Many unplanned bug fix releases –Product quality low –Time to market goals consistently not met –Costs higher than expected –Revenue projections frequently not met –Over-commit AND under-deliver –Planning new product releases is difficult –Staffing projects difficult –Customer frustrated from promises not kept –Employees frustrated from promises not kept –Many unplanned bug fix releases –Product quality low –Time to market goals consistently not met –Costs higher than expected –Revenue projections frequently not met –Over-commit AND under-deliver

Copyright ©2001 Software Quality Consulting Inc.Slide 8 Root Causes Inadequate training Lack of measurement Unrealistic schedules Poor project management skills Don’t understand Customers “Crisis mentality” Reward wrong behaviors Inadequate training Lack of measurement Unrealistic schedules Poor project management skills Don’t understand Customers “Crisis mentality” Reward wrong behaviors

Copyright ©2001 Software Quality Consulting Inc.Slide 9 Predictable Software Development Set achievable expectations Develop accurate, realistic schedules Meet them! Follow a documented Development process Hold people accountable Proactively Manage Risk Manage Internal and External Commitments Measure what happens Set achievable expectations Develop accurate, realistic schedules Meet them! Follow a documented Development process Hold people accountable Proactively Manage Risk Manage Internal and External Commitments Measure what happens

Copyright ©2001 Software Quality Consulting Inc.Slide 10 Characteristics of Predictable Organizations Measure Quality and Customer Satisfaction regularly Measure Employee Satisfaction regularly Make effective use of scarce, expensive resources Rarely in ‘fire fighting’ mode Few unplanned bug fix releases Follow a documented Development Process Actively Manage Risks Under-commit AND Over-deliver Measure Quality and Customer Satisfaction regularly Measure Employee Satisfaction regularly Make effective use of scarce, expensive resources Rarely in ‘fire fighting’ mode Few unplanned bug fix releases Follow a documented Development Process Actively Manage Risks Under-commit AND Over-deliver

Copyright ©2001 Software Quality Consulting Inc.Slide 11 Predictable Software Development ScheduleFeatures Quality Predictable Software Development People ProcessProduct Commitment Management Risk Management

Copyright ©2001 Software Quality Consulting Inc.Slide 12 From a Management Perspective... Culture Process Performance

Copyright ©2001 Software Quality Consulting Inc.Slide 13 Economics of Software Development How Startups Acquire Bad Habits Cost of Software Defects Time to Market vs. Quality Economic Value of Quality

Copyright ©2001 Software Quality Consulting Inc.Slide 14 Cost of Software Defects Requirement Analysis Requirements Definition $1 Design $5 Coding $20 Testing $50 Maintenance $100 Relative cost factor to find and fix defects at each phase of the Software Development Life Cycle Source: Boehm, B., Software Engineering Economics, Prentice-Hall, 1981 Relative cost factor to find and fix defects at each phase of the Software Development Life Cycle Source: Boehm, B., Software Engineering Economics, Prentice-Hall, 1981

Copyright ©2001 Software Quality Consulting Inc.Slide 15 Software Defect Cost Model Rework Cost Profit loss due to schedule slip Design Design Inspections Coding Code Inspections Integration Testing Validation Testing Documentation Software Defect Cost Ward, J., “Calculating the real cost of software defects”, AAMI 27th Annual Conference Proceedings, 1992.

Copyright ©2001 Software Quality Consulting Inc.Slide 16 This cycle can take from hours per defect Using an average of $150 per hour for Software Engineering time... Max cost per defect is: 30 * $150 = $4,500 For a product with 100 defects, the cost is: 100 * $4,500 = $450,000 Pre-release Find/Fix Cycle Development includes fix in next baseline New release to SQA SQA performs regression testing Testing uncovers a potential defect Potential defect reported Dev. investigates & verifies defect Dev. fixes defect & does some testing

Copyright ©2001 Software Quality Consulting Inc.Slide 17 This cycle can take from hours per defect Using an average of $150 per hour for Software Engineering time... Max cost per defect is: 60 * $150 = $9,000 For a product with 100 defects, the cost is: 100 * $9,000 = $900,000 Post-release Find/Fix Cycle Update documentation New version released to Mfg New version distributed to Customers Customers install new version Defects? No Yes Pre-Release Find/Fix Cycle

Copyright ©2001 Software Quality Consulting Inc.Slide 18 Economic Motivation How do you want to allocate Engineering resources? Develop New Projects OR Rework Existing Products $$ Generates revenue Doesn’t generate revenue $

Copyright ©2001 Software Quality Consulting Inc.Slide 19 Balancing Quality, Features, and Schedule ScheduleFeatures Quality Software Quality Myths/Facts “Good Enough” Quality Debate Economic and Competitive Value of Quality Creating accurate, realistic schedules Management’s Role Software Quality Myths/Facts “Good Enough” Quality Debate Economic and Competitive Value of Quality Creating accurate, realistic schedules Management’s Role

Copyright ©2001 Software Quality Consulting Inc.Slide 20 Creating Accurate, Realistic Schedules Understand why estimates and schedules wrong most of the time Identify “Best Practices” for estimating and scheduling Provide staff with training in “Best Practices” Allow them to do it!

Copyright ©2001 Software Quality Consulting Inc.Slide 21 Why are estimates and schedules wrong? We play ridiculous negotiating games...  Doubling and Add Some  Reverse Doubling  Spanish Inquisition  “Guess the date I'm thinking...”  We don’t teach people how to do it!  We allow feature creep without assessing impact  We don’t hold people accountable  Accountability = Responsibility + Authority Source: Yourdon, E., Death March: The Complete Software Developer’s Guide to Surviving “Mission Impossible” Projects, Upper Saddle River, NJ: Prentice-Hall PTR, 1997

Copyright ©2001 Software Quality Consulting Inc.Slide 22 Why are estimates and schedules wrong? Management frequently OVER-commits Project teams have not been taught estimating and scheduling techniques Project Management skills are lacking Interdependencies are frequently ignored “People issues” are frequently ignored Known risks are frequently ignored

Copyright ©2001 Software Quality Consulting Inc.Slide 23 Typical “scheduled-backwards” Project Project starts with predetermined end date Tasks estimated based on time available rather than time required Task interdependencies not identified Unexpected things that ALWAYS happen on every project not anticipated... the requirements WILL change key members of the project team will leave a key assumption about the product will prove wrong needed training for new tools / technology not provided dependencies arise that were previously unknown or ignored key resources pulled off to fight most recent “fire” etc...

Copyright ©2001 Software Quality Consulting Inc.Slide 24 Typical “scheduled-backwards” Project Sooner or later, the schedule slip becomes so large it can’t be ignored –Project Manager panics and starts paring down features and cranking up coding –Whatever process the project was following is abandoned –Activities like Design Reviews and Code Inspections are eliminated. Testing time curtailed. Usual outcome is a lose-lose situation –Organization loses –Customers lose

Copyright ©2001 Software Quality Consulting Inc.Slide 25 Some Observations... Projects that are late are almost always “scheduled backwards” “Scheduling backwards” has a negative impact on project morale, product quality, and productivity Scheduled backwards projects frequently require unplanned bug fix releases Many people have personal “Quality Standards” that are significantly higher than Management’s...

Copyright ©2001 Software Quality Consulting Inc.Slide 26 Estimation and Scheduling “Best Practices” COCOMO II Function Points Feature Points Wideband Delphi Yellow Sticky Method

Copyright ©2001 Software Quality Consulting Inc.Slide 27 Balancing Quality, Features, and Schedule Management’s Role: –Work to create culture - under-commit / over-deliver –Train staff in estimating and scheduling techniques –Manage commitments made to Customers –Require schedules be developed going forwards by people who will be doing the work –Negotiate schedule based on fact not fiction –Hold project team accountable –Reward teams that meet commitments!

Copyright ©2001 Software Quality Consulting Inc.Slide 28 Balancing People, Process, and Product People ProcessProduct Software Development Best Practices People Issues Product Issues

Copyright ©2001 Software Quality Consulting Inc.Slide 29 Best Practices Risk Management Define Requirements FIRST Peer Reviews Binary Quality Gates at the inch-pebble level Project-wide visibility of project plan and progress vs. plan Defect tracking against Quality Targets Configuration Management Source: Ed Yourdon, Rise & Resurrection of the American Programmer, Prentice-Hall, 1998 Web sites:

Copyright ©2001 Software Quality Consulting Inc.Slide 30 Binary Gates at the Inch Pebble Level Project Start Scheduled Ship Date Management made aware that there is a “crisis” The Problem...

Copyright ©2001 Software Quality Consulting Inc.Slide 31 Binary Gates at the Inch Pebble Level Beware of the “90% done” syndrome Use binary measures (done / not done) Precisely define what is meant by “done” Define gates at each major stage of development Proceed “at risk” when gates not met Beware of the “90% done” syndrome Use binary measures (done / not done) Precisely define what is meant by “done” Define gates at each major stage of development Proceed “at risk” when gates not met

Copyright ©2001 Software Quality Consulting Inc.Slide 32 Binary Gates at the Inch Pebble Level

Copyright ©2001 Software Quality Consulting Inc.Slide 33 Best Practices Summary A Written Software Development Process... –The “wrapper” that encompasses Best Practices –Best Practices are only BEST if they work for you –Measurement is essential - You can’t know what you don’t measure –A written Development Process DOES NOT limit people’s ability to do creative work –Software Development Process should include Development, QA, and Doc

Copyright ©2001 Software Quality Consulting Inc.Slide 34 Software Development Best Practices Management’s Role –Work to create “process-oriented” culture –Require written process that’s appropriate and flexible - tailored to meet specific needs of each project. –Require people who must follow the process be actively involved in creating it. –Ensure the process is communicated and understood. If necessary, provide training. –Hold project teams accountable for following the process. –Require the process be reviewed periodically and changed based on process measures. Management’s Role –Work to create “process-oriented” culture –Require written process that’s appropriate and flexible - tailored to meet specific needs of each project. –Require people who must follow the process be actively involved in creating it. –Ensure the process is communicated and understood. If necessary, provide training. –Hold project teams accountable for following the process. –Require the process be reviewed periodically and changed based on process measures.

Copyright ©2001 Software Quality Consulting Inc.Slide 35 The Goal... Delighting your Customers by consistently delivering Quality products on time. Predictable Software Development

Copyright ©2001 Software Quality Consulting Inc.Slide 36 Thank you......for taking time to attend this meeting! If you have any questions on the material in this presentation, please don’t hesitate to call or Q Software Quality Consulting Inc. Steven R. Rakitin  Consulting President  Training  Quality Systems Phone: www.swqual.com Q Software Quality Consulting Inc. Steven R. Rakitin  Consulting President  Training  Quality Systems Phone: www.swqual.com