Un cadre pour la tra�abilit� des motifs de conception. Gu�h�neuc, Y. Ph.D. Thesis, �cole des Mines de Nantes et Universit� de Nantes, juin, 2003. 350 pages.
Un cadre pour la tra�abilit� des motifs de conception [link]Paper  abstract   bibtex   
Les patrons de conception sont importants en génie logiciel à objets car ils contribuent à la qualité des programmes. Ils proposent des solutions élégantes à des problèmes récurrents de conception, des motifs utilisés pendant l'implan­tation. À l'usage, ces motifs de conception sont disséminés dans le code source et ne sont plus explicites lors de la maintenance ; pourtant, ils aideraient à comprendre l'implantation et la conception des programmes, assurant leur qualité. Ce mémoire propose des modèles et des algorithmes pour garantir la tra ̧cabilité des motifs de conception entre les phases d'implantation et de rétroconception des programmes par l'identification semi-automatique des micro-architectures similaires à ces motifs dans le code source. La métamodélisation est utilisée pour décrire les motifs de conception et les programmes Java. Elle amène à expliciter certaines relations interclasses (association, agré­gation et composition) offertes par les langages de conception comme UML et à préciser leurs propriétés (durée de vie, exclusivité, multiplicité et site d'invocation) pour les identifier avec des algorithmes d'analyses statiques et dynamiques. Elle conduit aussi à traduire les motifs en systèmes de contraintes et à identifier les micro-architectures similaires, formes complètes et approchées, par la résolution de problèmes de satisfaction de contraintes. La programmation par contraintes avec explications permet de guider la résolution et d'expliquer les micro-architectures identifiées. La suite d'outils Ptidej est une implantation des modèles et des algorithmes proposés. Elle est intégrée à l'environnement \Eclipse de développement en Java. Elle inclut le métamodèle PADL, dérivé du métamodèle ¶DL ; des outils d'analyses statiques et dynamiques, \Introspector et Caffeine ; et un solveur de contraintes, PtidejSolver, dérivé du solveur de contraintes avec explications de référence ¶aLM.
@PHDTHESIS{Gueheneuc03-PhD,
   AUTHOR       = {Yann-Ga�l Gu�h�neuc},
   SCHOOL       = {�cole des Mines de Nantes et Universit� de Nantes},
   TITLE        = {Un cadre pour la tra�abilit� des motifs de conception},
   YEAR         = {2003},
   OPTADDRESS   = {},
   MONTH        = {juin},
   NOTE         = {350 pages.},
   OPTTYPE      = {},
   KEYWORDS     = {Topic: <b>Design patterns</b>, 
      Topic: <b>Binary class relations</b>},
   URL          = {http://www.yann-gael.gueheneuc.net/Work/PhDThesis/},
   ABSTRACT     = {Les patrons de conception sont importants en g{\'e}nie 
      logiciel \`a objets car ils contribuent \`a la qualit{\'e} des 
      programmes. Ils proposent des solutions {\'e}l{\'e}gantes \`a des 
      probl{\`e}mes r{\'e}currents de conception, des motifs utilis{\'e}s 
      pendant l'implan\-tation. \`A~l'usage, ces motifs de conception sont 
      diss{\'e}min{\'e}s dans le code source et ne sont plus explicites 
      lors de la maintenance~; pourtant, ils aideraient \`a comprendre 
      l'implantation et la conception des programmes, assurant leur 
      qualit{\'e}. Ce m{\'e}moire propose des mod{\`e}les et des 
      algorithmes pour garantir la tra\c cabilit{\'e} des motifs de 
      conception entre les phases d'implantation et de r{\'e}troconception 
      des programmes par l'identification semi-automatique des 
      micro-architectures similaires \`a ces motifs dans le code source. La 
      m{\'e}tamod{\'e}lisation est utilis{\'e}e pour d{\'e}crire les motifs 
      de conception et les programmes Java{}. Elle am{\`e}ne \`a expliciter 
      certaines relations interclasses (association, agr{\'e}\-gation et 
      composition) offertes par les langages de conception comme UML{} et 
      \`a pr{\'e}ciser leurs propri{\'e}t{\'e}s (dur{\'e}e de vie, 
      exclusivit{\'e}, multiplicit{\'e} et site d'invocation) pour les 
      identifier avec des algorithmes d'analyses statiques et dynamiques. 
      Elle conduit aussi \`a traduire les motifs en syst{\`e}mes de 
      contraintes et \`a identifier les micro-architectures similaires, 
      formes compl{\`e}tes et approch{\'e}es, par la r{\'e}solution de 
      probl{\`e}mes de satisfaction de contraintes. La programmation par 
      contraintes avec explications permet de guider la r{\'e}solution et 
      d'expliquer les micro-architectures identifi{\'e}es. La suite 
      d'outils Ptidej{} est une implantation des mod{\`e}les et des 
      algorithmes propos{\'e}s. Elle est int{\'e}gr{\'e}e \`a 
      l'environnement \Eclipse{} de d{\'e}veloppement en Java{}. Elle 
      inclut le m{\'e}tamod{\`e}le PADL{}, d{\'e}riv{\'e} du 
      m{\'e}tamod{\`e}le \PDL{}~; des outils d'analyses statiques et 
      dynamiques, \Introspector{} et Caffeine{}~; et un solveur de 
      contraintes, PtidejSolver{}, d{\'e}riv{\'e} du solveur de contraintes 
      avec explications de r{\'e}f{\'e}rence \PaLM{}.}
}

Downloads: 0