Software quality assessment model: a systematic mapping study

Meng Yan, Xin Xia, Xiaohong Zhang, Ling Xu, Dan Yang, Shanping Li
2019 Science China Information Sciences  
Quality model is regarded as a well-accepted approach for assessing, managing and improving software product quality. There are three categories of quality models for software products, i.e., definition model, assessment model, and prediction model. Quality assessment model (QAM) is a metric-based approach to assess the software quality. It is typically regarded as of high importance for its clear method on how to assess a system. However, the current state-of-the-art in QAM research is under
more » ... mited investigation. To address this gap, the paper provides an organized and synthesized summary of the current QAMs. In detail, we conduct a systematic mapping study (SMS) for structuring the relevant articles. We obtain a total of 716 papers from the five databases, and 31 papers are selected as relevant studies at last. In summary, our work focuses on QAMs from the following aspects: software metrics, quality factors, aggregation methods, evaluation methods and tool support. According to the analysis results, our work discovers five needs that researchers in this area should continue to address: (1) new method and criteria to tailor a quality framework (i.e., structure of software metrics and quality factors) according to different specifics, (2) systematic investigations on the effectiveness, strength and weakness of different aggregation methods to guide the method selection in different context, (3) more investigations on evaluating QAMs in the context of industrial cases, (4) further investigations or real-world case studies on the QAMs related tools, and (5) building a public and diverse software benchmark which can be adopted in different application context. Factor Sub-factor ... Quality factors Middle layer(s) ...... Aggregation ...... Metric Metric Metric Product metrics Figure 1 The general concept of a QAM. A QAM depends on an aggregation step to aggregate metrics to quality factors. Similar to ISO 9126, the factors may be decomposed into sub-factors. In addition, there may be several number of middle layers between metrics and quality factors to make the model more comprehensive, such as the practice layer and criteria layer in Squale model [13]. model, and prediction model. A definition model is mainly used to define or describe quality [4, 9] . A general shortcoming in most definition models is that the given definitions are mostly too abstract to perform constructive quality assurance. Many of them are often unclear as to how practitioners conduct the model operations [8] . An assessment model contains quality criteria with clear methods to assess each quality criterion. The assessment method is often a mathematical model which aggregates product metrics (identical with measures in this work) to quality factors. Under this way, an assessment model determines the value of quality factors. It is noted that a quality factor is a management-oriented attribute of software that contributes to its quality. It has many synonyms in this line of research, such as quality characteristic, quality aspect, quality attributes and qualities [10, 11] . Moreover, the requirements used in assessment models hold in prediction models as well. Additionally, a prediction model can support predictions to aid further activities, such as defect prediction.
doi:10.1007/s11432-018-9608-3 fatcat:p5bhe3f4lvh7jbkyjjgogfyke4