This three-part series explores the relative value of people, of process, and of tools. In the first installment, the "People Premium", we explored the attributes of our people that make them indispensable to our engineering work, but at the same time cause problems. And in the second installment, "Processes For People", we discussed the role of processes in compensating for our people's shortcomings. In this final installment, we will explore the role of tools in making people and the processes that support them efficient.
People make mistakes, and those mistakes waste our time and money. They forget things, and those omissions force us to go back and rework what has already been done. And they are imprecise. What is "good enough" for one person may not be precise enough for another, and is often insufficient for the machines we must interact with.
Processes enable our most precious resource--our people-to work their magic by mitigating for their shortcomings. While people can sometimes efficiently execute processes, this is not always the case. Many processes can have a negative impact on our people's effectiveness, and some processes are so tedious as to become a source of new problems, even as they solve others. In these cases, tools are the key to making our people efficient and effective at executing the processes that support them.
A compiler is a good example of a tool that primarily leverages human effort. Decades ago, people wrote the actual code that ran on the computer's processor. This was an incredibly time-consuming proposition, as the programmer conceived of the actions the computer needed to take, and decomposed them down into the individual 1's and 0's that were required to make it happen.
Compilers magnify the amount of work programmers can do by allowing them to work at a higher level of abstraction, spending more of their time analyzing the problem at hand and applying their intellect to solving it, while the compiler translates each line of high-level code into dozens (or hundreds) of commands to the computer.
The Internet provides a good example of a tool that actually replaces human effort. When you want to view a certain website, all you need to know is its address (its URL -- Universal Resource Locator). There is no need to think about how to get from wherever you are on the Internet to the location of the website you want to visit. After you provide the URL, the computers of the Internet work together to figure out where the pages for that site reside, and how to route your request to that location and its responses back to you.
Eliminating the need for people to understand the details of the Internet, has opened the World Wide Web to use by average people around the world. This is only possible because the Internet does that work invisibly, without any input from the user, other than the URL.
Are there time-sinks in our processes? Look carefully at the specific steps and tasks that your people spend their time on. Peoples' strengths revolve around exercising their creativity and intellect. Do your people spend the bulk of their time on creative aspects of the work? Or are there more mundane activities that drain their effort?
When a process demands that people spend significant time on non-creative steps, it is a candidate for a tool. Look for a tool that will magnify people's effort on the mundane activities, allowing them to spend less time on them, and more time on the more challenging aspects of their work. Not only will such a tool make people more efficient, but it will also improve the quality of their work-life, as they spend their efforts on more interesting and challenging work.
Are there processes that don't need human intervention at all? The analysis described above can sometimes yield an important discovery; that there is no aspect of the work that requires a person's unique abilities. In that case, the entire job becomes a candidate for automation. If the appropriate tool can be found, our people's time can be redirected to more important in interesting work.
But the process changes that are required by any specific tool is an important consideration. If a tool requires that we make significant changes to our processes, then we need to pause to consider if we should adopt that tool and its required process changes. How will those changes affect our people? Will the new process support the people's work (the key function of a process)? Will the people be able to perform the new process? Do they have the time? Do they possess the requisite skills and knowledge? Does the process support the organization's objectives?
We must always remember that the role of tools is to support people and their processes, making them efficient and effective. Any tool that reduces effectiveness of efficiency is not worth adopting, and should be rejected.
We need people, processes and tools (just as a three-legged stool needs all three of its legs). Ensuring the success of our projects requires that we always keep these three elements properly balanced.