Introduction
An important part of software engineering is the development of methodologies and models. Nowadays, steps are taken towards the study of methods and techniques to achieve a better application of methodologies and achieve more efficient and higher quality systems with the necessary documentation in perfect order and on time. Experience has shown that successful projects are those that are managed following a series of processes that allow organizing and then control of the project, considering valid to emphasize that those processes that do not follow these guidelines run a high risk of failure (Delgado Olivera y Díaz Alonso, 2021; Gamboa, 2018). Several studies show how process models are very useful for companies since they contribute to the achievement of objectives such as reduction of defects, increase in productivity, improvement in estimation, and stakeholder satisfaction, among others. (Software Engineering Institute, 2010; Kalinowski et al., 2014; Simões y Montoni, 2014; Gil, 2020; Durmuş, TOP y YILDIRIM, 2021; Quiña-Mera et al., 2020; del Roció Veloz-Remache, Menéndez-Verdecia y Aguilar-Moncayo, 2021)
Recently in Cuba, the priority has been given to the program for the computerization of Cuban society, which is based on the country's software development companies, which have recently been joined by some Micro, Small and Medium-sized Enterprises (MSMEs). This novel concept was approved as part of the government's policy to boost the country's economy and whose mission includes the development of software and computer applications.
Taking as a starting point the need to regulate important elements in the software development process in Cuba and to homogenize this process, Resolution 124 of the Ministry of Communications (MINCOM) was issued in 2019. This resolution sets out the basic rules that regulate the production of software and the evaluation of the quality of these production processes and their resulting products (Ministerio de las Comunicaciones, 2019). Before this resolution and as part of the informatization policy being carried out in Cuban society to achieve technological sovereignty, the task of creating the Quality Model for the Development of Computer Applications (MCDAI). This is a Cuban model of software development that guarantees the quality of products and services developed in the country, has been given (Oro, Lazo Alvarado y Ramírez Pérez, 2019; Lazo et al., 2020).
The Universidad de las Ciencias Informáticas (UCI) is one of the software development entities in Cuba. Its mission is to produce computer applications and services based on the study-work link as a model of training - research - production, supporting the Cuban computer industry. (Universidad de la Ciencias Informáticas, 2022).
Since 2011, UCI has been committed to the Capability Maturity Model Integration (CMMI). In the adoption of this model, it was necessary to adapt and standardize the University's production processes to comply with CMMI policies. On the first occasion, three development centers were certified, and in 2014 it was decided to certify all the development centers in 2014 it was decided to certify all the productive activities, in both cases the certification was satisfactory for level two of this model. At UCI, several investigations have been carried out to reach higher levels, but these efforts have been affected by the intensification of the economic, commercial, and financial blockade of the United States Government towards Cuba. Such policy has not allowed the continuation of the relations between the North American company based in Mexico that has been in charge of the certification and the University.
This paper reviews the compliance of the Project Monitoring and Control (PMC) process of the productive activity of the University of Informatics Sciences with the basic rules for the production of computer programs and applications, regulated by Resolution 124/2019. The PMC process was described in a way that complies with the policies established by CMMI in its level 3. In this case, the research focuses mainly on the first two areas (Organizational Management and Project Management) in which these rules are grouped.
Computational methodology
PMC process area for UCI production development activity
The CMMI model adopted by the University gives importance to the follow-up and control of the plans defined within the project, which is why at UCI it was necessary to describe the PMC process to comply with the policies associated with these elements.
Project monitoring and control provide an understanding of project progress so that appropriate corrective actions can be taken when project performance deviates significantly from the plan. It is expected that the progress of the organization's projects will be continuously monitored, to know their status at any part of the project life cycle. This allows the identification of problems promptly, and consequently the adoption of measures to keep the project within the established limits of scope, cost, time and quality, time and quality (Trujillo, Velázquez y Alfonso, 2015; Rodríguez, 2019; Mellado, Faúndez-Ugalde y Blanco, 2020; González Catalán, 2019; Carrión Panta y Tafur Palomino, 2018). The PMC process covers the entire project life cycle as shown in Figure 1.
The PMC process has eight policies associated with monitoring planning parameters, these parameters include work product and task attributes such as size, status, and complexity. Other policies are related to conducting project progress reviews where the status of the project is reviewed, emphasizing compliance with the scope and planned milestones. The review of the risks planned at the beginning of the project, is an important element within the process, analyzing the incidents, deviations, and corrective actions presented. This process is transversal during the software development of the ICU because it is related to the rest of the defined processes since it is necessary to monitor the compliance of all the activities developed by the project. In addition to the policies, the PMC process has seven fundamental sub-processes among which are:
Sub-process Establish the defined project process
Sub-process Establish the project work environment
Sub-process Perform causal analysis of previous incidents to avoid their recurrence
Sub-process Establish equipment
Sub-process Manage stakeholder engagement
Sub-process Resolving coordination issues
Basic rules for the development of computer programs and applications in Cuba
As part of the regulations for the production of computer programs and applications and the evaluation of their quality, 21 basic rules must be complied with by the computer applications implemented in the country. These rules are grouped into four fundamental areas: Organizational Management, Project Management, Engineering, and Support (Ministerio de las Comunicaciones, 2019).
The Organizational Management area establishes the guidelines to be followed from the conception of the project, it refers to the definition of the different processes that will govern the software development and the assignment of roles and responsibilities. On the other hand, the solution proposal must be developed, considering the scope, objectives, software components, and development technology. Great importance is attributed to time, cost and resource estimate, personnel training, knowledge management, and protection of customer assets.
The rules associated with the Project Management area are equally related to project design and estimation. It is required to have identified the project life cycle and to have a plan that covers it completely. Each of the defined plans must be monitored and deviations must be followed up, implementing actions to solve the problems that compromise the fulfillment of the execution milestones. It is necessary to identify the needs for the acquisition of products or components, duly evaluate their costs, identify potential suppliers, and establish agreements and contracts with the selected ones.
The Engineering area focuses on the development process itself, starting from the identification, specification, and traceability of the software requirements that must be duly accepted by the customers. These requirements are described and grouped into modules and subsystems. On the other hand, the fulfillment of the identified functional and non-functional requirements are verified through the application of tests with the support of manual or automated tools. The detected nonconformities must be duly recorded and must be adequately followed up.
The last area reflected in the rules is that related to Support, where it is necessary to identify and use indicators for project management, which allows satisfying the information needs based on the measurement of the objectives. These indicators must be analyzed periodically to keep them updated. The elements of the configuration are identified and an organization must be established with codes for each element to allow better identification and consultation, and a system must be available to store and control the versions. Baselines to have to create and their changes must be controlled, as well as modifications to the software requirements. As part of the support, periodic evaluations will be made of the execution of the processes and their work products, to ensure compliance with the defined plans, procedures, and standards.
Developers must implement these rules and must have evidence of their compliance for each project they execute, and this evidence must be shown in any evaluation of the process (Segura, Parra y Trujillo 2021).
Results and discussion
Considering the worsening of the economic, commercial, and financial blockade imposed by the US government on Cuba and with this the impossibility of continuing with the certifications of the CMMI Model at higher levels. Furthermore, together with the need to comply with the rules and resolutions established by the Ministry of Communications of Cuba (MINCON), it is necessary to review and adapt the processes described in the UCI for the productive activity. In the present research, a comparison of the PMC process of the UCI with the basic rules issued by MINCOM in resolution 124/2019 was carried out, to identify the elements of coincidence and others in which it is necessary to work to ensure compliance with them by the productive activity of the university. In the work, only the basic rules found in the first two process areas in which the same are organized were taken into account, in this case, it refers to Organizational Management and Project Management, and the decision is related to the fact that they are the areas with the greatest impact on the PMC process.
In the Organizational Management process area, reference is made to seven basic rules, and the fundamental result of the review is that the process complies with four of the seven rules in question. The PMC process is adequately described and was certified as part of the review carried out to achieve CMMI level 2. As part of it, the assignment of roles and responsibilities is guaranteed, making clear the skills that each one of them must-have. The development of the solution proposal, ensuring the start of the project and personnel training are activities that are developed from other processes, although it is worth noting that PMC monitors each of these activities and follows up on corrective actions in case they exist.
In the PMC process, there are some activities aimed at reusing the knowledge generated in other projects. An example of this is the activities of the sub-process "Perform causal analysis of previous incidents to avoid their repetition". It should be clarified that it is not clear how this information is socialized, whether it is using GESPRO or by accessing the status reports of other projects.
PMC has defined policies associated with the protection of project data, including all data provided by clients. As part of the process, the Data Plan defined at the beginning of the project is monitored, where the documentation to be handled is classified.
The PMC process in terms of Project Management, as specified below, is in line with the seven basic rules issued by MINCOM in this area. The first four rules are related to the definition of the scope, estimates, the project life cycle, and the development plan, all of which are guaranteed by other processes described in the UCI for the productive activity, although, as mentioned above, PMC follows up on the activities aimed at complying with these rules.
Associated with the basic rule that refers to the monitoring and control of project plans, as part of the PMC process, several sub-processes are defined to ensure the control and monitoring of the plans agreed upon at the beginning of the project. In the sub-process "Establish the defined project process", monitoring points are identified and project status reports are prepared at different levels (project, top management, and client), in addition to the production reports of the center and the university. The aforementioned artifacts are analyzed in check-up meetings at different levels.
Another of the rules is associated with the identification of procurement needs. This is evidenced from the sub-process "Establish the project work environment", where it is established that for the Integrated Project Management a section is described in the Software Development Plan where the dates of use of the components of the work environment are planned. As required, the working environment of the project or any of its components may be developed internally or acquired from external sources. The reports generated at different levels reflect the incidents presented so far and the corrective actions are taken.
Regarding the rule that refers to the selection and contract with suppliers, in CMMI there is a process area that is considered among the optional ones of level 2 called Supplier Agreement Management (SAM) that by decision of the university is not applied. It is considered that it should be evaluated to include some activity in one of the other defined processes in case it is necessary to hire the service of a supplier taking into account the characteristics of the project.
In the review shown above, is evident that the PMC process has a wide coverage of the basic rules issued by the MINCOM. In this way, it is guaranteed that the productive activity of the university is attached to the resolutions issued by the country regarding software development and is in conditions for a future certification taking into account the Cuban standards and establishes the Quality Model for the Development of Computer Applications (MCDAI).
Conclusions
The study of the basic rules for the production of computer programs and applications in Cuba put into practice the marked interest of the country's top management in betting on the impulse of the informatization of Cuban society from the exploitation of internal potentialities, giving importance to the quality of products and the development process.
The comparison made between the basic rules issued by MINCOM and the PMC process applied to the productive activity of the UCI, showed that the latter guarantees compliance with these rules, ensuring the continuity of software products in the UCI based on the processes currently described.
The study showed that UCI's productive activity is in a position to face national certifications related to software development in the short term.
As part of the comparison, we identified opportunities for improvement in some elements such as the selection and agreement with suppliers.