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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Clements, P., Northrop, L.: Software product lines: practices and patterns. Addison-Wesley Longman Publishing, Amsterdam (2001)
Czarnecki, K., Helsen, S., Eisenecker, U.: Formalizing cardinality-based feature models and their specialization. Soft. Proc. Improv. and Practice 10, 7–29 (2005)
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)
White, J., Dougherty, B., Schmidt, D.C., Benavides, D.: Automated Reasoning for Multi-step Software Product-line Configuration Problems. In: SPLC 2009 (2009)
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)
Czarnecki, K., Helsen, S., Eisenecker, U.: Staged Configuration Through Specialization and Multi-Level, Dep. of Electrical and Computer Eng., University of Waterloo (2004)
Sommerville, I., Sawyer, P.: Viewpoints: principles, problems and a practical approach to requirements engineering. Annals of Software Engineering 3, 101–130 (1997)
Saaty, T.L.: The Analytic Hierarchy Process. McGraw-Hill, New York (1980)
Karlsson, J., Olsson, S., Ryan, K.: Improving Practical Support for Large-scale Requirement Prioritising. Requerments Engineering 2 (1997)
Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, Heidelberg (2007)
Linden, F., Phol, K., Bockle, G., Sikore, E., Gunter, B.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, Heidelberg (2005)
Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, p. 7. Springer, Heidelberg (2005)
Czarnecki, K., Kim, C.H.: Cardinality-based feature modeling and constraints: A progress report. In: International Workshop on Software Factories (2005)
Batory, D., Benavides, D., Ruiz-Cortes, A.: Automated analysis of feature models: Challenges ahead. Communications of the ACM 49, 47 (2006)
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)
Perini, A., Ricca, F., Susi, A.: Tool-supported requirements prioritization: Comparing the AHP and CBRank methods. Inform. and Soft. Tech. 51, 1021–1032 (2009)
Aurum, A., Wohlin, C.: Eng. and Managing Software Requirements. Springer, Heidelberg (2005)
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)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bagheri, E., Asadi, M., Gasevic, D., Soltani, S. (2010). Stratified Analytic Hierarchy Process: Prioritization and Selection of Software Features. In: Bosch, J., Lee, J. (eds) Software Product Lines: Going Beyond. SPLC 2010. Lecture Notes in Computer Science, vol 6287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15579-6_21
Download citation
DOI: https://doi.org/10.1007/978-3-642-15579-6_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15578-9
Online ISBN: 978-3-642-15579-6
eBook Packages: Computer ScienceComputer Science (R0)