Evaluating the Usability of a Visual Feature Modeling Notation

  • Aleksandar Jakšić
  • Robert B. France
  • Philippe Collet
  • Sudipto Ghosh
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8706)

Abstract

Feature modeling is a popular Software Product Line Engineering (SPLE) technique used to describe variability in a product family. A usable feature modeling tool environment should enable SPLE practitioners to produce good quality models, in particular, models that effectively communicate modeled information. FAMILIAR is a text-based environment for manipulating and composing Feature Models (FMs). In this paper we present extensions we made to FAMILIAR to enhance its usability. The extensions include a visualization of FMs, or more precisely, a feature diagram rendering mechanism that supports the use of a combination of text and graphics to describe FMs, their configurations, and the results of FM analyses. We also present the results of a preliminary evaluation of the environment’s usability. The evaluation involves comparing the use of the extended environment with the previous text-based console-driven version. The preliminary experiment provides some evidence that use of the new environment results in increased cognitive effectiveness of novice users and improved quality of new FMs.

Keywords

FAMILIAR Tool FAMILIAR Software Product Lines Feature Modeling Software Visualization Model-Driven Development 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    ISO 9241-11: Ergonomic requirements for office work with visual display terminals (VDTs) - part 11: Guidance on usability. Tech. rep., International Organization for Standardization, Geneva (1998)Google Scholar
  2. 2.
    Acher, M.: Managing Multiple Feature Models: Foundations, Language and Applications. Ph.D. thesis (2011)Google Scholar
  3. 3.
    Acher, M., Collet, P., Lahire, P., France, R.: FAMILIAR: A Domain-Specific Language for Large Scale Management of Feature Models. Science of Computer Programming (SCP) Special Issue on Programming Languages, 55 (December 2012)Google Scholar
  4. 4.
    Acher, M., Collet, P., Lahire, P., France, R.: Familiar: A domain-specific language for large scale management of feature models. Science of Computer Programming (SCP) Special Issue on Programming Languages 78(6), 657–681 (2013)CrossRefGoogle Scholar
  5. 5.
    Asikainen, T., Männistö, T., Soininen, T.: Using a configurator for modelling and configuring software product lines based on feature models. In: Workshop on Software Variability Management for Product Derivation, Software Product Line Conference, SPLC3, pp. 24–35 (2004)Google Scholar
  6. 6.
    Bąk, K., Czarnecki, K., Wąsowski, A.: Feature and meta-models in clafer: Mixed, specialized, and coupled. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 102–122. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  7. 7.
    Batory, D.S.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Bevan, N.: Measuring usability as quality of use. Software Quality Journal 4(2), 115–130 (1995)CrossRefGoogle Scholar
  9. 9.
    Britton, C., Jones, S.: The untrained eye: how languages for software specification support understanding in untrained users. Human–Computer Interaction 14(1-2), 191–244 (1999)CrossRefGoogle Scholar
  10. 10.
    Cawley, C., Healy, P., Botterweck, G.: A discussion of three visualisation approaches to providing cognitive support in variability management (2010)Google Scholar
  11. 11.
    Classen, A., Boucher, Q., Heymans, P.: A text-based approach to feature modelling: Syntax and semantics of TVL. Science of Computer Programming, Special Issue on Software Evolution, Adaptability and Variability 76(12), 1130–1143 (2011)Google Scholar
  12. 12.
    Classen, A., Boucher, Q., Heymans, P.: A text-based approach to feature modelling: Syntax and semantics of {TVL}. Science of Computer Programming 76(12), 1130–1143 (2011), http://www.sciencedirect.com/science/article/pii/S0167642310001899, Special Issue on Software Evolution, Adaptability and Variability
  13. 13.
    Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley (2000)Google Scholar
  14. 14.
    Czarnecki, K., Wasowski, A.: Feature diagrams and logics: There and back again. In: SPLC 2007, pp. 23–34. IEEE (2007)Google Scholar
  15. 15.
    Deursen, A.V., Klint, P.: Domain-specific language design requires feature descriptions. Journal of Computing and Information Technology 10(1), 1–17 (2002)CrossRefMATHGoogle Scholar
  16. 16.
    FAMILIAR: FeAture Model scrIpt Language for manIpulation and Automatic Reasonning, http://familiar-project.github.io/
  17. 17.
    Ferber, S., Haag, J., Savolainen, J.: Feature Interaction and Dependencies: Modeling Features for Reengineering a Legacy Product Line, pp. 37–60 (2002), http://dx.doi.org/10.1007/3-540-45652-X_15
  18. 18.
    France, R., Rumpe, B.: Model-driven development of complex software: A research roadmap. In: 2007 Future of Software Engineering, FOSE 2007, pp. 37–54. IEEE Computer Society, Washington, DC (2007), http://dx.doi.org/10.1109/FOSE.2007.14 Google Scholar
  19. 19.
    Heer, J., Card, S.K., Landay, J.A.: Prefuse: a toolkit for interactive information visualization. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pp. 421–430. ACM (2005)Google Scholar
  20. 20.
    Heinz, M., Levin, J.R.: Knowledge acquisition from text and pictures. Elsevier (1989)Google Scholar
  21. 21.
    Hubaux, A., Boucher, Q., Hartmann, H., Michel, R., Heymans, P.: Evaluating a textual feature modelling language: Four industrial case studies. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 337–356. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  22. 22.
    Hubbard, D., Evans, D.: Problems with scoring methods and ordinal scales in risk assessment. IBM Journal of Research and Development 54(3), 2–10 (2010)CrossRefGoogle Scholar
  23. 23.
    Jakšić, A.: Familiar tool v1.0.5 (beta) - demo (2014), http://www.screencast.com/t/BdPgI8yF17Y/
  24. 24.
    Janota, M., Botterweck, G., Marques-Silva, J.: On lazy and eager interactive reconfiguration. In: Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems, VaMoS 2014, pp. 8:1–8:8. ACM, New York (2013), http://doi.acm.org/10.1145/2556624.2556644
  25. 25.
    Javier, F., Garcia, P., Laguna, M.A., Gonzalez-carvajal, Y.C., Gonzalez-baixauli, B.: Requirements variability support through mdd and graph transformationGoogle Scholar
  26. 26.
    Kang, K., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: Form: A feature-oriented reuse method with domain-specific reference architectures. Annals of Software Engineering 5(1), 143–168 (1998)CrossRefGoogle Scholar
  27. 27.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (foda) feasibility study. Tech. rep., DTIC Document (1990)Google Scholar
  28. 28.
    Larkin, J.H., Simon, H.A.: Why a diagram is (sometimes) worth ten thousand words. Cognitive Science 11(1), 65–100 (1987)CrossRefGoogle Scholar
  29. 29.
    Pleuss, A., Rabiser, R., Botterweck, G.: Visualization techniques for application in interactive product configuration. In: Proceedings of the 15th International Software Product Line Conferencepp, SPLC 2011, vol. 2, pp. 22:1–22:8. ACM, New York (2011), http://doi.acm.org/10.1145/2019136.2019161
  30. 30.
    Schneeweiss, D., Botterweck, G.: Using flow maps to visualize product attributes during feature configuration. In: SPLC Workshops, pp. 219–228 (2010)Google Scholar
  31. 31.
    Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003), http://dx.doi.org/10.1109/ms.2003.1231146 CrossRefGoogle Scholar
  32. 32.
    Sincero, J., Schröder-preikschat, W.: The linux kernel configurator as a feature modeling tool (2008)Google Scholar
  33. 33.
    van der Storm, T.: Variability and Component Composition. In: Dannenberg, R.B., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 157–166. Springer, Heidelberg (2004), http://www.springerlink.com.gate6.inist.fr/content/k3nlvkm5uqj425x3 Google Scholar
  34. 34.
    Thiel, S., Cawley, C., Botterweck, G.: Visualizing software variability. In: Capilla, R., Bosch, J., Kang, K.C. (eds.) Systems and Software Variability Management, pp. 101–118. Springer (2013)Google Scholar
  35. 35.
    Winn, W.: Learning from maps and diagrams. Educational Psychology Review 3(3), 211–247 (1991)CrossRefGoogle Scholar
  36. 36.
    Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in software engineering. Springer (2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Aleksandar Jakšić
    • 1
  • Robert B. France
    • 1
  • Philippe Collet
    • 2
  • Sudipto Ghosh
    • 1
  1. 1.Computer Science DepartmentColorado State UniversityFort CollinsUSA
  2. 2.I3S - CNRS UMR 7271Université Nice Sophia AntipolisFrance

Personalised recommendations