[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/872023.872561guideproceedingsArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
Article

Instantiating and Detecting Design Patterns: Putting Bits and Pieces Together

Published: 26 November 2001 Publication History

Abstract

Design patterns ease designing, understanding, andre-engineering software. Achieving a well-designedpiece of software requires a deep nderstanding and agood practice of design patterns. Understanding existing software relies on the ability to identify architectural forms resulting of the implementation of designpatterns. Maintaining software involves spotting placesthat can be improved by sing better design decisions,like those advocated by design patterns. Nevertheless,there is a lack of tools automatizing the use of designpatterns to achieve well-designed pieces of software, toidentify recurrent architectural forms, and to maintainsoftware. In this paper, we present a set of tools andtechniques to help OO software practitioners design,understand, and re-engineer a piece of software,sing design-patterns. A first prototype tool, PATTERNS-BOX, provides assistance in designing the architectureof a new piece of software, while a second prototypetool, PTIDEJ, identifies design patterns used in an existing one. These tools, in combination, support maintenance by highlighting defects in an existing design,and by suggesting and applying corrections based onwidely-accepted design patterns solutions.

References

[1]
G. Antoniol, R. Fiutem, and L. Cristoforetti. Design pattern recovery in object-oriented software. Proceedings of the 6th Workshop on Program Comprehension, pages 153-160, 1998.
[2]
K. Brown. Design reverse-engineering and automated design pattern detection in Smalltalk. Technical Report TR- 96-07, University of Illinois at Urbana-Champaign, 1996.
[3]
Y. Caseau and F. Laburthe. Claire: Combining objects and rules for problem solving. Proceedings of JICSLP, workshop on multi-paradigm logic programming, 1996.
[4]
O. Ciupke. Automatic detection of design problems in object-oriented reengineering. Proceeding of TOOLS, 30:18-32, 1999.
[5]
A. H. Eden. Precise Specification of Design Patterns and Tool Support in their Application. PhD thesis, Tel Aviv University, 2000.
[6]
G. Florijn: M. Meijers, and P. V. Winsen. Tool support for object-oriented patterns. Proceedings of ECOOP, 1997.
[7]
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994.
[8]
M. Greenwood. CFParse Distribution. IBM Alphaworks, September 2000.
[9]
Y.-G. Guéhéneuc and H. Albin-Amiot. Using design patterns and constraints to automate the detection and correction of inter-class design defects. Proceedings of TOOLS USA, 2001.
[10]
J. Jahnke and A. Zündorf. Rewriting poor design patterns by good design patterns. Proceedings the Workshop on Object-Oriented Reengineering at ESEC/FSE, September 1997.
[11]
N. Jussien and V. Barichard. The PaLM system: explanation-based constraint programming. In Proceedings of TRICS: Techniques foR Implementing Constraint programming Systems, a post-conference workshop of CP 2000, pages 118-133, Singapore, Sept. 2000.
[12]
F. Laburthe. CHOCO's API. Technical Report Version 0.13, OCRE Committee 2000.
[13]
O. Motelet. An intelligent tutoring system to help OO system designers using design patterns. Master's thesis, Vrije Universitët 1999.
[14]
B.-U. Pagel and M. Winter. Towards pattern-based tools. Proceedings of EuropLop, 1996.
[15]
L. Prechelt and C. Krämer. Functionality versus practicality: Employing existing tools for recovering structural design patterns. Journal of Universal Computer Science, 4(12):866-882, 1998.
[16]
P. Rapicault and M. Fornarino. Instanciation et vérification de patterns de conception : Un méta-protocole. Proceedings of LMO, in French, pages 43-58, 2000.
[17]
G. Sunyé, A. L. Guennec, and J.-M. Jézéquel. Design patterns application in UML. Proceedings of ECOOP, 2000.
[18]
M. Tatsubori. An extension mechanism for the Java language. Master's thesis, Graduate School of Engineering, University of Tsukuba, Ibaraki, Japan, 1999.
[19]
R. Wuyts. Declarative reasoning about the structure of object-oriented systems. Proceedings of TOOLS USA, pages 112-124, 1998.

Cited By

View all
  • (2016)Design pattern oriented development of model transformationsComputer Languages, Systems and Structures10.1016/j.cl.2016.07.00446:C(106-139)Online publication date: 1-Nov-2016
  • (2010)Sharing bad practices in design to improve the use of patternsProceedings of the 17th Conference on Pattern Languages of Programs10.1145/2493288.2493310(1-24)Online publication date: 16-Oct-2010
  • (2010)A survey of existing approaches for pattern search and selectionProceedings of the 15th European Conference on Pattern Languages of Programs10.1145/2328909.2328912(1-13)Online publication date: 7-Jul-2010
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
ASE '01: Proceedings of the 16th IEEE international conference on Automated software engineering
November 2001

Publisher

IEEE Computer Society

United States

Publication History

Published: 26 November 2001

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 24 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2016)Design pattern oriented development of model transformationsComputer Languages, Systems and Structures10.1016/j.cl.2016.07.00446:C(106-139)Online publication date: 1-Nov-2016
  • (2010)Sharing bad practices in design to improve the use of patternsProceedings of the 17th Conference on Pattern Languages of Programs10.1145/2493288.2493310(1-24)Online publication date: 16-Oct-2010
  • (2010)A survey of existing approaches for pattern search and selectionProceedings of the 15th European Conference on Pattern Languages of Programs10.1145/2328909.2328912(1-13)Online publication date: 7-Jul-2010
  • (2010)Formal specification of the variants and behavioural features of design patternsJournal of Systems and Software10.1016/j.jss.2009.09.03983:2(209-221)Online publication date: 1-Feb-2010
  • (2009)Can we refactor conditional compilation into aspects?Proceedings of the 8th ACM international conference on Aspect-oriented software development10.1145/1509239.1509274(243-254)Online publication date: 2-Mar-2009
  • (2008)A Rule-based Method to Match Software Patterns Against UML ModelsElectronic Notes in Theoretical Computer Science (ENTCS)10.1016/j.entcs.2008.10.034219(51-66)Online publication date: 1-Nov-2008
  • (2007)Experiments on Design Pattern DiscoveryProceedings of the Third International Workshop on Predictor Models in Software Engineering10.1109/PROMISE.2007.6Online publication date: 20-May-2007
  • (2004)A reverse engineering tool for precise class diagramsProceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research10.5555/1034914.1034917(28-41)Online publication date: 4-Oct-2004
  • (2004)Recovering binary class relationshipsACM SIGPLAN Notices10.1145/1035292.102900239:10(301-314)Online publication date: 1-Oct-2004
  • (2004)Recovering binary class relationshipsProceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications10.1145/1028976.1029002(301-314)Online publication date: 24-Oct-2004
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media