Artifact or process guidance, an empirical study

CASE tools provide artifact guidance and process guidance to enhance model quality and reduce their development time. These two types of guidance seem complementary since artifact guidance supports defect detection after each iterative development step, while process guidance supports defect prevention during each such step. But can this intuition be empirically confirmed? We investigated this question by observing developers refactoring a UML model. This study attempted to assess how general were the observations made by Cass and Osterweil on the benefits of guidance to build such model from scratch. It turns out that they do not generalize well: while their experiment observed a benefit on quality and speed with process guidance (but none with artefact guidance), we, in contrast, observed a benefit on quality at the expense of speed with artefact guidance (but none with process guidance).

[1]  Alexander Egyed,et al.  Generating and Evaluating Choices for Fixing Inconsistencies in UML Design Models , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[2]  Leon J. Osterweil,et al.  Process support to help novices design software faster and better , 2005, ASE '05.

[3]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[4]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[5]  Tom Mens,et al.  Detecting model inconsistency through operation-based model construction , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[6]  Alexander Egyed,et al.  Fixing Inconsistencies in UML Design Models , 2007, 29th International Conference on Software Engineering (ICSE'07).

[7]  Gul A. Agha,et al.  Concurrent object-oriented programming , 1993, CACM.

[8]  Dietmar Pfahl,et al.  Making Globally Distributed Software Development a Success Story, International Conference on Software Process, ICSP 2008, Leipzig, Germany, May 10-11, 2008, Proceedings , 2008, ICSP.

[9]  Bashar Nuseibeh,et al.  Viewpoints: A Framework for Integrating Multiple Perspectives in System Development , 1992, Int. J. Softw. Eng. Knowl. Eng..

[10]  Alfonso Fuggetta,et al.  Software process: a roadmap , 2000, ICSE '00.

[11]  Dietmar Pfahl,et al.  Reflections on 10 Years of Software Process Simulation Modeling: A Systematic Review , 2008, ICSP.

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

[13]  Erik M. Buck,et al.  Cocoa Design Patterns , 2009 .

[14]  Alexander Egyed,et al.  Instant consistency checking for the UML , 2006, ICSE.

[15]  Marie-Pierre Gervais,et al.  UML4SPM: a UML2.0-Based metamodel for software process modelling , 2005, MoDELS'05.

[16]  Sébastien Gérard,et al.  Constraining Type Parameters of UML 2 Templates with Substitutable Classifiers , 2009, MoDELS.

[17]  Kevin Lano,et al.  Slicing of UML models using model transformations , 2010, MODELS'10.