Always remember that computer systems have humans at both ends
We should never forget that computing is a human activity that should be used to improve human lives. All computer systems ultimately have humans at both ends: the humans that use the systems, and the humans that build and run those systems.
Unfortunately, the business of building, running and maintaining computer systems can often be so difficult that, in the process of organising programmes, building teams, hiring partners, and writing plans, we forget about the humans. Indeed, for many years, the methods most large companies companies followed to build computer systems seemed designed to squeeze the humanity out of those methods and systems.
If you work for a large enterprise, you have probably been involved in some way in a technology project, even if you have never worked as part of a technology team. You may have been on the receiving end of new software or changed systems, or may have had the opportunity to define requirements or test changes. You may also have heard the term ‘waterfall project’ and picked up the impression that we don’t like waterfall projects any more - even though we still seem to spend huge amounts of time, effort and money executing them.
Why don’t we like waterfall projects any more? On the face of it, they seem perfectly rational: the waterfall metaphor represents a cascade of project tasks which follow logically from each other. We start by defining requirements: what the system is supposed to do. We proceed to design, build, test and release the code. If everything goes to plan, then each task creates something that is useful to the next task, and we end up with computer systems that implement what was asked for. Isn’t this exactly what we want?
The problem with the waterfall approach is that we have known for years that it just doesn’t work. It is not just hard to define requirements well at the beginning of a big project: in many cases it’s both impossible and unreasonable. It’s not fair to expect the end users of a system to fully visualise how that system should work before anything has been built. Similarly, although one of the apparent attractions of the waterfall approach is that plans and costs are predicatable, anyone who has worked on such a project know how rarely estimates match reality. You can’t know how much work it will take to build something, if that thing keeps changing as you build it.
There are many proven alternatives to waterfall project management, and much has been written about them by more expert people than me. However, I would like to consider one feature which these alternatives tend to have in common: they recognise that computer systems are built and used by real life human beings. They focus on creating autonomy, accountability and team structures for the people who build systems, and on the experience and needs of the people who use systems. At their best, they create feedback loops between builders and users, and these feedback loops can drive change at a pace much faster than any diligently constructed plan. The best ways to develop computer systems combine the power of technology with the best of people: imagination and creativity, pragmatism and problem solving.
The estimated global technology workforce comprises about 55 million humans. The total human population in 2021 was approximately 7.8 billion. That means roughly 0.6% of the people in the world get the chance to understand technology by building it. But the lives of everybody in the world are affected by the technology that the 0.6% builds: even people who never touch computers live in a world affected by models that make predictions and inform decisions about the climate, about finances, and about policy. I believe that a world which is increasingly run by computers will go better if more of the 99.4% know what we are building - if the 0.6% take the trouble to explain, and if we remember the humans at both ends.
领英推荐
The Round Trip Question: Journey Map
This series of articles is driven by a conviction that computing is increasingly important to our lives, but many people don’t understand how computing works, and that those of us working? in the industry therefore have a duty to explain. It attempts to answer The Round Trip Question: what happens when you press ‘send’ on the mobile banking app on your phone?
I was using this section at the bottom to capture the list of questions which arise as I write each article, but we’ve got to the end now.
Here’s the very rough picture of what we have covered so far:
Next week, I’ll try to tidy up this picture and bring all of these articles together into one attempted answer to the round trip question.
(Views in this article are my own.)
Technology Director | Sustainable Architecture & Innovation | Consultant, Speaker and Facilitator | MBCS CITP
2 年Love how you've made this simple in particular the picture at the end!