The fractal dimension metric and its use to assess object-oriented software quality

Author(s):  
Ivana Turnu ◽  
Giulio Concas ◽  
Michele Marchesi ◽  
Roberto Tonelli
Author(s):  
Dalila Amara ◽  
Latifa Ben Arfa Rabai

Software measurement helps to quantify the quality and the effectiveness of software to find areas of improvement and to provide information needed to make appropriate decisions. In the recent studies, software metrics are widely used for quality assessment. These metrics are divided into two categories: syntactic and semantic. A literature review shows that syntactic ones are widely discussed and are generally used to measure software internal attributes like complexity. It also shows a lack of studies that focus on measuring external attributes like using internal ones. This chapter presents a thorough analysis of most quality measurement concepts. Moreover, it makes a comparative study of object-oriented syntactic metrics to identify their effectiveness for quality assessment and in which phase of the development process these metrics may be used. As reliability is an external attribute, it cannot be measured directly. In this chapter, the authors discuss how reliability can be measured using its correlation with syntactic metrics.


Computers ◽  
2020 ◽  
Vol 9 (2) ◽  
pp. 24 ◽  
Author(s):  
Henning Schnoor ◽  
Wilhelm Hasselbring

Coupling metrics that count the number of inter-module connections in a software system are an established way to measure internal software quality with respect to modularity. In addition to static metrics, which are obtained from the source or compiled code of a program, dynamic metrics use runtime data gathered, e.g., by monitoring a system in production. Dynamic metrics have been used to improve the accuracy of static metrics for object-oriented software. We study weighted dynamic coupling that takes into account how often a connection (e.g., a method call) is executed during a system’s run. We investigate the correlation between dynamic weighted metrics and their static counterparts. To compare the different metrics, we use data collected from four different experiments, each monitoring production use of a commercial software system over a period of four weeks. We observe an unexpected level of correlation between the static and the weighted dynamic case as well as revealing differences between class- and package-level analyses.


The article is dedicated to software quality improvement research within the maintenance phase based on post-object-oriented technologies. An important problem of the maintenance phase is surveyed, namely, the crosscutting functionality problem. Mechanisms of post-object-oriented technologies have been reviewed and basic tasks to be resolved have been formulated in order to reach the final goal of the research: defect reduction during the maintenance phase. The post object-oriented technologies utilization framework for software quality improvement based on a collection of 4 heuristic assumptions has been introduced. The conceptual scheme of the framework has been presented. An applied 2-steps procedure for defect reduction assessment based on quantitative crosscutting-functionality and defect metrics has been described. Twelve results of the experiments concerning calculation of the residual defect number have been presented and analyzed.


Author(s):  
Yann-Gaël Gueheneuc ◽  
Jean-Yves Guyomarc’h ◽  
Khashayar Khosravi ◽  
Hourari Sahraoui

Software quality models link internal attributes of programs with external quality characteristics. They help in understanding relationships among internal attributes and between internal attributes and quality characteristics. Object-oriented software quality models usually use metrics on classes (such as number of methods) or on relationships between classes (for example coupling) to measure internal attributes of programs. However, the quality of object-oriented programs does not depend on classes solely: it depends on the organisation of classes also. We propose an approach to build quality models using patterns to consider program architectures. We justify the use of patterns to build quality models, describe the advantages and limitations of such an approach, and introduce a first case study in building and in applying a quality model using design patterns on the JHotDraw, JUnit, and Lexi programs. We conclude on the advantages of using patterns to build software quality models and on the difficulty of doing so.


Sign in / Sign up

Export Citation Format

Share Document