Advertisement

Software Component Quality Models: A Survey

  • Munishwar Rai
  • Kiranpal Singh Virk
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 624)

Abstract

Design of reusable software component model is the essential research area of the software development. Component reusability has been the key driving factor behind the component model-based software engineering. There are other factors also that have contributed in the core development process of the software engineering models. Factors and related metrics are the basis for any software component quality model. Numerous software component quality models have been proposed, some general and some specific in nature. The aim of this paper is to conduct the literature survey for exploring the most popular software component quality models.

Keywords

Quality models Software components Software development Software engineering Software quality 

1 Introduction

Over the period of time, the world has seen tremendous growth using computing power. In this growth, software has played an important role to facilitate the diversity of the work that a computer could do. With diversified applications of computers, every aspect of human life became dependent upon it. As software has become a significant part of our daily life, a need arises for new application areas for which software are to be continuously evolved or re-invented.

Evolution of software systems requires moving to a new technology. Harnessing the new technology along with ever increasing domain complexity affects the software quality, productivity and development costs. Also, some systems include such complex components that developing them from scratch would be impossible, if profit is desired. Component development and its reusability are one of the solutions for sustainable profits. Component-based engineering practices are important. Software engineering being youngest to other well-established engineering practices, an analogy could be established between the complexity issues faced by software developers/engineers and the civil/mechanical engineers.

From its beginnings in the 1960s, software development meant writing few line of code and was not seen as a profession till 1980 when software engineering evolved as an established development paradigm. The first major breakthrough in software productivity came with the high-level languages [1]. Researchers have proposed numerous software models that intend to bring in the concept of quality in software engineering practices. Software component quality models and frameworks have been the part of the review papers and the concept papers. Every new model or framework takes previous knowledge as foundation for the proposed work. With a number of quality models available, it would be well justified to undertake systematic literature review to identify the relevant software component quality models.

The paper is organized as follows: The second section describes research method used to review papers on software component quality models. The third section discusses the application of research method and analysis of relevant research papers. The fourth section contains the review results and answers the research questions. The fifth section concludes the topic.

2 Research Method

Systematic literature review methodology of research work [2, 3] is followed in this paper.

2.1 Research Question

The paper intends to answer the following research question:
  • RQ1: Which are the top five most referred software component quality models in research papers published till 2016?

2.2 Search Strategy

Software component quality models have been searched on several scientific databases and social networking websites: Shodhganga (open source digital repository of theses and dissertations from Indian universities), IEEE Xplore, ACM Digital Library, CiteSeerx, Google Scholar, ResearchGate and Semantic Scholar. To obtain the relevant papers, following search queries will be executed on title, abstract, keywords and other available metadata:
  • SQ1: Quality model

  • SQ2: Software model

  • SQ3: Software quality model

  • SQ4: Quality of software

  • SQ5: Evaluation of software quality

  • SQ6: Software component

  • SQ7: Component quality.

2.3 Selection Criteria

The criteria for including and excluding the relevant research papers for our research are listed in Table 1.
Table 1

Selection criteria

Inclusion criteria

Exclusion criteria

• Papers written in English language only

• Papers appearing in conferences and journals related to software engineering

• Papers focused on software component quality model

• Papers published till 2016

• Papers written in a language other than English

• Papers appearing in conferences and journals not related to software engineering

• Duplicated studies

2.4 Data Extraction Strategy

The papers shortlisted after the application of selection criteria will be thoroughly read and examined for relevant data extraction. The selected papers would constitute final set of papers and would be stored in Mendeley (bibliographic management software) to further ease the search and management of the bibliographic and citation data.

3 Overview of the Included Papers

3.1 Selection Process

Execution of search queries resulted in a set of 359 papers. After the removal of duplicate studies, application of inclusion and exclusion criteria and availability of full text, the revised set of papers contained 174 entries. The papers are categorized according to their year of publication. Table 2 shows the year-wise categorized count of published papers.
Table 2

Year-wise distribution of papers

Year

No. of papers

Year

No. of papers

Year

No. of papers

1968

1

1995

2

2007

8

1969

1

1996

1

2008

5

1976

2

1998

2

2009

8

1977

2

1999

2

2010

3

1983

1

2001

10

2011

8

1984

1

2002

7

2012

10

1986

1

2003

8

2013

11

1987

1

2004

5

2014

16

1993

2

2005

10

2015

11

1994

2

2006

6

2016

27

3.2 Year-Wise Trends of Paper Publishing

Figure 1 shows the line chart plotted for year-wise papers published using the data in Table 2. It clearly marks an overall upward trend in the publishing of papers dealing with software component quality models. The trend further affirms the interpretation that for pursuing research software component quality model is an important topic.
Fig. 1

No. of papers published per year

3.3 Most Referred Software Quality Models

All 174 papers were searched for the reference of various software component quality models. Quality model names were identified in each paper. The quality model-wise count is made and sorted information is stored in Table 3. Information is in descending order of paper frequency.
Table 3

Model-wise paper frequency

Quality model

No. of papers cited the model

ISO 9126

53

Boehm

50

McCall

31

Dromey

28

ISO 25010

18

FURPS

16

Alvaro

13

Bertoa

10

Rawashdeh

7

Capgemini

6

Georgiadou

6

Quamoco

5

Sqa-Oss

5

Al-Badreen

4

OpenBRR

4

QualOSS

4

MIDAS

1

The top five quality models are ISO 9126, Boehm, McCall, Dromey and ISO 25010. There is a marginal difference between the ISO 25010 and FURPS. FURPS was devised by Hewlett-Packard in 1992. This model evolved as FURPS+ after it was embraced by IBM Rational Software [4].

ISO 25010 was devised in 2010 [5]. The time gap between ISO 25010 and FURPS is around 18 years. This clearly gives ISO 25010 an edge over FURPS. Hence, we take only first five models from Table 3 for further analysis.

3.4 Model-Wise–Year-Wise Trend of Paper Publishing

Quality models devised in 1970s by Barry Boehm, James McCall and others were assimilated into international standard ISO 9126 developed in 1990s [6]. It would be informative to know how our top five models have been cited in papers over the years. We further dig in for publishing year of all the papers that cited our top five quality models. Model-wise–year-wise line charts are plotted and shown in Figs. 2, 3, 4, 5 and 6. We have removed the year from the axis in which no research paper referring the respective quality model was published.
Fig. 2

Year-wise publication of papers citing ISO 9126 model

Fig. 3

Year-wise publication of papers citing Boehm model

Fig. 4

Year-wise publication of papers citing McCall model

Fig. 5

Year-wise publication of papers citing Dromey model

Fig. 6

Year-wise publication of papers citing ISO 25010 model

4 Review Results

4.1 Relevance of Pursuing Review of Existing Quality Models

Ascending trends in plotted graphs of Figs. 2, 3, 4, 5 and 6 clearly mark the relevance of pursuing the review of existing quality models in any research related to software component quality. The popularity of previous models like McCall, Boehm and Dromey comes from the citations. The McCall, Boehm and Dromey models among the top five models have stood the test of the times and still motivate the researchers. This strengthens the argument that ISO 9126 has taken under its fold the work of Barry Boehm and James McCall.

4.2 Research Question

  • RQ1: Which are the top five most referred software component quality models in research papers till 2016?

Table 3 gives us the top five software component quality models i.e. ISO 9126, Boehm, McCall, Dromey and ISO 25010.

5 Conclusion

There are few quality models that have stood the test of the times. Our results have concluded that the top five software component quality models are ISO 9126, Boehm, McCall, Dromey and ISO 25010. Detailed study of these models along with the quality metrics would be valuable for pursuing the further research in software component quality models. The other conclusion that could be derived is that twentieth century has seen the models as an outcome of individual researcher working in some organization. McCall work is with General Electric Company and US Rome Air Development Centre [7]. Boehm work is with TRS systems and Energy Group [8]. Dromey in 1995 presented his views as academic researcher [9]. The concrete steps for the quality of software as an engineering practice have been widely documented by ISO in 9126 standard [10]. ISO has since then amalgamated with the contemporary best practices in its standards of which ISO 25010 is a typical example. In twenty-first century, no model suggested by an individual researcher has been able to make its mark. There are few domain specific models or organization specific models or paradigm specific models that cater to tailored requirements only. The popularity of ISO standards also points to the fact that researchers have accepted the lead of the ISO in devising the software component quality standards.

References

  1. 1.
    Brooks, F. P.: No Silver Bullet - Essence and Accident in Software Engineering. IEEE Computer 4, No. 2, 10–19 (1987).Google Scholar
  2. 2.
    Mijac M., Stapic Z.: Reusability Metrics of Software Components: Survey. In: 26th European Conference on Information and Intelligent Systems, pp 221–231. Varaždin, Croatia, Sep 23–25 (2015).Google Scholar
  3. 3.
    Miguel J.P., Mauricio D., Rodríguez G.: A Review of Software Quality Models for the Evaluation of Software Products. International Journal of Software Engineering & Applications, vol. 5, no. 6, pp. 31–54 (2014).Google Scholar
  4. 4.
    Al-Qutaish R. E.: Quality Models In Software Engineering Literature: An Analytical and Comparative Study. Journal of American Science, vol. 6, no. 3, pp. 166–175 (2010).Google Scholar
  5. 5.
    ISO/IEC 25010: Systems and Software Engineering—Systems and Software Product Quality Requirements and Evaluation (SQuaRE)—System and Software Quality Models. International Organization for Standardization, Geneva (2010).Google Scholar
  6. 6.
    Denning P.J.: Software quality.: Commun. ACM, vol. 59, no. 9, pp. 23–25, Sep (2016).Google Scholar
  7. 7.
    McCall J.A, Richards P.K., Walters G.F.: Factors in Software Quality: Concept and Definitions of Software Quality, RADC AFSC, Griffis Air Base, New York, RADC-TR-369, vol I. November (1977).Google Scholar
  8. 8.
    Boehm B.W., Brown J.R., Lipow M.: Quantitative evaluation of software quality. In: 2nd Int. Conf. Softw. Eng., pp. 592–605 (1976).Google Scholar
  9. 9.
    Dromey R.G.: A Model for Software Product Quality. In: IEEE Trans. Softw. Eng., vol. 21, no. 2, pp. 142–162, (1995).Google Scholar
  10. 10.
    ISO/IEC IS 9126: Software Product Evaluation - Quality Characteristics and Guidelines for their Use, International Organization for Standardization, Geneva, Switzerland, 1991.Google Scholar

Copyright information

© Springer Nature Singapore Pte Ltd. 2018

Authors and Affiliations

  1. 1.M.M. Institute of Computer Technology & Business ManagementMaharishi Markandeshwar UniversityAmbalaIndia
  2. 2.Department of Computer ScienceGuru Nanak Khalsa CollegeYamuna NagarIndia

Personalised recommendations