Comprehensibility of UML-based Software Product Line Specifications
Arnon Sturm, Arnon Sturm, Department of Information Systems Engineering, Ben-Gurion University of the Negev
Thursday December 5th, 4pm-5:30pm,
Tentative: Technology Enhanced Learning 3062 (TEL3062)
Software Product Line Engineering (SPLE) deals with developing artifacts that capture the common and variable aspects of software product families. Domain models are one kind of such artifacts. Being developed in early stages, domain models need to specify commonality and variability and guide the reuse of the artifacts in particular software products. Although different modeling methods have been proposed to manage and support these activities, the assessment of these methods is still in an inceptive stage. In this work, we examined the comprehensibility of domain models specified in ADOM, a UML-based SPLE method. In particular, we conducted a controlled experiment in which 116 undergraduate students were required to answer comprehension questions regarding a domain model that was equipped with explicit reuse guidance and/or variability specification. We found that explicit specification of reuse guidance within the domain model helped understand the model, whereas explicit specification of variability increased
comprehensibility only to a limited extent. Explicit specification of both reuse guidance and variability often provided intermediate results, namely, results that were better than specification of variability without reuse guidance, but worse than specification of reuse guidance without variability. All these results were perceived in different UML diagram types, namely, use case, class, and sequence diagrams and for different commonality-, variability-, and reuse-related aspects.This is a joined work with Iris Reinhartz-Berger.
Short bio: Arnon Sturm is currently a visiting Professor within the University of Toronto. He is a faculty member at Ben-Gurion University. He received his PhD in Information Management Engineering from the Technion, Israel Institute of Technology. His research interests include modeling, domain engineering, agent-oriented software engineering, systems development processes, knowledge management, and business process management. Prior to his studies, He gained extensive experience in developing software
systems in industry.