DocumentCode
3169825
Title
Reconsidering Classes in Procedural Object-Oriented Code
Author
Bhatti, M.U. ; Ducasse, Stéphane ; Huchard, Marianne
Author_Institution
CRI, Univ. Paris, Paris
fYear
2008
fDate
15-18 Oct. 2008
Firstpage
257
Lastpage
266
Abstract
Object-oriented software may show signs of procedural thinking because of lack of design or due to design erosion over a period of time. We refer to such a software as procedural object-oriented code. Huge classes, scarce class hierarchies and absence of classes for domain entities are hallmarks of procedural object-oriented code. Due to huge investments in such systems, software restructuring becomes necessary. To support code modularization, it is important to identify useful domain abstractions. In this paper, we present a tool-assisted technique to identify useful abstractions and class hierarchies in procedural object-oriented code. During this task, principal classes (draft classes) are identified. Afterwards, composition and association relationships are inferred for principal classes. Lastly, Formal Concept Analysis (FCA) is used to analyze hierarchical relationships between methods and attributes within principal classes. We validated our approach on several case studies and report our results on an industrial case.
Keywords
formal languages; object-oriented languages; software engineering; code modularization; formal concept analysis; object-oriented software; principal classes; procedural object-oriented code; sofiware restructuring; tool-assisted technique; Computer industry; Europe; Industrial relations; Investments; Java; Reverse engineering; Scattering; Software design; Software quality; Software systems; Object Identification; Reverse Engineering; Software Restructuring;
fLanguage
English
Publisher
ieee
Conference_Titel
Reverse Engineering, 2008. WCRE '08. 15th Working Conference on
Conference_Location
Antwerp
ISSN
1095-1350
Print_ISBN
978-0-7695-3429-9
Type
conf
DOI
10.1109/WCRE.2008.58
Filename
4656417
Link To Document