The Process Group

Your Success is Our Business

  • About Us
  • Services
  • Books
  • V/Blog
  • Contact
  • Site
  • Testimonials

Improve Your Capability at Delivering Software and Systems – CMMI Quick Look

What is CMMI?
CMMI is a collection of best practices used by software, hardware, IT development, and service organizations to improve their cost, schedule and quality results. It is organized into a roadmap that can be implemented incrementally over time.

Useful links

  • Summary of CMMI
  • Formal and informal CMMI appraisals
  • Changes in CMMI V3
  • Custom appraisals using your criteria
  • CMMI for Development resource page
  • CMMI for Services resource page
  • Integration with Agile/PMBOK

The Capability Maturity Model Integration (CMMI) for Development is a collection of practices aimed at organizations that develop products, systems and IT solutions. The model is organized into maturity levels, each level defining more advanced practices to improve schedule, budget, risk and quality performance. The levels provide a road map for sustained incremental improvement. Example development organizations that use CMMI for Development are:

  • Software application / embedded
  • IT solutions
  • Hardware (electrical, mechanical, optical, electronic)
  • Systems engineering (large software or hardware systems or a software/hardware combination)

See link: Who Uses CMMI?

Read a description of a typical Maturity Level 3 organization (without CMMI terms).


When and why to use CMMI?

The purpose of using any framework is to improve the performance of an organization. For a group that develops products, this can include: improving schedule and budget accuracy, managing risks, eliciting requirements, defining designs, implementation, finding defects early, reducing rework and sharing best practices across the organization.

CMMI practices can be implemented within any life cycle or methodology (such as Scrum, Waterfall, Spiral, Incremental or a hybrid).

 

The benefits from using CMMI practices are to:

  • Clarify customer requirements early
  • Scope, plan, estimate and negotiate work to manage expectations and achieve commitments
  • Track progress to know project status at any time
  • Maintain defined quality standards throughout the organization and report strengths and problems to management
  • Manage versions of documents, drawings and code so that time is not wasted using incorrect versions or recreating lost versions
  • Manage and coordinate multiple teams that have cross dependencies
  • Employ engineering practices for design, implementation, verification and testing to reduce defects
  • Use defect data to understand and manage work quality throughout the project
  • Collect lessons learned and project data to systematically improve future organizational performance


Summary of the CMMI model.

 

 

The DEV Practice Areas (PA) are summarized below.

Configuration Management (CM): Establish and maintain the integrity of work products using configuration identification (labeling), configuration control (managing changes), configuration status accounting (final status of work products), and configuration audits (checks to verify that the final work products are correct).

Measurement (MPM): Develop and sustain a measurement capability that is used to support management information needs.

Planning and Estimation (PLAN+EST): Establish and maintain plans (major tasks, estimates, stakeholders, risks and resources) for project work. Perform project planning using company defined best practices and tailoring guidelines. Use organizational historical data for estimation. Identify dependencies and stakeholders for coordination, and comprehend this information into a master schedule or overall project plan. As project work progresses, coordinate all key stakeholders. Use thresholds to trigger corrective action (such as schedule and effort deviation metrics).

Monitoring and Control (MC): Understand a team’s project progress so that appropriate corrective actions can be taken when performance deviates significantly from the plan.

Process/Product Quality Assurance (PQA): Provide staff and management with objective insight into processes and associated work products.

Requirements Management/Development (RDM): a) Define requirements baselines for a project, b) manage changes so that technical and resource impacts are assessed, c) trace requirements to related downstream work products so that test coverage of requirements can be performed and the impact of requirements changes assessed with more accuracy, d) analyze requirements for ambiguities and errors.

Technical Solution (TS): Select among design alternatives, perform design activities and implement the design.

Product Integration (PI): Plan and execute integration testing of components as they are completed, or when all components are complete. Check that interfaces are correct before spending time in system testing. Communicate interface changes to impacted areas.

Peer Reviews (PR): Perform reviews on documents and code to find errors early and quickly.

Verification and Validation (VV): a) Plan and execute component level testing and analyze the results (e.g., defect density, defect pass rate, defect escape rate and root cause), b) Plan and execute testing focused on the end-user’s environment and needs, c) Analyze the results (e.g., defect density, pass rate, escape rate and root cause).

Process Focus/Management (PCM): Coordinate all improvements. Take what is learned at the team level and organize and deploy this information across the organization. The result is that all teams improve faster from the positive and negative lessons of others.

Process Definition (PAD): Organize best practices and historical data into a useful and usable library.

Organizational Training (OT): Assess, prioritize and deploy training across the organization, including domain-specific, technology and process skills needed to reduce errors and improve team efficiency.

Risk Management (RSK): Assess and prioritize all types of risks and opportunities in a project and develop mitigation actions for the highest priority ones. Start by considering a predefined list of common risks and use a method for setting priorities.

Decision Analysis and Resolution (DAR): Systematically select from alternative options using criteria, prioritization and an evaluation method.

Causal Analysis and Resolution (CAR): For selected problems or issues, determine root causes and corrective actions.

 

CMMI-Partner_Horizontal_Full-Color_RGB

Filed Under: Uncategorized

  • About Us
  • Services
  • Books
  • V/Blog
  • Contact
  • Site
  • Testimonials
  • RSS

Process-Group-Reverse-Blue-logoThe Process Group helps you improve your organization's capability to routinely meet deadlines and delivery quality expectations. We are certified CMMI appraisers / trainers and Certified Scrum Masters.

Contact Us

  • Contact Us.

Recent Blog Posts

How to Build a Great Company Culture — 5 Key Attributes

Changes in CMMI V3

How to Pass a CMMI Appraisal

Avoiding a Project Death March

Simplifying Software Project Documentation

Free Blog Subscription

  • This field is for validation purposes and should be left unchanged.

© The Process Group