Sustainable Software Development in Agile and CMMI: Apply Lessons Learned today

Similar documents
Method and Plan of Action

You Want to Use Scrum, You are Told to Use CMMI

Future of CMM and Quality Improvement. Roy Ko Hong Kong Productivity Council

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant

SESSION 303 Wednesday, March 25, 3:00 PM - 4:00 PM Track: Support Center Optimization

Introduction to Agile Software Development Process. Software Development Life Cycles

How to manage agile development? Rose Pruyne Jack Reed

Course Title: Managing the Agile Product Development Life Cycle

Best of Everything ITIL, CMMI & Lean Six Sigma

Software Development Life Cycle Models - Process Models. Week 2, Session 1

A Viable Systems Engineering Approach. Presented by: Dick Carlson

Quality Systems Frameworks. SE 350 Software Process & Product Quality 1

Certified Software Quality Assurance Professional VS-1085

Global Standards and Publications

Agile Project. Management FOR DUMME&* by Mark C. Layton WILEY. John Wiley & Sons, Inc.

Using Measurement to translate Business Vision into Operational Software Strategies

Agile, TSP SM, CMMI pick one, pick two, pick all three!

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys

MKS Integrity & CMMI. July, 2007

Course Title: Planning and Managing Agile Projects

Software processes that are:

Agile Project Management Mapping the PMBOK Guide to Agile Practices. Michele Sliger

Agile SW Siemens

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

Abstract. Heavy vs Light Methodologies: Bulimic or Anorexic? Fernando Brito e Abreu FCT/UNL

The 2015 State of Scrum Report. How the world is successfully applying the most popular Agile approach to projects

Copyright protected. Use is for Single Users only via a VHP Approved License. For information and printed versions please see

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

AGILE & SCRUM. Revised 9/29/2015

Agile SW Siemens

CSSE 372 Software Project Management: More Agile Project Management

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting

Truly Managing a Project and Keeping Sane While Wrestling Elegantly With PMBOK, Scrum and CMMI (Together or Any Combination)

CMMI - The AGILE Way By Hitesh Sanghavi

Introduction to Agile and Scrum

Software Development Methodologies

Secrets of a Scrum Master: Agile Practices for the Service Desk

How To Compare Itil To Togaf

Scrum and CMMI Level 5: The Magic Potion for Code Warriors

Executive Guide to SAFe 24 July An Executive s Guide to the Scaled Agile Framework.

The MSS Approach to BPM

Software Requirements and Specification

Process Improvement. From the Software Engineering Institute:

Leveraging Agile and CMMI for better Business Benefits Presented at HYDSPIN Mid-year Conference Jun-2014

An Agile Project Management Model

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson Jyväskylä

Agile in Financial Services A Framework in Focus

Testing in Agile methodologies easier or more difficult?

Scrum and CMMI Level 5: The Magic Potion for Code Warriors

Introduction to Agile Software Development

Life Cycle Models, CMMI, Lean, Six Sigma Why use them?

Bridging the Gap: Traditional to Agile Project Management. I. S. Parente 1. Susan Parente, PMP, PMI ACP, CISSP, PMI RMP, ITIL, MSEM;

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Agile Software Development Methodologies and Its Quality Assurance

SECC Agile Foundation Certificate Examination Handbook

An Implementation Roadmap

Agile Development Overview

CMMI for Development Introduction & Implementation Roadmap

Introduction to Agile

Agile Software Development

Custom Development Management and Resource Planning. Eric Halbur, Application Development Manager

Measurement Strategies in the CMMI

Determining Best Fit. for ITIL Implementations

LEAN AGILE POCKET GUIDE

Capability Maturity Model Integration (CMMI SM ) Fundamentals

NokiaSiemens and Agile Development by Petri Haapio JAOO 2008

Camber Quality Assurance (QA) Approach

Agile and lean methods for managing application development process

Introduction to Agile Scrum

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

Comparing Agile Software Processes Based on the Software Development Project Requirements

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

Surviving SOX with Scrum. Integrating Scrum in IT Governance at Allianz

Agile-Enabled High Maturity

D25-2. Agile and Scrum Introduction

Lean and Agile in Safety-critical Software Development Research and Practice. Henrik Jonsson

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc.

Evolving the Enterprise Software Configuration Management Model

Agile and Secure: Can We Be Both?

Performance Measurement of Software Application Development & Maintenance

METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS

The Future of Best Practices in IT Service Management - ITIL Version 3 Explained

Usage of SCRUM Practices within a Global Company

J-Curve effect, 38, JIT. See Just-in-Time Inventory Just Enough Design Initially (JEDI), 6, 283

Quality Assurance in an Agile Environment

G-Cloud Service Definition. Atos Software Development Services

Transcription:

Sustainable Software Development in Agile and CMMI: Apply Lessons Learned today 2009

What is the CMMI Level 5 Optimizing 4 Quantitatively Managed 3 Defined 2 Managed 1 Initial Focus Continuous Process Quantitative Management Process Standardization Basic Project Management Process Areas Organizational Innovation and Deployment Causal Analysis and Resolution Organizational Process Performance Quantitative Project Management Requirements Development Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management for IPPD Risk Management Integrated Teaming Integrated Supplier Management Decision Analysis and Resolution Organizational Environment for Integration Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management Quality & Risk & Rework Capability Maturity Model Integration (CMMI) is a process improvement approach that provides organizations with the essential elements of effective processes.

What is Agile Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing crossfunctional teams. Agile methods generally promote a disciplined project management process that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork, self-organization and accountability, a set of engineering best practices that allow for rapid delivery of highquality software, and a business approach that aligns development with customer needs and company goals. http://en.wikipedia.org/wiki/agile_software_development

Agile by Brand Name extremeprogramming (XP) [Beck] Widest known, developer-focused for small teams Crystal methodolgies[coburn] - Set of methodologies conditional on circumstances - Only 2 defined: Crystal Clear, Crystal Orange Feature-Driven Development (FDD) [Palmer] - Agile approach closest to conventional development Scrum [Schwaber] - Focused on management practices Lean Software Development [Poppendieck] -Inspired by Toyota Production System, particularly its product development practices

What Can We Change People Technology Process The major determinants to Quality, Time to Market and Cost of software

Frameworks, Models and Tools Frameworks CMMI Prince II ITIL What Organization Methods xp Waterfall Tactics Tools Six Sigma Function Points ISO 9000 Agile PSM TSP RUP Balanced Scorecard PIMBOK CMMI SOX EFQM TQM Lean Function Points ITIL Six Sigma CoBIT

CMMI and Agile: Strange Bed Fellows Areas of Friction: Empowerment and trust versus micromanagement Solution: Coach as PPQA Organization standards versus project standards Tailoring guidance to allow teams to overrule Intermediate Work Products Solution: Define what is sufficient

Uncertainty You start projects knowing very little (as compared to when a project is implemented) Unknowns Cone of Uncertainty Knowledge Budgeting Initiation Implementation Words are the only thing typically known before a project is initiated (usually not very many)

Hierarchy Of Models Baldridge ISO9001 CoBIT People CMM ISO9001-1 CMMI DEV CMMI ACQ CMMI Services escm Overall Organizational Silo Specific Many models...pressing questions: How are models related? What are the synergies? How can implementations of multiple models be harmonized?

What can be achieved quickly? Project Name Profile Score Management Definition Design Build Test Environment Accounts Payable 55.3 47.73 82.05 50.00 46.15 43.75 50.00 Priotity One 27.6 50.00 48.72 11.36 38.46 0.00 42.31 HR Enhancements 32.3 29.55 48.72 0.00 42.31 37.50 42.31 Client Accounts 29.5 31.82 43.59 0.00 30.77 37.50 42.31 ABC Release 44.1 31.82 53.85 34.09 38.46 53.13 42.31 Screen Redesign 17.0 22.73 43.59 0.00 15.38 0.00 30.77 Customer Web 40.2 45.45 23.08 38.64 53.85 50.00 34.62 Whole Life 29.2 56.82 28.21 22.73 26.92 18.75 53.85 Regional - East 22.7 36.36 43.59 0.00 30.77 9.38 30.77 Regional - West 17.6 43.18 23.08 0.00 26.92 9.38 26.92 Cashflow 40.6 56.82 71.79 0.00 38.46 43.75 38.46 Credit Automation 23.5 29.55 48.72 0.00 38.46 6.25 26.92 NISE 49.0 38.64 56.41 52.27 30.77 53.13 53.85 Help Desk Automation 49.3 54.55 74.36 20.45 53.85 50.00 38.46 Formula One Upgrade 22.8 31.82 38.46 0.00 11.54 25.00 46.15 Process s: Code Reviews and Inspections Requirements Management Defect Tracking Configuration Management Project Name Profile Score Management Definition Design Build Test Environment Accounts Payable 75.3 61.73 82.05 60.00 60.15 53.75 50.00 Priotity One 57.6 57.00 55.72 18.36 45.46 22.00 49.31 HR Enhancements 52.3 32.55 51.72 23.00 42.31 57.50 49.31 Client Accounts 69.5 53.82 65.59 12.00 50.77 67.50 49.31 ABC Release 74.1 55.82 69.85 49.09 52.46 63.13 49.31 Screen Redesign 67.0 43.73 63.59 21.00 36.38 20.00 51.77 Customer Web 59.2 49.45 27.08 58.64 53.85 54.00 49.62 Whole Life 50.2 49.82 32.21 27.73 31.92 24.75 53.85 Regional - East 57.7 59.36 49.59 0.00 30.77 9.38 50.77 Regional - West 52.6 55.18 30.08 0.00 33.92 19.38 26.92 Cashflow 67.6 66.82 71.79 0.00 49.46 53.75 49.46 Credit Automation 60.5 41.55 78.72 0.00 50.46 26.25 46.92 NISE 79.0 68.64 76.41 62.27 65.77 53.13 53.85 Help Desk Automation 79.3 64.55 74.36 47.45 63.85 54.00 58.46 Formula One Upgrade 52.8 49.82 52.46 0.00 31.54 25.00 56.15 Baseline Average Project Size 133 Average FP/SM 10.7 Average Time-To-Market (Months) 6.9 Average Cost/FP $939 Delivered Defects/FP 0.0301 Performance s: ~ +131% Time to Market ~ -49% Defect Ratio ~ -75% Average Project Size 133 Average FP/SM 24.8 Average Time-To-Market (Months) 3.5 Average Cost/FP $467 Delivered Defects/FP 0.0075

Agile Implementations of Common CMMI Practices PM - SCRUM Requirements Management Backlog Peer review pair programming Quality Control TDD CM Continuous builds What is the impact?

Impact Data From Where? DCG Project Data Store Filter for Approximate Project Size Filter for Complexity and Sourcing All data is less than three years old. All data collected and vetted by DCG. Metrics Signature *approximate 12

SCRUM v. Classic Project Management 4% 2% 11% 7 % Time-to-Market Total Defects Maintenance Classic Project Management SCRUM 8% 13% 10% 17% Time-to-Market Total Defects Maintenance

Peer Review v Collaborative Development 13% 6% 30% 21% Time-to-Market Total Defects Maintenance Peer Review Collaborative Development 18% 10% 37% 17% Time-to-Market Total Defects Maintenance

Requirements Management v Backlogs 2-4% - % 5 % 2-3% Time-to-Market Total Defects Maintenance Requirements Management Backlogs 2-4 % 1-2 % 5 % - % Time-to-Market Total Defects Maintenance

Classic Testing v TDD 7 % 3% 35% 16% Time-to-Market Total Defects Maintenance Classic Testing Test Driven Development 11% 4 % 61% 32% Time-to-Market Total Defects Maintenance

Configuration Management v Continuous Integration 3-4 % - % 2-3 % 1-3 % Time-to-Market Total Defects Maintenance Configuration Management CM with Continuous Integration 5 7% 7 % 5-8 % - % Time-to-Market Total Defects Maintenance

Case One Small custom technology organization (internal and external projects), Highly collaborative culture Mixed SCRUM and Plan Based project environment All external projects are bid with fixed caps Internal projects continually scoped to fit internal development budget Estimates had mixed success rate

The Answer Internal with Sales acting as proxy customer Postacceptance Develop and Pre-size backlog Application of, Capabilities Bid Development Refinement During Sprint Planning Techniques Used QEFP for sizing backlog Explicit risk and skills evaluation Planning Poker Impact Proposals increased 20% Negative misses nearly eradicated (underbidding on fixed price contract)

Case Two Large software development firm, hierarchical culture and one very large project and many smaller Mixed SCRUM/XP (recent addition) and Plan Based project environment Strenuous budgeting process with tax accruals Significant discovery was required to define, design and develop the large project Experienced based estimation based on bottom up task planning questionable on the large project!

The Answer Techniques Used QEFP for sizing backlog QEFP for sizing items added during sprint planning Planning Poker Impact Improved product owner satisfaction Increased perception of consistency Reduced number of stories escaping sprints

Manifesto Manifesto for Agile Software Development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.

Your Turn Questions? Thomas Cagley Jr. t.cagley@davidconsultinggroup.com (440) 933-8768