Stratified analytic hierarchy process: prioritization and selection of software features

  • Authors:
  • Ebrahim Bagheri;Mohsen Asadi;Dragan Gasevic;Samaneh Soltani

  • Affiliations:
  • Athabasca University, Canada and National Research Council Canada;Athabasca University, Canada and Simon Fraser University, Canada;Athabasca University, Canada;Athabasca University, Canada

  • Venue:
  • SPLC'10 Proceedings of the 14th international conference on Software product lines: going beyond
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

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.