Scientific Programming
Volume 2021 (2021), Article ID 9982227, 10 pages
https://doi.org/10.1155/2021/9982227

Research Article

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

Li Hou,1,2 Qi Liu,1,2,3 Kiran Saeed,⁴ Saqib Ali Haidery,⁵ M. Irfan Uddin,⁶ and Hizbullah Khattak⁷

¹School of Information Engineering, Huangshan University, Huangshan 245041, China
²Engineering Technology Research Center of Intelligent Microsystems of Anhui Province, Huangshan 245041, China
³School of Communication and Information Engineering, Shanghai University, Shanghai 200444, China
⁴Department of Computer Science, Preston University, Islamabad 44000, Pakistan
⁵Information and Communication Engineering, Nantong University, Jiangsu 210000, China
⁶Institute of Computing, Kohat University of Science and Technology, Kohat 26000, Pakistan
⁷Department of Information Technology, Hazara University, Mansehra, Pakistan

Correspondence should be addressed to Li Hou; houli_shu@126.com

Received 25 March 2021; Accepted 20 May 2021; Published 29 May 2021

Academic Editor: Habib Ullah Khan

Copyright © 2021 Li Hou et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

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.

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 Table 1.

Table 1: Survey report.

Questions
(a)
(b)
(c)
(d)

Do you think your organization has awareness about CMMI?
Nil
Good
Satisfactory
High

What are the reasons for applying CMMI in developing countries?
Project failure
Lack of business
Lack of satisfaction
Lack of customers

What is the impact of CMMI in software development?
Enhance quality
Reduce cost
Save time
Competing in international market

CMMI requirements?
Experts
Tools
Platform
Team

How does CMMI enhance quality of software projects?
Assist
Managed
Controlled
All of the above

Is CMMI effective for customers?
Yes
No
Partially
Fully

Does CMMI assure software quality?
25%
50%
75%
100%

Which one mostly affects the efficiency of software project management?
CMMI
CMM
None of these

How does CMMI affect the capability of programmers?
Positively
Negatively
Both
None

How much is our proposed solution effective on the quality of software?
Effective
Partially effective
Not effective

What 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 Figure 1.

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 Figure 2. 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 Figure 3.

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 Table 2.

Table 2: What is CMMI?

Frequency
Percent
Valid percent
Cumulative percent

Is a process development training and assessment program and service
23
33.8
33.8
33.8

Is accomplished, initial, and defined process
14
20.6
20.6
54.4

Is a procedure used to develop and refine an organization and software development process
26
38.2
38.2
92.6

None of these
5
7.4
7.4
100.0

There was a question about the awareness of CMMI and the answers from the respondents can be seen in Figure 4.

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 Figure 5.

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 Figure 6.

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 Figure 7.

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 Figure 8.

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 Figure 9.

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 Figure 10.

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 Figure 11.

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 Figure 12.

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 Figure 13.

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 Table 3.

Table 3: Answers.

Questions
Answers

Do you think your organization has awareness about CMMI?
High

What are the reasons for applying CMMI in developing countries?
Losing customers

What is the impact of CMMI in software development?
Compete in international market

CMMI requirements?
Team

How does CMMI enhance quality of software projects?
Assist, controlled, and managed

Is CMMI effective for customers?
Yes

Does CMMI assure software quality?
75%

Which one has the biggest effect on the efficiency of software project management?
CMMI

How does CMMI affect the capability of programmers?
Positively

How 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.

Data Availability

The data used to support the study are included within the article.

Conflicts of Interest

The authors declare that there are no conflicts of interest.

Acknowledgments

This work was supported by the Anhui Natural Science Foundation (no. 1908085MF178), Anhui Excellent Young Talents Support Program Project (no. gxyqZD2019069), and Anhui Quality Engineering Projects (2019kfkc131).

References

M. Choetkiertikul and T. Sunetnanta, “A risk assessment model for offshoring using CMMI quantitative approach,” in Proceedings of the 2010 Fifth International Conference on Software Engineering Advances, IEEE, Nice, France, August 2010.

I. Garcia and I. Andrea, “Using the software process improvement approach for defining a methodology for embedded systems development using the CMMI-DEV v1. 2,” in Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology, IEEE, Bradford, UK, June 2010.

J. Armstrong, R. Barbour, R. Hefner, and D. H. Kitson, “Standard CMMISM appraisal method for process improvement (SCAMPISM): improvements and integration,” Systems Engineering, vol. 5, no. 1, pp. 19–26, 2002.

B. U. Pieplow, “Project risk management handbook: a scalable approach,” Risk, vol. 1, pp. 27–29, 2012.

M. Diaz and J. King, “How CMM impacts quality, productivity, rework, and the bottom line,” Cross Talk, vol. 15, no. 3, pp. 9–14, 2002.

C. P. Team, “CMMI® for development, version 1.3, CMMI-DEV, V1. 3,” Tech. Rep., Carnegie Mellon University, Pittsburgh, PA, USA, 2010, Technical Report, CMU/SEI-2010-TR-033, ESC-TR-2010-033.

J. A. H. Alegrıa and M. C. Bastarrica, “Implementing CMMI using a combination of agile methods,” CLEI Electronic Journal, vol. 9, no. 1, pp. 1–15, 2006.

M. Al Yahya, R. B. Ahmad, and S. P. Lee, “Impact of CMMI based software process maturity on COCOMO II’s effort estimation,” The International Arab Journal of Information Technology, vol. 7, no. 2, pp. 129–137, 2010.

J. D. Herbsleb and D. R. Goldenson, “A systematic survey of CMM experience and results,” in Proceedings of the IEEE 18th International Conference on Software Engineering, IEEE, Berlin, Germany, March 1996.

S. Gao and Q. Q. Wang, “A new security baseline reinforcement method for the power information system,” Applied Mechanics and Materials, vol. 303–306, pp. 2407–2411, 2013.

S. Zahran, Software Process Improvement: Practical Guidelines for Business Success, Addison Wesley Longman, UK, 1997,£ 27.95, 447 pp, Wiley Online Library, Hoboken, NJ, USA, 1999.

D. Galin and M. Avrahami, “Are CMM program investments beneficial? analyzing past studies,” IEEE Software, vol. 23, no. 6, pp. 81–87, 2006.

S. Gopinath and M. Nickrad, “How can a global Travel distribution organisation reach CMMI 5?‐Solution,” KTH Royal Institute of Technology, Stockholm, Sweden, 2015, M.S. thesis.

Y. L. Antonucci and R. J. Goeke, “Identification of appropriate responsibilities and positions for business process management success: seeking a valid and reliable framework,” Business Process Management Journal, vol. 17, no. 1, pp. 127–146, 2011.