In software projects, individuals and technical artifacts influence each other, forming complex sociotechnical systems that require a holistic approach. Despite their complexity, these systems can be addressed in much the same way as technical systems—through requirements gathering, design, troubleshooting, and even testing.
This talk will guide listeners through how these classical systems engineering categories are reinterpreted in the context of sociotechnical systems. Particular emphasis will be placed on the concept of roles as bridging constructs between people and the artifacts they manage. The talk will include numerous examples of functional and non-functional requirements for sociotechnical systems and explore how to leverage established practices to meet these requirements using a design language specifically for sociotechnical systems.