Requirements Engineering

, Volume 14, Issue 1, pp 47–70 | Cite as

Designing socio-technical systems: from stakeholder goals to social networks

  • Volha BrylEmail author
  • Paolo Giorgini
  • John Mylopoulos
Original Article


Software systems are becoming an integral part of everyday life influencing organizational and social activities. This aggravates the need for a socio-technical perspective for requirements engineering, which allows for modelling and analyzing the composition and interaction of hardware and software components with human and organizational actors. In this setting, alternative requirements models have to be evaluated and selected finding a right trade-off between the technical and social dimensions. To address this problem, we propose a tool-supported process of requirements analysis for socio-technical systems, which adopts planning techniques for exploring the space of requirements alternatives and a number of social criteria for their evaluation. We illustrate the proposed approach with the help of a case study, conducted within the context of an EU project.


Socio-technical systems Exploring requirements alternatives Planning Evaluation metrics 



We thank the anonymous reviewers for the valuable comments and suggestions. This work has been partially funded by EU Commission through the SERENITY project, by MEnSA-PRIN project, and by the Provincial Authority of Trentino through the STAMPS project.


  1. 1.
    Albers S, Eilts S, Even-Dar E, Mansour Y, Roditty L (2006) On Nash equilibria for a network creation game. In: SODA’06, pp 89–98Google Scholar
  2. 2.
    Anderson JS, Fickas S (1989) A proposed perspective shift: viewing specification design as a planning problem. In: IWSSD’89 pp 177–184Google Scholar
  3. 3.
    Anshelevich E, Dasgupta A, Tardos E, Wexler T (2003) Near-optimal network design with selfish agents. In: STOC’03, pp 511–520Google Scholar
  4. 4.
    Asnar Y, Bryl V, Giorgini P (2006) Using risk analysis to evaluate design alternatives. In: AOSE’06 post-proceedings, vol 4405. Springer, Heidelberg, pp 140–155Google Scholar
  5. 5.
    Baier J, Bacchus F, McIlraith S (2007) A heuristic search approach to planning with temporally extended preferences. In: IJCAI’07, pp 1808–1815Google Scholar
  6. 6.
    Biffl S, Aurum A, Boehm B, Erdogmus H, Grünbacher P (2005) Value-based software engineering. Springer, New YorkGoogle Scholar
  7. 7.
    Bresciani P, Giorgini P, Giunchiglia F, Mylopoulos J, Perini A (2004) Tropos: an agent-oriented software development methodology. JAAMAS 8(3):203–236Google Scholar
  8. 8.
    Bresciani P, Giorgini P, Mouratidis H, Manson G (2004) Multi-agent systems and security requirements analysis. In: Software engineering for multi-agent systems II, Springer, Heidelberg, pp 35–48Google Scholar
  9. 9.
    Bryl V, Giorgini P (2006) Self-configuring socio-technical systems: redesign at runtime. In: SOAS’06Google Scholar
  10. 10.
    Bryl V, Giorgini P, Mylopoulos J (2006) Designing cooperative IS: exploring and evaluating alternatives. In: CoopIS’06, pp 533–550Google Scholar
  11. 11.
    Bryl V, Giorgini P, Mylopoulos J (2007) Supporting requirements analysis in Tropos: a planning-based approach. In: PRIMA’07Google Scholar
  12. 12.
    Bryl V, Massacci F, Mylopoulos J, Zannone N (2006) Designing security requirements models through planning. In: CAiSE’06, pp 33–47Google Scholar
  13. 13.
    Castillo L, Fdez-Olivares J, Gonzalez A (2003) Integrating hierarchical and conditional planning techniques into a software design process for automated manufacturing. In: ICAPS’03, pp 28–39Google Scholar
  14. 14.
    Chung LK, Nixon BA, Yu E, Mylopoulos J (2000) Non-functional requirements in software engineering. Kluwer, DordrechtGoogle Scholar
  15. 15.
    Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Sci Comput Program 20:3–50zbMATHCrossRefGoogle Scholar
  16. 16.
    Dash RK, Jennings NR, Parkes DC (2003) Computational mechanism design: a call to arms. IEEE Intell Syst 18(6):40–47CrossRefGoogle Scholar
  17. 17.
    Davidson M, Garagnani M (2002) Pre-processing planning domains containing language axioms. In: PlanSIG’02, pp 23–34Google Scholar
  18. 18.
    Edelkamp S, Hoffmann J (2004) PDDL2.2: The language for the classical part of the 4th international planning competition. Technical Report 195, University of Freiburg, GermanyGoogle Scholar
  19. 19.
    Emery F (1959) Characteristics of socio-technical systems. Tavistock, LondonGoogle Scholar
  20. 20.
    Fox M, Long D (2003) PDDL2.1: an extension to PDDL for expressing temporal planning domains. JAIR 20:61–124zbMATHGoogle Scholar
  21. 21.
    Franch X (2006) On the quantitative analysis of agent-oriented models. In: CAiSE’06, pp 495–509Google Scholar
  22. 22.
    Gans G, Jarke M, Kethers S, Lakemeyer G (2001) Modeling the impact of trust and distrust in agent networks. In: AOIS’01, pp 45–58Google Scholar
  23. 23.
    Garagnani M (2000) A correct algorithm for efficient planning with preprocessed domain axioms. Research and Development in Intelligent Systems XVII, Springer, Heidelberg, pp 363–374Google Scholar
  24. 24.
    Garzetti M, Giorgini P, Mylopoulos J, Sannicolò F (2002) Applying Tropos methodology to a real case study: complexity and criticality analysis. In: WOA’02, pp 7–13Google Scholar
  25. 25.
    Gazen BC, Knoblock CA (1997) Combining the expressivity of UCPOP with the efficiency of Graphplan. In: ECP’97, pp 221–233Google Scholar
  26. 26.
    Gerevini A, Long D (2005) Plan constraints and preferences in PDDL3. Technical Report RT 2005-08-47, University of Brescia, ItalyGoogle Scholar
  27. 27.
    Ghallab M, Howe A, Knoblock C, McDermott D, Ram A, Veloso M, Weld D, Wilkins D (1998) PDDL—the planning domain definition language. In: AIPS’98Google Scholar
  28. 28.
    Giacomo GD, Lesperance Y, Levesque HJ (2000) ConGolog, a concurrent programming language based on the situation calculus. Artif Intell 121(1–2):109–169zbMATHCrossRefGoogle Scholar
  29. 29.
    Giorgini P, Mylopoulos J, Nicchiarelli E, Sebastiani R (2002) Reasoning with goal models. In: ER’02, pp 167–181Google Scholar
  30. 30.
    Gross D, Yu ESK (2001) From non-functional requirements to design through patterns. Requir Eng 6(1):18–36zbMATHCrossRefMathSciNetGoogle Scholar
  31. 31.
    Kaiya H, Shinbara D, Kawano J, Saeki M (2005) Improving the detection of requirements discordances among stakeholders. Requir Eng 10(4):289–303CrossRefGoogle Scholar
  32. 32.
    Koehler J, Nebel B, Hoffmann J, Dimopoulos Y (1997) Extending planning graphs to an ADL subset. In: ECP’97, pp 273–285Google Scholar
  33. 33.
    Koutsoupias E, Papadimitriou C Worst-Case Equilibria. In: STACS’99Google Scholar
  34. 34.
    Lai K, Feldman M, Stoica I, Chuang J (2003) Incentives for cooperation in peer-to-peer networks. In: Workshop on economics of peer-to-peer systemsGoogle Scholar
  35. 35.
    Letier E, van Lamsweerde A (2004) Reasoning about partial goal satisfaction for requirements and design engineering. SIGSOFT Softw Eng Notes 29(6):53–62CrossRefGoogle Scholar
  36. 36.
    LPG Homepage. LPG-td Planner.
  37. 37.
    Moscibroda T, Schmid S, Wattenhofer R (2006) On the topologies formed by selfish peers. In: PODC’06, pp 133–142Google Scholar
  38. 38.
    Newman MEJ (2003) The structure and function of complex networks. SIAM Rev 45(2):167–256zbMATHCrossRefMathSciNetGoogle Scholar
  39. 39.
    Osborne MJ, Rubinstein A (1994) A course in game theory. MIT Press, USAGoogle Scholar
  40. 40.
    Peer J (2005) Web service composition as AI planning—a survey. Technical report, University of St. Gallen, SwitzerlandGoogle Scholar
  41. 41.
    Polleres A (2003) Advances in answer set planning. PhD thesis, Vienna University of Technology, AustriaGoogle Scholar
  42. 42.
    Potts C, Newstetter WC (1997) Naturalistic inquiry and requirements engineering: reconciling their theoretical foundations. In: RE’97, p 118Google Scholar
  43. 43.
    Ropohl G (1999) Philosophy of socio-technical systems. Soc Philos Technol 4(3):55–71Google Scholar
  44. 44.
    Security and Dependability Tropos Tool.
  45. 45.
    Serenity: System Engineering for Security and Dependability. Deliverable A1.D2.1. Security and Privacy Requirements at Organizational Level.
  46. 46.
    Simon HA (1969) The science of the artificial. MIT Press, USAGoogle Scholar
  47. 47.
    Sommerville I (2004) Software engineering, 7th edn. Addison-Wesley, USAGoogle Scholar
  48. 48.
    Sutcliffe AG, Minocha S (1999) Linking business modelling to socio-technical system design. In: CAiSE’99. pp 73–87Google Scholar
  49. 49.
    van Lamsweerde A (2000) Requirements engineering in the year 00: a research perspective. In: ICSE’00, pp 5–19Google Scholar
  50. 50.
    Walker GH, Stanton NA, Salmon PM, Jenkins DP (2008) A review of sociotechnical systems theory: a classic concept for new command and control paradigms. Theor IssuesErgonomics Sci 9(6):479–499Google Scholar
  51. 51.
    Weiss M, Amyot D, Mussbacher G (2006) Formalizing architectural patterns with the goal-oriented requirement language. In: VikingPLoP’06Google Scholar
  52. 52.
    Weld DS (1999) Recent advances in AI planning. AI Mag 20(2):93–123Google Scholar
  53. 53.
    Yu ESK (1996) Modelling strategic relationships for process reengineering. PhD thesis, University of Toronto, CanadaGoogle Scholar
  54. 54.
    Zannone N (2006) A requirements engineering methodology for trust, security, and privacy. PhD thesis, University of Trento, ItalyGoogle Scholar

Copyright information

© Springer-Verlag London Limited 2009

Authors and Affiliations

  1. 1.Dipartimento di Ingegneria e Scienza dell’InformazioneUniversity of TrentoPovo (TN)Italy
  2. 2.Department of Computer ScienceUniversity of TorontoTorontoCanada

Personalised recommendations