• No results found

An Ingenious Model To Implement Cmmi Rskm With Small Software Industries: A Survey-Based Analysis

N/A
N/A
Protected

Academic year: 2020

Share "An Ingenious Model To Implement Cmmi Rskm With Small Software Industries: A Survey-Based Analysis"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

1092 IJSTR©2019

An Ingenious Model To Implement Cmmi Rskm

With Small Software Industries: A Survey-Based

Analysis

R. Sharma, R. Dadhich

Abstract : In this era of digitalization there is a huge requirement of software capable of satisfying the needs of diversified requirements as well as capable of adapting frequently changing hardware and operating platforms. A lot of new software industries are emerging very frequently with an inspiration to develop software so that the imbalance between the necessity and the availability of appropriate software can be abridged instantly with a reliable and superior quality affordable product. To facilitate and simplify the cumbersome task of producing a good quality product, lots of techniques have been devised (and effort is still going on) and suggested by numerous experts of the software engineering and other disciplines. The development of CMMI model enabled the use of a structured, well-defined and systematic approach of proven methods for software development, deployment and maintenance. This model is one of the latest and popular techniques, which caters the need of established software industries perfectly but still does not properly address the issues of small and emerging software industries. This paper explores the impacts of mingling up CMMI ML-1 with small but important part of ML-3 for better quality software development and promised standing for small software industries in the market.

Keywords: CMMI, Maturity Level, Process Area, Risk Management, Software Process Improvement models, Software Testing, Validation, Verification.

——————————  ——————————

1.

INTRODUCTION

This is an undoubtedly and universally accepted truth that the quality of a product / software is highly governed by the quality of process adopted to develop and maintain it. Keeping in mind this truth, from the very start of software era, a significant amount of effort and time have been invested to promote software development industries in strengthening the process of software development as well as software maintenance. The main motive behind this is to enable and assist the software development industries in earning handsome profit by developing and delivering high quality products in the market. Following are some of the popular process improvement models [11] among which CMMI is the most recent and widely used model.

I. Six Sigma - A methodology invented and developed by a Quality Engineer Bill Smith at Motorola in 1986. Originally invented to reduce defects in the product but, later became a management system for running business successfully.

II. CMM Model - A Capability Maturity Model for software developed in 1991 by SEI at CMU to help and guide organizations in improving the process to develop software. This model is considered as the base model for CMMI.

III. SPICE or ISO/IEC 15504 Model - A framework developed in 1993 by ISO/IEC for the identification and establishment of software processes that can be utilised by organizations of diversified natures. IV. IDEAL Model - A continuous process improvement

model, also developed by Software Engineering Institute (SEI) at Carnegie Mellon University in 1996. V. ISO Model - One of the most popular standard and

certificate for quality management which improves customers‘ satisfaction, assures good quality and improves productivity and services.

2.

THE

CMMI

MODEL

It is a widely accepted Software Process Improvement Maturity Model, developed at Carnegie Mellon University by a group of experts from Industry, government and Software Engineering Institute (SEI). CMMI is an improvement over its predecessor Capability Maturity Model, i.e., CMM for Software or Software CMM. CMMI is globally accepted as a software development standard. It supplies a set of guidelines for development process to improve the quality [1] of a software product. It [1] provides a framework for organizations to appraise the maturity of processes employed. The development of CMMI aimed to develop an integrated model which aggregates all the predecessor maturity models to enable their better usability. Initially developed for Software Engineering, CMMI now provides process improvement and development guidelines for development of hardware products, for the delivery of all kind of services, and for the Acquisition of Product and

____________________________

R. Sharma completed her Bachelor of Science in 1988 and Master of Computer Applications in 1991 from Banasthali Vidyapeeth, Rajasthan, India. She is currently pursuing Ph.D. & working as Guest Faculty in Department of Computer Science and Informatics, University of Kota, Kota, Rajasthan, India. Her research work mainly focuses on Software Testing and CMMI. She has approximately 25 years of teaching experience.

(2)

1093 Services To achieve improvement objectives, two

representations of CMMI [2] are available:- A. Staged Representation

B. Continuous Representation

A. Staged Representation: It is used widely as a standard representation to improve overall maturity of an organization. It provides 5 maturity levels organized in a ladder-styled process improvement sequence. These 5 maturity levels are organized as a set of layers where each lower layer provides a basis for the immediate next upper step. The maturity levels (MLs) are numbered from 1 to 5 [2] as shown in the table 1:-

TABLE 1

MATURITY LEVELS OF STAGED REPRESENTATION Maturity Levels Characteristics

ML-1: Initial Organizations lack the stable environment required to support processes. Processes are designed on ad hoc basis and are not maintained for reuse.

ML-2: Managed In this level, Organizations are more organized by having and maintaining pre-planned process and work-schedule to develop & maintain products.

ML-3: Defined All the processes maintained at maturity level 2 are re-defined in more details at maturity level 3 in order to convert them into a set of standard processes. A minor trade-off between standard and project-specific process may exist because of the nature and requisites of project.

ML-4: Quantitatively Managed

Organizations select critical sub-processes of a process, subject them to some statistical techniques to obtain quantitative results suitable for establishing and managing the performance and quality benchmarks of the selected process. Organizations are able to predict the performance of a process quantitatively rather than qualitatively due to the statistical management of processes.

ML-5: Optimizing Organizations continuously improve their processes performance quantitatively by identifying the factors responsible for variation in processes.

B. Continuous Representation: This representation allows an organization to select the desired process area for improvement and suggests the sequence of improvements that best suits to achieve the business objectives of organization. Its‘6 (six) capability levels are shown in table 2:-

TABLE 2

MATURITY LEVELS OF CONTINUOUS REPRESENTATION Capability Levels Characteristics

Level 0 – Incomplete Only some applicable specific practices are implemented.

Level 1 – Performed Necessary processes for sustaining service levels are missing.

Level 2 – Managed The processes are managed by the

organization, but it is not possible to strategically predict costs of services and compete with lean competitors.

Level 3 – Defined The organization can anticipates changes in its environment and plans, but still lacks the ability to forecast changing costs and schedules of services.

Level 4 – Quantitatively Managed

The organization is able to statistically forecast and manage performance against selected cost, schedule, and customer satisfaction levels.

Level 5 – Optimizing The organization is able to reduce operating costs by improving current process performance or by inventing innovative services to maintain their competitive edge.

3.

RELATED WORK

Many researchers have worked till now and are still working on Process Maturity Models. A. Luqman [3] conducted a study for the analysis & implementation of CMMI‘s Configuration Management (CM) process area in support category while adopting its continuous approach. His work suggested that the adoption of CMMI will drive the CM towards continuous process improvement of enterprise business for more reliable delivery of software products. P. Monteiro et al. [4] worked to reunite validation and verification practices within CMMI maturity level 2. In his study, D. Singh [8] considered the factors such as software size and provided a benchmark for effort, quality, and cycle-time based on CMM Level 5 project data. S. R. Durugkar et al. [7] suggested that companies applying for CMMI level 2 assessments must find out the possibility of simultaneously implementing CMMI level 2 and the V & V Process Areas to produce high quality software. R. Dadhich and U. Chauhan [5] analyzed the effect of integration of CMMI Level-3 in traditional software development process. In this work, authors identified various risks associated with different phases of SDLC. R. K. Chauhan et al. [6] discussed various types of testing techniques to measure attributes contributing for software quality. S. Jat et al. [9] conducted a study to assess a suitable technique for testing software and finding out errors. They realized that practically it is not possible to detect all the errors in software, but they suggested that Gray-Box testing technique is more accurate technique to find out errors and Black-Box testing requires minimum effort, cost and time to test a test-case. Pak-Lok Poon et al. [15] conducted a study involving inexperienced and experienced software testers to investigate the amount and types of mistakes made in an ad hoc identification approach. For the purpose of the study, the authors conducted multiple comparative studies using three commercial specifications involving inexperienced and experienced software testers. The study revealed that, experienced testers identified more potential categories and choices as compared to inexperienced ones. They also had fewer missing and problematic categories whereas identified more non-problematic categories. Mika V. Mantyla et al. [16] studied the organization and values of testing as well as the organizational groups that contribute testing activities in small- and medium-sized software product companies in order to provide empirical evidence on how testing involves

Formatted Table

(3)

1094 IJSTR©2019

different groups of employees in varying organizational roles in software product development companies. They conducted an industrial case study of employees performing software testing and reporting defects. Mitrabinda Ray et al. [17] proposed a state-based risk assessment methodology at the analysis and design stage of Software Development Life Cycle. First, they proposed a method to estimate the risk for various states of a component within a scenario and then, the risk for the whole scenario is estimated. They introduced an Inter-Component State-Dependence Graph to estimate the complexity for a state of a component within a system. They used Functional Failure Analysis, Software Failure Mode and Effect Analysis and Software Fault Tree Analysis techniques to assess the severity for a component within a scenario. The risk for a scenario was estimated based on the risk of interacting components in various states within the scenario and State COllaboration TEst Model of the scenario. Finally, the system risk was estimated based on two inputs: scenarios risks and Interaction Overview Diagram of the system. R. Sharma et al. [10] conducted a detailed study targeting the emerging organizations, which are at the very initial level of development (say, a Software Start-up Venture). The study revealed that such organizations neither have standardized processes at their disposal to work in systematic & controlled manner, nor it is economically feasible to implement any of the process maturity models at their initial stages. Hence, these organizations have to work under a situation which leads to impose risks on the developed products as well as on their own existence and success. Based on the findings, the authors suggested the inclusion of quality and success deciding process i.e., the software testing process of SDLC at ML-1 of CMMI.

4.

PROPOSED

RAVV

MODEL

The definition of ML-1 of CMMI, states that the software is developed in an informal, intuitive and non-systematic manner. This shows that there is no defined process to apply the phases of software development, testing as well as for deployment. This approach of software development introduces many risks and threats, some of them are as follows:-

(i) The behaviour of developed product unpredictable, (ii) The monitoring of development activity is not

possible.

(iii) The percentage of work completed or the milestone achieved cannot be calculated.

(iv) The success of project highly depends on the intuition and experience of developers, hence, it is nearly impossible to estimate the time schedule, budget and delivery date.

(v) The product with desired quality and satisfying customer requirements may or may not be produced within given time & budget constraints.

The above mentioned risks pertaining to ML-1 and also for the start-ups in question encouraged the authors to propose a novel model. The proposed model is applicable only for start-up industries since such industries do not put much effort in terms of time and money for risk analysis. There are many reasons behind it; one main reason is that these industries are aimed to be low budget and less man-power

at their inception. In support of the proposed model, a detailed study is conducted to investigate the status of process improvement model (if any) being used by small software industries. For this purpose, a detailed questionnaire is prepared based on the pattern suggested by the experts [12] of CMMI. Also some special questions related to adoption of software testing strategies are designed.After deliberate analysis of the applicability and relevancy, the designed questionnaire is distributed to 6 small scale software industries (start-ups). The response options are qualitative in nature. For analysis purpose, the questionnaire is sub-parted into six categories. In order to convert qualitative responses into quantitative values, a fuzzy logic based mapping is applied. This conversion facilitated authors to perform comparative studies statistically and to validate the proposed model. The study primarily focused on the evaluation of testing strategies used by concerned industries and development of an efficacious model to assist them during software testing phase. Based on the study, authors propose a novel model RAVV (Risk Analysis with Validation and Verification) to be implemented as an intermediary between ML-1 and ML-3 as illustrated in Fig. 1, to guide these industries in achieving targets with less expense and efforts.

Fig. 1. Proposed Structure of RAVV Model.

(4)

1095 TABLE 3

RESULTS FROM SURVEY REPORTS OF START-UPS

5.

RESULTS

The comparative analysis of both the scores is presented in Figure 2. The results reveal that start-ups do follow some testing strategy (not essentially in planned manner) which ensures that the product developed by them has approximately 30% chances of being successfully completed in time and budget-constraints fulfilling its intended purpose to satisfy customer‘s expectations whereas the CMMI-Compliant companies have much higher rate (i.e. 90.07%) of success for the products developed by them.

Fig. 2. Success Ratio of Applied Test strategy at Start-ups / Non-CMMI Compliant and CMMI-Compliant Companies.

The findings of study signal that after implementing the proposed model, i.e., the partial integration of Validation and Verification process areas of ML-3 in ML-1, can significantly improve the chances of survival of such organizations. Start-ups will definitely have an edge over their counterparts that are not employing any plans and procedures for software testing. Once implementing a software testing strategy at the infantry age of their organization, they will succeed rapidly in the market by providing good quality and economic product that satisfies customer requirements.

6.

CONCLUSION

The study suggests that despite of the constraints of finance and efforts, if small software development organizations (or start-ups) somehow manage to plan not each and every process but at least the most critical, success-deciding, and quality reflecting process, i.e., the software testing process of SDLC at ML-1 of CMMI, then, they will be able to reduce the risks [14] associated with at least testing phase of the SDLC. This will enable them to produce and deliver products that are of high quality, low in cost (although slightly more than the product cost build with unplanned tests), built within time-bounds and satisfy customer requirements and expectations as well; that too without implementing any maturity model in its entirety. This blend of ML-1 with a part of ML-3 will make them stand along with their competitors who are already performing well in the market, in terms of low-budgeted, high quality and timely delivered product. The study advocates that, the software developers working on low-cost projects (i.e., start-ups) can be benefited by applying / following the suggested model which places them a bit above the ML-1 and ML-2 organizations, but not equivalent to an ML-3 organization, because it implements a small part of ML-3 process areas skipping the time, cost and effort consuming procedure required to implement the ML-2 & ML-3 Process Areas completely.

ACKNOWLEDGMENT

Authors would like to thank to all start—ups for devoting effort and time in filling-up the questionnaire and responding timely for analysis purpose which is the basic requirement for successful analysis of proposed work.

REFERENCES

[1] ―Capability Maturity Model®

Integration (CMMI®) Overview‖, Carnegie Mellon University/ Software Engineering Institute, pp: 393-411, 2005.

[2] ―CMMI® for Development, Version 1.3‖, Technical Report, CMMI Product Team, Carnegie Mellon University/ Software Engineering Institute, Nov-2010. [3] A. Luqman, ―Implementation And Analysis of CMMI's

Configuration Management Process Area; Applicable to "Defined" Level – 3‖, International Conference of Information and Communication Technology, Karachi, Pakistan, IEEE Conference Publications, pp: 296-301, 27-28 Aug‘2005.

[4] P. Monteiro; R. J. Machado, R. Kazman, ―Inception of Software Validation and Verification Practices within CMMI Level 2‖, ICSEA '09. Fourth International Conference on Software Engineering Advances, Porto, Portugal, IEEE Conference Publications, pp: 536-541, Conference of Proceedings published by IEEE Computer Society, 20-25 Sep‘2009.

[5] R. Dadhich, U. Chauhan, ―Integrating CMMI Maturity Level-3 in Traditional Software Development Process‖,International Journal of Software Engineering & Applications (IJSEA), Vol.3, No.1, pp: 17-26, January 2012.

[6] R. K. Chauhan, I. Singh, ―Latest Research and Development on Software Testing Techniques and Tools‖, INPRESSCO, International Journal of Current Engineering and Technology, Vol.4, No.4, pp: 2386-2372, Aug 2014.

Formatted: Space After: 0 pt, Line spacing: single

(5)

1096 IJSTR©2019

[7] S. R. Durugkar, V. Surwase, ―Software Validation and Verification Practices in CMMI levels‖, BIOINFO Soft Computing, Vol. 1, Issue 1, pp: 01-04, 2011.

[8] D. Singh, ―Software Testing using CMMI Level 5‖, International Journal of Computer Science Trends and Technology, pp: 233-242, Mar-Apr 2016.

[9] S. Jat, P. Sharma, ―Analysis of Different Software Testing Techniques‖, International Journal of Scientific Research in Computer Science and Engineering (IJSRCSE), Vol.5, Issue.2, pp.77-80, April ‗2017. [10] R. Sharma, R. Dadhich, ―Implications of Software

Testing Strategies at Initial Level of CMMI: An Analysis‖, International Journal of Computer Sciences and Engineering (IJCSE), Volume-6, Issue-5, May‘ 2018.

[11] A. Anees, A. Agrawal, ―Software process improvement models and their comparison‖, International Journal of Advanced Research in Computer Science (IJARCS), Volume-8, No.-5, pp. 928-932, May-June‘ 2017. [12] D. Zubrow, W. Hayes,J. Siegel, D. Goldenson,

―Maturity Questionnaire : Special Report CMU/SEI-94-SR-7‖,June 1994.

[13] M. A. Herndon, R. Moore, M. Phillips, J. Walker, and L. West, ―Interpreting Capability Maturity Model®

Integration (CMMI) for Service Organizations – a Systems Engineering and Integration Services Example‖, Technical Note CMU/SEI-2003-TN-005. [14] B. W. Boehm, Tutorial : ―Software Risk Management,

Les Alamitos‖, CA, IEEE Computer Society, 1989. [15] P. L. Poon, T. H. Tse, S.F. Tang, F. C. Kuo,

―Contributions of tester experience and a checklist guideline to the identification of categories and choices for software testing‖, Software Qual J (2011) 19:141– 163, Springer, 2011.

[16] M. V. Mantyla, J. Itkonen, J. Iivonen, ―Who tested my software? Testing as an organizationally cross-cutting activity‖, Software Quality Journal, Springer, 2012. [17] M. Ray, D. P. Mohapatra, ―Risk analysis:

Figure

Fig. 1. Proposed Structure of RAVV Model.
TABLE  RESULTS FROM SURVEY 3 REPORTS OF START-UPS

References

Related documents

When including entity type information in the mapping problem, we are faced with two challenges, namely: (i) to estimate weights for the domain and range type of a Nell property

The symbolic integration formulae presented in this paper may lead to an easy and systematic incorporation of global properties of solid objects, such as, for

Breakfast: Gluten-free toast with ghee and avocado | Soaked oats with nuts, seeds, dried fruit, and coconut yogurt | Scottish porridge | Green Juice.. Snack: Apple

Because of the doubtful collection but substantial completion, either the installment sales or cost recovery method could be used... P800,000 cash received

As the experimental images were all bound to the microtubule in the presence of ATP, and the limiting step of the cytoplasmic dynein ATP hydrolysis cycle being the ADP release rate

Furthermore, in the last-chapter of odd semester, the teacher modified it with TPR in some ways, namely; she modified it with TPR in order to easier in

It is clear from the discussion of the applicable case law above that where the buyer is evicted from his quiet possession in terms of section 12, the buyer may cancel the

In this sense, there is a high prevalence of dental caries among children aged 0-36 months [4]; however, most dental services have emphasized dental treatment of school children