How Developers' Experience and Ability Influence Web Application Comprehension Tasks Supported by UML Stereotypes: A Series of Four Experiments

In recent years, several design notations have been proposed to model domain-specific applications or reference architectures. In particular, Conallen has proposed the UML Web Application Extension (WAE): a UML extension to model Web applications. The aim of our empirical investigation is to test whether the usage of the Conallen notation supports comprehension and maintenance activities with significant benefits, and whether such benefits depend on developers ability and experience. This paper reports and discusses the results of a series of four experiments performed in different locations and with subjects possessing different experience-namely, undergraduate students, graduate students, and research associates-and different ability levels. The experiments aim at comparing performances of subjects in comprehension tasks where they have the source code complemented either by standard UML diagrams or by diagrams stereotyped using the Conallen notation. Results indicate that, although, in general, it is not possible to observe any significant benefit associated with the usage of stereotyped diagrams, the availability of stereotypes reduces the gap between subjects with low skill or experience and highly skilled or experienced subjects. Results suggest that organizations employing developers with low experience can achieve a significant performance improvement by adopting stereotyped UML diagrams for Web applications.

[1]  Mario Piattini,et al.  Evaluating the effect of composite states on the understandability of UML statechart diagrams , 2005, MoDELS'05.

[2]  L. R. Rasmussen,et al.  In information retrieval: data structures and algorithms , 1992 .

[3]  Claes Wohlin,et al.  Experimentation in software engineering: an introduction , 2000 .

[4]  David A. Carrington,et al.  UML Class Diagram Syntax: An Empirical Study of Comprehension , 2001, InVis.au.

[5]  Olga De Troyer,et al.  WSDM: A User Centered Design Method for Web Sites , 1998, Comput. Networks.

[6]  Jeffrey C. Carver,et al.  Issues in using students in empirical studies in software engineering education , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[7]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[8]  Gregg Rothermel,et al.  How well do professional developers test with code coverage visualizations? An empirical study , 2005, 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05).

[9]  Marco Torchiano,et al.  The Role of Experience and Ability in Comprehension Tasks Supported by UML Stereotypes , 2007, 29th International Conference on Software Engineering (ICSE'07).

[10]  Jim Conallen,et al.  Building Web applications with UML , 1999 .

[11]  Jim Conallen,et al.  Modeling Web application architectures with UML , 1999, CACM.

[12]  Massimiliano Di Penta,et al.  An experimental investigation of formality in UML-based development , 2005, IEEE Transactions on Software Engineering.

[13]  T. Dean Hendrix,et al.  Control structure diagrams for Ada 95 , 1996, TRI-Ada '96.

[14]  Maliha S. Nash,et al.  Handbook of Parametric and Nonparametric Statistical Procedures , 2001, Technometrics.

[15]  Stefano Ceri,et al.  Designing Data-Intensive Web Applications , 2002 .

[16]  Miroslaw Staron,et al.  Empirical assessment of using stereotypes to improve comprehension of UML models: A set of experiments , 2006, J. Syst. Softw..

[17]  Marco Torchiano Empirical assessment of UML static object diagrams , 2004, Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004..

[18]  Per Runeson,et al.  Using Students as Experiment Subjects – An Analysis on Graduate and Freshmen Student Data , 2003 .

[19]  Shihong Huang,et al.  A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding , 2003, SIGDOC '03.

[20]  Siw Elisabeth Hove,et al.  The impact of UML documentation on software maintenance: an experimental evaluation , 2006, IEEE Transactions on Software Engineering.

[21]  Marco Torchiano,et al.  Software Development - Case Studies in Java , 2005 .

[22]  Natalia Juristo Juzgado,et al.  Basics of Software Engineering Experimentation , 2010, Springer US.

[23]  Miroslaw Staron,et al.  An empirical study on using stereotypes to improve understanding of UML models , 2004, Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004..

[24]  Claes Wohlin,et al.  Is it Possible to Decorate Graphical Software Design and Architecture Models with Qualitative Information?-An Experiment , 2002, IEEE Trans. Software Eng..

[25]  José Javier Dolado,et al.  An Initial Experimental Assessment of the Dynamic Modelling in UML , 2004, Empirical Software Engineering.

[26]  T. Dean Hendrix,et al.  The Effectiveness of Control Structure Diagrams in Source Code Comprehension Activities , 2002, IEEE Trans. Software Eng..

[27]  Mario Piattini,et al.  Confirming the influence of educational background in pair-design knowledge through experiments , 2005, SAC '05.

[28]  Peter M. Chisnall,et al.  Questionnaire Design, Interviewing and Attitude Measurement , 1993 .

[29]  Giuseppe A. Di Lucca,et al.  Reverse engineering Web applications: the WARE approach , 2004, J. Softw. Maintenance Res. Pract..

[30]  David A. Carrington,et al.  UML collaboration diagram syntax: an empirical study of comprehension , 2002, Proceedings First International Workshop on Visualizing Software for Understanding and Analysis.

[31]  A. Agresti An introduction to categorical data analysis , 1997 .

[32]  Brian Henderson-Sellers,et al.  Open Modeling Language (OML)-Refer-ence Manual , 1998 .

[33]  Nora Koch,et al.  A UML-based Methodology for Hypermedia Design , 2000, UML.