© Mukund Chaudhary 2017

Mukund Chaudhary and Abhishek Chopra, CMMI for Development , 10.1007/978-1-4842-2529-5_3

3. Planning CMMI Implementation

Mukund Chaudhary and Abhishek Chopra2

(1)Noida, Uttar Pradesh, India

(2)Faridabad, Haryana, India

In this chapter, we will discuss CMMI implementation, with a special emphasis on how to initiate, plan, and start a CMMI implementation.

3.1 Initiating CMMI Implementation

Since you are now planning to initiate a CMMI implementation, you should ask yourself, “Do I need CMMI?”

As a first step, we need to understand what we want to achieve and deliver as part of our product development or service delivery. As for improving the process maturity, we need to consider what results are expected. It’s only by considering issues in this way that we can answer why we need CMMI.

If CMMI is not the solution for your problem, then you need to analyze what can work better for you and your organization. Many organizations want to implement CMMI to meet the project’s bidding criteria or perhaps because the client wants to work with only CMMI Appraised companies. To meet such scenarios, an organization will only get maturity level; however, it won’t be considered a matured organization in terms of its processes.

3.1.1 Understand Your Business

Here are few questions which could help you understand your business needs and move you towards the CMMI implementation:

  • What products or services are offered by your organization?

  • How many business units do you have, and do all of them produce the same or similar products/services?

  • Have you identified key business units for you to succeed?

  • Is there any scope for improvement? And which part of the business process do you want to improve?

  • What is the current cycle time of your services or products?

  • What is the current resource competency that you have?

  • Are your clients expecting certain maturity in some processes?

Whenever you want to bring a vast change into your business process, or you want to introduce new process, it will always take some time as most people will have differences of opinion on how to proceed. Hence, an internal discussion within management and key decision makers about what CMMI is—and what kinds of benefits can be expected from implementing the model—will help reduce anxiety in the minds of stakeholders.

To start an implementation, organization and implementation teams can initially focus on one business unit and slowly move on to other business units. This is the option for those organizations that are not yet ready to cover the whole organization, and would prefer to start with one business unit at a time. This makes sense in a way because to include new process changes requires time and involvement; organizations see this is as a big challenge to implement while simultaneously delivering projects to their clients as part of running the business.

3.1.2 Engage CMMI Institute Partner

With the help of CMMI institute web site, you can easily find provider within your region. To search a provider, go to http://partners.cmmiinstitute.com/find-partner-organization/ .

Next, select your partner of choice from the list or use the advanced search option to select the product suite, and then to select the geographic location for your search. Figure 3-1 shows the search screen from CMMI Institute web site.

A427788_1_En_3_Fig1_HTML.jpg
Figure 3-1. The search screen to find a provider

You should discuss the following points with the consulting partner (these points must also be understood by the subject matter expert team members):

  • The current version of CMMI model

  • Implementation steps

  • Experience in similar implementations

  • Goals and objectives to be achieved

  • Resource requirements (e.g., human, infrastructure, and training requirements)

  • The right constellation to be adopted

  • You need to discuss how long it typically takes to

  • You also need to discuss how long it typically takes to implement the CMMI model in an organization like yours, as well as the maturity level you should target.

Note

We have to enroll authorized CMMI partners for the appraisal services; however, there are no such restrictions for consulting or SME services.

3.1.3 Choosing the Right Constellation

Choosing a constellation for implementing CMMI is important; choosing the right one for the business to benefit is more even important. (We have already covered constellations in Chapter 2). It’s also possible to take the advice of our consulting partner for choosing the right constellation. We also recommend examining a few factors when choosing a constellation:

  • The business model in the organization

  • The product delivery cycle time

  • The complexities involved in product development

  • Areas where more improvement is required

There could be additional factors that influence your decision. However, the best practice says that, when you have smaller cycle times with less intensive engineering needs to deliver the product or services, then it is recommended that you go for CMMI Services. However, if your business model delivers both product development and services (i.e., maintenance, migration, testing, etc.), then it is recommended that you go with combined CMMI Dev and CMMI Svc Constellations to implement the best from both. Please discuss these options your CMMI Partner.

However, if you are delivering projects with durations ranging from shorter (three to nine months) or longer projects (more than nine months), and it is expected that you maintain good process delivery practices, then it is recommended that you implement the CMMI Dev model.

Tip

CMMI for Services (SVC) also contains engineering practices for the Service System Development process area.

3.1.4 Engaging a CMMI Institute Partner or Service Provider

We have already discussed that you need to engage a CMMI Institute partner (i.e., CMMI Institute Certified Individuals or consulting services provider) for performing the following:

  • Official CMMI training

  • Consulting/guidance in CMMI implementation

  • Appraisal activity

CMMI implementation guidance can be carried out by SMEs available within the organization or a consulting partner hired from outside the organization; no certification is required for the SMEs to provide guidance or consultancy for any organization.

It is only if you want to achieve a maturity level rating for your organization processes that it becomes mandatory to use a CMMI Institute certified lead appraiser for performing the appraisal.

Lead appraiser services can be acquired through a CMMI Institute Partner. It is always a best practice to engage a lead appraiser early in your implementation if you have plan for CMMI Implementation with appraisal; doing so will help ensure the lead appraiser’s availability for the month in which your organization has decided to conduct CMMI appraisal. (A lead appraiser can perform only two appraisals in a month).

Selection of a Lead Appraiser is very important, and you must consider or list a few points before selecting a lead appraiser for your maturity ratings:

  • Consider the overall experience of a lead appraiser

  • Check the lead appraiser’s credibility in the IT industry

  • Investigate past experience in conducting CMMI appraisals for organizations similar to your own

  • Be sure to check the lead appraiser CMMI appraisal calendar, as sometimes you may not get lead appraiser dates for the month in which your organization is planning to conduct the final appraisal. There is a cap of two appraisals per month, so it is important to understand whether the lead appraiser is available for your desired timeframe.

These are also some of the generic points to consider before engaging any lead appraiser.

If an organization is only focusing on implementation of CMMI—and it neither wants to conduct an appraisal nor is looking for a process rating in the near future—then the services of a CMMI partner or lead appraiser won’t especially be needed.

Note

A lead appraiser cannot be a consultant for you; and if you have your own lead appraiser in your organization, then that person can’t appraise your organization.

3.2 Identify and Form Teams

Once you are convinced and are ready for a CMMI implementation, the first thing you need to do is identify and form a subject matter expert team. The purpose of forming this team is to drive CMMI implementation within your organization across the business units.

This team’s existence is important as, during the implementation, there will be various stages where important decisions need to be made; and at that time, this team will have an important role to play in the areas they will be responsible for. You will learn more about this role later in this chapter and the book.

Who should be the part of subject matter expert team, and where do you find its members? Mostly, you find them in mid- to large-size organizations. Typically, it is the quality head from the SQA group (not testing) or the process quality group who drives the CMMI implementation, with the nod of Senior Management. But, if you don’t have this group currently running in your organization, then it is advisable that you hire the quality head and create the SQA group.

A quality head would have the required quality management system (QMS) formation and the management background. The CMMI model puts its emphasis mainly on improving organization QMS, which consists of your processes. The quality head/SQA group would act as an unbiased, independent, separate entity within the organization. This group will be a big help for the engineering/delivery teams in writing the processes because people from an engineering background are typically not fond of process writing—yes, that is a surprising fact.

Note

The previously mentioned point about hiring and forming a quality head/SQA group is only advice. Organizations still can manage implementation without this group, as members from engineering/delivery teams could also play this role. The only difference is that members from the engineering/delivery teams have to put in more effort during the implementation exercise, along with their project delivery role.

Organizations which are small and are not very keen to form an SQA group, can contact any CMMI Partners in your region who are providing Consulting and Appraisal services. These partners will help and guide you in your CMMI implementation journey in every possible manner.

3.3 Decide Roles and Responsibilities

The quality head/group will drive and help in the identification and formation of teams, along with assigning their roles and responsibilities. It’s important to form the teams early because, once an organization takes the decision to implement CMMI, staff members have to be involved from various groups/departments/business units. These staff members have to be chosen carefully for the implementation; hence, members with relevant experience and knowledge should be approached to form a team.

Also, the time availability of these staff members is a key factor during the implementation. We need to assess how much time they will be able to spend apart from their day-to-day project/product delivery tasks. This is important because CMMI implementation activities for an organization may take six to seven months until final appraisal on average; and for some organizations, this time period is very crucial because implementation is linked with the organization’s business objective to be achieved in a year or two. Hence, the time commitment from the key members is very important. If they are not available for any crucial project/product delivery or any other business reason, then the CMMI implementation activities/schedule might get delayed in completion.

Next, we’ll look at a typical team formation for a CMMI Implementation.

3.3.1 CMMI Program/Project Manager

As the name suggests, a CMMI program/project manager is responsible for monitoring and controlling the CMMI journey in your organization. Note that it is not mandatory to have full time person for this role. Any senior person within the organization can be dedicated or partially allocated for this role. Here are a few of this person’s responsibilities:

  • CMMI program planning and monitoring

  • Manages stakeholders’ commitment

  • Status reporting to senior management

  • Participates in SEPG meetings

  • Helps in achieving plans

  • Performs risk management

Looking at these responsibilities, you can see the similarities to the way a program manager manages products or services.

3.3.2 Software Engineering Process Group (SEPG)

A software engineering process group is a group of subject matter experts (SMEs) from an engineering or management background, along with process quality assurance members from within an organization. This group will be responsible for owning and running software process improvement activities.

A few of the SMEs can work as permanent members of the group, and others can work on an as needed basis. Here are some of the responsibilities played by the SEPG, which is sometimes called an Engineering Process Group (EPG) :

  • Ensures that relevant processes are defined and aligned with business objectives to support the delivery of product or services

  • Ensures that process assets are revised and maintained on a regular basis, based on identified improvements

  • Reviews and approves process tailoring

  • Ensures that processes are appraised from time-to-time, in order to assess the strengths and weaknesses of current processes

If your organization aims to implement and achieve maturity level 4 and maturity level 5, then organizational performance management (OPM) also will be owned by SEPG.

3.3.3 PQA or SQA Group

A process quality assurance (PQA) or software quality assurance (SQA) group consists of people who have good knowledge of the process quality assurance or the software quality assurance.

Note

PQA and SQA members are not part of the software testing group; as per CMMI, QA is part of testing and peer reviews, which is called verification and is performed by the project team. QC is done at the client end, which is validation.

The typical responsibilities of this group include, but are not limited to, the following:

  • Project reviews/audits

  • Deliver process trainings

  • Product and process quality reviews

  • Process compliance checks

  • Project metrics collation and analysis

  • Providing relevant process improvement updates to SEPG

3.3.4 Metrics Analyst Group

The metrics analyst group is a subgroup of the SEPG group. These are SMEs who collect and analyze/understand project metrics data. The analysis of project metrics data needs to be meaningful for the project and organization to use it for informed decision making.

This group generally does not exist in most of organizations, and some organizations combine their project management office with metrics group.

Typical responsibilities of the metrics analyst group include the following:

  • Metrics data collection from projects on a monthly basis

  • Perform metrics analysis

  • Use analysis to identify and baseline new metrics

3.3.5 Training Group

The training group in an organization can work as the separate/independent group, or it can work in combination with the Human Resource (HR) group. This group’s main role is to do the following:

  • Identify the training needs in the organization

  • Plan and conduct Trainings

  • Assess training effectiveness

  • Improve the training delivery process

So far, we’ve covered the composition of teams and their formation with a clear understanding of their roles and responsibilities. Now it’s to schedule the CMMI Implementation activities.

If you think from the perspective of a program manager or project manager, you know the value of effort estimation. Each task involved in the program should be estimated, and you should be able to schedule activities that fit within your target.

Hence, you need to be clear that it is not only a project for your organization, but that it is also for cultural change within your organization, which may take some time to show the results.

If you or senior management decides to implement CMMI practices within your organization, then please do check and assess whether you have sufficient time available to achieve the target.

3.4 Plan CMMI Implementation and Activities

Before we move ahead to planning phase of CMMI, we should draw our attention to some of the common reasons which could make our CMMI Implementation ineffective.

The reasons for an ineffective implementation might include the following:

  • No participation from management

  • CMMI Implementation only for the client needs

  • Lack of project management skills

  • Resistance to change

  • No process improvement expectation setting

The SME team has to note the first important step is to plan and conduct the gap analysis with respect to the current method/process/practice followed for product and/or service delivery. This means it is necessary to know and understand where the gaps are before we start filling them; in other words, we must know the right areas that need focus and improvement. Identifying more gaps during the gap analysis exercises will help us make the organization processes more robust.

This would help in planning the activities, creating timelines, estimating resources, and devising strategies for effective implementation of CMMI. Hence, gap analysis is the first recommended step in planning.

3.4.1 Process Gap Analysis

By definition, gap analysis is the process of comparing the actual performance with the potential or desired performance. Gap analysis is the formal study of what a business is currently doing and how its processes are defined and followed; and then determining whether these processes are helping the organization to reach the goals it wants to achieve in the future. Gap analysis can be done from different perspectives, such as resource availability, business processes, and information technology.

Performing gap analysis involves studying artifacts and interviewing or discussing these issues with the practitioners. These interviews are mostly conducted with the project manager and the program manager who are involved in the service/delivery of products/project.

3.4.2 How Gap Analysis Is Conducted

Let examine how gap analysis is conducted.

Gap analysis will be performed with the CMMI partner selected by you for CMMI implementation and appraisal services.

A CMMI partner cum external consultant will review the plan and meet the teams that we have discussed creating so far in this chapter.

It’s possible that certain teams won’t yet exist at the time of scheduling the process gap analysis (e.g., the SEPG group or Metrics Analyst Group might not exist yet), and this can be assumed to be part of the known gap. Obviously, interviewing non-existent teams during the gap analysis exercises is not possible.

During the gap analysis, the external consultant will interview people from the following existing teams:

  • Project/Program delivery managers

  • SEPG/Metrics Analyst Group

  • SQA/Quality Group

  • Training Group

The external consultant will also review the existing processes/artifacts:

  • He will review processes for project management, engineering, and support

  • He will review artifacts created as part of the project, such as the project plan, the requirement document, the design, and so on

The consultant’s basis for interviewing and reviewing processes/artifacts is the CMMI Dev model, including the following components in particular:

  • Process areas

  • Generic goals

  • Generic practices

  • Specific goals

  • Specific practices

If any gap is noted/reported by the external consultant, it means that either one or more of the previously mentioned CMMI components are not satisfied.

This is where the GAP analysis is handy. You might be thinking about the current situation and the future state that you want your organization to reach, along with the task or tasks that need to be completed to close the gap.

While performing the gap analysis, a gap report (draft) is prepared for each process area. The draft report contains all the weakness within the organization. This draft is first presented to the management and key stakeholders. After their discussion, a final report will be prepared.

Figure 3-2 shows a sample gap report format with one process area: Project Planning (PP)

A427788_1_En_3_Fig2_HTML.jpg
Figure 3-2. A sample gap report format

3.4.3 Plan and Close Identified/Reported Gaps

The next step is to analyze the gaps against the CMMI model, and then plan how to close the gaps within a timeline agreed upon by the management/key stakeholders. Note that this is also the time to plan or develop strategies for bringing the required cultural change to the organization. Cultural change is significant because, when closing the gaps, new paths and possibilities can emerge which we might have to adopt for the product and/or service delivery.

Based on the gaps reported, your organization can undertake the following steps:

  • Determine the effort required to close all the reported gaps

  • Assign individuals or teams to each gap to close

  • Process gaps and update

  • Update roles and responsibilities

  • Target projects under CMMI implementation

  • Update the organization’s structure

  • Assess the training needs for the teams

Based on the established plan, your organization can also do the following:

  • Define the business goals and objectives

  • Decide CMMI representation

  • Decide on the maturity level to be achieved (e.g., Level 2 or Level 3)

  • Decide on the timeline to achieve the targeted maturity level, business performance, and so on

  • Track the plan/timeline for closing the gaps, as well as to achieve the targeted maturity level

Tip

Always be careful with the timeline you have selected to achieve your goal. Both relaxed and very aggressive timelines can affect quality of your implementation.

In terms of the CMMI implementation timeline, it is recommended that you be a little aggressive. One important point to note here is that you cannot skip any maturity level in between, which means you need to implement all the process areas belonging to a lower ML (maturity level). It is always recommended by the experts that you achieve ML3 before you move to ML4 and ML5.

Please remember that maturity level is not a rank, but rather the actual level of maturity for your organization. If we really want to benefit from CMMI Appraisal as an organization, then we need to perform at certain level with consistency. However, achieving a higher maturity level depends upon the organization’s strength and willingness to do so.

Caution

If your process has a lot of gaps, then don’t go to ML4 and ML5 directly because doing so could cause negative consequences and harm employee morale.

3.5 Summary

In this chapter, we learned about the steps to be taken to initiate the CMMI implementation, as well as points and questions we need to think about while initiating the implementation. We also learned how to identify and engage a CMMI partner, which groups and team formations would be needed, how process gap analysis is planned and conducted, and how to execute a plan for closing existing gaps.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset