Managing Conflicts in Goal-Driven Requirements Engineering
IEEE Transactions on Software Engineering
The case for reflective middleware
Communications of the ACM - Adaptive middleware
Exploiting reflection in mobile computing middleware
ACM SIGMOBILE Mobile Computing and Communications Review
Probabilistic Symbolic Model Checking with PRISM: A Hybrid Approach
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Requirements monitoring in dynamic environments
RE '95 Proceedings of the Second IEEE International Symposium on Requirements Engineering
Towards Modeling and Reasoning Support for Early-Phase Requirements Engineering
RE '97 Proceedings of the 3rd IEEE International Symposium on Requirements Engineering
Reconciling System Requirements and Runtime Behavior
IWSSD '98 Proceedings of the 9th international workshop on Software specification and design
Reasoning about Uncertainty
Requirements Monitoring for Service-Based Systems: Towards a framework based on Event Calculus
Proceedings of the 19th IEEE international conference on Automated software engineering
Reasoning about partial goal satisfaction for requirements and design engineering
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Towards requirements-driven autonomic systems design
DEAS '05 Proceedings of the 2005 workshop on Design and evolution of autonomic application software
A requirements monitoring framework for enterprise systems
Requirements Engineering
A survey of autonomic communications
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Requirements Engineering
Self-Managed Systems: an Architectural Challenge
FOSE '07 2007 Future of Software Engineering
A generic component model for building systems software
ACM Transactions on Computer Systems (TOCS)
Goal-Based Modeling of Dynamically Adaptive System Requirements
ECBS '08 Proceedings of the 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems
Monitoring and diagnosing software requirements
Automated Software Engineering
RELAX: Incorporating Uncertainty into the Specification of Self-Adaptive Systems
RE '09 Proceedings of the 2009 17th IEEE International Requirements Engineering Conference, RE
Tracing requirements for adaptive systems using claims
Proceedings of the 6th International Workshop on Traceability in Emerging Forms of Software Engineering
Runtime models for automatic reorganization of multi-robot systems
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
The role of models and megamodels at runtime
MODELS'10 Proceedings of the 2010 international conference on Models in software engineering
Reasoning with contextual requirements: Detecting inconsistency and conflicts
Information and Software Technology
Satisfying requirements for pervasive service compositions
Proceedings of the 7th Workshop on Models@run.time
Managing resource contention in embedded service-oriented systems with dynamic orchestration
ICSOC'12 Proceedings of the 10th international conference on Service-Oriented Computing
Towards run-time testing of dynamic adaptive systems
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
A preliminary study on requirements modeling methods for self-adaptive software systems
Proceedings of the 5th Asia-Pacific Symposium on Internetware
Requirements-driven deployment
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
Computational reflection is a well-established technique that gives a program the ability to dynamically observe and possibly modify its behaviour. To date, however, reflection is mainly applied either to the software architecture or its implementation. We know of no approach that fully supports requirements reflection- that is, making requirements available as runtime objects. Although there is a body of literature on requirements monitoring, such work typically generates runtime artefacts from requirements and so the requirements themselves are not directly accessible at runtime. In this paper, we define requirements reflection and a set of research challenges. Requirements reflection is important because software systems of the future will be self-managing and will need to adapt continuously to changing environmental conditions. We argue requirements reflection can support such self-adaptive systems by making requirements first-class runtime entities, thus endowing software systems with the ability to reason about, understand, explain and modify requirements at runtime.