Title :
Quality-Centric Approach for Software Component Identification from Object-Oriented Code
Author :
Kebir, Selim ; Seriai, Abdelhak-Djamel ; Chardigny, Sylvain ; Chaoui, Allaoua
Author_Institution :
LIRMM, Univ. of Monpellier 2, Montpellier, France
Abstract :
Components and connectors are the main building blocks for software architectures. In the design phase of a software system, components can either be created from scratch or reused. When reused, they can either exist on component shelves or identified from existing software systems. Thus, software component identification is one of the primary challenges in component based software engineering. Typically, the identification is done by analyzing existing software artifacts. When considering object-oriented systems, many approaches have been proposed to deal with this issue by identifying a component as a high cohesive and loose coupled set of classes. However, this assumption leads to two main limitations: in one hand, the focus on simple metrics like high cohesion and loose coupling will not necessarily lead to the identification of good quality components. On the other hand, the identified components external structure (provided and required interfaces) is missing. As a result, the identified components can hardly be reused, composed, packaged and documented. To overcome these limitations, we propose in this paper an approach for identifying components based on a fitness function to measure the quality of a component. To evaluate this function, we use a semantic-correctness model defined in our previous works. Also, we propose to identify provided and required interfaces of components.
Keywords :
object-oriented programming; software architecture; software metrics; software quality; software reusability; building blocks; component based software engineering; component shelves; fitness function; good quality components; identified components external structure; object-oriented code; object-oriented systems; quality-centric approach; semantic-correctness model; simple metrics; software architectures; software component identification; software reuse; software system; Clustering algorithms; Couplings; Object oriented modeling; Shape; Shape measurement; Software; Software component; legacy systems; object oriented; quality; re-engineering; reuse; reverse engineering;
Conference_Titel :
Software Architecture (WICSA) and European Conference on Software Architecture (ECSA), 2012 Joint Working IEEE/IFIP Conference on
Conference_Location :
Helsinki
Print_ISBN :
978-1-4673-2809-8
DOI :
10.1109/WICSA-ECSA.212.26