# Enhancement of the Capability Maturity Model for Improving the Quality of Software Projects in Developing Countries

Authors: Li Hou; Qi Liu; Kiran Saeed; Saqib Ali Haidery; M. Irfan Uddin; Hizbullah Khattak
Journal: Scientific Programming
 (2021)

---

## Abstract

Business process modeling was suggested by academia and implemented by the industry to trigger device requirements. Maturity models of software processes are also similar in the software industry. Therefore, business software requirement engineering approaches-based process should aim to fulfil with the maturity models. Although researchers in the area of Software Engineering, Project Management, and Business Intelligent have addressed planning and execution and a lot of research still needs to be done, in this study, we focused on doing a questionnaire based on different prominent universities, major companies, and software houses. The purpose of the questionnaire was to dig out the main factors that negatively affect software houses and their products and services, especially in the medical field. A questionnaire was generated to accomplish these reasons, and interviews were conducted to extract the key explanation why software developers and software houses in developing countries are not familiar with the CMMI (Capability Maturity Model Integration) model for medical software projects. This analysis attempted to figure out why the tech enterprises of developing countries are behind foreign competitors. We aimed to determine why software developers do not meet the international requirements for software. The novelty of the research is that attempts were made to strengthen the new approach by adding agile at level 3 to keep the local software industry appropriate and reveal the requirements for medical software life cycle study, because accurate decision support is really necessary for healthcare systems.


---

## Body

## 1. Introduction

The classic period (1970 to 1980) is based on classic software engineering, including methods, procedures, requirement analysis tools, program architecture, scripting, testing, maintenance, and other fields of study. Most software programs now have low quality, such as missed schedule, operating costs, and other concerns. Researchers began a process to decrease production costs and increase the quality and efficiency of applications, known as improving software processes or named as improving software. Improvement of software processes has become a mainstream of software engineering study. As a result, CMMI was discovered by scientists and became the benchmark for software process capability.CMMI is the mechanism that improves the system and provides the enterprise with the essential elements of successful processes. It may be used to monitor cross-projects, departments, or whole process enhancement organizations. CMMI is primarily used for product creation, capacity assessment, and optimization, based on project control, technical skills, and measurement of software development processes. CMMI has been in place as an identification protocol since 1987 and has been the most authoritative credential verification method in the software industry [1].Five stages, 18 process zones, 52 priorities, and more than 300 primary activities are included in CMMI. CMMI finds challenges resulting from software processes that modern software technologies do not boost productivity and competitiveness immediately. Higher-quality applications can be generated through this enhanced method. Not only does CMMI make multiple software projects to prevent time and resource overspending, but also it is often conducive to noticing and combining too multidisciplinary in tandem with software engineering. CMMI is an evaluation model that was developed in 1990 by Carnegie Mellon University’s Software Engineering Institute (SEI). The introduction of CMMI faced a variety of problems that contributed to the advancement of CMMI as a tool of change. Based on the degree to which the organization adopts the chosen CMMI model, each organization is measured and given a CMMI ranking of 1 to 5 [2].CMMI is a globally common software process management tool package that offers an accessible instruction system that incorporates CMMI templates, training, and methods of assessment. CMMI focuses on numerous organizational areas of concern, such as growth, procurement, and services. CMMI requires activities that include many aspects of the operation. Project management is a key process field of CMMI and the aim of this key process area is to include practices in which to handle tasks, procedures, and goods over the life cycle of the project [3].CMMI model increased the efficiency of software and made it able to compete in the international industry, but developing countries cannot afford all levels of CMMI; therefore, they do not implement CMMI on their software; after analyzing the reason, we found that the 3rd level of CMMI is very costly, so we decided to make the small enhancement in the 3rd level of CMMI by putting agile methodology and rapid prototyping. The purpose of conducting this research is to tackle the following question: How can developing countries implement all levels of CMMI?


## 2. Literature Review

Other strategies related to agile methodologies and assessment models are in progress. Migrating agile methodology to structured procedures is one of the most important associated works [4], in which the technical perspective and the agile world both hold the same value in the development of an application. A structure for the application of agile concepts and values within a single enterprise was built for this purpose. In their knowledge, Vines Christ happens when an organization is accredited by CMM Level 2, ISO9001 using Extreme Programming (XP) @ Scrum. All agile approaches are combined [5]. For the technical procedures, XP was used and Scrum was implemented to support organizational and administrative challenges after a year. In a special situation, success was accomplished: in all quality level versions, the organization achieved a certification. The type was called XP 8 Scrum. This model is often used to make the production process further agile in Motorola Argentina’s “Tech Global,” an organization already attributed as CMM level 5. Both CMM and CMMI categorize five distinct process maturity stages based on Main Success Areas (KPAs) [6].The authors have arranged the CMMI in [7] into five stages of maturity rise. The authors describe a direction of growing sophistication in the production processes of the enterprise and therefore in its ability to regularly and quite well complete projects. The SEI has incorporated all these CMMs together in a single holistic model called the Capability Maturity Model Integration (CMMI) in the past few years. This latest model eliminates many other older ones, like the CMM [8, 9]. Several templates and globally recognized standard and enhancement principles are currently available. CMMI and ISO can be noticed between them.The CMMI process model, the SCAMPI evaluation method, and the related IDEAL improvement method have been developed by the SEI. The ISO 15504 process model, which is based on ISO/IEC 12207 [5, 10] and the First Amendment, its evaluation methodology ISO 15504 (Part IV), and related process enhancement ISO 15504 (Part (VII) [11, 12], was established by the ISO. A paper illustrating the agile concept was the beginning: the agile manifest [13, 14] provides a collection of concepts and standards that underpin the methodology. We have some of these techniques listed here. The aim of the SIMEP-SW project is to define the potential of obtaining CMMI certification through the use of agile approaches and how this might be accomplished. We took the strategic route between two realms with this intention: CMMI and agile methods.


## 3. Methods

### 3.1. Survey Report

In the research, a survey is conducted from educational institutes, universities, and software houses. During the survey, the aim was to cover the maximum educational institutes, and questionnaire was delivered through emictories and also distributed by hand. The participants’ response was good and helpful for the survey. The questions can be seen in Table1.Table 1
Survey report.
Questions(a)(b)(c)(d)Do you think your organization has awareness about CMMI?NilGoodSatisfactoryHighWhat are the reasons for applying CMMI in developing countries?Project failureLack of businessLack of satisfactionLack of customersWhat is the impact of CMMI in software development?Enhance qualityReduce costSave timeCompeting in international marketCMMI requirements?ExpertsToolsPlatformTeamHow does CMMI enhance quality of software projects?AssistManagedControlledAll of the aboveIs CMMI effective for customers?YesNoPartiallyFullyDoes CMMI assure software quality?25%50%75%100%Which one mostly affects the efficiency of software project management?CMMICMMNone of theseHow does CMMI affect the capability of programmers?PositivelyNegativelyBothNoneHow much is our proposed solution effective on the quality of software?EffectivePartially effectiveNot effectiveWhat are the requirements of software in medical field which can be essential for the specialists?????


### 3.2. Proposed Solution

In the model, we have made changes at level 3 defined by splitting the level in two parts, part a and part b, given as follows:(i)
Processes are categorized at organizational level(ii)
Integrated rapid prototyping (RP) and joint requirement planning (JRP)The changes at level 3 of CMMI and our proposed solution can be seen in Figure1.Figure 1
Proposed solution.


### 3.3. Methodology

We suggested prototypes in the form of survey and delivered these to 68 institutions, software houses, and universities by hand and by courier to know the effects of our proposed solution on the quality of software development. The flow chart of our methodology can be seen in Figure2. SPSS software has been used to generate the results.Figure 2
Methodology.


## 3.1. Survey Report

In the research, a survey is conducted from educational institutes, universities, and software houses. During the survey, the aim was to cover the maximum educational institutes, and questionnaire was delivered through emictories and also distributed by hand. The participants’ response was good and helpful for the survey. The questions can be seen in Table1.Table 1
Survey report.
Questions(a)(b)(c)(d)Do you think your organization has awareness about CMMI?NilGoodSatisfactoryHighWhat are the reasons for applying CMMI in developing countries?Project failureLack of businessLack of satisfactionLack of customersWhat is the impact of CMMI in software development?Enhance qualityReduce costSave timeCompeting in international marketCMMI requirements?ExpertsToolsPlatformTeamHow does CMMI enhance quality of software projects?AssistManagedControlledAll of the aboveIs CMMI effective for customers?YesNoPartiallyFullyDoes CMMI assure software quality?25%50%75%100%Which one mostly affects the efficiency of software project management?CMMICMMNone of theseHow does CMMI affect the capability of programmers?PositivelyNegativelyBothNoneHow much is our proposed solution effective on the quality of software?EffectivePartially effectiveNot effectiveWhat are the requirements of software in medical field which can be essential for the specialists?????


## 3.2. Proposed Solution

In the model, we have made changes at level 3 defined by splitting the level in two parts, part a and part b, given as follows:(i)
Processes are categorized at organizational level(ii)
Integrated rapid prototyping (RP) and joint requirement planning (JRP)The changes at level 3 of CMMI and our proposed solution can be seen in Figure1.Figure 1
Proposed solution.


## 3.3. Methodology

We suggested prototypes in the form of survey and delivered these to 68 institutions, software houses, and universities by hand and by courier to know the effects of our proposed solution on the quality of software development. The flow chart of our methodology can be seen in Figure2. SPSS software has been used to generate the results.Figure 2
Methodology.


## 4. Results

We acquired the results through a survey asking the question, what exactly is CMMI? Most of the answers which we got from respondents demonstrated that it is a methodology used to develop and refine an organization and software development process. The results can be seen in Figure3.Figure 3
Views about CMMI.We tried to acquire the knowledge on CMMI, and 68 respondents submitted their views about it. CMMI can increase the efficiency and productivity of any piece of software, so the respondents had different knowledge and the responses are also revealed in Table2.Table 2
What is CMMI?
FrequencyPercentValid percentCumulative percentIs a process development training and assessment program and service2333.833.833.8Is accomplished, initial, and defined process1420.620.654.4Is a procedure used to develop and refine an organization and software development process2638.238.292.6None of these57.47.4100.0There was a question about the awareness of CMMI and the answers from the respondents can be seen in Figure4.Figure 4
Awareness of CMMI.The developing countries are far behind in the production of software; that is why this industry needs to be changed for improving the quality of software and the key reasons behind this are project failure, lack of business, and lack of satisfaction. The results can be seen in Figure5.Figure 5
Reasons for applying CMMI in developing countries.CMMI has great importance when it comes to the quality of software; to know the impacts of CMMI in software development, the key reasons are competing in the international market and reduce cost because in the developing countries software cost is also a big problem. The results can be seen in Figure6.Figure 6
The impacts of CMMI.There are many requirements for the Capability Maturity Model Integration (CMMI) in the field of software; that is why developing countries need to invest a lot if they want to compete on the international level software quality and some of the key reasons behind this are experts, tools, platform, and team. It can be seen in Figure7.Figure 7
CMMI requirements.CMMI enhances the quality of software projects if it is fully implemented; according to respondents of survey, CMMI can enhance assist, controlled, and managed. The results are in Figure8.Figure 8
Enhancement of quality.The effectiveness of CMMI is not hidden for customers and it is being used with full trust; the respondents’ answers can be seen in Figure9.Figure 9
Effectiveness for customers.CMMI assures the quality of software if it is deployed completely. Quality is really important for the production of software and all the customers need that the software they are going to purchase or use should have all the latest qualities. The suggestions and prototypes which we sent to respondents have real worth because we got the answers, and the results can be seen in Figure10.Figure 10
Software quality assurance.CMMI and CMM can affect the efficiency of software project management and, according to survey, 62 respondents agree that CMMI affects the efficiency of software project management. The results are shown in Figure11.Figure 11
Efficiency of software project management.The capability of programmers is really important for the production of a quality product, and to know how much CMMI affects the capability of programmers, the respondents’ answers were as follows, revealed in Figure12.Figure 12
Effects on the capability of programmers.CMMI has a total of 5 levels, and these are initial, managed, defined, quantitatively managed, and optimizing, and we have suggested some changes at level 3, which are process and procedure and rapid prototyping and joint requirement planning. The prototypes are being sent to software developers and organizations. They deployed the proposed solution and responded with satisfaction as can be seen in Figure13.Figure 13
Effectiveness of our proposed prototype.The first important factor in every company is the persons that are the key drivers. There are highly educated individuals with a lot of inspiration and experience, and they know their priorities. The second engine is the instruments and resources that a company provides. In order to achieve the best performance, the new technology and sophisticated configurations are designed. Then, in order to accomplish operational targets efficiently and effectively well under time and expense, there are strategies and processes that need to be implemented. A mechanism is created by all these three main drivers. People might not even be effective every day; it can take more time and energy to understand emerging developments in technology, and policy and procedures can vary in different environments, but once an enterprise has a quality process, its efficiency can improve exponentially, and businesses that rely on processes do not have to invest spare funds into people, processes, and systems that just work smartly and boost selection. The survey is being conducted in 68 different software houses and institutions, and we got reply from them and the results can be seen in Table3.Table 3
Answers.
QuestionsAnswersDo you think your organization has awareness about CMMI?HighWhat are the reasons for applying CMMI in developing countries?Losing customersWhat is the impact of CMMI in software development?Compete in international marketCMMI requirements?TeamHow does CMMI enhance quality of software projects?Assist, controlled, and managedIs CMMI effective for customers?YesDoes CMMI assure software quality?75%Which one has the biggest effect on the efficiency of software project management?CMMIHow does CMMI affect the capability of programmers?PositivelyHow much is our proposed solution effective on the quality of software?Effective


## 5. Discussion

The findings are based on the primary data we collected from the survey of number of universities and tech houses that we conducted. The survey report is focused on the interpretation of data by the use of the SPSS method. The article focuses on CMMI, such that both levels relate to the process of software creation. The analysts put to the edge the factors contributing to the breakdown of the software creation phase in the survey reports. We have strong hopes that the shortcomings will be overcome by the proposed model. The findings clearly show that the tech industry cannot cope with the foreign market in today’s developed countries. We find the underlying cause of failure: novice and professional workers, unpracticed software developers, and software engineers are ignorant of the CMMI model, which is why they do not use CMMI in their method of software creation.In comparison, due to inexperience and lack of money, the second main explanation is that software companies do not have their own approach. As per our recommendation, broad methodologies should not be bought by organizations; the issue can be addressed by using the Quick Prototyping and Collaborative Requirement Preparation strategy to build their own technique using their own engineers in the tech building. This method is called agile.The survey indicates that 38.2% of respondents replied that CMMI is a tool used to build and enhance a process of organization, as well as software creation, 33% said that CMMI is training and assessing changes in process systems and facilities, while 20.6% responded that CMMI is a controlled, original, and established process. From the study, the researchers found that 54.4% of individuals said that it was due to unawareness, while 25% said that it was due to a shortage of experts. In another survey question, 98.5% of the respondents responded that they knew about CMMI.52.9% of the researchers found that there was a scarcity of CMMI experts in Pakistan. It was found that 38.2% of respondents believed that CMMI understanding was strong, 30.9% said that people who know about CMMI had adequate intensity, and 25% said that no one was aware of CMMI. As per the poll, 33.8% of respondents said that CMMI should be applied to limit the range loss in developed nations and 27.9% said that it should be for company growth, while 17.6% said that it will keep the client in the international environment.The questionnaire reveals that, by supporting, handling, and monitoring, 57.4% of respondents said that CMMI increases project efficiency. Nearly 54.4% of respondents said that CMMI was efficient for consumers, while 28% said that it was slightly productive.The results of the survey indicate that 48.5% of applicants agree that CMMI guarantees the consistency of the program. 61.8% of respondents believe that CMMI impacts the performance of software project management, according to the report. The survey indicates that almost 69.1% of respondents responded to software capabilities for CMMI effects. 45.6% of respondents said that the introduction of CMMI on projects makes them more effective, according to the study, and 39.7% said that it makes things simpler.The research indicates that 67.6% of respondents said yes, CMMI is efficiency-oriented. It is found from the survey respondents that 100% refer to the significance of getting CMMI.


## 6. Conclusion

The survey revealed that the primary explanation for the loss of software projects was the absence of CMMI application in the project creation process. The issues with software production are primarily due to lack of knowledge of CMMI, professional developers of software, and financial environment. The new improved model enabled software developers to hit level 3 and also reduced the expense of buying conventional methodologies such as the Waterfall Model, the Spiral Model, and the Model for Organized Software Development. It is reported that the optimum survey participants replied that they knew about CMMI, but their responses were found to be incorrect according to the CMMI concept given while performing the survey. The lack of knowledge of CMMI was discovered as a fundamental explanation for CMMI level deployment. The research also revealed that there was a lack of country-based CMMI specialists especially for the medical related software. The need to use the highest amount of CMMI to enhance the efficiency of projects by supporting, overseeing, and monitoring is to minimize project errors in developing countries and to maintain customer input and to increase business. CMMI certainly guarantees the consistency and productivity of project management and strengthens programmers’ skills, and vice versa.



---

*Source: 9982227-2021-05-29.xml*