CMM vs. Agile. Dedication

Similar documents
Watts Humphrey A tribute to the Father of Software Quality. Biography

Software Process Assessment

Schedule Games: Recognizing and Avoiding the Games We Play

CMMI-DEV V1.3 CMMI for Development Version 1.3 Quick Reference Guide

A Global Overview of The Structure

9/24/2011 Sof o tw t a w re e P roc o e c s e s s s Mo M d o e d l e s l 1 Wh W a h t t i s i s a Pr P oc o ess s 2 1

Lesson Learned from Cross Constellations and Multi Models Process Improvement Initiatives

CC and CMMI. An Approach to Integrate CC with Development

Relationship between CMMI Maturity Levels and ISO/IEC Processes Capability Profiles

System Engineering Process Improvement using the CMMI in Large Space Programs

Highlights of CMMI and SCAMPI 1.2 Changes

Update Observations of the Relationships between CMMI and ISO 9001:2000

Teuvo Suntio. Quality Development Tools. Professor of Power Electronics at University of Oulu. Electronic System Design A TS Rev. 1.

High Maturity Practices in Quality Assurance Mechanisms for Quantitative Management (QM) and Continuous Process Improvement (CPI)

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

How to Assure your Subcontractors Quality with Cross Constellations and Multi Models Inspiration Continues Process Improvement Initiatives

Patricia A Eglin David Consulting Group

8. CMMI Standards and Certifications

DORNERWORKS QUALITY SYSTEM

SQGNE is made possible by the support of our sponsors:

USAF Software Technology Support Center (STSC) STSC SPI Help Desk COM , DSN

SCRUM and the CMMI. The Wolf and the Lamb shall Feed Together

CMMI for Technical Staff

Organizational Synthesis - CMMI, The Glue That Binds

SCAMPI V1.1 Method Overview

Leveraging Your Service Quality Using ITIL V3, ISO and CMMI-SVC. Monday Half-Day Tutorial

Chapter 26 Process improvement

Generating Supportive Hypotheses

SOFTWARE ENGINEERING SOFTWARE PROCESS. Saulius Ragaišis.

CMMI for Acquisition Quick Reference

CMMI SM Mini- Assessments

What s New in V1.3. Judah Mogilensky Process Enhancement Partners, Inc.

Quest 2015 Webinar Series:

MTAT Software Engineering Management

Practical Application of the CMMI for Building a Strong Project Management Infrastructure

Process Maturity Profile

Comparing Scrum And CMMI

CMMI Version 1.2. Model Changes

CMMI for Services (CMMI -SVC) Process Areas

CMMI-SVC V1.3 CMMI for Services Version 1.3 Quick Reference Guide

Bill Smith, CEO Leading Edge Process Consultants LLC

Use of Competency Guidelines to Address CMMI GP 2.5

Implementing Systems Engineering Processes to Balance Cost and Technical Performance

Strategies for Transitioning to CMMI-SVC

Using the Equity in AS9100C to Implement CMMI-DEV Maturity Level 3

Software technology 3. Process improvement models. BSc Course Dr. Katalin Balla

CMMI for Services Quick Reference

The Quality Paradigm. Quality Paradigm Elements

CMMI for Services: Re-introducing the CMMI for Services Constellation

Q.A. Осигуряване на качество на софтуера (2016/2017, редовно/задочно)

Using CMMI. Type of Work. IT solution development Software development IT solution integration IT solution deployment

Presentation Objectives

DoD Systems Engineering and CMMI

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

Introduction to Software Engineering: Project Management ( Highlights )

Ogden Air Logistics Center

Proposed Approach to Heterogeneous CMMI. Appraisals. Joseph V. Vandeville. 14 November 2007

The Issue of Performance Why Do you need a Maturity Level 5. Achieving the Organizational Business Objectives Through Optimized Operational Processes

Buy:

Staged Representation Considered Harmful?

Training Catalog. Version

Engineering. CMMI for Development V.1.2 Module 3. M03/Engineering/v1.2

CMM,,mproving and,ntegrating

There are 10 kinds of people in the world. Those who think in binary, and those who don t.

Agile Resiliency. How CMMI will make Agile Thrive and Survive. Has your customer (or manager) ever said:

CMMI V2.0 MODEL AT-A-GLANCE. Including the following views: Development Services Supplier Management. CMMI V2.0 outline BOOKLET FOR print.

Analyzing Resonance of Motivation in Software Development Process Training by Using FRAM (Work-in-progress)

This chapter illustrates the evolutionary differences between

The Rational Unified Process and the Capability Maturity Model Integrated Systems/Software Engineering

SOFTWARE ENGINEERING SOFTWARE-LIFE CYCLE AND PROCESS MODELS. Saulius Ragaišis.

Software Quality Assurance Framework (SQA) Yujuan Dou 窦玉娟 2008/11/28

Nitty Gritty of QA Project Management. 11-Feb-09 Carol Perletz

Marilyn Ginsberg-Finner Northrop Grumman Corporation

MDICx Q4 Quarterly update on the CDRH Case for Quality Voluntary Medical Device Manufacturing and Product Quality Pilot Program

Do s and Don ts of Appraisal Preparation

CMMI Capability Maturity Model Integration [CMU SEI]

TANGIBLE STRATEGIES FOR ALIGNING YOUR PROCESSES WITH AGILE

Examining the Test Process: Predicting the Return on Investment of a Process Change

This resource is associated with the following paper: Assessing the maturity of software testing services using CMMI-SVC: an industrial case study

Do s Don ts and Pitfalls: Planning your first CMMI appraisal

CMMI v1.1 for a Service-Oriented Organization. By Steve Hall, Jeff Ricketts, Diane Simpson 16 November 2005

Integrated Class C Process Appraisals (ICPA)

One if by Land, Two if by Sea

A Real-Life Example of Appraising and Interpreting CMMI Services Maturity Level 2

Who needs that process stuff anyway? A practical example of process discipline to improve deployment

Visualizing Betweenness Centrality of Process Area Networks Organization, CMMI-SVC

Software Quality Engineering Courses Offered by The Westfall Team

Requirements Development of Energy Management System for a Unit in Smart Campus

Leveraging Quality For Competitive Advantage

Software Quality Engineering Courses Offered by The Westfall Team

CMMI-SVC: A Cost-Effective Approach to Early Use

High Maturity Misconceptions: Common Misinterpretations of CMMI Maturity Levels 4 & 5

What is important in CMMI and what are the interrelations among its elements?

CMMI and Agile Development: A Binary Choice?

Are we Agile Yet? Agile is NOT a Destination

Two Branches of Software Engineering

M. Lynn Penn Lockheed Martin Integrated Systems and Solutions November 2004

Understanding and Leveraging a Supplier s CMMI Efforts: A Guidebook for Acquirers (Revised for V1.3)

Transitioning a Merged Organization to CMMI and a New OSSP. NDIA CMMI Technology Conference November 14, 2002

Transcription:

CMM vs. Agile Finding the right fit for your project Stan Wrobel, PMP CSC 10-Feb-2010 Dedication Irina Curtin (1975-2009) Raymond Fischer (1943-2010) 1

Software Project Allocation of Effort Requirements Analysis Preliminary Design Detailed Design Coding and Unit Testing Integration and Test System Test 1960s 1970s 10.00% 80% 10.00% 1980s 20.00% 60.00% 20.00% 1990s 40.00% 30.00% 30.00% Source: Andersson, M., and J. Bergstrand. 1995. Formalizing Use Cases with Message Sequence Charts. Unpublished Master s thesis. Lund Institute of Technology, Lund, Sweden. History of CMM and CMMI Starting in 1991, Capability Maturity Models have been developed for a number of disciplines. The landmark book, The Capability Maturity Model Guidelines for Improving the Software Process, was first published in 1994. Over the years, CMMs have been produced for a myriad of disciplines, including systems engineering, software engineering, software acquisition, workforce management and development, and Integrated Product and Process Development. CMMI (CMM Integration) was a project to sort out the problem of using multiple CMMs in practice. 2

CMMI Process Areas Maturity Level 2 - Managed CM - Configuration Management MA - Measurement and Analysis PMC - Project Monitoring and Control PP - Project Planning PPQA - Process and Product Quality Assurance REQM - Requirements Management SAM - Supplier Agreement Management CMMI Process Areas Maturity Level 3 - Defined DAR - Decision Analysis and Resolution IPM - Integrated Project Management +IPPD OPD - Organizational Process Definition +IPPD OPF - Organizational Process Focus OT - Organizational Training PI - Product Integration RD - Requirements Development RSKM - Risk Management TS - Technical Solution VAL - Validation VER - Verification 3

CMMI Process Areas Maturity Level 4 - Quantitatively Managed QPM - Quantitative Project Management OPP - Organizational Process Performance Maturity Level 5 - Optimizing CAR - Causal Analysis and Resolution OID - Organizational Innovation and Deployment CSC North American Public Sector CMMI Level 3 Certified CMMI model provides a framework Links organizational processes to business objectives Enables organizations to continue optimizing performance in management, product development and delivery CMMI Appraisal evaluates compliance to the model Engineering, Development, and Management Processes and products Level 3 validates Solid processes are in place They are executed consistently CSC North American Public Sector division certification Four independent appraisal companies in 2009 An exhaustive review of more than 20 NPS programs 4

Waterfall Process http://www.csse.monash.edu.au/~jonmc/cse2305/topics/07.13.sweng1/html/text.html CSC Catalyst Process Framework SM Phase Vision and Strategy Architecture Development Integration Deployment Operational Services Catalyst Phase Summary Purpose Establish business objectives Create future vision Define and prioritize business areas Define requirements for affected domains of change Describe and design major processes Create structure to guide development Plan releases Complete detailed design Build, transform, or acquire applications and infrastructure to support processes Validate entire business solution, optionally using authentic pilot Deploy all aspects of business solution to target locations Continuously operate and improve computing environment 5

Agile Approach Individuals & over processes and tools interactions Working software over comprehensive documentation Customer over contract negotiation Collaboration Responding to Change over following a plan Deliver working software frequently The most efficient and effective method of conveying information is face-to-face At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly http://agilemanifesto.org Agile Considerations One of the key tenets of Agile is access to the customer the end user; this is essential to the Agile way of doing business. While reviewing multiple references on Agile, we found that indeed, the concepts used in Agile are not new. Some were used as early as the 1950s and through the 60s and 70s, and on into the 80s *. The Agile Manifesto gathered and documented the ideas and the Agile movement promoted them for the betterment of software development and added value to the end user. * D. F. Rico, H. H. Sayani, and S. Sone, What is the ROI of Agile vs Traditional Methods? An analysis of XP, TDD, Pair Programming, and Scrum (Using Real Options), synopsis of The Business Value of Agile Software Methods. J. Ross Publishing, 2009. [Online]. www.jrosspub.com/engine/shopping /catalog.asp?store=&category=&itempage=&item=14200&itemonly=1 6

Agile Considerations Continuous integration of software is contingent upon the ability to concurrently execute two crucial activities: (1) collect incremental changes from multiple developers on a regular basis, ideally on a daily basis, and (2) perform the nightly build discipline, where all changes are brought together in an incremental software baseline, which is in turn compiled and tested with the available unit and regression tests. Agile teams tend to be less formal but are highly disciplined. Mary Ann Lapham, Ray Williams, Charles (Bud) Hammons, Daniel Burton, Alfred Schenker, Considerations for using Agile in DoD Acquisition. CMU/SEI-2010-TN-002, Technical Note, April 2010. Where Agile Works Small teams working on small incremental releases High employee retention ti rate is important t Low number of customers or very high (>1000) customers Customer willing to spend time Share expertise Flexibility on contractual matters Testers work to identify the right things to test Close collaboration with developers and customers 7

Where Agile is Challenged If documentation goes lacking, high employee turnover carries high risk Distributed teams need frequent interaction (internet meetings, email, blogs, etc. mitigate this) Multiple customers or constituencies may introduce requirement conflicts how to resolve without tracing and documentation? Unless testers have subject matter expertise or close relationship with customer, testing may focus on the wrong things Agile Example - Facebook Started with a basic idea Developed into a complex system for social networking Could you have sat down and written the specification for Facebook today, in 2003? 8

Lessons From the CMMI Waterfall Requirements need to be documented in clear, unambiguous language Customers cannot always express what they want adequately need process to elicit the information needed to build Customers and sometimes management will try to pad a release with too many features use requirements tracing or other disciplined approach to show impact on testing and control scope How can you even have a scope discussion with customer without clearly defined requirements? With mass market products, beta testers may discover many new requirements need to document and analyze and trace back to design and testing Question for Discussion Can you use Agile in a CMMI environment? 9

References Capability Maturity Model Integration (CMMISM) - www.sei.cmu.edu/cmmi/ Agile Manifesto - http://agilemanifesto.org CSC Catalyst SM Process Framework http://www.csc.com/delivery_excellence/ds/11388/13193-catalyst_concepts FAA-STD-026A U.S. DOT FAA Standard, Software Development for the National Airspace System (NAS) http://www.faa.gov/air_traffic/nas/system_standards/standards/media/pdf/faa-std- 026A.pdf 10

Welcome to our 17 th season! SQGNE is made possible by the support of our sponsors: Oracle and Sun Integrated Systems An all-volunteer group with no membership dues! Supported entirely by our sponsors Over 700+ members Monthly meetings - Sept to July on 2 nd Wed of month E-mail list - contact John Pustaver pustaver@ieee.org SQGNE Web site: www.sqgne.org Logo design: Sarah Cole Design Slide 1 Slide 2 Volunteers / Hosts / Mission ASQ Software Division Officers and Volunteers John Pustaver President and Founder Steve Rakitin VP and Programs Gene Freyberger Annual Survey Howie Dow Treasurer Dawn Wu Clerk and official Greeter Our gracious Hosts: Paul Ratty Board of Dir Tom Arakel Margaret Shinkle Jack Guilderson Software Quality Live - for ASQ SW Div members Software Quality Professional Journal www.asq.org/pub/sqp/ CSQE Certification info at www.asq.org/software/getcertified SW Div info at www.asq.org/software Mission To promote use of engineering and management techniques that lead to delivery of high quality software To disseminate concepts and techniques related to software quality engineering and software engineering process To provide a forum for discussion of concepts and techniques related to software quality engineering and the software engineering process To provide networking opportunities for software quality professionals Slide 3 Slide 4 SQGNE 20010-11 Schedule Tonight s Speaker Speaker Affiliation Date Topic Steve and Howie 9/8/10 Test your Testing Aptitude! Dow Stan Wrobel CSC 10/13/10 "CMM vs. Agile - Finding the right fit for your project" Capers Jones SPR 11/10/10 SOFTWARE QUALITY IN 2010: A SURVEY OF THE STATE OF THE ART Linda McInnis 12/8/10 Career Paths for SQA Professionals Add Steak to Exploratory Testing'sParlor-s Robin Goldsmith GoPro Management 1/12/11 Trick Sizzle A fundamental approach to improving Rick Spiewak 2/9/11 software quality Stephen P Berczuk 3/9/11 Build, SCM, and QA: Enablers for Agility Rothman & Johanna Rothman 4/13/11 SQA in an agile environment Associates To be announced 5/11/11 To be announced Maximizing the Value of Testing to the Business Marc Rene MetLife Auto & Home 6/8/11 First Annual Election for SQGNE Board of Directors and At-large Members Everyone 7/13/10 Annual Hot Topics Night CMM vs. Agile - Finding the right fit for your project Stan Wrobel, CSC You're starting a new project and the programmers are clamoring to use Agile and Extreme Programming techniques while the testers are insisting on formal requirements, documentation and metrics. How do you choose which approach is best for you and your business? Can you interact closely with your customer and still do CMM? Can you generate metrics and improve processes while sprinting toward an Agile or Extreme Programming release? With over 30 years of experience, Stan Wrobel leverages his sometimes painfully earned knowledge and experience to help you make this decision - using real world examples of both grand successes and utter failures. Bio: With over 30 years in the computer industry, Stan has served in a variety of roles, including applications specialist, requirements engineer, software developer, tester and manager of test teams. Starting out in the Computer-aided Manufacturing industry in 1978, Stan has branched out into fault-tolerant transaction processing middleware, commercial websites and finally into the National Air Traffic Management system. Stan is currently serving as ERAM/TFMS Integration Lead for Computer Sciences Corporation on the Traffic Flow Management Modernization program for the FAA. Slide 5 Slide 6 1