Skip to main content
Erschienen in: Empirical Software Engineering 5/2010

01.10.2010

An empirical study on the efficiency of different design pattern representations in UML class diagrams

verfasst von: Gerardo Cepeda Porras, Yann-Gaël Guéhéneuc

Erschienen in: Empirical Software Engineering | Ausgabe 5/2010

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Design patterns are recognized in the software engineering community as useful solutions to recurring design problems that improve the quality of programs. They are more and more used by developers in the design and implementation of their programs. Therefore, the visualization of the design patterns used in a program could be useful to efficiently understand how it works. Currently, a common representation to visualize design patterns is the UML collaboration notation. Previous work noticed some limitations in the UML representation and proposed new representations to tackle these limitations. However, none of these pieces of work conducted empirical studies to compare their new representations with the UML representation. We designed and conducted an empirical study to collect data on the performance of developers on basic tasks related to design pattern comprehension (i.e., identifying composition, role, participation) to evaluate the impact of three visual representations and to compare them with the UML one. We used eye-trackers to measure the developers’ effort during the execution of the study. Collected data and their analyses show that stereotype-enhanced UML diagrams are more efficient for identifying composition and role than the UML collaboration notation. The UML representation and the pattern-enhanced class diagrams are more efficient for locating the classes participating in a design pattern (i.e., identifying participation).

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Fußnoten
2
In the following, for the sake of simplicity, we use the last name of the first author of a notation to denote its representation.
 
Literatur
Zurück zum Zitat Ambler SW (2005) The elements of UML 2.0 style. Cambridge University Press, Cambridge Ambler SW (2005) The elements of UML 2.0 style. Cambridge University Press, Cambridge
Zurück zum Zitat Aversano L, Canfora G, Cerulo L, Del Grosso C, Di Penta M (2007) An empirical study on the evolution of design patterns. In: Proceedings of the the 6th European software engineering conference and symposium on the foundations of software engineering. ACM, New York, pp 385–394 Aversano L, Canfora G, Cerulo L, Del Grosso C, Di Penta M (2007) An empirical study on the evolution of design patterns. In: Proceedings of the the 6th European software engineering conference and symposium on the foundations of software engineering. ACM, New York, pp 385–394
Zurück zum Zitat Bednarik R, Tukiainen M (2006) An eye-tracking methodology for characterizing program comprehension processes. In: Proceedings of 5th symposium on eye tracking research & applications. ACM, New York, pp 125–132CrossRef Bednarik R, Tukiainen M (2006) An eye-tracking methodology for characterizing program comprehension processes. In: Proceedings of 5th symposium on eye tracking research & applications. ACM, New York, pp 125–132CrossRef
Zurück zum Zitat Bojko A (2005) Eye tracking in user experience testing: how to make the most of it. In: Proceedings of the 14th annual conference of the usability professionals association. Usability Professionals’ Association, Bloomingdale Bojko A (2005) Eye tracking in user experience testing: how to make the most of it. In: Proceedings of the 14th annual conference of the usability professionals association. Usability Professionals’ Association, Bloomingdale
Zurück zum Zitat Briand LC, Labiche Y, Di Penta M, Yan-Bondoc H (2005) An experimental investigation of formality in UML-based development. Trans Soft Eng 31(10):833–849CrossRef Briand LC, Labiche Y, Di Penta M, Yan-Bondoc H (2005) An experimental investigation of formality in UML-based development. Trans Soft Eng 31(10):833–849CrossRef
Zurück zum Zitat Chabris CF, Kosslyn SM (2005) Representational correspondence as a basic principle of diagram design. In: Knowledge and information visualization. Springer, New York, pp 36–57 Chabris CF, Kosslyn SM (2005) Representational correspondence as a basic principle of diagram design. In: Knowledge and information visualization. Springer, New York, pp 36–57
Zurück zum Zitat Dong J, Yang S, Zhang K (2005) Visdp: a web service for visualizing design patterns on demand. In: Proceedings of the 6th international conference on information technology: coding and computing. Dong J, Yang S, Zhang K (2005) Visdp: a web service for visualizing design patterns on demand. In: Proceedings of the 6th international conference on information technology: coding and computing.
Zurück zum Zitat Dong J, Yang S, Zhang K (2007) Visualizing design patterns in their applications and compositions. Trans Soft Eng 33(7):433–453CrossRef Dong J, Yang S, Zhang K (2007) Visualizing design patterns in their applications and compositions. Trans Soft Eng 33(7):433–453CrossRef
Zurück zum Zitat Duchowski AT (2003) Eye tracking methodology: theory and practice. Springer, New YorkMATH Duchowski AT (2003) Eye tracking methodology: theory and practice. Springer, New YorkMATH
Zurück zum Zitat Eden AH, Yehudai A, Gil J (1997) Precise specification and automatic application of design patterns. IEEE Computer Society, Piscataway, pp 143–152 Eden AH, Yehudai A, Gil J (1997) Precise specification and automatic application of design patterns. IEEE Computer Society, Piscataway, pp 143–152
Zurück zum Zitat Eichelberger H (2003) Nice class diagrams admit good design? In: Proceedings of the 1st symposium on software visualization. ACM, New York, pp 159–ffCrossRef Eichelberger H (2003) Nice class diagrams admit good design? In: Proceedings of the 1st symposium on software visualization. ACM, New York, pp 159–ffCrossRef
Zurück zum Zitat Eichelberger H, von Gudenberg JW (2003) Uml class diagrams—state of the art in layout techniques. In: Proceedings of the 1st SOFTVIS workshop on visualizing software for understanding and analysis. ACM, New York, pp 30–34 Eichelberger H, von Gudenberg JW (2003) Uml class diagrams—state of the art in layout techniques. In: Proceedings of the 1st SOFTVIS workshop on visualizing software for understanding and analysis. ACM, New York, pp 30–34
Zurück zum Zitat France RB, Kim D-K, Ghosh S, Song E (2004) A uml-based pattern specification technique. Trans Soft Eng 30(3):193–206CrossRef France RB, Kim D-K, Ghosh S, Song E (2004) A uml-based pattern specification technique. Trans Soft Eng 30(3):193–206CrossRef
Zurück zum Zitat Gamma E (1996) Applying design patterns in Java. Java Rep 1(6):47–53 Gamma E (1996) Applying design patterns in Java. Java Rep 1(6):47–53
Zurück zum Zitat Gamma E, Helm R, Johnson R, Vlissides J (1998) Design patterns—elements of reusable object-oriented software. Addison-Wesley, Reading Gamma E, Helm R, Johnson R, Vlissides J (1998) Design patterns—elements of reusable object-oriented software. Addison-Wesley, Reading
Zurück zum Zitat Goldberg JH, Kotval XP (1999) Computer interface evaluation using eye movements: methods and constructs. Int J Ind Ergon 24(6):631–645CrossRef Goldberg JH, Kotval XP (1999) Computer interface evaluation using eye movements: methods and constructs. Int J Ind Ergon 24(6):631–645CrossRef
Zurück zum Zitat Goldberg JH, Stimson MJ, Lewenstein M, Scott N, Wichansky AM (2002) Eye tracking in web search tasks: design implications. In: Proceedings of the 1st symposium on eye tracking research & applications. ACM, New York, pp 51–58CrossRef Goldberg JH, Stimson MJ, Lewenstein M, Scott N, Wichansky AM (2002) Eye tracking in web search tasks: design implications. In: Proceedings of the 1st symposium on eye tracking research & applications. ACM, New York, pp 51–58CrossRef
Zurück zum Zitat Guan Z, Lee S, Cuddihy E, Ramey J (2006) The validity of the stimulated retrospective think-aloud method as measured by eye tracking. In: Proceedings of the 12th conference on human factors in computing systems, pp 1253–1262 Guan Z, Lee S, Cuddihy E, Ramey J (2006) The validity of the stimulated retrospective think-aloud method as measured by eye tracking. In: Proceedings of the 12th conference on human factors in computing systems, pp 1253–1262
Zurück zum Zitat Guhneuc Y-G (2006) Taupe: towards understanding program comprehension. In: Proceedings of 16th IBM center for advanced studies conference. ACM, New York, pp 1–13 Guhneuc Y-G (2006) Taupe: towards understanding program comprehension. In: Proceedings of 16th IBM center for advanced studies conference. ACM, New York, pp 1–13
Zurück zum Zitat Hutchins E (1995) Distributed cognition. MIT, Cambridge Hutchins E (1995) Distributed cognition. MIT, Cambridge
Zurück zum Zitat Kazman R, Klein M, Barbacci M, Longstaff T, Lispon H, Carriere J (1998) The architecture tradeoff analysis method. In: Proceedings of the 4th international conference on engineering of complex computer systems. IEEE Computer Society, Piscataway, pp 68–78 Kazman R, Klein M, Barbacci M, Longstaff T, Lispon H, Carriere J (1998) The architecture tradeoff analysis method. In: Proceedings of the 4th international conference on engineering of complex computer systems. IEEE Computer Society, Piscataway, pp 68–78
Zurück zum Zitat Khomh F, Guéhéneuc Y-G (2008) Do design patterns impact software quality positively? In: Proceedings of the 12th conference on software maintenance and reengineering. IEEE Computer Society Press, Piscataway Khomh F, Guéhéneuc Y-G (2008) Do design patterns impact software quality positively? In: Proceedings of the 12th conference on software maintenance and reengineering. IEEE Computer Society Press, Piscataway
Zurück zum Zitat Lauder A, Kent S (1998) Precise visual specification of design patterns. In: Proceedings of the 12th European conference on object-oriented programming. Springer, New York, pp 114–134 Lauder A, Kent S (1998) Precise visual specification of design patterns. In: Proceedings of the 12th European conference on object-oriented programming. Springer, New York, pp 114–134
Zurück zum Zitat Mapelsden D, Hosking J, Grundy J (2002) Design pattern modelling and instantiation using dpml. In: Proceedings of the 14th international conference on tools. Australian Computer Society, Canberra, pp 3–11 Mapelsden D, Hosking J, Grundy J (2002) Design pattern modelling and instantiation using dpml. In: Proceedings of the 14th international conference on tools. Australian Computer Society, Canberra, pp 3–11
Zurück zum Zitat Moore P, Flitz C (1993) Gestalt theory and instructional design. J Tech Writ Commun 23(2):137–157 Moore P, Flitz C (1993) Gestalt theory and instructional design. J Tech Writ Commun 23(2):137–157
Zurück zum Zitat Purchase HC, Carrington DA, Allder J-A (2002) Empirical evaluation of aesthetics-based graph layout. Empir Soft Eng 7(3):233–255MATHCrossRefMathSciNet Purchase HC, Carrington DA, Allder J-A (2002) Empirical evaluation of aesthetics-based graph layout. Empir Soft Eng 7(3):233–255MATHCrossRefMathSciNet
Zurück zum Zitat Rayner K (1998) Eye movements in reading and information processing: 20 years of research. Psychol Bull 124(3):372–422CrossRef Rayner K (1998) Eye movements in reading and information processing: 20 years of research. Psychol Bull 124(3):372–422CrossRef
Zurück zum Zitat Rich C, Waters RC (1988) The programmer’s apprentice. Computer 21(11):10–25CrossRef Rich C, Waters RC (1988) The programmer’s apprentice. Computer 21(11):10–25CrossRef
Zurück zum Zitat Schauer R, Keller R (1998) Pattern visualization for software comprehension. In: Proceedings of the 6th international workshop on program comprehension. IEEE Computer Society, Piscataway, pp 4–12 Schauer R, Keller R (1998) Pattern visualization for software comprehension. In: Proceedings of the 6th international workshop on program comprehension. IEEE Computer Society, Piscataway, pp 4–12
Zurück zum Zitat Shalloway A, Trott JR (2002) Design patterns explained: a new perspective on object-oriented design. Addison-Wesley, Reading Shalloway A, Trott JR (2002) Design patterns explained: a new perspective on object-oriented design. Addison-Wesley, Reading
Zurück zum Zitat Soloway E, Pinto J, Letovsky S, Littman D, Lampert R (1988) Designing documentation to compensate for delocalized plans. Commununications 31(11):1259–1267 Soloway E, Pinto J, Letovsky S, Littman D, Lampert R (1988) Designing documentation to compensate for delocalized plans. Commununications 31(11):1259–1267
Zurück zum Zitat Sun D, Wong K (2005) On evaluating the layout of uml class diagrams for program comprehension. In: Proceedings of the 13th international workshop on program comprehension. IEEE Computer Society, Piscataway, pp 317–326 Sun D, Wong K (2005) On evaluating the layout of uml class diagrams for program comprehension. In: Proceedings of the 13th international workshop on program comprehension. IEEE Computer Society, Piscataway, pp 317–326
Zurück zum Zitat Trese T, Tilley S (2007) Documenting software systems with views V: towards visual documentation of design patterns as an aid to program understanding. In: Proceedings of the 25th international conference on design of communication. ACM, New York, pp 103–112 Trese T, Tilley S (2007) Documenting software systems with views V: towards visual documentation of design patterns as an aid to program understanding. In: Proceedings of the 25th international conference on design of communication. ACM, New York, pp 103–112
Zurück zum Zitat Vlissides J (1998) Notation, notation, notation. C+ + Report Vlissides J (1998) Notation, notation, notation. C+ + Report
Zurück zum Zitat von Mayrhauser A, Vans AM (1995) Program comprehension during software maintenance and evolution. IEEE Comput 28(8):44–55 von Mayrhauser A, Vans AM (1995) Program comprehension during software maintenance and evolution. IEEE Comput 28(8):44–55
Zurück zum Zitat Ware C (2005) Visual queries: the foundation of visual thinking. Springer, New York Ware C (2005) Visual queries: the foundation of visual thinking. Springer, New York
Zurück zum Zitat Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2000) Experimentation in software engineering: an introduction. Kluwer Academic, DordrechtMATH Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2000) Experimentation in software engineering: an introduction. Kluwer Academic, DordrechtMATH
Zurück zum Zitat Yusuf S, Kagdi H, Maletic JI (2007) Assessing the comprehension of uml class diagrams via eye tracking. In: Proceedings of the 15th international conference on program comprehension. IEEE Computer Society, Piscataway, pp 113–122CrossRef Yusuf S, Kagdi H, Maletic JI (2007) Assessing the comprehension of uml class diagrams via eye tracking. In: Proceedings of the 15th international conference on program comprehension. IEEE Computer Society, Piscataway, pp 113–122CrossRef
Metadaten
Titel
An empirical study on the efficiency of different design pattern representations in UML class diagrams
verfasst von
Gerardo Cepeda Porras
Yann-Gaël Guéhéneuc
Publikationsdatum
01.10.2010
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 5/2010
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-009-9125-9

Premium Partner