Saturday, 15 August 2015

Drawbacks of Capability Maturity Model (CMM)





ARBA MINCH UNIVERSITY
INSTITUTE OF TECHNOLOGY
COMPUTER SCIENCE DEPARTMENT


Drawbacks of Capability Maturity Model (CMM)



By Abebe Ano, smsc Scholar, Id no. smsc/150/06





Submitted to: - Dr.Hussien Seid

July, 2015



Abstract
The Capacity Maturity Model was developed as a result of a study financed by the U.S. Air Force as a technique to objectively evaluate the work of software subcontractors. The Department of Defense concerned over rising software development costs and issues with quality. The main purpose of this study paper is to investigate the drawback of CMM and to generate the proper solution based on the multi-dimensional services of the process. Some drawbacks are: the organizations that use CMM, they look at each level as a target and they make their goal to reach the next level up. This can be a dangerous thought because if you become fixated on reaching the next level, The challenges faced in using CMM in the software development process  is that you begin to lose perspective and forget that the real goal. Similarly the CMM does not specify a particular way of achieving those goals. In order to achieve them one needs to think in a flexible way. Another challenge is that CMM only helps if it is put into place early in the software development process. Finally, there is an assignment to resolve and improve the drawbacks for the whole software process development organizations.
 Key words: Capacity Maturity Model, Software development process, Drawbacks, Levels












1.     Introduction
The Capability Maturity Model (CMM) is a development model produced after study of data collected from organizations that contracted with the U.S. Department of Defense who founded the research. The term "maturity" relates to the degree of formality and optimization of processes, from informal practices to formally defined steps, to managed result metrics, to active optimization of the process. The model's aim is to improve existing software-development  processes, but it can also be applied to other processes. (1) The Capability Maturity Model is a way of measurement that is designed to develop and treat the software development process used by an organization. The software development itself is enhanced by using the 5 level models eighteen key process areas within it. The basis for Capability Maturity Model evaluation is described in the following points: It permits the application of more complex management methods based on quantitative approaches. This basically means that the organization has increased capacity to control quality of the software development process and it also enables them to improve the efficiency of this process. Organizations can review their achievements and set clear goals needed in order to reach the next level in the model. The process areas defined in each of the levels is generic. This allows the model to be used by a wide range of organizations because it allows the use of any life cycle model (waterfall, prototype, extreme programming etc). (2)
1)      Initial level: The software process is characterized as unplanned, crisis driven, no management mechanism, unpredictable cost and occasionally even chaotic. Few processes are defined, and success depends on individual effort.
2)      Repeatable level: Basic project management processes are introduced to track cost, schedule, and functionality. Experienced at doing similar works and policies for managing a software project and procedures implementing those policies are established. The necessary process discipline is in place to repeat earlier successes on projects with similar applications.
3)       Defined level: The software process for both management and engineering activities is documented, standardized, and integrated into a standard software process for the organization. All projects use an approved, tailored version of the organization's standard software process for developing and maintaining software. When faced with a crisis they will continue to use the process that has been defined and there is little data to support the effectiveness of the process
4)       Managed level: complete measures of the software process and product quality are collected. Both the software process and products are quantitatively understood and controlled. High coast of gathering data, definition of the measured data, process data must not be used to compare projects or individuals and an organization sets quantitative quality goals for both products and processes and instruments processes with well defined and consistent measurements
5)       Optimizing level: Continuous process improvement is enabled by quantitative feedback from the process and from piloting innovative ideas and technologies. The data is available to tune the process itself, ability to put the resources where it counts and the entire organization is focused on continuous process improvement. (3)
1.1. Disadvantages of Capacity Maturity Model (CMM):
1. One of which is that when organizations use CMM, they look at each level as a target. 2. The CMM does not specify a particular way of achieving those goals. 3. The goals will only be achieved if the organizations processes are taken into account, as each organization is different so the steps needed for process improvement will be different. 4. The CMM only helps if it is put into place early in the software development process. For example, if there is a process that is in a crisis then CMM will not help overnight. It can’t be used as an emergency method of recovering from a difficult position. (4)
Below is a diagram showing the different levels involved in the Capability Maturity Model and the various process areas contained within them:


2.  Methods and materials
The methodology of this study paper includes: referring the lecture note details and the written literatures/documents about Capacity Maturity Model with its drawbacks which are prepared by the software development companies from internet links.
3. Results
Organizations believed that CMM as a standard for appraising the current state of the organization’s software process and as a guide for identifying and prioritizing the actions comprising the software process improvement  effort, but this study paper tried to investigate and expose  the drawbacks as a result, which can open the door for further improvements.
4. Discussion:
As the study paper discussed above CMM has numerous strong sides with some drawbacks. The significance of the result can push organizations will overcome the drawbacks by increasing Creativity and research on improvement of Capacity Maturity Model.
References
1. www.en.wikipedia.org/wiki/. [Online]
2. www.searchsoftwarequality.teachtarget.com. [Online]
3. www.resources.sci.cmu.edu/asset-files. [Online]

4. www.cs.nott.ac.UK. [Online]

No comments:

Post a Comment