An Interactive Design Pattern Selection Method

Any inexperienced designer may not take advantage of design patterns due to their high level of abstraction, on the one hand, and their overwhelming number, on the other hand. In this paper, we propose a new approach that first retrieves and recommends a design pattern that is adequate to a designer's modeling context, it then helps them in its instantiation. Our approach learns past pattern reuse cases and it interacts with the designer through a questionnaire to ensure that the retrieved pattern corresponds to their needs and intentions. It uses the text mining technique Principal Component Analysis on past experiences of design pattern reuses; the choice of this technique was based on an experimental evaluation we conducted to determine the most adequate text representation and mining technique for our problem. In a final assistance step, after retrieving the most appropriate design pattern, our approach transforms the design situation at hand into the pattern constituting the solution.

[1]  Sarun Intakosum,et al.  Adaptation of Design Pattern Retrieval Using CBR and FCA , 2009, 2009 Fourth International Conference on Computer Sciences and Convergence Information Technology.

[2]  Yann-Gaël Guéhéneuc,et al.  Recommendation system for design patterns in software development: An DPR overview , 2012, 2012 Third International Workshop on Recommendation Systems for Software Engineering (RSSE).

[3]  Sarun Intakosum,et al.  Case-Based Reasoning for Design Patterns Searching System , 2013 .

[4]  H. Hotelling Analysis of a complex of statistical variables into principal components. , 1933 .

[5]  David Chenho Kung,et al.  An Expert System for Suggesting Design Patterns — A Methodology and a Prototype , 2003 .

[6]  Eva Blomqvist,et al.  Pattern ranking for semi-automatic ontology construction , 2008, SAC '08.

[7]  Nuno Seco,et al.  Using CBR for Automation of Software Design Patterns , 2002, ECCBR.

[8]  Jong-Yih Kuo,et al.  Object-oriented design: A goal-driven and pattern-based approach , 2007, Software & Systems Modeling.

[9]  Dae-Kyoo Kim,et al.  Evaluating pattern conformance of UML models: a divide-and-conquer approach and case studies , 2008, Software Quality Journal.

[10]  Yann-Gaël Guéhéneuc,et al.  A Simple Recommender System for Design Patterns , 2007 .

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

[12]  Alessio Malizia,et al.  Using Recommendations to Help Novices to Reuse Design Knowledge , 2011, IS-EUD.

[13]  Daniel J. Fonseca,et al.  An expert system for the selection of software design patterns , 2006, Expert Syst. J. Knowl. Eng..

[14]  Richard A. Harshman,et al.  Indexing by Latent Semantic Analysis , 1990, J. Am. Soc. Inf. Sci..

[15]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[16]  Dawn J Lawrie,et al.  Information Retrieval Applications in Software Maintenance and Evolution , 2010 .

[17]  Dae-Kyoo Kim,et al.  An approach to precisely specifying the problem domain of design patterns , 2007, J. Vis. Lang. Comput..

[18]  L. Beran,et al.  [Formal concept analysis]. , 1996, Casopis lekaru ceskych.

[19]  Stephen E. Robertson,et al.  Understanding inverse document frequency: on theoretical arguments for IDF , 2004, J. Documentation.

[20]  Saeed Jalili,et al.  Design patterns selection: An automatic two-phase method , 2012, J. Syst. Softw..

[21]  Andrés Gómez de Silva Garza,et al.  Case-Based Reasoning in Design , 1995, IEEE Expert.

[22]  S. S. Suresh,et al.  The Design Pattern Recommendation System ( Methodology , Data Model and Algorithms ) , .

[23]  Susan T. Dumais,et al.  LSI meets TREC: A Status Report , 1992, TREC.

[24]  R Core Team,et al.  R: A language and environment for statistical computing. , 2014 .

[25]  Nadia Bouassida,et al.  A design pattern recommendation approach , 2011, 2011 IEEE 2nd International Conference on Software Engineering and Service Science.

[26]  Vili Podgorelec,et al.  A question-based design pattern advisement approach , 2014, Comput. Sci. Inf. Syst..

[27]  Vili Podgorelec,et al.  Improving Design Pattern Adoption with An Ontology-Based Repository , 2009, Informatica.

[28]  SaltonGerard,et al.  Term-weighting approaches in automatic text retrieval , 1988 .

[29]  George A. Miller WordNet: A Lexical Database for English , 1992, HLT.

[30]  George A. Miller,et al.  WordNet: A Lexical Database for English , 1995, HLT.