Skip to main content

Advertisement

Log in

Adaptive socio-technical systems: a requirements-based approach

  • Original Article
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

A socio-technical system (STS) consists of an interplay of humans, organizations, and technical systems. STSs are heterogeneous, dynamic, unpredictable, and weakly controllable. Their operational environment changes unexpectedly, actors join and leave the system at will, actors fail to meet their objectives and under-perform, and dependencies on other actors are violated. To deal with such situations, we propose an architecture for STSs that makes an STS self-reconfigurable, i.e., capable of switching autonomously from one configuration to a better one. Our architecture performs a Monitor-Diagnose-Reconcile-Compensate cycle: it monitors actor behaviors and context changes, diagnoses failures and under-performance by checking whether monitored behavior is compliant with actors goals, finds a possible way to address the problem, and enacts compensation actions to reconcile actual and desired behavior. Compensation actions take into account the autonomy of participants in an STS, which cannot be controlled. Our architecture is requirements driven: we use extended Tropos goal models to diagnose failures as well as to identify alternative strategies to meet requirements. After presenting our conceptual architecture and the algorithms, it is founded upon; we describe a prototype implementation applied to a case study concerning smart-homes. We also provide experimental results that suggest that our architecture scales well as the size of the STS grows.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. http://www.linkedin.com.

  2. Serenity: system engineering for security and dependability, http://www.serenity-project.org.

  3. a standard bus that allows devices in smart-homes to communicate: http://www.knx.org/.

  4. A context is a partial state of the world that is relevant to an actor’s current intentions and status [2].

  5. Singh [43] explains the distinction between psychological and social commitments.

  6. http://www.eclipse.org/modeling/emf/.

  7. http://www.h2database.com/.

References

  1. Ali R, Dalpiaz F, Giorgini P (2008) Location-based software modeling and analysis: tropos-based approach. In: Li Q, Spaccapietra S, Yu E, Olivé A (eds) Proceedings of the 27th international conference on conceptual modeling (ER 2008), LNCS, vol. 5231. Springer, Heidelberg, pp 169–182

  2. Ali R, Dalpiaz F, Giorgini P (2010) A goal-based framework for contextual requirements modeling and analysis. Requir Eng 15(4):439–458. doi:10.1007/s00766-010-0110-z

    Article  Google Scholar 

  3. Baresi L, Pasquale L (2010) Live goals for adaptive service compositions. In: Proceedings of the 2010 ICSE won software engineering for adaptive and self-managing systems (SEAMS 2010), pp 114–123. http://doi.acm.org/10.1145/1808984.1808997

  4. Baresi L, Pasquale L, Spoletini P (2010) Fuzzy goals for requirements-driven adaptation. In: Proceedings of the 18th international IEEE requirements engineering conference (RE 2010)

  5. Bencomo N, Whittle J, Sawyer P, Finkelstein A, Letier E (2010) Requirements reflection: requirements as runtime entities. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering (ICSE 2010), ACM, pp 199–202

  6. Bordini RH, Wooldridge M, Hübner JF (2007) Programming multi-agent systems in AgentSpeak using Jason. Wiley, NY

    Book  MATH  Google Scholar 

  7. Bratman ME (1987) Intention, plans, and practical reason. Harvard University Press, Cambridge, Massachusetts

    Google Scholar 

  8. Bresciani P, Perini A, Giorgini P, Giunchiglia F, Mylopoulos J (2004) Tropos: an agent-oriented software development methodology. Auton Agent Multi Agent Syst 8(3):203–236

    Article  Google Scholar 

  9. Bryl V, Giorgini P (2006) Self-configuring socio-technical systems: redesign at runtime. Int Trans Syst Sci and Appl 2(1):31–40

    Google Scholar 

  10. Calimeri F, Cozza S, Ianni G, Leone N (2008) Computable functions in ASP: theory and implementation. In: Proceedings of the 24th international conference on logic programming (ICLP 2008), LNCS, vol 5366. Springer, pp 407–424

  11. Campadello S, Compagna L, Gidoin D, Holtmanns S, Meduri V, Pazzaglia JCR, Seguran M, Thomas R (2006) Serenity deliverable A7.D1.1: scenario selection and definition

  12. Cetina C, Giner P, Fons J, Pelechano V (2009) Autonomic computing through reuse of variability models at runtime: the case of smart homes. IEEE Comp 42(10):37–43

    Article  Google Scholar 

  13. Chess DM, Segal A, Whalley I, White SR (2004) Unity: experiences with a prototype autonomic computing system. In: Proceedings of the 1st IEEE international conference on autonomic computing (ICAC 2004). IEEE Computer Society, pp 140–147

  14. Clark J et al (1999) XSL Transformations (XSLT) Version 1.0. W3C Recommendation

  15. Cohen PR, Levesque HJ (1990) Intention is choice with commitment. Artif Intell 42(2-3):213–261

    Article  MathSciNet  Google Scholar 

  16. Dalpiaz F, Giorgini P, Mylopoulos J (2009) Software self-reconfiguration: a BDI-based approach. In: Proceedings of the 8th international conference on autonomous agents and multiagent systems (AAMAS 2009). IFAAMAS, pp 1159–1160

  17. Damus CW (2007) Implementing model integrity in EMF with MDT OCL. Eclipse corner articles, online at: http://www.eclipse.org/articles/article.php?file=Article-EMF-Codegen-with-OCL/index.html

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

    Article  MATH  Google Scholar 

  19. Decker KS, Lesser VR (1995) Designing a family of coordination algorithms. In: Proceedings of the 1st international conference on multi-agent systems (ICMAS 1995), pp 73–80

  20. Emery FE (1959) Characteristics of socio-technical systems technical report 527. Tavistock Institute, London

    Google Scholar 

  21. Feather MS, Fickas S, van Lamsweerde A, Ponsard C (1998) Reconciling system requirements and runtime behavior. In: Proceedings of the 9th international workshop on software specification and design (IWSSD’98). IEEE Computer Society Washington, DC, USA, pp 50–59

  22. Floch J, Hallsteinsen S, Stav E, Eliassen F, Lund K, Gjorven E (2006) Using architecture models for runtime adaptability. IEEE Softw 23(2):62–70. http://dx.doi.org/10.1109/MS.2006.61

    Google Scholar 

  23. Garcia-Molina H, Salem K (1987) Sagas. In: Proceedings of the 1987 SIGMOD annual conference, pp 249–259

  24. Garlan D, Cheng SW, Huang AC, Schmerl B, Steenkiste P (2004) Rainbow: architecture-based self-adaptation with reusable infrastructure. IEEE Comput 37(10):46–54. doi:10.1109/MC.2004.175

    Article  Google Scholar 

  25. Hevner AR, March ST, Park J, Ram S (2004) Design science in information systems research. MIS Q 28(1):75–105

    Google Scholar 

  26. Horn P (2001) Autonomic computing: IBM’s perspective on the state of information technology. Talk given at IBM TJ Watson Labs, NY

    Google Scholar 

  27. Hui B, Liaskos S, Mylopoulos J (2003) Requirements analysis for customizable software goals-skills-preferences framework. In: Proceedings of the 11th IEEE international conference on requirements engineering (RE’03). IEEE Computer Society, pp 117–126

  28. Jureta IJ, Mylopoulos J, Faulkner S (2008) Revisiting the core ontology and problem in requirements engineering. In: Proceedings of the 16th IEEE international conference on requirements engineering (RE 2008), pp 71–80

  29. Kramer J, Magee J (2007) Self-managed systems: an architectural challenge. In: Proceedings of the 29th international conference on software engineering (ICSE 2007). IEEE Computer Society, pp 259–268

  30. Myers KL (1999) CPEF: a continuous planning and execution framework. AI Mag 20(4):63–69

    Google Scholar 

  31. Object Management Group (2008) Software & systems process engineering metamodel specification (SPEM) Version 2.0. Tech. rep

  32. Oreizy P, Gorlick MM, Taylor RN, Heimbigner D, Johnson G, Medvidovic N, Quilici A, Rosenblum DS, Wolf AL (1999) An architecture-based approach to self-adaptive software. IEEE Intell Syst 14(3):54–62

    Article  Google Scholar 

  33. Oreizy P, Medvidovic N, Taylor RN (1998) Architecture-based runtime software evolution. In: Proceedings of the 20th international conference on software engineering (ICSE 1998), pp 177–186

  34. Penserini L, Perini A, Susi A, Mylopoulos J (2007) High variability design for software agents: extending tropos. ACM transactions on autonomous and adaptive systems 2(4):16. doi:http://doi.acm.org/10.1145/1293731.1293736

  35. Preece J, Rogers Y, Sharp H (2002) Interaction design: beyond human-computer interaction. Wiley, NY

    Google Scholar 

  36. Rao AS, Georgeff MP (1991) Modeling rational agents within a BDI-architecture. In: Proceedings of the 2nd international conference on principles of knowledge representation and reasoning (KR’91). Morgan Kaufmann publishers Inc., San Mateo, CA, USA, pp 473–484

  37. Rao AS, Georgeff MP (1995) BDI agents: from theory to practice. In: Proceedings of the 1st international conference on multi-agent systems (ICMAS-95), San Fransisco, USA, pp 312–319

  38. Robinson WN (2006) A requirements monitoring framework for enterprise systems. Requir Eng 11(1):17–41

    Article  Google Scholar 

  39. Sardina S, Padgham L (2007) Goals in the context of BDI plan failure and planning. In: Proceedings of the 6th international joint conference on autonomous agents and multiagent systems (AAMAS 2007), pp 16–23

  40. Singh MP (1991) Social and psychological commitments in multiagent systems. In: AAAI fall symposium on knowledge and action at social and organizational levels, pp 104–106

  41. Singh MP (1999) An ontology for commitments in multiagent systems: toward a unification of normative concepts. Artif Intell Law 7(1):97–113

    Article  Google Scholar 

  42. Sykes D, Heaven W, Magee J, Kramer J (2008) From goals to components: a combined approach to self-management. In: Proceedings of the 2008 ICSE Workshop on software engineering for adaptive and self-managing systems (SEAMS 2008), pp 1–8

  43. van der Krogt R, de Weerdt M (2005) Plan repair as an extension of planning. In: Proceedings of the 2005 international conference on automated planning & scheduling (ICAPS 2005), pp 161–170

  44. van der Krogt R, de Weerdt M, Witteveen C (2003) A resource based framework for planning and replanning. Web Intell Agent Syst 1(3):173–186

    Google Scholar 

  45. van Lamsweerde A, Letier E (2000) Handling obstacles in goal-oriented requirements engineering. IEEE Trans Softw Eng 26(10):978–1005

    Article  MATH  Google Scholar 

  46. Wang Y, McIlraith S, Yu Y, Mylopoulos J (2007) An automated approach to monitoring and diagnosing requirements. In: Proceedings of the 22nd IEEE/ACM international conference on automated s engineering (ASE’07). ACM New York, NY, USA, pp 293–302

  47. Wang Y, Mylopoulos J (2009) Self-repair through reconfiguration: a requirements engineering approach. In: Proceedings of the 24th IEEE/ACM international conference on automated software engineering (ASE’09). IEEE Computer Society, pp 257–268

  48. Whittle J, Sawyer P, Bencomo N, Cheng B, Bruel JM (2010) RELAX: a language to address uncertainty in self-adaptive systems requirement. Requir Eng 15(2):177–196

    Article  Google Scholar 

  49. Yu ESK (1996) Modeling strategic relationships for process reengineering. PhD thesis, University of Toronto, Toronto, ON, Canada

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fabiano Dalpiaz.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dalpiaz, F., Giorgini, P. & Mylopoulos, J. Adaptive socio-technical systems: a requirements-based approach. Requirements Eng 18, 1–24 (2013). https://doi.org/10.1007/s00766-011-0132-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-011-0132-1

Keywords

Navigation