[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1321631.1321675acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
research-article

An automated approach to monitoring and diagnosing requirements

Published: 05 November 2007 Publication History

Abstract

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

References

[1]
R. Bjork. An ATM simulation. http://www.cs.gordon.edu/courses/cs211/atmexample.
[2]
R. Castello. Squirrel mail, http://www.squirrelmail.org/.
[3]
M. Davis, G. Logemann, and D. Loveland. A machine program for theorem-proving. Journal of ACM, 5:394--397, 1962.
[4]
J. De Kleer, A. K. Mackworth, and R. Reiter. Characterizing diagnoses and systems. Artificial Intelligence, 56(2--3):197--222, 1992.
[5]
M. S. Feather, S. Fickas, A. Van Lamsweerde, and C. Ponsard. Reconciling system requirements and runtime behavior. In IWSSD'98, 1998.
[6]
S. Fickas and M. Feather. Requirements monitoring in dynamic environments. In RE'95, 1995.
[7]
P. Giorgini, J. Mylopoulos, E. Nicchiarelli, and R. Sebastiani. Reasoning with goal models. In ER, pages 167--181. Springer, 2002.
[8]
E. Goldberg and Y. Novikov. Berkmin: A fast and robust sat-solver. In DATE, pages 142--149, 2002.
[9]
G. Iwan. History-based diagnosis templates in the framework of the situation calculus. AI Communications, 15:31--45, 2002.
[10]
A. Van Lamsweerde and E. Letier. Handling obstacles in goal-oriented requirements engineering. IEEE Trans. on Software Engineering, 26:978--1005, 2000.
[11]
D. Le Berre. A satisfiability library for java. http://www.sat4j.org/.
[12]
S. McIlraith. Explanatory diagnosis: Conjecturing actions to explain observations. In KR'98, pages 167--179, 1998.
[13]
M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, and S. Malik. Chaff: engineering an efficient sat solver. In Design automation, pages 530--535. ACM Press New York, NY, USA, 2001.
[14]
J. Mylopoulos, L. Chung, and B. Nixon. Representing and using nonfunctional requirements: a process-oriented approach. IEEE Trans. on Softw. Eng., 18(6):483--497, 1992.
[15]
R. Reiter. A theory of diagnosis from first principles. Artificial Intelligence, 32(1):57--95, 1987.
[16]
R. Reiter. The frame problem in the situation calculus: A simple solution (sometimes) and a completeness result for goal regression. Artificial Intelligence and Mathematical Theory of Computation, pages 359--380, 1991.
[17]
W. N. Robinson. Implementing rule-based monitors within a framework for continuous requirements monitoring. In HICSS'05, 2005.
[18]
L. Ryan. Efficient algorithms for clause-learning SAT solvers. Master's thesis, Simon Fraser University, 2004.
[19]
R. Sebastiani, P. Giorgini, and J. Mylopoulos. Simple and minimum-cost satisfiability for goal models. In CAiSE'04, volume 4, pages 20--33. Springer, 2004.
[20]
A. van Lamsweerde, R. Darimont, and P. Massonet. Goal-directed elaboration of requirements for a meeting scheduler: Problems and lessons learnt. In RE'95, page 194, 1995.
[21]
Y. Wang, Y. Yu, and J. Mylopoulos. Monitoring and diagnosing requirements. Technical report, University of Toronto, 2007. CSRG-555.
[22]
K. Winbladh, T. A. Alspaugh, H. Ziv, and D. J. Richardson. An automated approach for goal-driven, specification-based testing. ASE'06, 2006.
[23]
Y. Yu, Y. Wang, J. Mylopoulos, S. Liaskos, A. Lapouchnian, and J. C. S. do Prado Leite. Reverse engineering goal models from legacy code. In RE'05, pages 363--372, 2005.

Cited By

View all
  • (2023)Bringing Stakeholders Along for the Ride: Towards Supporting Intentional Decisions in Software EvolutionRequirements Engineering: Foundation for Software Quality10.1007/978-3-031-29786-1_4(56-64)Online publication date: 4-Apr-2023
  • (2020)Guiding Assistive-Technology Adaptations Through Intelligent Stream Mining of Patient DataTheory and Practice of Business Intelligence in Healthcare10.4018/978-1-7998-2310-0.ch011(216-255)Online publication date: 2020
  • (2018)Specifying and reasoning about contextual preferences in the goal-oriented requirements modellingProceedings of the Australasian Computer Science Week Multiconference10.1145/3167918.3167945(1-10)Online publication date: 29-Jan-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '07: Proceedings of the 22nd IEEE/ACM International Conference on Automated Software Engineering
November 2007
590 pages
ISBN:9781595938824
DOI:10.1145/1321631
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 November 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. diagnostics
  2. requirements monitoring

Qualifiers

  • Research-article

Conference

ASE07

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 26 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Bringing Stakeholders Along for the Ride: Towards Supporting Intentional Decisions in Software EvolutionRequirements Engineering: Foundation for Software Quality10.1007/978-3-031-29786-1_4(56-64)Online publication date: 4-Apr-2023
  • (2020)Guiding Assistive-Technology Adaptations Through Intelligent Stream Mining of Patient DataTheory and Practice of Business Intelligence in Healthcare10.4018/978-1-7998-2310-0.ch011(216-255)Online publication date: 2020
  • (2018)Specifying and reasoning about contextual preferences in the goal-oriented requirements modellingProceedings of the Australasian Computer Science Week Multiconference10.1145/3167918.3167945(1-10)Online publication date: 29-Jan-2018
  • (2018)Top-Down Evaluation of Reusable Goal ModelsNew Opportunities for Software Reuse10.1007/978-3-319-90421-4_5(76-92)Online publication date: 17-Apr-2018
  • (2016)Quality-Impact Assessment of Software Systems2016 IEEE 24th International Requirements Engineering Conference (RE)10.1109/RE.2016.53(427-431)Online publication date: Sep-2016
  • (2016)Solving the next adaptation problem with prometheus2016 IEEE Tenth International Conference on Research Challenges in Information Science (RCIS)10.1109/RCIS.2016.7549328(1-10)Online publication date: Jun-2016
  • (2015)Bridging the gap between requirement analysis and architecture design of self-adaptive systems2015 6th IEEE International Conference on Software Engineering and Service Science (ICSESS)10.1109/ICSESS.2015.7339244(1102-1105)Online publication date: Sep-2015
  • (2014)Evolving Commitments for Self-Adaptive Socio-technical SystemsProceedings of the 2014 19th International Conference on Engineering of Complex Computer Systems10.1109/ICECCS.2014.22(98-107)Online publication date: 4-Aug-2014
  • (2014)Requirements-driven deploymentSoftware and Systems Modeling (SoSyM)10.1007/s10270-012-0255-y13:1(433-456)Online publication date: 1-Feb-2014
  • (2013)Safe Substitution of Components in Self-Adaptive Web ApplicationsProceedings of the 2013 20th Asia-Pacific Software Engineering Conference (APSEC) - Volume 0110.1109/APSEC.2013.59(388-395)Online publication date: 2-Dec-2013
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media