A Generic Approach for Class Model Normalization

Designing and maintaining a huge class model is a very complex task. When an object oriented software or model grows, duplicated elements start to appear, decreasing the readability and the maintainability. In this paper, we present an approach, implemented in a tool and validated by a case study, that helps software architects designing and improving their class models, discarding redundancy and adding relevant abstractions. Since many different languages allow to express class models, this approach has been made generic i.e. capable of dealing with any language described by a meta-model.

[1]  Karl J. Lieberherr,et al.  From objects to classes: algorithms for optimal object-oriented design , 1991, Softw. Eng. J..

[2]  Gerd Stumme,et al.  Formal Concept Analysis: foundations and applications , 2005 .

[3]  Rokia Missaoui,et al.  Design of Class Hierarchies Based on Concept (Galois) Lattices , 1998, Theory Pract. Object Syst..

[4]  Jean Bézivin,et al.  Model Transformations in Practice Workshop , 2005, MoDELS.

[5]  Bernhard Ganter,et al.  Formal Concept Analysis: Mathematical Foundations , 1998 .

[6]  Petko Valtchev,et al.  Formal Concept Analysis-Based Class Hierarchy Design in Object-Oriented Software Development , 2005, Formal Concept Analysis.

[7]  Clémentine Nebut,et al.  Building abstractions in class models: formal concept analysis in a model-driven approach , 2006, MoDELS'06.

[8]  Stéphane Ducasse,et al.  Metrics, Do They Really Help? , 1999, LMO.

[9]  Don Batory,et al.  Automated Software Evolution via Design Pattern Transformations , 1995 .

[10]  Kadhim M. Breesam Metrics for Object-Oriented Design Focusing on Class Inheritance Metrics , 2007, 2nd International Conference on Dependability of Computer Systems (DepCoS-RELCOMEX '07).

[11]  Clémentine Nebut,et al.  A Model Driven Engineering approach for making generic FCA/RCA tools , 2007 .

[12]  Jean-Marc Jézéquel,et al.  Refactoring UML Models , 2001, UML.

[13]  Harry S. Delugach,et al.  Conceptual Structures at Work 12th International Conference on Conceptual Structures, Iccs 2004, Huntsville, Al, Usa, July 19-23, 2004, Proceedings , 2004 .

[14]  Stuart Kent,et al.  Model Driven Engineering , 2002, IFM.

[15]  Mark Lorenz,et al.  Object-oriented software metrics - a practical guide , 1994 .

[16]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[17]  Hervé Leblanc,et al.  A new approach to factorization - introducing metrics , 2002, Proceedings Eighth IEEE Symposium on Software Metrics.

[18]  Petko Valtchev,et al.  Galicia : an open platform for lattices , 2003 .

[19]  Marianne Huchard,et al.  Improving Generalization Level in UML Models Iterative Cross Generalization in Practice , 2004, ICCS.

[20]  Marianne Huchard,et al.  Relational concept discovery in structured datasets , 2007, Annals of Mathematics and Artificial Intelligence.

[21]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[22]  Marianne Huchard,et al.  Towards Practical Tools for Mining Abstractions in UML Models , 2006, ICEIS.