Neural Network-Based Model for the Quality Assessment of Object-Oriented Software

Neural Network-Based Model for the Quality Assessment of Object-Oriented Software

Sumit Babu, Raghuraj Singh
Copyright: © 2022 |Pages: 13
DOI: 10.4018/IJOSSP.313182
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Software quality assessment is an important subject among the researchers in the software development domain. The quality assessment is generally done either at the design level through some of the design attributes or through code when the product is ready. These two types of software quality are referred to as design quality and product quality, respectively. Several techniques and tools are available that facilitate to assess the design as well as the product quality of software. In this paper, a neural network model is proposed for the assessment of quality of object-oriented software at the product level. The authors select a subset of existing object-oriented metrics that are normalized at three levels and used to find quality factors like understandability, reusability, flexibility, maintainability, reliability, extensibility, and modifiability for the model development. The model is validated by assessing quality levels of 33 open source object-oriented software of different design complexities and observing a high correlation between these quality levels in comparison with an existing model.
Article Preview
Top

Introduction

With an objective to improve the product and process, quality is one of the prime concerns of software developers. Several techniques, models and tools are available to facilitate the assessment of software quality. Many of them are applied when the software product is completed or about to complete and at design level. Software quality has different forms from different perceptions. From the perception of end users, software quality means the extent to achieve its target, to the developers it means to complete its specifications, and from the product perception it is concerned with characteristics of software and the money spent to develop it (Arvanitou et al., 2017).

Software quality is the extent to which software is successful to achieve its objectives whereas software quality model is a framework that describes the software quality and facilitates its assessment (Hoyer et al., 2001). Software code is used to find the final product quality using quality attributes of object-oriented software. These attributes also help in the measurement of the software performance which depends on its quality (Gorla & Lin, 2010), effectiveness and completeness. The measurement of quality of object oriented software helps developers to achieve the satisfaction of targeted audience. Models for assessment of the software quality can be classified into three different categories namely hierarchical, meta-model-based and statistical quality models.

The hierarchical models assess the quality of object oriented software(OOS) in the form of software quality attributes and criteria (Sadeghzadeh Hemayati & Rashidi, 2017; Bansiya & Davis, 2002; Yadav & Singh, 2013) as depicted in Figure 1.

Figure 1.

Hierarchical software quality model

IJOSSP.313182.f01

Quality is a complex concept and a quality model requires more coherent and structured relationship between quality and metrics than the simple hierarchical one (Wagner, 2013). Structure of a meta-model based on the software quality attributes, criteria, sub-criteria and metrics (Sadeghzadeh Hemayati & Rashidi, 2017) is shown in figure 2.

Figure 2.

Structure of a meta-model of quality

IJOSSP.313182.f02

The statistical quality models depend on the properties of product & process and estimate or predict software quality attributes by generating statistical relationship between different metrics which are measured (Sadeghzadeh Hemayati & Rashidi, 2017).

Software quality attributes and their mapping with the metrics is explained by (Arvanitou et al. 2017). They also map software quality attributes related to different development phases of software such as design, architecture, implementation, maintenance and testing. The author also identify several number of quality attributes and metrics associated with them based on several studies done in last dacades.

Software quality metrics play an important role in the assessment of the quality of software. A number of models and metrics such as Cavano & McCall, 1978; Boehm & Papaccio,1988; Dromey, 1995; ISO, 2001; ISO, 2014 which help to maintain the desired quality are available to find the software quality. In the present era of modern technology, it is important to build new models and metrics to find the quality of software using techniques like machine learning, deep learning, and artificial intelligence.

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing