Software Product Lines (SPL) are systematic approach to develop
families of similar software products by explicating
their commonalities and variability, e.g., in a feature model.
Using techniques from model-driven development, it is then
possible to automatically derive a concrete product from a
given configuration (i.e., selection of features). However, this
is problematic for interactive applications with complex user
interfaces (UIs) as automatically derived UIs often provide
limited usability. Thus, in practice, the UI is mostly created
manually for each product, which results in major drawbacks
concerning efficiency and maintenance, e.g., when applying
changes that affect the whole product family. This paper investigates
these problems based on real-world examples and
analyses the development of product families from a UI perspective.
To address the underlying challenges, we propose
the use of abstract UI models, as used in HCI, to bridge the
gap between automated, traceable product derivation and customized,
high quality user interfaces. We demonstrate the
feasibility of the approach by a concrete example implementation
for the suggested model-driven development process.
History
Publication
Proceedings of the 4th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2012);pp. 25-34