Skip to main content
Log in

Deriving non-Zeno behaviour models from goal models using ILP

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

One of the difficulties in goal-oriented requirements engineering (GORE) is the construction of behaviour models from declarative goal specifications. This paper addresses this problem using a combination of model checking and machine learning. First, a goal model is transformed into a (potentially Zeno) behaviour model. Then, via an iterative process, Zeno traces are identified by model checking the behaviour model against a time progress property, and inductive logic programming (ILP) is used to learn operational requirements (pre-conditions) that eliminate these traces. The process terminates giving a non-Zeno behaviour model produced from the learned pre-conditions and the given goal model.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Anton AI (1997) Goal identification and refinement in the specification of software-based information systems. PhD thesis, Atlanta, GA, USA

  2. Alrajeh D, Russo A, Uchitel S (2008) Deriving non-zeno behavior models from goal models using ilp. In: Proceedings of the ETAPS/FASE08 conference on foundation aspects of software engineering

  3. Courtois PJ, Parnas DL (1993) Documentation for safety critical software. In: Proceedings of the 15th ICSE conference, pp 315–323

  4. Damas C, Dupont P, Lambeau B, van Lamsweerde A (2005) Generating annotated behavior models from end-user scenarios. IEEE Trans on Softw Eng 31(12): 1056–1073

    Article  Google Scholar 

  5. Damas C, Lambeau B, van Lamsweerde A (2006) Scenarios, goals, and state machines: a win–win partnership for model synthesis. In: Proceedings of the interntional ACM symposium on the foundations of software engineering

  6. Darimont R, van Lamsweerde A (1996) Formal refinement patterns for goal-driven requirements elaboration. In: Proceedings of the 4th ACM symposium on the foundations of software engineering

  7. Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Sci Comput Program 20(1): 3–50

    Article  MATH  Google Scholar 

  8. Giannakopoulou D, Magee J (2003) Fluent model checking for event-based systems. In: Proceedings of the 11th ACM SIGSOFT symposium on foundations software engineering

  9. Giorgini P, Mylopoulos J, Sebastiani R (2005) Goal-oriented requirements analysis and reasoning in the tropos methodology. Eng Appl Artif Intell 18: 159–171

    Article  Google Scholar 

  10. Heitmeyer C, Bull A, Gasarch C, Labaw B (1995) Scr*: a toolset for specifying and analyzing requirements. In: Proceedings of the 10th annual conference on computer assurance

  11. Kramer J, Magee J, Sloman M (1983) Conic: an integrated approach to distributed computer control systems. In: IEE Proceedings of the part E 130

  12. Letier E (2002) Goal-oriented elaboration of requirements for a safety injection control system. Technical report, Dèpartement d’Ingènierie Informatique, UCL

  13. Letier E, Kramer J, Magee J, Uchitel S (2005) Fluent temporal logic for discrete-time in event-based models. In: Proceedings of the 10th European software engineering conference

  14. Letier E, Kramer J, Magee J, Uchitel S (2006) Deriving event-based transitions systems from goal-oriented requirements models. Technical Report 02/2006, Imperial College, London

  15. Letier E, Van Lamsweerde A (2002) Deriving operational software specifications from system goals. In: Proceedings of the 10th ACM SIGSOFT symposium on foundations of software engineering

  16. Letier E, van Lamsweerde A (2002) Agent-based tactics for goal-oriented requirements elaboration. In: Proceedings of the 24th intlernational conference on software engineering

  17. Van Lamsweerde A, Willemet L (1998) Inferring declarative requirements specifications from operational scenarios. IEEE Trans Softw Eng 24(12): 1089–1114

    Article  Google Scholar 

  18. Magee J, Kramer J (1999) Concurrency: state models and java programs. Wiley, New York

    MATH  Google Scholar 

  19. Manna Z, Pnueli A (1992) The temporal logic of reactive and concurrent systems. Springer, New York

    Google Scholar 

  20. Miller R, Shanahan M (2002) Some alternative formulation of event calculus. Computer science; computational logic; logic programming and beyond, 2408

  21. Muggleton SH (1995) Inverse entailment and progol: new generation computing, special issue on inductive logic programming 13(3/4): 245–286

    Google Scholar 

  22. Ray O (2009) Nonmonotonic abductive inductive learning. J Appl Logic 7(3): 329–340

    Article  MATH  Google Scholar 

  23. Ray O, Broda K, Russo A (2004) A hybrid abductive inductive proof procedure. Logic J IGPL 12(5): 371–397

    Article  MATH  MathSciNet  Google Scholar 

  24. Shanahan MP (1997) Solving the frame problem. MIT Press, Cambridge

    Google Scholar 

  25. Sutcliffe A, Maiden NAM, Minocha S, Manuel D (1998) Supporting scenario-based requirements engineering. IEEE Trans Softw Eng 24: 1072–1088

    Article  Google Scholar 

  26. Uchitel S, Brunet G, Chechik M (2007) Behaviour model synthesis from properties and scenarios. In: Proceedings of the 29th IEEE/ACM international conference on software engineering

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to D. Alrajeh.

Additional information

Communicated by J.L. Fiadeiro, P. Inverardi and T.S.E. Maibaum

Rights and permissions

Reprints and permissions

About this article

Cite this article

Alrajeh, D., Kramer, J., Russo, A. et al. Deriving non-Zeno behaviour models from goal models using ILP. Form Asp Comp 22, 217–241 (2010). https://doi.org/10.1007/s00165-009-0128-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-009-0128-5

Keywords

Navigation