Skip to main content
Article thumbnail
Location of Repository

Architectural support for socio-technical systems

By Osama E. S. El-Hassan


Software development paradigms are increasingly stretching their scope from the core technical implementation of required functionalities to include processes and people who interact with the implemented systems. Socio-technical systems reflect such a trend as they incorporate the interactions and processes of their social participants, by treating them not as users but as integral players who enact well-defined roles. However, developers of these systems struggle with their complexity and weak architectural support. The challenge is that existing toolboxes for modelling and implementing complex software systems do not take into account interactions that are not causal, but only biddable (i.e. whose execution cannot be ensured by software). Therefore, models and implementations generated by these toolboxes cannot detect and respond to situations in which the system participants deviate from prescribed behaviour and fail to play the role that they have been assigned as entities of the system.\ud The research focus is on how a norm-based architectural framework can promote the externalisation of the social dimension that arises in software-intensive systems which exhibit interactions between social components (i.e. people or groups of people) and technical components (devices, computer-based systems and so on) that are critical for the domain in which they operate.\ud This includes building normative models for evolvable and adaptable socio-technical systems to target such interactions in a way that ensures that the required global properties emerge.\ud The proposed architectural framework is based on a new class of architectural connectors (social laws) that provide mechanisms through which the biddability of human interactions can be taken into account, and the sub-ideal situations that result from the violation of organisational norms can be modelled and acted upon by self-adapting the socio-technical systems.\ud The framework is equipped with a new method underpinned by a coherent body of concepts and supported by a graph-based formalism in which roles present the structural semantics of the configuration, while the laws have operational semantics given by the graph transformations rules. Guiding methodological steps are given to support the identification of critical social interactions and the implementation of the proposed method.\ud Case studies derive the evaluation of the approach to demonstrate its generality, applicability, flexibility and maintainability

Publisher: University of Leicester
Year: 2009
OAI identifier:

Suggested articles


  1. (2003). 0 Appendix A: Bibliography iv
  2. (2002). 02:
  3. (2001). A Computational Theory of Normative Positions",
  4. (1988). A Different Approach to Deontic Logic: Deontic Logic Viewed as a Variant of Dynamic Logic",
  5. (1997). A Field Guide to Boxology: Preliminary Classification of Architectural Styles,
  6. (1997). A Formal Basis for Architectural Connection",
  7. (1996). A Formal Characterisation of Institutionalised Power",
  8. (1997). A Framework for Classifying and Comparing Architecture Description Languages,
  9. (2003). A Framework for Evaluation of Agent Oriented Methodologies,
  10. (2007). A Generic Framework for the Engineering of SelAdaptive Systems and Self-Organising Systems,
  11. (2001). A Graph Based Architectural (Re)configuration Language,
  12. (2002). A Graph Transformation Approach to Software Architecture",
  13. (2002). A Graphbased Formalism for RBAC",
  14. (2003). A Mathematical Semantics for Architectural Connectors,
  15. (1996). A Mathematical Toolbox for the Software Architect,
  16. (1998). A Meta-Model for the Analysis and Design of Organizations in Multi-Agent Systems,
  17. (2003). A Model for Organizational Interaction, based onAgents, founded in Logic,
  18. (2001). A Model of OASIS Role Access Control and its Support for Active Security,
  19. (1999). A Model-Based Approach to Self-Adaptive Software",
  20. (2001). A Multi-perspective Methodology Based on Business Rules,
  21. (1964). A New System of Deontic Logic",
  22. (1977). A Pattern Language,
  23. (2003). A Role Based Model for the Normative Specification of Organized Collective Agency and Agents Interaction",
  24. (2002). A Schema for Specifying Computational Autonomy,
  25. (1999). A Viewbased Approach to System Modeling based on
  26. (2002). A Visual Environment for Visual Languages",
  27. (2004). About Norms and Causes",
  28. (2006). Abstract Graph Transformation,
  29. (1997). ACME: An Architecture Description Language,
  30. (1993). Adding Implicit Invocation to Languages: Three Approaches, in
  31. (2002). Agent Coordination Contexts: Experiments in TuCSoN,
  32. (1999). Aircraft Accident Brief: EgyptAir Flight 990 Boeing 767-366ER, SU-GAP, 60 Miles Soucth of Nantucket,
  33. (1997). Algebraic Approach to Graph Transformation, Part1: Basic Concepts and Double Pushout Approach,
  34. (1994). Amalgamated Graph Transformation and their Use for Specifying AGG—An Algebraic Graph Grammar System,
  35. (1993). An Algebraic Framework for the Transformation of Attributed Graphs,
  36. (2003). An Approach to Relate Viewpoints and Modeling Languages,
  37. (1999). An Architectural-Based Approach to SelfAdaptive Software",
  38. (2002). An Enhanced Role Model for Alleviating the Role-Binding Anomaly",
  39. (2004). An Example of Domain Decomposition through Application of the Problem Frames Approach to Complex Problem, Computing Department, The Open University,
  40. (1993). An Introduction to Software Architecture,
  41. An Organisational Oriented Model for Agent Societies,
  42. (2002). An Outlook on Software Engineering for Modern Distributed Systems,
  43. (1995). An Overview of Workflow Management: From Process Modeling to Workflow Automation",
  44. (1998). Analysing Dynamic Change
  45. (1999). Applied Software Architecture,
  46. (2007). Architecting Dynamic Reconfiguration in Dependable Systems,
  47. Architecture Based Evolution of Software Systems,
  48. (2002). Attribute-Based Techniques to Evaluate Architectural Styles", Acta Científica Venezolana,
  49. (2007). Attributed Graph Transformation with Node Inheritance",
  50. (2002). Aura: An Architectural Framework for User Mobility in Ubiquitous Computing Environments,
  51. (2005). Behavioral Interventions Based on the Theory of Planned Behavior,
  52. (2003). Business Process Management: The Third Wave,
  53. (2005). Capitalizing on Awareness of User Tasks for Guiding Self-Adaptation, in
  54. (2003). Capturing Agent Autonomy in Roles and XML,
  55. (2004). Caramba—A Process-aware Collaboration System Supporting Ad hoc and Collaborative Processes in Virtual Teams",
  56. (1973). Categorial Foundations for General Systems Theory,
  57. (1997). Categorial Semantics of Parallel Program Design",
  58. (2004). Categories for Software Engineering,
  59. (2003). Changing Roles: Dynamic Assignement",
  60. (1997). Combining Dynamic Deontic Logic and Temporal Logic for the Specification of Deadlines",
  61. (1985). Communicating Sequential Processes,
  62. (2004). Completely Unanticipated Dynamic Adaptation of Software,
  63. (1998). Component Software: Beyond Object-Oriented Programming,
  64. (2003). Composing Architectural Styles From Architectural Primitives,
  65. (2005). Conceptual Modeling of Styles for Mobile Systems: A Layered Approach Based on Graph Transformation
  66. (1990). Configuraion Programming - A Frmaework for the Development of Distributable Systems,
  67. (2005). Configuration Modelling and Analysis of Complex Systems,
  68. (1999). Conflicts in Policy-Based Distributed Systems Management",
  69. (1999). Consistency Preserving Dynamic Reconfiguration of Distributed Systems,
  70. (1996). Contrary-to-Duty Obligations",
  71. (1998). Control Principle and Role Hierarchies,
  72. (2002). Coordination Contracts, Evolution and Tools",
  73. (1992). Coordination Languages and their Significance",
  74. (1983). Coordination System Technology as the Basis for a Programming Environment",
  75. (2002). Coordination Technologies for Business Strategy Support: A Case Study
  76. (1994). Correctness and Composition of Software Architectures,
  77. (1994). CSCW—History and Focus",
  78. (2000). Dealing with Workflow Changes: Identification of Issues and Solutions",
  79. (2002). Deconstructing, in Social Thinking—Software Practice,
  80. Deontic Interpreted Systems",
  81. (2002). Deontic Logic and Contrary-To-Duty,
  82. (1951). Deontic Logic",
  83. (2002). Describing Policies with Graph Constraintss and Rules,
  84. (1998). Describing Software Architectures using Graph Grammars",
  85. (2004). Designing a Deontic Logic of Deadlines,
  86. (1994). Designing a Language for Interactions",
  87. (2007). Designing for Software's Social Complexity",
  88. (2003). Developing Multi-Agent Systems: The Gaia Methodology",
  89. (2000). Dynamic Meta Modeling: A Graphical Approach to the Operational Semantics of Behavioral Diagrams
  90. (2005). Dynamic Meta Modelling: A Semantics Description Technique for Visual Modelling Languages,
  91. (2006). EMF Model Refactoring based on Graph Transformation Concepts,
  92. (2001). Enforcing Business Policies Through Automated Reconfiguration,
  93. (2006). Ethnography and Social Structures of Work,
  94. (1994). Exoskeletal Software,
  95. (2001). Extending Role-based Access Control Model with States,
  96. Final Report and Recommendations for Research on Human-Automation interaction in the Next Generation Air Transportation System,
  97. (2000). FIPA Communicative Act Library,
  98. (2001). Formal Foundations of Software Evolution: Workshop Report",
  99. (2003). Formal Specification of Interaction in Agent Societies",
  100. (2001). Formalising a Language for Institutions and Norms,
  101. (1995). Formalising Styles to Understand Descriptions of Software Architecture",
  102. (2003). Formalizing the Informal?: Dynamic Social Order, Buttom-up Social Control, and Spontaneous Normative Relations",
  103. (1992). Foundations for the Study of Software Architecture",
  104. (2006). Freshman Introduction to the Foundations of Computing
  105. (2006). Generating Instance Models from Meta Models,
  106. (1985). Generative Communication in Linda",
  107. (2001). Goal-Oriented Elaboration of Security Requirements,
  108. (1998). Graph Grammars and Constraint Solving for Software Architectures Styles,
  109. (1973). Graph Grammars: An Algebraic Approach,
  110. (1996). Graph Processes",
  111. (2003). Graph Transformation Models for Software Architectue Styles, Departmento de Computación Facultad de Ciencias Exactas Naturales, Universidad de Buenos Aires,
  112. Graphical Operational Semantics,
  113. (1991). Groupware—Some Isssues and Experiences",
  114. (1999). Handbook of Graph Grammars and Computing by Graph Transformation,
  115. (1962). How to Do Things with Words,
  116. (2003). Increasing System Dependability through Architecture-based Self-Repair,
  117. (1992). Institutions: Abstrsct Model Theory for Specification and Programming",
  118. (2004). Integrating Met-modelling Aspects with Graph Transformation for Efficient Visual Language Definition and Model Manipulation,
  119. (2000). Integrating Visual Modelling of Agent-based and Object-oriented Systems,
  120. (2005). Interactions: The Heart and Soul of Business Process Management,
  121. (1994). Interfaces, Protocols, and SemiAutomatic Construction of Software Adaptors",
  122. (2008). Intuitive Surgical, Inc., da Vinci Surgical System,
  123. (2008). Intuitive, Intuitive Surgical, Inc., da Vinci Surgical System,
  124. (2007). IT Support for Healthcare Processes: Premises,
  125. (2002). Knowledge Management: A socio-Technical perspective,
  126. (1995). KQML as an Agent Communication Language,
  127. (1972). Law and Logic",
  128. (2000). Level of Delegation and Levels of Adoption as the Basis for Adjustable Autonomy,
  129. (1980). Life Cycles, and Laws of Software Evolution,
  130. (1998). Managing Conflicts in Goal-Driven Requirements Engineering ",
  131. (2005). Managing Dynamic Reconfiguration in Component-based Systems,
  132. (2008). Managing Socio-technical Interactions in Healthcare Systems,
  133. (2005). Mapping ADL Specifications to an Efficient and Reconfigurable Runtime Component Platform,
  134. (2005). Model Transformation by Graph Transformation: A Comparative Study",
  135. (1998). Modeling Directed Obligations and Permissions in Trade Contracts,
  136. (2003). Modelling Access Policies Using Roles in Requirements Engineering",
  137. (2006). Modelling Based on Responsibility,
  138. (2008). Modelling Dimensions of Self-Adaptive Systems,
  139. (1997). Modelling Organizational Issues for Enterprise Integration,
  140. (2004). Modelling Sociotechnical Specifics using Architectural Concepts in
  141. (1998). Multi-view Description of Software Architectures,
  142. (2003). Networks, Negotiations, and New Times: the Implementation of Enterprise Resource Planning into an Academic Administration",
  143. Norm-based Agency for Designing Collaborative Information Systems",
  144. (1998). Normative Positions, in Proc. of the Workshop in deontic logic in computer science; Norms, logics and information systems new studies in deontic logic and computer science,
  145. (1999). Normative Positions, Norms, Logics and Information Systems,
  146. (2003). Norms that Confer Competence",
  147. (1996). Object Oriented Modeling with Roles,
  148. (2004). OMNI: Introducing Social Structure, Norms and Ontologies into Agent Organisations,
  149. (2005). On Modelling Access Policies: Relating Roles to Organisational Contexts,
  150. On Style in Architecture, in Fundamental Issues,
  151. (2000). On the Representation of Roles in Object-oriented and Conceptual Modelling",
  152. (1998). Open Graph Transformation Systems: A New Approach to the Compositional Modelling of Concurrent and Reactive Systems,
  153. (2004). OpenCOM v2: A Component Model for Building Systems Software,
  154. (1970). Organization and Management: A System Approach,
  155. (2005). Organizational Abstractions for Adaptive Systems",
  156. (2005). Organizational Semitotics,
  157. (2005). OSM: An Organizational State Machine Model for CSCW Systems,
  158. (1996). Parameterised Programming and Software Architecture,
  159. (2003). Permissions and Obligations in Hierarchical Normative Systems,
  160. (1996). Polices and Role in Collaborative Systems,
  161. (2000). Policy Based Network Management,
  162. (2005). Problem Frames For Socio-Technical Systems, in Requirements Engineering for Socio-technical Systems,
  163. Problem Frames for Socio-technical Systems: Predictability and Change,
  164. (2004). Problem Frames: A Case for Coordination,
  165. (2006). Problem-based Analysis of Organisational Change: A Real-world Example,
  166. (2005). Process Modelling: The Deontic Way,
  167. (1995). Processes: Modelling and Analysis for Re-engineering and Improvement,
  168. (1976). Programming-in-the-Large Versus Programming-in-the-Small",
  169. (2002). Project Aura: Towards Distraction-Free Pervasive Computing",
  170. (2007). Putting the Technical Back into Socio-technical Systems Research",
  171. (1906). Reconfuguration of Software Architecture Styles with Name Mobility,
  172. (1990). Reinhold:
  173. (2002). Relating Software Requirements and Architectures Using Problem Frames,
  174. (2004). Reo: A Channel-based Coordination Model For Component Composition ",
  175. (2003). Requirement Analysis: From Views to Architecture, Upper Saddle River,
  176. (2000). Requirements Analysis for Socio-Technical System Design",
  177. (1986). Response to Reviews of Understanding Computers and Cognitions",
  178. (1966). Rights and Parliamentarism",
  179. (1998). Role Model Based Framework Design and Integration,
  180. (1999). Role Model designs and Implementations with Aspectoriented Systems,
  181. (1999). Role of Obligation in Multi-Agent Coordination",
  182. (2004). Role-Based Access Control in MAS using Agent Coordination Contexts,
  183. Role-Based Access Control Models",
  184. (2006). Role-based Architectural Modelling of Socio-Technical Systems,
  185. (2007). Roles, Players and Adaptive Organisations", Applied Ontology: An Interdisciplinary
  186. (2000). Scientific:
  187. (2006). Self-Configuring Socio-technical Systems: Redesign at Runtime",
  188. (2000). Semiotics in Information Systems Engineering, Cambridge,
  189. (2002). Separating Computation, Coordination and Configuration",
  190. (2003). Silent Agents. Behavioural Implicit Communication for M-A Coordination and HMI,
  191. (2004). Smart Monitors for Composed Services,
  192. (1994). Social Norms in Requirements Analysis: An Outline of MEASURE,
  193. (1960). Socio-technical Systems,
  194. (2003). Sociotechnical Requirements Analysis for Clinical Systems",
  195. (2001). Soft Systems Methodology in Action,
  196. (1984). Soft Systems Methodology,
  197. (1996). Software Architecture,
  198. (1995). Software Requirements and Specifications: A Lexicon of Practice, Principles and Prejudices,
  199. (1999). Specification and Refinement of Dynamic Software Architecture,
  200. (1999). Specification of Software Architecture Reconfiguration, PhD,
  201. (1998). Specifying and Analyzing Dynamic Software Architectures,
  202. (1995). Specifying Distributed Software Architectures,
  203. (2007). Specifying Monitoring and Switching Problems in Context, in
  204. (1969). Speech Acts,
  205. (2002). Speech Acts, Mind, and Social Reality",
  206. (2006). Stochastic Graph Transformation Systems",
  207. (1981). Structural Operational Semantics, Aarhus University, DAIMI FN-19,
  208. (1992). Structure in Fives: Designing Effective Organisations,
  209. (2006). Style-Based Modelling and Refinement of Service Oriented Architectures",
  210. (1991). Summary of Human-Centred System Research
  211. (2003). Synchronizions in Team Automata for Groupware Systems",
  212. (1993). Taking More of the Soft of Software Engineering,
  213. (2003). Taxonomy of Evolution and Dependability,
  214. (2007). Ten Philosophical Problems in Deontic Logic,
  215. (1992). Term Rewriting Systems,
  216. (1995). The 4+1 view of Architecture",
  217. (1992). The Chemical Abstract Machine",
  218. (2001). The Contingency Theory of Organisations, Foundations for Organisational Science,
  219. (2000). The Declarative Problem Frame: Designing Systems that Create and Use Norms,
  220. (1999). The Deontic Pattern: A Framework for Domain Analysis in Information Systems Design",
  221. (2005). The FLOWer Case-Handling Approach: Beyond Workflow Management,
  222. (2003). The Human-Computer Interaction Handbook: Fundamentals, Evolving Technologies and Emerging Applications, London, Lawrence Erlbaum Associates,
  223. (2001). The K-Component Architecture Meta-Model for Self-Adaptive Software,
  224. (2004). The Management of Socio-technical Systems using Configuration Modelling",
  225. (2000). The NIST Model for Role-based Access Control: Towards a Unified Standard,
  226. (2001). The Ponder Specification Language,
  227. (1991). The Theory of Planned Behavior",
  228. (1999). The Uses of Role Hierarchies in Access Control,
  229. (1990). The Work-a-day World as a Paradigm for CSCW Design,
  230. (1997). THEA: Human Error Analysis for Requirements Definition,
  231. (1956). Three Models for the Description of Language",
  232. (2008). Towards a Taxonomy of Process Flexibility,
  233. (2002). Towards an Analytical Role Modelling Framework for Security Requirements,
  234. (1997). Towards an Optimal Data Set for Intensive Care,
  235. (2001). Translating Role-Based Access Control Policy within Context,
  236. (2000). Translation: A UML-based Specification Technique and Active Implementation Approach, Ph.D.,
  237. (2002). Tutorial Introduction to Graph Transformation: A Software Engineering Perspective,
  238. (1985). Understanding Organizations, 3rd edition ed.,
  239. (1995). User Representation: Paractices, Methods and Sociology,
  240. (2005). Workflow Data Patterns, Identification, Representation and Tool Support,
  241. (2005). Workflow Resource Patterns: Identification, Representation and Tool Support

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.