Advertisement

Requirements Engineering

, Volume 15, Issue 4, pp 439–458 | Cite as

A goal-based framework for contextual requirements modeling and analysis

  • Raian AliEmail author
  • Fabiano Dalpiaz
  • Paolo Giorgini
Original Research

Abstract

Requirements engineering (RE) research often ignores or presumes a uniform nature of the context in which the system operates. This assumption is no longer valid in emerging computing paradigms, such as ambient, pervasive and ubiquitous computing, where it is essential to monitor and adapt to an inherently varying context. Besides influencing the software, context may influence stakeholders’ goals and their choices to meet them. In this paper, we propose a goal-oriented RE modeling and reasoning framework for systems operating in varying contexts. We introduce contextual goal models to relate goals and contexts; context analysis to refine contexts and identify ways to verify them; reasoning techniques to derive requirements reflecting the context and users priorities at runtime; and finally, design time reasoning techniques to derive requirements for a system to be developed at minimum cost and valid in all considered contexts. We illustrate and evaluate our approach through a case study about a museum-guide mobile information system.

Keywords

Contextual requirements Context analysis Goal modeling Requirements analysis 

Notes

Acknowledgments

This work has been partially funded by EU Commission through the COMPAS, NESSOS and ANIKETOS projects. We thank Jaelson Brelaz de Castro, Bashar Nuseibeh, John Mylopoulos, Yijun Yu, Anders Franzen, Alberto Griggio, and Amit K. Chopra for the helpful discussions that enriched the ideas in this paper.

References

  1. 1.
    Weiser M (1991) The computer for the 21st century. Scientific American 265(3):94–104CrossRefGoogle Scholar
  2. 2.
    Finkelstein A, Savigni A (2001) A framework for requirements engineering for context-aware services. In: Proceedings of STRAW 01Google Scholar
  3. 3.
    Yu E, Mylopoulos J (1998) Why goal-oriented requirements engineering. In: Proceedings of REFSQ’98, pp 15–22Google Scholar
  4. 4.
    Yu ESK (1995) Modelling strategic relationships for process reengineering. Ph.D. Thesis, University of TorontoGoogle Scholar
  5. 5.
    Bresciani P, Perini A, Giorgini P, Giunchiglia F, Mylopoulos J (2004) Tropos: an agent-oriented software development methodology. Autonomous Agents Multi-Agent Syst 8(3):203–236CrossRefGoogle Scholar
  6. 6.
    Dardenne A, van Lamsweerde A, Fickas S(1993) Goal-directed requirements acquisition. Sci Comput Program 20(1–2):3–50zbMATHCrossRefGoogle Scholar
  7. 7.
    Mylopoulos J, Chung L, Yu E(1999) From object-oriented to goal-oriented requirements analysis. Commun ACM 42(1):31–37CrossRefGoogle Scholar
  8. 8.
    Fickas S, Feather MS (1995) Requirements monitoring in dynamic environments. In: Proceedings of RE 1995. IEEE Computer Society Washington, DC, USA, p 140Google Scholar
  9. 9.
    Sykes D, Heaven W, Magee J, Kramer J (2008) From goals to components: a combined approach to self-management. In: Proceedings of SEAMS’08. ACM New York, NY, USA, pp 1–8Google Scholar
  10. 10.
    Ali R, Dalpiaz F, Giorgini P(2008) Location-based variability for mobile information systems. In: Bellahsene Z, Léonard M (eds) Proceedings of CAiSE’08, volume 5074 of LNCS. Springer, Berlin, pp 575–578Google Scholar
  11. 11.
    Ali R, Dalpiaz F, Giorgini P(2008) Location-based software modeling and analysis: Tropos-based approach. In: Li Q, Spaccapietra S, Yu ESK, Olivé A(eds) Proceedings of ER 2008 volume 5231 of LNCS. Springer, Berlin, pp 169–182Google Scholar
  12. 12.
    Ali R, Dalpiaz F, Giorgini P (2009) A goal modeling framework for self-contextualizable software. In: Proceedings of EMMSAD 2009, vol 29 of LNBIP. Springer, Berlin, pp 326–338Google Scholar
  13. 13.
    Ali R, Dalpiaz F, Giorgini P (2009) Goal-based self-contextualization. In: CAiSE’09 - Forum, vol 453, CEUR-WS, pp 37–42Google Scholar
  14. 14.
    Brezillon P (1999) Context in artificial intelligence: I. a survey of the literature. Comput Artifi Intell 18:321–340zbMATHGoogle Scholar
  15. 15.
    Dey AK (2001) Understanding and using context. Personal Ubiquitous Comput 5(1):4–7CrossRefGoogle Scholar
  16. 16.
    Krogstie J, Lyytinen K, Opdahl AL, Pernici B, Siau K, Smolander K (2004) Research areas and challenges for mobile information systems. Int J Mobile Commun 2(3):220–234Google Scholar
  17. 17.
    Shen X, Tan B, Zhai CX (2005) Context-sensitive information retrieval using implicit feedback. In: Proceedings of SIGIR 2005. ACM, pp 43–50Google Scholar
  18. 18.
    Jackson M (2000) Problem frames: analyzing and structuring software development problems. Addison-Wesley Longman Publishing Co., Inc., BostonGoogle Scholar
  19. 19.
    van Lamsweerde A (2001) Goal-oriented requirements engineering: A guided tour. In: RE 2001. IEEE Computer Society, pp 249–262Google Scholar
  20. 20.
    Jureta I, Mylopoulos J, Faulkner S (2008) Revisiting the core ontology and problem in requirements engineering. In: RE 2008. IEEE Computer SocietyGoogle Scholar
  21. 21.
    Yu Y, Lapouchnian A, Liaskos S, Mylopoulos J, Leite JCSP (2008) From goals to high-variability software design. In: Proceedings of ISMIS’08, vol 4994 of LNCS. Springer, Berlin, pp 1–16Google Scholar
  22. 22.
    Dalpiaz F, Giorgini P, Mylopoulos J (2009) An architecture for requirements-driven self-reconfiguration. In: Proceedings of CAiSE’09, vol 5565 of LNCS. Springer, Berlin, pp 246–260Google Scholar
  23. 23.
    Henricksen K, Indulska J (2004) A software engineering framework for context-aware pervasive computing. In: Proceedings of PerCom’04. IEEE Computer Society, pp 77–86Google Scholar
  24. 24.
    Bai Y, Yang J, Qiu Y (2008) OntoCBR: Ontology-based CBR in Context-aware Applications. In: Proceedings of the International Conference on Multimedia and Ubiquitous Engineering (MUE 2008)Google Scholar
  25. 25.
    Biere A, Heule M, van Maaren H, Walsh T (eds) (2009) Handbook of satisfiability. In: Frontiers in artificial intelligence and applications, vol 185. IOS Press, AmsterdamGoogle Scholar
  26. 26.
    Eiter T, Gottlob G, Mannila H (1997) Disjunctive datalog. ACM Trans Database Syst 22(3):364–418CrossRefGoogle Scholar
  27. 27.
    Wang Y, McIlraith SA, Yu Y, Mylopoulos J (2007) An automated approach to monitoring and diagnosing requirements. In: Proceedings of ASE 2007. ACM New York, NY, USA, pp 293–302Google Scholar
  28. 28.
    Salifu M, Yu Y, Nuseibeh B (2007) Specifying monitoring and switching problems in context. In: Proceedings of RE 2007. IEEE Computer Society, pp 211–220Google Scholar
  29. 29.
    Pohl K, Böckle G, van der Linden F (2005) Software Product line engineering: foundations, principles, and techniques. Springer, BerlinzbMATHGoogle Scholar
  30. 30.
    Kang KC, Kim S, Lee J, Kim K, Shin E, Huh M (1998) Form: a feature-oriented reuse method with domain-specific reference architectures. Ann Softw Eng 5:143–168CrossRefGoogle Scholar
  31. 31.
    Yu Y, do Prado Leite JCS, Lapouchnian A, Mylopoulos J (2008) Configuring features with stakeholder goals. In: Proceedings of SAC 2008. ACM New York, N Y, USA, pp 645–649Google Scholar
  32. 32.
    Ramachandran M, Allen P (2005) Commonality and variability analysis in industrial practice for product line improvement. Softw Proc: Improve Pract 109(1):31–40Google Scholar
  33. 33.
    Feather MS, Fickas S, Van Lamsweerde A, Ponsard C (1998) Reconciling system requirements and runtime behavior. In: IWSSD’98. Association for Computing Machinery, Inc, One Astor Plaza, 1515 Broadway, New York, N Y, 10036-5701, USAGoogle Scholar
  34. 34.
    Cohen D, Feather MS, Narayanaswamy K, Fickas SS (1997) Automatic monitoring of software requirements. In: Proceedings of ICSE 1997. ACM New York, N Y, USA, pp 602–603Google Scholar
  35. 35.
    Hui B, Liaskos S, Mylopoulos J (2003) Requirements analysis for customizable software: a goals-skills-preferences framework. In: Proceedings of RE 2003. IEEE Computer Society, pp 117–126Google Scholar
  36. 36.
    Liaskos S, McIlraith S, Mylopoulos J (2006) Representing and reasoning with preference requirements using goals. Technical report, Department of Computer Science, University of Toronto, ftp://ftp.cs.toronto.edu/pub/reports/csrg/542
  37. 37.
    Lapouchnian A, Yu Y, Liaskos S, Mylopoulos J (2006) Requirements-driven design of autonomic application software. In: Proceedings of CASCON ’06. ACMGoogle Scholar
  38. 38.
    Liaskos S, Lapouchnian A, Yu Y, Yu E, Mylopoulos J (2006) On goal-based variability acquisition and analysis. In: Proceedings of RE 2006. IEEE Computer Society, pp 76–85Google Scholar
  39. 39.
    Giorgini P, Mylopoulos J, Nicchiarelli E, Sebastiani R (2002) Reasoning with goal models. In: Proceedings of ER 2002, volume 2503 of LNCS. Springer, Berlin, pp 167–181Google Scholar
  40. 40.
    Nuseibeh B, Kramer J, Finkelstein A (1993) Expressing the relationships between multiple views in requirements specification. In: Proceedings of ICSE 1993. IEEE Computer Society, pp 187–196Google Scholar
  41. 41.
    Mouratidis H, Giorgini P (2007) Secure tropos: a security-oriented extension of the tropos methodology. Int J Softw Eng Knowledge Eng 17(2):285–309CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London Limited 2010

Authors and Affiliations

  1. 1.DISIUniversity of TrentoTrentoItaly

Personalised recommendations