Discovering Unanticipated Dependency Schemas in Class Hierarchies

Abstract : Object-oriented applications are difficult to extend and maintain, due to the presence of implicit dependencies in the inheritance hierarchy. Although these dependencies of- ten correspond to well-known schemas, such as hook and template methods, new unanticipated dependency schemas occur in practice, and can consequently be hard to recognize and detect. To tackle this problem, we have applied Concept Analysis to automatically detect recurring dependency schemas in class hierarchies used in object-oriented applications. In this paper we describe our mapping of OO dependencies to the formal framework of Concept Analysis, we apply our approach to a non-trivial case study, and we report on the kinds of dependencies that are uncovered with this technique. As a result, we show how the discovered dependency schemas correspond not only to good design practices, but also to "bad smells" in design.
Complete list of metadatas

Cited literature [14 references]  Display  Hide  Download

https://hal.inria.fr/inria-00533057
Contributor : Lse Lse <>
Submitted on : Friday, November 5, 2010 - 9:25:30 AM
Last modification on : Friday, November 5, 2010 - 4:08:44 PM
Long-term archiving on : Sunday, February 6, 2011 - 2:36:47 AM

File

Arev05b-CSMR05ClassHierarchies...
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00533057, version 1

Citation

Gabriela Arévalo, Stéphane Ducasse, Oscar Nierstrasz. Discovering Unanticipated Dependency Schemas in Class Hierarchies. 9th European Conference on Software Maintenance and Reengineering (CSMR'05), Mar 2005, Manchester, United Kingdom. ⟨inria-00533057⟩

Share

Metrics

Record views

71

Files downloads

131