Title :
Using design patterns and constraints to automate the detection and correction of inter-class design defects
Author :
Gueheneuc, Yann-Gaël ; Albin-Amiot, Hervé
Author_Institution :
Ecole des Mines, Nantes, France
Abstract :
Developing code free of defects is a major concern for the object oriented software community. The authors classify design defects as those within classes (intra-class), those among classes (inter-classes), and those of semantic nature (behavioral). Then, we introduce guidelines to automate the detection and correction of inter-class design defects. We assume that design patterns embody good architectural solutions and that a group of entities with organization similar, but not equal, to a design pattern represents an inter-class design defect. Thus, the transformation of such a group of entities, such that its organization complies exactly with a design pattern, corresponds to the correction of an inter-class design defect. We use a meta-model to describe design patterns and we exploit the descriptions to infer sets of detection and transformation rules. A constraint solver with explanations uses the descriptions and rules to recognize groups of entities with organizations similar to the described design patterns. A transformation engine modifies the source code to comply with the recognized distorted design patterns. We apply these guidelines on the Composite pattern using PTIDEJ, our prototype tool that integrates the complete guidelines
Keywords :
automatic programming; object-oriented programming; software reliability; software reusability; Composite pattern; OO design; PTIDEJ; architectural solutions; constraint solver; design patterns; distorted design patterns; inter-class design defect detection automation; inter-class design defects; meta-model; object oriented software community; prototype tool; semantic nature; source code; transformation engine; transformation rules; Application software; Documentation; Maintenance engineering; Prototypes; Software design; Software maintenance; Software prototyping; Software quality; Software tools; Visualization;
Conference_Titel :
Technology of Object-Oriented Languages and Systems, 2001. TOOLS 39. 39th International Conference and Exhibition on
Conference_Location :
Santa Barbara, CA
Print_ISBN :
0-7695-1251-8
DOI :
10.1109/TOOLS.2001.941682