You are on page 1of 29

CMMI Process Performance Indicators for Small Businesses

SEPG 2002 Dr. Richard Bechtold Kathleen Coleman Dangle Patricia Larsen
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Outline
What are Small Businesses / Organizations? Process Performance Indicators (PPIs), Terms and Definitions Objectives of Using PPIs Example Alternative Development Activities Extreme / Adaptive Programming Sources of PPIs for Small Businesses Process Performance Validating Indicators
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr

What are Small Businesses / Organizations?


Certainly organizations of less than 25 software designers / developers Potentially, organizations of 200+/developers/maintainers that work in rapidly changing environments Organizations characterized by
Shorter-duration projects Numerous small-team projects

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr

Process Performance Indicators: Terms and Definitions


A Process Performance Indicator (PPI) is anything that can be used to help identify or confirm the performance, or potential performance, of a process, activity, or task A Process Performance Validating Indicator (PPVI) is an organizational characteristic, or behavioral characteristic, that often indicates the existence (or lack thereof) of PPIs
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr

Objectives of Using PPIs and PPVIs for Small Businesses


Like the Software CMM, the CMMI often uses terms and examples that are consistent with
large software project teams long duration software projects large software development organizations

Applying the CMMI to small organizations may require additional interpretation


March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr

Objectives of Using PPIs and PPVIs for Small Businesses


PPIs and PPVIs can help small businesses understand how they might leverage the CMMI, but without introducing unnecessary restrictions or requirements Typically, small business methodologies will produce (unusual) CMMI-compliant evidence
Extreme Programming Adaptive/Emergent Software Development
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr

Example Alternative Development Activities


Whole Team Planning Game Small Releases Customer Testing Simple Design Pair Programming Test-First Development
March 2, 2002

Refactoring Continuous Integration Collective Code Ownership Coding Standard Metaphor Sustainable Pace
Tyvqr

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Extreme Programming
Whole Team
Every contributor to the project is an integral part of the team. The customer (or at least a businessrepresentative) works with the team on a daily basis, providing requirements, setting priorities, and steering the project Everyone on the team is physically co-located
Fraunhofer USA Center for Experimental Software Engineering, Maryland

March 2, 2002

Tyvqr

Extreme Programming
Planning Game / Small Releases / Customer Tests
Decide what should be done next (Re)predict completion Focus on business value Produce software in a series of small, fullyintegrated releases Regularly pass all customer-defined tests
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr

Extreme Programming
Simple Design / Pair Programming / TestFirst Development / Refactoring
Work in pairs and as a group Simple designs Test code obsessively Improve designs continuously Include nothing that is not essential

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Extreme Programming
Continuous Integration / Collective Code Ownership / Coding Standard
The XP team keeps the system integrated and running all the time All production code written by pairs of programmers Programmers work together all the time All programming done in a consistent style Everyone fixes and improves everything
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr



Extreme Programming
Metaphor / Sustainable Pace
The XP team shares a common and simple picture of what the system will look like The team uses a common system of names to ensure everyone understands functionality and where to look for it (or where to look to add it) Everyone works at a pace that they can sustain indefinitely
Fraunhofer USA Center for Experimental Software Engineering, Maryland

March 2, 2002

Tyvqr



Source of PPIs
Relative to Requirements Management
Stories On-site customer Small releases Continuous integration Test-first development

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Source of PPIs
Relative to Project Planning
Planning game Small releases (two weeks) Customer presented features (two weeks) Programmer estimated difficulty and estimated costs (two weeks) Replanning

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Source of PPIs
Relative to Project Monitoring and Control
Big visual charts Project velocity Stories for small releases Sustainable pace Frequent releases to the customer Customer-defined tests that are constantly run

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Source of PPIs
Relative to Measurement and Analysis
Test-first development Defect data Incremental estimates Rapid historical data from small cycles Design refactoring

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Source of PPIs
Relative to Process and Product Quality Assurance
Pair programming Constant design simplification Test-first development Coding standard Collective code ownership

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Source of PPIs
Relative to Configuration Management
Simple design Collective code ownership Small releases Continuous integration Constant testing

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



PPVI for Small Organizations


Project Notebooks Relaxed Atmosphere Executive Involvement Pre-Onsite and Onsite Logistics Motivated QA / Motivated CM Nominal Preparation Absence of Perfection
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr



Project Notebooks
Look for
Project managers that are reluctant to part with their project notebooks Project notebooks that look battered A history of updates to the notebooks Some sections in the notebook that are out of date

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Relaxed Atmosphere
Look for
Cartoons on the walls (especially those making fun of process auditors) Laughter in the cubicles and halls Overall friendliness between co-workers Generally active but relatively low-stress employees

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Executive Involvement
Look for
High-level managers who talk business concepts first, then CMMI concepts Executives who participate in SPI events Use of CMMI seen as essential to achievement of business goals Executives who haul chairs into meetings for others to use (results more important than appearances)
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Pre-Onsite and Onsite Logistics


Look for
Attention to details Well-organized and timely coordination of project selection activities, interviewee identification, and documentation availability Interviewees who arrive from central staging Support material for the audit team (such as chocolate)
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Motivated QA / Motivated CM
Look for
QA and CM personnel who have real enthusiasm for their jobs QA personnel who are fearless Good Cop attitude among all QA personnel (and even the CM personnel) Comfortable relationship between QA and senior management
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Nominal Preparation
Look for
Answers that are natural, not rehearsed Answers that do not recite sections of the CMMI verbatim Artifacts and documentation that appears tattered (or at least isnt still warm) Requests that you repeat or restate your question (often due to unfamiliarity with the CMMI)
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Absence of Perfection
Look for
Willingness to admit to minor problems and areas in need of additional software process improvement Occasional rogue interviewees QA audits that routinely identify noncompliances Lack of 100% compliance with all practices, based on latest QA audits
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Concluding Remarks
PPVIs cannot be used in lieu of PPIs PPVIs can be used in support of PPIs You can accept alternative practices with a higher level of confidence when PPIs and PPVIs are present Complex quality standards cannot be reduced to a checklist; they require systematic interpretation
March 2, 2002
Fraunhofer USA Center for Experimental Software Engineering, Maryland
Tyvqr



References
Extreme Programming from a CMM Perspective; Paulk, Mark; XP Universe; Raleigh, North Carolina; July 2001 CMMI-SE/SW, Capability Maturity ModelIntegrated for Systems Engineering/Software Engineering (Staged Representation), SEI, Carnegie Mellon University, 2000 AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis; Brown, W.; Malveau, R.; McCormick, H.; Mowbray, T.; Wiley, 1998 AntiPatterns in Project Management; Brown, W., McCormick, H., Thomas, S.; Wiley, 2000 Extreme Programming Explained; Beck, K.; Addison-Wesley, 2000 Planning Extreme Programming; Beck, K., Fowler, M.; AddisonWesley, 2001 www.xprogramming.com Website for Extreme Programming

March 2, 2002

Fraunhofer USA Center for Experimental Software Engineering, Maryland

Tyvqr



Contact Information
Dr. Richard Bechtold President, Abridge Technology rbechtold@rbechtold.com www.rbechtold.com Kathleen Coleman Dangle Scientist, Fraunhofer Center Maryland kdangle@fc-md.umd.edu www.fc-md.umd.edu Patricia Larsen Scientist, Fraunhofer Center Maryland plarsen@fc-md.umd.edu www.fc-md.umd.edu
Fraunhofer USA Center for Experimental Software Engineering, Maryland

March 2, 2002

Tyvqr



You might also like