Advertisement

Stratified Analytic Hierarchy Process: Prioritization and Selection of Software Features

  • Ebrahim Bagheri
  • Mohsen Asadi
  • Dragan Gasevic
  • Samaneh Soltani
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6287)

Abstract

Product line engineering allows for the rapid development of variants of a domain specific application by using a common set of reusable assets often known as core assets. Variability modeling is a critical issue in product line engineering, where the use of feature modeling is one of most commonly used formalisms. To support an effective and automated derivation of concrete products for a product family, staged configuration has been proposed in the research literature. In this paper, we propose the integration of well-known requirements engineering principles into stage configuration. Being inspired by the well-established Preview requirements engineering framework, we initially propose an extension of feature models with capabilities for capturing business oriented requirements. This representation enables a more effective capturing of stakeholders’ preferences over the business requirements and objectives (e.g.,. implementation costs or security) in the form of fuzzy linguistic variables (e.g., high, medium, and low). On top of this extension, we propose a novel method, the Stratified Analytic Hierarchy process, which first helps to rank and select the most relevant high level business objectives for the target stakeholders (e.g., security over implementation costs), and then helps to rank and select the most relevant features from the feature model to be used as the starting point in the staged configuration process. Besides a complete formalization of the process, we define the place of our proposal in existing software product line lifecycles as well as demonstrate the use of our proposal on the widely-used e-Shop case study. Finally, we report on the results of our user study, which indicates a high appreciation of the proposed method by the participating industrial software developers. The tool support for S-AHP is also introduced.

Keywords

Analytic Hierarchy Process Feature Model Product Family Software Product Line Implementation Cost 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Clements, P., Northrop, L.: Software product lines: practices and patterns. Addison-Wesley Longman Publishing, Amsterdam (2001)Google Scholar
  2. 2.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Soft. Proc. Improv. and Practice 10, 7–29 (2005)CrossRefGoogle Scholar
  3. 3.
    Heymans, P., Schobbens, P., Trigaux, J., Bontemps, Y., Matulevicius, R., Classen, A.: Evaluating formal properties of feature diagram languages. IET Soft. 2(3), 281 (2008)CrossRefGoogle Scholar
  4. 4.
    White, J., Dougherty, B., Schmidt, D.C., Benavides, D.: Automated Reasoning for Multi-step Software Product-line Configuration Problems. In: SPLC 2009 (2009)Google Scholar
  5. 5.
    Boskovic, M., Bagheri, E., Gasevic, D., Mohabbati, B., Kavinai, N., Hatala, M.: Automated Staged Configuration with Semantic Web Technologies. International Journal of Software Engineering and Knowledge Engineering (in press)Google Scholar
  6. 6.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Staged Configuration Through Specialization and Multi-Level, Dep. of Electrical and Computer Eng., University of Waterloo (2004)Google Scholar
  7. 7.
    Sommerville, I., Sawyer, P.: Viewpoints: principles, problems and a practical approach to requirements engineering. Annals of Software Engineering 3, 101–130 (1997)CrossRefGoogle Scholar
  8. 8.
    Saaty, T.L.: The Analytic Hierarchy Process. McGraw-Hill, New York (1980)zbMATHGoogle Scholar
  9. 9.
    Karlsson, J., Olsson, S., Ryan, K.: Improving Practical Support for Large-scale Requirement Prioritising. Requerments Engineering 2 (1997)Google Scholar
  10. 10.
    Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, Heidelberg (2007)Google Scholar
  11. 11.
    Linden, F., Phol, K., Bockle, G., Sikore, E., Gunter, B.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  12. 12.
    Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, p. 7. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Czarnecki, K., Kim, C.H.: Cardinality-based feature modeling and constraints: A progress report. In: International Workshop on Software Factories (2005)Google Scholar
  14. 14.
    Batory, D., Benavides, D., Ruiz-Cortes, A.: Automated analysis of feature models: Challenges ahead. Communications of the ACM 49, 47 (2006)CrossRefGoogle Scholar
  15. 15.
    Bagheri, E., Ghorbani, A.A.: The analysis and management of non-canonical requirement specifications through a belief integration game. Knowledge and Information Systems 22, 27–64 (2009)CrossRefGoogle Scholar
  16. 16.
    Perini, A., Ricca, F., Susi, A.: Tool-supported requirements prioritization: Comparing the AHP and CBRank methods. Inform. and Soft. Tech. 51, 1021–1032 (2009)CrossRefGoogle Scholar
  17. 17.
    Aurum, A., Wohlin, C.: Eng. and Managing Software Requirements. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  18. 18.
    Berander, P., Jönsson, P.: Hierarchical Cumulative Voting (HCV) – Prioritization of Requirements in Hierarchies. Int’l. J. Soft. Engi. & Know. Eng. 16, 819–849 (2006)CrossRefGoogle Scholar
  19. 19.
    Makki, M., Bagheri, E., Ghorbani, A.A.: Automating Architecture Trade-off Decision Making through a Complex Multi-attribute Decision Process. In: Morrison, R., Balasubramaniam, D., Falkner, K. (eds.) ECSA 2008. LNCS, vol. 5292, pp. 264–272. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Ebrahim Bagheri
    • 1
    • 3
  • Mohsen Asadi
    • 1
    • 2
  • Dragan Gasevic
    • 1
  • Samaneh Soltani
    • 1
  1. 1.Athabasca UniversityCanada
  2. 2.Simon Fraser UniversityCanada
  3. 3.National Research CouncilCanada

Personalised recommendations