Comprehensibility of orthogonal variability modeling languages: the cases of CVL and OVM

As the complexity and variety of systems and software products have increased, the ability to manage their variability effectively and efficiently became crucial. To this end, variability can be specified either as an integral part of the development artifacts or in a separate orthogonal variability model. Lately, orthogonal variability models attract a lot of attention due to the fact that they do not require changing the complexity of the development artifacts and can be used in conjunction with different development artifacts. Despite this attention and to the best of our knowledge, no empirical study examined the comprehensibility of orthogonal variability models. In this work, we conducted an exploratory experiment to examine potential comprehension problems in two common orthogonal variability modeling languages, namely, Common Variability Language (CVL) and Orthogonal Variability Model (OVM). We examined the comprehensibility of the variability models and their relations to the development artifacts for novice users. To measure comprehensibility we used comprehension score (i.e., percentage of correct solution), time spent to complete tasks, and participants' perception of difficulty of different model constructs. The results showed high comprehensibility of the variability models, but low comprehensibility of the relations between the variability models and the development artifacts. Although the comprehensibility of CVL and OVM was similar in terms of comprehension score and time spent to complete tasks, novice users perceived OVM as more difficult to comprehend.

[1]  Jan Recker,et al.  Continued use of process modeling grammars: the impact of individual difference factors , 2010, Eur. J. Inf. Syst..

[2]  Claes Wohlin,et al.  Using students as subjects - an empirical evaluation , 2008, ESEM '08.

[3]  Jeffrey Parsons,et al.  What do the pictures mean? Guidelines for experimental evaluation of representation fidelity in diagrammatical conceptual modeling techniques , 2005, Data Knowl. Eng..

[4]  Kerstin Mueller,et al.  Software Product Line Engineering Foundations Principles And Techniques , 2016 .

[5]  M. Wertheimer Laws of organization in perceptual forms. , 1938 .

[6]  K. Czarnecki,et al.  Cardinality-Based Feature Modeling and Constraints : A Progress Report , 2005 .

[7]  Hassan Gomaa Designing Software Product Lines with UML 2.0: From Use Cases to Pattern-Based Software Architectures , 2006, ICSR.

[8]  Mark Strembeck,et al.  The Influence of Notational Deficiencies on Process Model Comprehension , 2013, J. Assoc. Inf. Syst..

[9]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[10]  Keng Siau,et al.  Identifying Difficulties in Learning Uml , 2006, Inf. Syst. Manag..

[11]  Marco Sinnema,et al.  Classifying variability modeling techniques , 2007, Inf. Softw. Technol..

[12]  Nimal Jayaratna,et al.  Understanding and Evaluating Methodologies: NIMSAD, a Systematic Framework , 1994 .

[13]  R. Hyman Quasi-Experimentation: Design and Analysis Issues for Field Settings (Book) , 1982 .

[14]  Jinwoo Kim,et al.  How Do We Understand a System with (So) Many Diagrams? Cognitive Integration Processes in Diagrammatic Reasoning , 2000, Inf. Syst. Res..

[15]  Daniel Moody,et al.  What Makes a Good Diagram? Improving the Cognitive Effectiveness of Diagrams in IS Development , 2006 .

[16]  W. Shadish,et al.  Experimental and Quasi-Experimental Designs for Generalized Causal Inference , 2001 .

[17]  Krzysztof Czarnecki,et al.  Cool features and tough decisions: a comparison of variability modeling approaches , 2012, VaMoS.

[18]  Iris Reinhartz-Berger,et al.  Utilizing domain models for application design and validation , 2009, Inf. Softw. Technol..

[19]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[20]  T. Cook,et al.  Quasi-experimentation: Design & analysis issues for field settings , 1979 .

[21]  Ralf Laue,et al.  Cognitive Complexity in Business Process Modeling , 2011, CAiSE.

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

[23]  Tanja Hueber,et al.  Designing Software Product Lines With Uml From Use Cases To Pattern Based Software Architectures , 2016 .

[24]  John Sweller,et al.  Cognitive Load During Problem Solving: Effects on Learning , 1988, Cogn. Sci..

[25]  Pierre-Yves Schobbens,et al.  Feature Diagrams: A Survey and a Formal Semantics , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[26]  Iris Reinhartz-Berger,et al.  Specification and Utilization of Core Assets: Feature-Oriented vs. UML-Based Methods , 2011, ER Workshops.

[27]  Jean-Marc Jézéquel,et al.  Software Product Line Engineering with the UML: Deriving Products , 2006, Software Product Lines.

[28]  John Krogstie,et al.  Process models representing knowledge for action: a revised quality framework , 2006, Eur. J. Inf. Syst..

[29]  Michael Derntl,et al.  The Impact of Perceived Cognitive Effectiveness on Perceived Usefulness of Visual Conceptual Modeling Languages , 2011, ER.

[30]  Pierre-Yves Schobbens,et al.  Evaluating formal properties of feature diagram languages , 2008, IET Softw..

[31]  Lidia Fuentes,et al.  Relating Feature Models to Other Models of a Software Product Line - A Comparative Study of FeatureMapper and VML* , 2010, LNCS Trans. Aspect Oriented Softw. Dev..

[32]  Birger Møller-Pedersen,et al.  Comparison of System Family Modeling Approaches , 2005, SPLC.

[33]  Mari Matinlassi,et al.  Comparison of software product line architecture design methods: COPA, FAST, FORM, KobrA and QADA , 2004, Proceedings. 26th International Conference on Software Engineering.

[34]  Iris Reinhartz-Berger,et al.  Experimenting with the Comprehension of Feature-Oriented and UML-Based Core Assets , 2011, BMMDS/EMMSAD.

[35]  Jacques Klein,et al.  A Metamodel-based Classification of Variability Modeling Approaches , 2011 .

[36]  Camille Salinesi,et al.  Criteria for Comparing Requirements Variability Modeling Notations for Product Lines , 2006, Fourth International Workshop on Comparative Evaluation in Requirements Engineering (CERE'06 - RE'06 Workshop).

[37]  Bernhard Rumpe,et al.  Meaningful modeling: what's the semantics of "semantics"? , 2004, Computer.

[38]  Jan Mendling,et al.  Assessing the Impact of Hierarchy on Model - A Cognitive Perspective , 2011, EESSMod.