A company is a collection roles filled by people who are assisted by machines, networks, and software to accomplish tasks needed to achieve the goals of the organization. Can these roles be represented by #DigitalTwins and can #Bots carry out their activities?
Back in the Summer of 2019, I wrote a provocative article on Digital Transformation where I put forward the concept of using digital twins to represent employees and the use of APIs to illustrate interactions between them. While it's normal to represent company assets and business processes as digital twins, employees were something new. Building on my recent series of articles discussing digital twins, I will explore this concept further and show you how to make it a reality.
Companies don't just hire employees. Instead, one or more tasks to be accomplished are identified and potentially encapsulated within something called a role. The tasks may represent a one-time event or may be something that's done repeatedly. Similar to the owner's manual of a new car, a collection of repeating tasks that make sense to be performed by a particular role is often illustrated by something called a job description. This helps with the matchmaking process of connecting interested people possessing the right skills with the role containing the tasks to be accomplished.
Depending on the goals of the company, roles could include things like product development, sales, delivery driver, people manager, marketing, product planner, secretary, executive management, accounts payable, web developer, waiter, and thousands more.
To go beyond a simple job description, how do you codify what it means to be an employee in one of these roles? What are the baseline attributes of a role that apply to all employees serving in that same role? What intelligence or skill set does an employee taking on such a role need to possess? What is the list of one-time or ongoing tasks that the role requires an employee to accomplish? What do the process steps of those tasks look like? Who are the people, systems, and organizations this role must interact with? What kinds of information should the employee serving in this role expect to receive? Similarly, what kinds of information should this same employee expect to send? Based on tasks to be accomplished and interactions with others, what results or outcomes are expected to be derived? What are the unique attributes of a distinct employee serving in a given role? What can be learned from one employee serving in a particular role that can be applied to other employees serving in the same role? How is a role related to larger grouping concepts like teams, divisions, business units, and geographies within an organization? For that matter, what about relationships with external organizations and the employees serving in their roles? Last but not least, how are all the actions, outcomes, and learning from an employee serving in a role during a period of service or throughout an entire career captured in order to improve that role?
Luckily, the questions asked above can be answered by digital twins and the function of human resources within a company can be revolutionized. Let's walk step-by-step through the questions posed above and bring their answers to life via different aspects of digital twins.
Q: How do you define a role within an organization? Let's use the role of "waiter" for example, since it's familiar to most people.
A: A role is defined in an organization through the creation of a digital twin model. This concept and structure defines the high-level type or class of a role rather than the individual instances of the role. In other words, it defines what a waiter at a particular restaurant is supposed to be, as opposed to the unique characteristics of each individual waiter. Using a car as an example in the digital world of the Internet of Things, a digital twin model might represent a 2015 Volvo XC 60.
Q: How are the attributes of this role codified?
A: A digital twin model can have one or more static properties that help to define the characteristics of the role. They're basically the list of attributes which can be long or short and contain everything you need to digitize the role's job description. The waiter wears a particular uniform. The waiter must be courteous. The waiter must be able to memorize orders. The waiter has to carry a tray full of heavy plates. You get the idea. In the digital world of the Internet of Things, the Volvo XC60 would have static properties like the length of the car.
Q: How would the attributes of a specific waiter be captured?
A: The individual waiter would be defined via a digital twin instance that inherits attributes from the digital twin model representing the waiter role. In this case, static properties are assigned specifically to the digital twin of the specific waiter. The waiter's name is Jane Doe. This waiter is unavailable to work on Tuesdays and Thursday due to college classes. Our Jane Doe waiter would inherit the need to memorize food and drink orders from the same digital twin model static property to applies to all waiters. In the digital world of the Internet of Things, an individual instance of the Volvo XC60 would have static properties like the color of the car.
Q: Who are the people, systems, and organizations this role must interact with?
A: Using static properties, the digital twin model representing the waiter role would list things like host/hostess, customers, kitchen, manager, bartender and others as appropriate.
Q: How do you define the kind of information this role should expect to receive?
A: In the world of digital communications, the data received from another entity is often referred to as telemetry. An example would be NASA mission control receiving heart rate telemetry from an astronaut. In the case of the waiter, one or more telemetry properties would be used to define the wide variety of information the waiter role should expect to receive. The waiter is told to seat customers at a particular table by the host. The customer orders food and beverages. The kitchen lets the waiter know that food is ready. While digital systems would also need to know things like data types and units of measure for incoming data, a person serving in this role is parsing strings they see or hear using their mind to determine meaning. In the digital world of the Internet of Things, the Volvo XC60 might have a telemetry property like left front tire pressure whose current value we would know because of a pressure sensor. Don't worry, I'm not trying to turn people serving in a given role into robots. This is just a growing list of things a person should expect to see and hear while doing their job.
Q: How do you define information this role is expected to send?
A: The opposite of receiving telemetry in the world of digital communications is sending a command. Using a NASA example again, mission control would send a command to a deep space probe telling it to change its course. One or more command properties would be used to define the types of requests and information the waiter roles should expect to send. The waiter tells the customers the specials of the day. The waiter asks the customers what they would like to order. The waiter asks the bartender for a particular drink. As with telemetry properties, this is a growing list things the person should ask for while doing their job. In the digital world of the Internet of Things, the Volvo XC60 might be able to receive a command to remotely turn on the car.
Q: How are required tasks this role must accomplish enumerated?
A: Tasks are listed in the digital twin model using process properties. They represent a process to follow in order to complete the specified task. For instance, the waiter takes food and drink orders from customers. The waiter gives the food orders to the kitchen and drink orders to the bar. The waiter brings out food and drinks and knows where on the table to place each item. The waiter uses the point of sale machine to charge a customer's credit card for the meal. Any task or interaction requiring multiple steps to complete will be defined by an associated process property.
Q: How are these processes further described to ensure success in completing a task?
A: Each process property in a digital twin model is linked to one or more process steps. They enumerate a list of steps taken in a linear or sometimes a branching, non-linear sequence in order to achieve a desired outcome. For instance, these properties would list the steps required to capture a food and drink order from customers and enter that order in a point of sale terminal for electronic delivery to the kitchen and bar. Every step in a process needed to complete the given task will contain as much information as necessary. In the digital world of the Internet of Things, the process for irrigating a farm might include testing soil moisture with a sensor and calling a weather API to see when it's expected to rain next.
Q: How can all the interactions and activities from an employee serving in a role during a period of service be captured in order to improve that role or help other employees serving in the same role?
A: The historical record of what happens to an instance of a digital twin throughout its entire lifecycle, is represented by something called a digital thread. In the digital world of the Internet of Things, the data needed to create the digital thread over time would automatically come from sensors and microcontrollers sending telemetry along with manually added events. In this case, we're talking about the waiter so things will be a little different. As you might imagine, the restaurant's point of sale system will record every instance of the waiter placing orders and getting paid and so these activities will be captured digitally and associated with telemetry and command properties. The waiter can manually capture unusual or extraordinary events that took place while on the job on a weekly basis. Likewise, the waiter's manager can manually capture observations of the waiter's performance. These manual entries are referred to as digital thread events. Either way, all this data will be captured to provide a current and historical view for both real-time and batch analysis. Through this analysis, ways to change or improve the way the role works will reveal itself not only for this waiter, but potentially all the other waiters at the restaurant.
Q: How is a role related to larger grouping concepts like teams, divisions, business units, and geographies within an organization?
A: Physical entities like people and machines don’t live in a vacuum, they operate in larger systems of systems with relationships and interactions with other entities. The digital twin representing the waiter role belongs to a larger digital twin called "Front of House" which represents a collection of waiter and host digital twins. It looks like a group with super powers where there's a parent/child relationship between itself and the waiters. The "Front of House" digital twin belongs to a larger digital twin called "Restaurant." While simple groups are a great organizational tool, a digital twin that looks like a group will have rich properties and capabilities that make it more valuable. In the digital world of the Internet of Things, an assembly line represented by a digital twin would contain a collection of industrial robots represented by their own digital twins, thus providing a richer "group view" for analysis.
Digital twins have proven their value over the years in manufacturing and for organizations like NASA. As you can see from the human example above, digital twins will not only be invaluable to a company and its human resources department, they'll be a constant companion to each employee serving in a role that's described and managed by a digital twin. Everything an employee needs to know, everyone she needs to interact with, and every process she needs to follow to accomplish her tasks are digitally by her side via her role's digital twin. Every experience she has and everything she learns on the job is captured in a digital thread. All this is easily accessible from mobile devices, the web, or via APIs.
So where do bots come in the picture?
Depending on the job description, it's quite possible that a role defined by a digital twin model could be brought to life by a bot. The more digital the tasks to be accomplished are, the more likely a bot could pull it off.
What is a bot? It's a software agent with varying degrees of intelligence that can run autonomously and interact with people as well as other bots and software systems. No, I'm not going to dive into chatbots from your favorite chat app or robotic process automation (RPA) trying to automate Win32 apps without APIs on your desktop. A bot is software running on PCs, servers, in the cloud, and on smartphones, tablets, and even Raspberry Pis.
I'm talking about a combination of three things:
- Pure software or cyber physical systems that accomplish tasks important to the organization and can be manipulated through open APIs. Clearly, software systems running on computers are prime opportunities for this type of automation. Thanks to the Internet of Things, a much larger world of machines and environmental systems are also open to automation from bots.
- Resilient bots with local and remote network access to the APIs of these systems. A bot needs to be able to see and manipulate APIs to perform digital interactions.
- A digital twin model that uses its static, telemetry, command, virtual, and process properties to provide an instruction manual for bots to follow. In the same way that the digital twin model told the waiter how to perform her job, a bot will do the same thing in the digital or cyber physical world.
The bot becomes a digital twin instance as well as an employee of the company. Yes, the bot shows up as an employee with a list of skills by the Human Resources department. Yes, the bot is a User in Active Directory and part of Groups consisting of people.
Remember what I said at the beginning of this article. Companies don't just hire employees. They encapsulate one or more tasks to be accomplished within something called a role. More times than not, people will fill those roles. But sometimes, a bot brings a digital twin to life and can accomplish enough tasks to fill certain roles.
Think about it.