Towards a Formal Approach for Assessing the Design Quality of Object-Oriented Systems

2021 ◽  
Vol 12 (3) ◽  
pp. 1-16
Author(s):  
Mokhtaria Bouslama ◽  
Mustapha Kamel Abdi

The cost of software maintenance is always increasing. The companies are often confronted to failures and software errors. The quality of software to use is so required. In this paper, the authors propose a new formal approach for assessing the quality of object-oriented system design according to the quality assessment model. This approach consists in modeling the input software system by an automaton based on object-oriented design metrics and their relationship with the quality attributes. The model exhibits the importance of metrics through their links with the attributes of software quality. In addition, it is very practical and flexible for all changes. It allows the quality estimation and its validation. For the verification of proposed probabilistic model (automaton), they use the model-checking and the prism tool. The model-checking is very interesting for the evaluation and validation of the probabilistic automaton. They use it to approve the software quality of the three experimental projects. The obtained results are very interesting and of great importance.

2009 ◽  
pp. 2646-2664
Author(s):  
Juan José Olmedilla

The use of object-oriented (OO) architecture knowledge such as patterns, heuristics, principles, refactorings and bad smells improve the quality of designs, as Garzás and Piattini (2005) state in their study; according to it, the application of those elements impact on the quality of an OO design and can serve as basis to establish some kind of software design improvement (SDI) method. But how can we measure the level of improvement? Is there a set of accepted internal attributes to measure the quality of a design? Furthermore, if such a set exists will it be possible to use a measurement model to guide the SDI in the same way software processimprovement models (Humphrey, 1989; Paulk, Curtis, Chrissis, & Weber, 1993) are guided by process metrics (Fenton & Pfleeger, 1998)? Since (Chidamber & Kemerer, 1991) several OO metrics suites have been proposed to measure OO properties, such as encapsulation, cohesion, coupling and abstraction, both in designs and in code, in this chapter we review the literature to find out to which high level quality properties are mapped and if an OO design evaluation model has been formally proposed or even is possible.


Author(s):  
Ana Victoria Rodríguez ◽  
Cristian Mateos ◽  
Alejandro Zunino ◽  
Mathias Longo

Mobile devices are the most popular kind of computational device in the world. These devices have more limited resources than personal computers and battery consumption is always under user's eye since mobile devices rely on their battery as energy supply. On the other hand, nowadays most applications are developed using object-oriented paradigm, which has some inherent features, like object creation, that consume important amounts of energy in the context of mobile development. These features are responsible for offering maintainability and flexibility, among other software quality-related advantages. Then, this chapter aims to present an analysis to evaluate the trade-off between object-oriented design purity and battery consumption. As a result, developers can design mobile applications taking into account these two issues, giving priority to object design quality and/or energy efficiency as needed.


Author(s):  
JAVIER GARZÁS ◽  
MARIO PIATTINI

After years of experience in object-oriented design, software engineers have accumulated a great deal of knowledge in the design and construction of object-oriented systems: important contributions to this field including principles, heuristics, lessons learned, bad smells, refactorings, and so on, with the resultant major improvements in software development. However, this large body of knowledge is still not well organized, its terminology is ambiguous, and it is very difficult to make practical use of the contributions made. In this regard, we believe it is important to define an ontology in order to structure and unify design knowledge, since a good understanding of the experience derived from practical work is critical for software engineers. This ontology could be used to improve communication between software engineers, inter-operability among designs, design re-usability, design knowledge searching and specification, software maintenance, knowledge acquisition, etc. In the ontology we incorporate knowledge specific to both domain and technology. Such an organized body of knowledge could also be used for registering and documenting design rationale issues.


Author(s):  
Juan José Olmedilla

The use of object-oriented (OO) architecture knowledge such as patterns, heuristics, principles, refactorings and bad smells improve the quality of designs, as Garzás and Piattini (2005) state in their study; according to it, the application of those elements impact on the quality of an OO design and can serve as basis to establish some kind of software design improvement (SDI) method. But how can we measure the level of improvement? Is there a set of accepted internal attributes to measure the quality of a design? Furthermore, if such a set exists will it be possible to use a measurement model to guide the SDI in the same way software process improvement models (Humphrey, 1989; Paulk, Curtis, Chrissis, & Weber, 1993) are guided by process metrics (Fenton & Pfleeger, 1998)? Since (Chidamber & Kemerer, 1991) several OO metrics suites have been proposed to measure OO properties, such as encapsulation, cohesion, coupling and abstraction, both in designs and in code, in this chapter we review the literature to find out to which high level quality properties are mapped and if an OO design evaluation model has been formally proposed or even is possible.


Author(s):  
E. RAMARAJ ◽  
S. DURAISAMY

Design plays a key role in the development of software. The quality of design is crucial and is a fundamental decision element in assessing the software product. The early availability of design quality evaluation provides a better way to decide the quality of the final product. This avoids presumption in the quality evaluation process. Hence Software Metrics provide a valuable and objective insight of enhancing each of the software quality characteristics. This paper proposes a quality model to assess the design phase of any object-oriented system based on the works of Chidamber, Kemrer and Basili and suggests two new metrics. The research focuses on analyzing a set of metrics, which has direct influence on the quality of the software and creating a metrics tool based on Java that can be used to validate the object-oriented projects against these metrics. The analysis is carried out on a set of real world projects designed using Unified Modeling Language, which are used as test cases. These metrics and models are proposed to add more quality information in refining any object-oriented system during the early stages of design itself.


2014 ◽  
Vol 599-601 ◽  
pp. 530-533
Author(s):  
Hong Hao Wang ◽  
Hui Quan Wang ◽  
Zhong He Jin

Due to the complex timing sequence of NAND flash, a unified design process is urgently required to guarantee the reliability of storage system of nano-satellite. Unified Modeling Language (UML) is a widely used high level modeling language for object-oriented design. This paper adopts the UML as the design and modelling tool in the low level storage system design to elaborate the UML application in each phase of design in detail. The result shows taking UML as the modelling tool results in a clear and unambiguity design, which promotes the reliability and quality of software. At last, the feasibility of object-oriented implementation in C is presented.


Sign in / Sign up

Export Citation Format

Share Document