What Is a Sociotechnical Knowledge Map and Why You Should Care

As an engineer, you intuitively understand it’s a challenge to design systems for how people and technology work together. The volume of interactions is staggering, and modern architectural and organizational design patterns result in dynamic, distributed, yet intricately entwined systems that are only growing in complexity.
Given this complicated, ever-evolving reality, how can high-performing software development operations maintain ongoing improvements in reliability and velocity? By taking a page from sociotechnical system theory — originally conceptualized around coal mining operations — and adapting it to modern “code mining”
operations.
Defining a Sociotechnical System
The definition of a sociotechnical system (STS) has evolved over the decades. Here’s one from Interaction Design Foundation that is apt for software engineering:
“A socio-technical system (STS) is one that considers requirements spanning hardware, software, personal, and community aspects. It applies an understanding of the social structures, roles and rights (the social sciences) to inform the design of systems that involve communities of people and technology.”
Here’s a visual representation of a sociotechnical system, a living knowledge map covering all the applications, services, environments, resources, teams, tools, documentation and governance involved in modern software applications.
How a Living Sociotechnical Knowledge Map Helps Your Team
A living knowledge map helps your team understand and improve by making fragmented information organized and accessible. There are numerous scenario-specific benefits, and the bottom line is a higher-velocity organization that produces more reliable software.
Here are some of those scenario-specific examples:
Lack of Infrastructure Transparency
Whether you’re a single, hybrid, or multicloud operation, chances are you have more than one cloud account. Between figuring out the right cloud account and navigating single sign-on and clunky cloud consoles, it can take minutes to find basic information about a resource. Forget about easily identifying orphaned resources, navigating nuanced compliance questions, etc. A living knowledge map enables infrastructure transparency via a single, filterable view across clouds and accounts. It gives engineers the ability to ask nuanced questions too.
Fragmented Service Knowledge
Who owns a service? Who’s on call? Where are docs, specs and runbooks? What are its dependencies and dependants? Do I really need to page through hundreds of dashboards to find KPIs (key performance indicators)? How quickly can I look for recent CI/CD failures? What resources, broken down by environment, does this service depend on? A living knowledge map makes all this accessible for every service in a single, searchable view.
Hard-To-Answer Questions
Answering powerful questions about compliance, security, architectural standards, cloud costs, staffing and more historically involves interrupting teams, working in spreadsheets and extra effort. Not when all the information across these previously disparate dimensions is organized into a single living knowledge map, which enables you to manage initiatives to programmatically align teams and drive best practices across the organization. You can also define and enforce standards, while providing optics to teams and leaders.
A Simple Solution
Implementing a living knowledge map is easier than you think. Modern internal developer portals are architected around universal catalogs, which themselves are a living sociotechnical knowledge map.
With configure8, connect your tools and clouds via single-click integrations, link resources to environments and services, tag owners and documentation, integrate your tools, and you’ve got a living sociotechnical knowledge map covering your applications, services, environments, resources, and key information about them that was previously fragmented across your tools, clouds and teams.
Now, an engineer can explore your system’s architecture, understand dependencies, call up a service and understand who owns it, who’s on call, find documentation and runbooks, see recent CI/CD runs, KPIs like SLIs, SLOs and DORA metrics, find relevant tickets, code quality information, and more. A living knowledge map also helps leaders ask questions about these various measures without interrupting teams as well as measure and manage initiatives designed to help teams improve.