Contextual Requirements Prioritization and Its Application to Smart Homes

When many requirements co-exist for a given system, prioritization is essential to determine which ones have higher priority. While the basic prioritization algorithms result in a total or partial order of the requirements, it is often the case that the priority of the requirements depends on the context at hand. This is especially true in ambient intelligence systems such as smart homes, which operate in an inherently dynamic environment that may affect the priority of the requirements at runtime. For example, depending on the health status of a smart home inhabitant, safety may become more important than comfort or cost-saving. In this paper, we make three contributions: (i) we introduce a novel method for the contextual prioritization of requirements, (ii) we propose an online platform for prioritizing the requirements for a smart home based on our method, and (iii) we report on results from an initial evaluation of the platform and the prioritization method.

[1]  Joy Beatty,et al.  Software Requirements 3 , 2013 .

[2]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[3]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[4]  Fariba Sadri,et al.  Ambient intelligence: A survey , 2011, CSUR.

[5]  A. Andrews,et al.  4 Requirements Prioritization , .

[6]  Dietmar Pfahl,et al.  Quantitative WinWin: a new method for decision support in requirements negotiation , 2002, SEKE '02.

[7]  Didar Zowghi,et al.  Requirements Elicitation: A Survey of Techniques, Approaches, and Tools , 2005 .

[8]  Ali Selamat,et al.  A systematic literature review of software requirements prioritization research , 2014, Inf. Softw. Technol..

[9]  Bradley R. Schmerl,et al.  Software Engineering for Self-Adaptive Systems: A Second Research Roadmap , 2010, Software Engineering for Self-Adaptive Systems.

[10]  J. M. Singer,et al.  IEEE Recommended Practice for Software Requirements SpeciÞcations , 1993 .

[11]  Dario Salvi,et al.  Experience in Evaluating AAL Solutions in Living Labs , 2014, Sensors.

[12]  Dean Leffingwell,et al.  Managing software requirements: a unified approach , 1999 .

[13]  Kraig Finstad,et al.  The Usability Metric for User Experience , 2010, Interact. Comput..

[14]  S. Lauesen Software Requirements Styles and Techniques , 2001 .

[15]  R. W. Saaty,et al.  The analytic hierarchy process—what it is and how it is used , 1987 .

[16]  Matthias Baldauf,et al.  A survey on context-aware systems , 2007, Int. J. Ad Hoc Ubiquitous Comput..

[17]  Vicente Pelechano,et al.  A NFR-Based Framework for User-Centered Adaptation , 2012, ER.

[18]  E. Allameh,et al.  Smart Homes from vision to reality : eliciting users' preferences of Smart Homes by a virtual experimental method , 2013 .

[19]  William J. Hurley,et al.  Transitive calibration of the AHP verbal scale , 1999, Eur. J. Oper. Res..

[20]  Bruno Rossi,et al.  Requirements prioritization in software engineering: A systematic mapping study , 2013, 2013 3rd International Workshop on Empirical Requirements Engineering (EmpiRE).