A theory of diagnosis from first principles
Artificial Intelligence
Artificial intelligence and mathematical theory of computation
Characterizing diagnoses and systems
Artificial Intelligence
Handling Obstacles in Goal-Oriented Requirements Engineering
IEEE Transactions on Software Engineering - special section on current trends in exception handling—part II
A machine program for theorem-proving
Communications of the ACM
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Representing and Using Nonfunctional Requirements: A Process-Oriented Approach
IEEE Transactions on Software Engineering - Special issue on knowledge representation and reasoning in software development
History-based diagnosis templates in the framework of the situation calculus
AI Communications - Special issue on KI-2001
ER '02 Proceedings of the 21st International Conference on Conceptual Modeling
Requirements monitoring in dynamic environments
RE '95 Proceedings of the Second IEEE International Symposium on Requirements Engineering
Goal-directed elaboration of requirements for a meeting scheduler: problems and lessons learnt
RE '95 Proceedings of the Second 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
BerkMin: A Fast and Robust Sat-Solver
Proceedings of the conference on Design, automation and test in Europe
Implementing Rule-Based Monitors within a Framework for Continuous Requirements Monitoring
HICSS '05 Proceedings of the Proceedings of the 38th Annual Hawaii International Conference on System Sciences - Volume 07
Reverse Engineering Goal Models from Legacy Code
RE '05 Proceedings of the 13th IEEE International Conference on Requirements Engineering
An Automated Approach for Goal-driven, Specification-based Testing
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
Monitoring and diagnosing software requirements
Automated Software Engineering
Software self-reconfiguration: a BDI-based approach
Proceedings of The 8th International Conference on Autonomous Agents and Multiagent Systems - Volume 2
Early Identification of Problem Interactions: A Tool-Supported Approach
REFSQ '09 Proceedings of the 15th International Working Conference on Requirements Engineering: Foundation for Software Quality
An Architecture for Requirements-Driven Self-reconfiguration
CAiSE '09 Proceedings of the 21st International Conference on Advanced Information Systems Engineering
Runtime monitoring of cross-cutting policy
EA '09 Proceedings of the 2009 ICSE Workshop on Aspect-Oriented Requirements Engineering and Architecture Design
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
From goals to high-variability software design
ISMIS'08 Proceedings of the 17th international conference on Foundations of intelligent systems
Diagnosing software using statecharts
Proceedings of the 2010 Conference of the Center for Advanced Studies on Collaborative Research
Analyzing goal models: different approaches and how to choose among them
Proceedings of the 2011 ACM Symposium on Applied Computing
Towards a requirements-driven framework for detecting malicious behavior against software systems
Proceedings of the 2011 Conference of the Center for Advanced Studies on Collaborative Research
Discovery and diagnosis of behavioral transitions in patient event streams
ACM Transactions on Management Information Systems (TMIS)
Analysing monitoring and switching problems for adaptive systems
Journal of Systems and Software
Reasoning with contextual requirements: Detecting inconsistency and conflicts
Information and Software Technology
Requirements-driven deployment
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
Monitoring the satisfaction of software requirements and diagnosing what went wrong in case of failure is a hard problem that has received little attention in the Software and Requirement Engineering literature. To address this problem, we propose a framework adapted from artificial intelligence theories of action and diagnosis. Specifically, the framework monitors the satisfaction of software requirements and generates log data at a level of granularity that can be tuned adaptively at runtime depending on monitored feedback. When errors are found, the framework diagnoses the denial of the requirements and identifies problematic components. To support diagnostic reasoning, we transform the diagnostic problem into apropositional satisfiability (SAT) problem that can be solved by existing SAT solvers. We preprocess log data into a compact propositional encoding that better scales with problem size. The proposed theoretical framework has been implemented as a diagnosing component that will return sound and complete diagnoses accounting for observed aberrant system behaviors. Our solution is illustrated with two medium-sized publicly available case studies: a Web-based email client and an ATM simulation. Our experimental results demonstrate the feasibility of scaling our approach to medium-size software systems