Using Practitioners for Assessing the Understandability of UML Statechart Diagrams with Composite States

We have carried out a family of empirical studies to investigate whether the use of composite states improves the understandability of UML statechart diagrams. Our hypothesis derived from conventional wisdom, which says that hierarchical modeling mechanisms are helpful to master a system's complexity. We carried out three studies that have gradually evolved in the size of the UML statechart models, the type of subjects (students vs. professionals), the familiarity of the subjects with the domains of the diagrams, and other factors. In this work we briefly review the first and second studies and present the third one, performed with practitioners as experimental subjects. Surprisingly, our results do not seem to show that the use of composite states improves the understandability of UML statechart diagrams.

[1]  Jan Verelst,et al.  The Influence of the Level of Abstraction on the Evolvability of Conceptual Models of Information Systems , 2004, Proceedings. 2004 International Symposium on Empirical Software Engineering, 2004. ISESE '04..

[2]  Marcela Genero Metrics For Software Conceptual Models , 2005 .

[3]  Richard E. Mayer,et al.  Multimedia Learning , 2001, Visible Learning Guide to Student Achievement.

[4]  R. Mayer,et al.  Multimedia Learning: The Promise of Multimedia Learning , 2001 .

[5]  Jeffrey Parsons,et al.  How UML is used , 2006, CACM.

[6]  Colin Atkinson,et al.  Model-Driven Development: A Metamodeling Foundation , 2003, IEEE Softw..

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

[8]  Ian Sommerville,et al.  Software engineering (5th ed.) , 1995 .

[9]  Carolyn Seaman,et al.  Practical Software Maintenance , 2000, J. Softw. Maintenance Res. Pract..

[10]  Mario Piattini,et al.  METRICS FOR UML STATECHART DIAGRAMS , 2005 .

[11]  Amela Karahasanovic,et al.  A survey of controlled experiments in software engineering , 2005, IEEE Transactions on Software Engineering.

[12]  Narasimha Bolloju,et al.  Assisting novice analysts in developing quality conceptual models with UML , 2006, CACM.

[13]  Walter F. Tichy,et al.  Hints for Reviewing Empirical Work in Software Engineering , 2000, Empirical Software Engineering.

[14]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[15]  Shari Lawrence Pfleeger,et al.  Preliminary Guidelines for Empirical Research in Software Engineering , 2002, IEEE Trans. Software Eng..

[16]  José Javier Dolado,et al.  Evaluation of the comprehension of the dynamic modeling in UML , 2004, Inf. Softw. Technol..

[17]  Andrew Gemino,et al.  Evaluating modeling techniques based on models of learning , 2003, CACM.

[18]  Sol M. Shatz,et al.  Explicit modeling of semantics associated with composite states in UML statecharts , 2006, Automated Software Engineering.

[19]  Thomas M. Pigoski Practical Software Maintenance: Best Practices for Managing Your Software Investment , 1996 .

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

[21]  Marcus Ciolkowski,et al.  High quality statecharts through tailored, perspective-based inspections , 2003, 2003 Proceedings 29th Euromicro Conference.

[22]  Forrest Shull,et al.  Building Knowledge through Families of Experiments , 1999, IEEE Trans. Software Eng..

[23]  Ian Sommerville,et al.  Ingenieria Del Software , 2005 .

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