Skip to main content
Log in

Goal-oriented modeling and verification of feature-oriented product lines

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Goal models represent requirements and intentions of a software system. They play an important role in the development life cycle of software product lines (SPLs). In the domain engineering phase, goal models guide the development of variability in SPLs by providing the rationale for the variability, while they are used for the configuration of SPLs in the application engineering phase. However, variability in SPLs, which is represented by feature models, usually has design and implementation-induced constraints. When those constraints are not aligned with variability in goal models, the configuration with goal models becomes error prone. To remedy this problem, we propose a description logic (DL)-based approach to represent both models and their relations in a common DL knowledge base. Moreover, we apply reasoning to detect inconsistencies in the variability of goal and feature models. A formal proof is provided to demonstrate the correctness of the reasoning approach. An empirical evaluation shows computational tractability of the inconsistency detection.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. In this paper, we are interested in validation of intentions in family goal models, typically achieved within one actor. Therefore, we do not consider different actors and dependencies among them.

  2. Some non-functional requirements, like security, can have a clear-cut criteria and also can be achieved with different operationalizations. The GRL standard does not specify how to model these situations. Nevertheless, the standard allows the specification of decompositions on soft goals.

  3. Tasks are considered to be requirements if they are assigned to the system-to-be and to be assumptions if they are assigned to the environment.

  4. The stakeholders include final users, managers, designers, clients, etc. However, in the rest of the paper, we only concentrate the final users and representation of their intentions in goal models.

  5. In this paper, description logic (DL) is used to formalize the constraints of interests in models of interests and enable validation services. We could have used some other formalism, but we opted for DL as it is precise and expressive enough to serve our purpose—formalize constraints that need to hold between our models of interest. Comparison of different reasoning formalisms for the particular task under study is beyond the scope the paper and deserves a new paper on its own.

  6. Please note that \(\otimes \) is not a standard operator in DL. For a more concise representation, we use \(\bigotimes _{G^\prime \in \{G_1, \ldots , G_n\}} \exists requires . G^\prime \) as an abbreviation for \(\bigsqcup _{G^\prime \in \{G_1, \ldots , G_n\}} \exists requires. G^\prime \) \(\sqcap \lnot (\bigsqcup _{G^{\prime \prime }, G^{\prime \prime \prime } \in \{G_1, \ldots , G_n\} }\) \((\exists requires. G^{\prime \prime } \sqcap \exists requires. G^{\prime \prime \prime }))\).

  7. Software Product Lines Online Tools—http://www.splot-research.org/.

References

  1. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Berlin (2005)

    Book  Google Scholar 

  2. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Sofware Engineerin Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, Technical Report CMU/SEI-90-TR-021. http://resources.seicmu.edu/library/asset-view.cfm?AssetID=11231 (1990)

  3. Batory, D., Benavides, D., Ruiz-Cortes, A.: Automated analysis of feature models: challenges ahead. Commun. ACM 49, 45–47 (2006)

    Article  Google Scholar 

  4. Clarke, D., Proença, J.: Towards a theory of views for feature models. In: SPLC Workshops, pp. 91–98 (2010)

  5. Acher, M., Collet, P., Lahire, P., France, R.B.: Separation of concerns in feature modeling: support and applications. In: Proceedings of the 11th Annual International Conference on Aspect-Oriented Software Development, pp. 1–12. AOSD ’12, ACM, New York, NY, USA (2012)

  6. Mylopoulos, J., Chung, L., Yu, E.: From object-oriented to goal-oriented requirements analysis. Commun. ACM 42, 31–37 (1999)

    Article  Google Scholar 

  7. Yu, Y., do Prado Leite, J.C.S., Lapouchnian, A., Mylopoulos, J.: Configuring features with stakeholder goals. In: Proceedings of the 2008 ACM Symposium on Applied Computing, pp. 645–649. SAC ’08, ACM. New York, NY, USA (2008)

  8. Yu, Y., Lapouchnian, A., Liaskos, S., Mylopoulos, J., Leite, J.: From goals to high-variability software design. In: Foundations of Intelligent Systems. Volume 4994 of LCNS, pp. 1–16. Springer, Berlin (2008)

  9. Lapouchnian, A., Yu, Y., Mylopoulos, J.: Requirements-driven design and configuration management of business processes. In: 5th International Conference on Business Process Management, BPM, pp. 246–261. LNCS, Springer, Berlin (2007)

  10. Asadi, M., Bagheri, E., Gasevic, D., Hatala, M.: Goal-driven software product line engineering. In: 26th ACM Symposium on Applied Computing (2011)

  11. Metzger, A., Heymans, P., Pohl, K., Schobbens, P.Y., Saval, G.: Disambiguating the documentation of variability in software product lines: a separation of concerns, formalization and automated analysis. In: 15th IEEE International Requirements Engineering Conference, pp. 243–253. RE, IEEE (2007)

  12. Mendonca, M.: Software product lines online tools (splot). http://www.splot-research.org/ (2012)

  13. Yu, E., Giorgin, P., Maiden, N., Mylopoulos, J. (eds.): Social Modeling for Requirements Engineering. MIT, Cambridge, MA (2011)

    Google Scholar 

  14. Giorgini, P., Mylopoulos, J., Sebastiani, R.: Goal-oriented requirements analysis and reasoning in the TROPOS methodology. Eng. Appl. Artif. Intell. 18, 159–171 (2005)

    Article  Google Scholar 

  15. Chung, L., Nixon, B.A., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering, vol. 5, 1st edn. Springer, Berlin (1999)

    Google Scholar 

  16. van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, New York (2009)

    Google Scholar 

  17. ITU-T: Recommendation Z.151 (10/12): User Requirements Notation (URN) Language Definition, Geneva (2008)

  18. Giorgini, P., Mylopoulos, J., Nicchiarelli, E., Sebastiani, R.: Reasoning with goal models. In: 21st International Conference on Conceptual Modeling (ER). Volume 2503 of LNCS, pp. 167–181. Springer, Berlin (2002)

  19. Sebastiani, R., Giorgini, P., Mylopoulos, J.: Simple and minimum-cost satisfiability for goal models. In: CAiSE. Volume 3084 of LNCS, pp. 20–35, Springer, Berlin (2004)

  20. António, S., Araújo, J.A., Silva, C.: Adapting the i* framework for software product lines. In: Proceedings of the ER 2009 Workshops on Advances in Conceptual Modeling—Challenging Perspectives, pp. 286–295. Springer, Berlin (2009)

  21. Liaskos, S., Lapouchnian, A., Wang, Y., Yu, Y., Easterbrook, S.: Configuring common personal software: a requirements-driven approach. In: 13th IEEE International Conference Requirements Engineering, pp. 9–18 (2005)

  22. Weiss, D.M., Lai, C.T.R.: Software Product-line Engineering: A Family-based Software Development Process. Addison-Wesley Longman (1999)

  23. Liaskos, S., Litoiu, M., Jungblut, M.D., Mylopoulos, J.: Goal-based behavioral customization of information systems. In: Proceedings of the 23rd International Conference on Advanced Information Systems Engineering. CAiSE’11, pp. 77–92. Springer, Berlin (2011)

  24. Kang, K.C., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: Form: A feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)

    Article  Google Scholar 

  25. Schobbens, P.Y., Heymans, P., Trigaux, J.C.: Feature diagrams: a survey and a formal semantics. In: Requirements Engineering, 14th IEEE International Conference, pp. 139–148 (2006)

  26. Kang, K.C., Kim, S., Lee, J., Kim, K., Kim, G.J., Shin, E.: Form: A feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)

    Article  Google Scholar 

  27. Liaskos, S., Lapouchnian, A., Yu, Y., Yu, E., Mylopoulos, J.: On goal-based variability acquisition and analysis. In: Requirements Engineering, 14th IEEE International Conference, pp. 79–88 (2006)

  28. Czarnecki, K., Antkiewicz, M.: Mapping features to models: a template approach based on superimposed variants. In: GPCE’05. Volume 3676 of LNCS, pp. 422–437. Springer (2005)

  29. Heidenreich, F., Kopcsek, J., Wende, C.: FeatureMapper: mapping features to models. In: Companion Proceedings of the 30th International Conference on Software Engineering (ICSE’08), pp. 943–944. ACM (2008)

  30. Gröner, G., Asadi, M., Mohabbati, B., Gasevic, D., Parreiras, F.S., Boskovic, M.: Validation of user intentions in process models. In: 24th International Conference on Advanced Information Systems Engineering (CAiSE), pp. 366–381. Springer, Berlin (2012)

  31. Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook, 2nd edn. Cambridge University Press, Cambridge, MA (2007)

    MATH  Google Scholar 

  32. Wang, H., Li, Y., Sun, J., Zhang, H., Pan, J.: Verifying feature models using OWL. J. Web Semant. 5(2), 117–129 (2007)

    Article  Google Scholar 

  33. Kellner, M.I., Madachy, R.J., Raffo, D.M.: Software process simulation modeling: Why? what. J. Syst. Softw. 46, 91–105 (1999)

    Article  Google Scholar 

  34. Guo, J., Wang, Y., Trinidad, P., Benavides, D.: Consistency maintenance for evolving feature models. Expert Syst. Appl. 39(5), 4987–4998 (2012)

    Article  Google Scholar 

  35. White, J., Benavides, D., Schmidt, D.C., Trinidad, P., Dougherty, B., Cortés, A.R.: Automated diagnosis of feature model configurations. J. Syst. Softw. 83(7), 1094–1107 (2010)

    Article  Google Scholar 

  36. Liaskos, S., McIlraith, S.A., Sohrabi, S., Mylopoulos, J.: Representing and reasoning about preferences in requirements engineering. Requir. Eng. 16(3), 227–249 (2011)

    Article  Google Scholar 

  37. Mussbacher, G., Amyot, D., Araújo, J.a., Moreira, A.: Transactions on Aspect-Oriented Software Development vii. Springer, Berlin, pp. 23–68 (2010)

  38. Silva, C.T.L.L., Alencar, F.M.R., Araújo, J., Moreira, A., de Castro, J.B.: Tailoring an aspectual goal-oriented approach to model features. In: SEKE, pp. 472–477 (2008)

  39. Borba, C., Silva, C.: A comparison of goal-oriented approaches to model software product lines variability. In: Proceedings of the ER 2009 Workshops on Advances in Conceptual Modeling-Challenging Perspectives, pp. 244–253. Springer (2009)

  40. Santos, L., Silva, L., Batista, T.: On the integration of the feature model and PL-AOVGraph. In: Proceedings of the 2011 International Workshop on Early Aspects, pp. 31–36 (2011)

  41. Mussbacher, G., Arajo, J., Moreira, A., Amyot, D.: Aourn-based modeling and analysis of software product lines. Softw. Qual. J., 20(3–4), 1–43. doi:10.1007/s11219-011-9153-8

  42. Jureta, I., Borgida, A., Ernst, N., Mylopoulos, J.: Techne: Towards a new generation of requirements modeling languages with goals, preferences, and inconsistency handling. In: Requirements Engineering Conference (RE), 2010 18th IEEE International, pp. 115–124 (2010)

  43. Ernst, N.A., Borgida, A., Mylopoulos, J., Jureta, I.J.: Agile requirements evolution via paraconsistent reasoning. In: Proceedings of the 24th International Conference on Advanced Information Systems Engineering. CAiSE’12, pp. 382–397. Springer, Berlin (2012)

  44. Ali, R., Dalpiaz, F., Giorgini, P.: A goal-based framework for contextual requirements modeling and analysis. Requir. Eng. 15(4), 439–458 (2010)

    Article  Google Scholar 

  45. Ali, R., Dalpiaz, F., Giorgini, P.: Reasoning with contextual requirements: Detecting inconsistency and conflicts. Inf. Softw. Technol. 55(1), 35–57 (2013) (Special section: Best papers from the 2nd International Symposium on Search Based Software Engineering 2010)

    Google Scholar 

  46. Varela, P., Araújo, J.a., Brito, I., Moreira, A.: Aspect-oriented analysis for software product lines requirements engineering. In: Proceedings of the 2011 ACM Symposium on Applied Computing, pp. 667–674. SAC ’11, New York, NY, USA, ACM (2011)

  47. Czarnecki, K., Pietroszek, K.: Verifying feature-based model templates against well-formedness OCL constraints. In: GPCE, pp. 211–220 (2006)

  48. Thaker, S., Batory, D.S., Kitchin, D., Cook, W.R.: Safe composition of product lines. In: Proceedings of the GPCE ’06, pp. 95–104 (2007)

  49. Janota, M., Botterweck, G.: Formal approach to integrating feature and architecture models. In: FASE. Volume 4961 of LNCS, pp. 31–45 (2008)

  50. Van Der Storm, T.: Generic feature-based software composition. In: 6th International Conference on Software Composition. Volume 4829 of LNCS, pp. 66–80 (2007)

  51. Amyot, D., Ghanavati, S., Horkoff, J., Mussbacher, G., Peyton, L., Yu, E.: Evaluating goal models within the goal-oriented requirement language. Int. J. Intell. Syst. 25, 841–877 (2010)

    Article  Google Scholar 

  52. Czarnecki, K., Eisenecker, U.W.: Generative Programming: Methods, Tools, and Applications. ACM Press/Addison-Wesley Publishing Co. New York, NY, USA (2000)

  53. McGregor, J., Muthig, D., Yoshimura, K., Jensen, P.: Successful software product line practices. Softw. IEEE 27(3), 16–21 (2010)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohsen Asadi.

Additional information

Communicated by Dr. Benoit Baudry.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Asadi, M., Gröner, G., Mohabbati, B. et al. Goal-oriented modeling and verification of feature-oriented product lines. Softw Syst Model 15, 257–279 (2016). https://doi.org/10.1007/s10270-014-0402-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-014-0402-8

Keywords

Navigation