Specifying Monitoring and Switching Problems in Context

Context-aware applications monitor changes in their operating environment and switch their behaviour to keep satisfying their requirements. Therefore, they must be equipped with the capability to detect variations in their operating context and to switch behaviour in response to such variations. However, specifying monitoring and switching in such applications can be difficult due to their dependence on varying contextual properties which need to be made explicit. In this paper, we present a problem- oriented approach to represent and reason about contextual variability and assess its impact on requirements; to elicit and specif' concerns facing monitors and switchers, such as initialisation and interference; and to specify monitoring and switching behaviours that can detect changes and adapt in response. We illustrate our approach by applying it to a published case study.

[1]  Kimberly S. Wasson,et al.  A Case Study in Systematic Improvement of Language for Requirements , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[2]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[3]  Martin S. Feather,et al.  Requirements monitoring in dynamic environments , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[4]  Yijun Yu,et al.  On Goal-based Variability Acquisition and Analysis , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[5]  Rudolf Wille,et al.  Conceptual Graphs and Formal Concept Analysis , 1997, ICCS.

[6]  Ji Zhang,et al.  The Four Levels of Requirements Engineering for and in Dynamic Adaptive Systems , 2005 .

[7]  Gary McGraw,et al.  Risk Analysis in Software Design , 2004, IEEE Secur. Priv..

[8]  Helen M. Edwards,et al.  Problem frames: analyzing and structuring software development problems , 2002, Softw. Test. Verification Reliab..

[9]  Stephen Fickas,et al.  Personal and contextual requirements engineering , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[10]  Nancy R. Mead,et al.  Security quality requirements engineering (SQUARE) methodology , 2005, SESS@ICSE.

[11]  Bashar Nuseibeh,et al.  Using abuse frames to bound the scope of security problems , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[12]  S RosenblumDavid,et al.  An Architecture-Based Approach to Self-Adaptive Software , 1999 .

[13]  Jan Bosch,et al.  A taxonomy and hierarchy of variability dependencies in software product family engineering , 2004, Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004..

[14]  Robert Hirschfeld,et al.  Layered design approach for context-aware systems , 2007, VaMoS.

[15]  Bashar Nuseibeh,et al.  Using Problem Descriptions to Represent Variabilities For Context-Aware Applications , 2007, VaMoS.

[16]  Rob C. van Ommering Building product populations with software components , 2002, ICSE '02.

[17]  Jeffrey M. Voas,et al.  Certifying Software for High-Assurance Environments , 1999, IEEE Softw..

[18]  Pierre-Yves Schobbens,et al.  Feature Diagrams: A Survey and a Formal Semantics , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[19]  William N. Robinson A requirements monitoring framework for enterprise systems , 2005, Requirements Engineering.

[20]  Bashar Nuseibeh,et al.  Composing requirements using problem frames , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[21]  Michael Jackson,et al.  Problem frame semantics for software development , 2005, Software & Systems Modeling.

[22]  Axel van Lamsweerde,et al.  Elaborating security requirements by construction of intentional anti-models , 2004, Proceedings. 26th International Conference on Software Engineering.

[23]  Jeff Magee,et al.  Self-organising software architectures for distributed systems , 2002, WOSS '02.

[24]  Klaus Pohl,et al.  Modelling requirements variability across product lines , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[25]  Seyed Masoud Sadjadi,et al.  Composing adaptive software , 2004, Computer.

[26]  M.S. Feather,et al.  Reconciling system requirements and runtime behavior , 1998, Proceedings Ninth International Workshop on Software Specification and Design.

[27]  Marianne Swanson,et al.  Security metrics guide for information technology systems , 2003 .

[28]  Ji Zhang,et al.  Using temporal logic to specify adaptive program semantics , 2006, J. Syst. Softw..

[29]  William N. Robinson,et al.  Managing Requirements Inconsistency with Development Goal Monitors , 1999, IEEE Trans. Software Eng..

[30]  Bashar Nuseibeh,et al.  Using trust assumptions with security requirements , 2005, Requirements Engineering.

[31]  John P. McDermott,et al.  Abuse-case-based assurance arguments , 2001, Seventeenth Annual Computer Security Applications Conference.

[32]  Betty H. C. Cheng,et al.  Research Directions in Requirements Engineering , 2007, Future of Software Engineering (FOSE '07).

[33]  John Mylopoulos,et al.  Risk Modelling and Reasoning in Goal Models , 2006 .

[34]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[35]  Bashar Nuseibeh,et al.  Core Security Requirements Artefacts , 2004 .

[36]  P. Tonella Reverse engineering of object oriented code , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[37]  Jan Bosch,et al.  Managing Variability in Software Product Lines , 2000 .

[38]  Andreas L. Opdahl,et al.  Eliciting security requirements with misuse cases , 2004, Requirements Engineering.

[39]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[40]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..

[41]  John Mylopoulos,et al.  Security and privacy requirements analysis within a social setting , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[42]  Leonard J. Bass,et al.  Managing variability in software architectures , 2001, SSR '01.