Abstraction is uniquely human. It is something we do every day, every waking hour. But it wasn’t always so. At some point in our prehistory, there had to be a very first instance of abstraction, a moment when an early protohuman stared at something vaguely familiar, and then with a sudden flash of insight, thought, “Hello! Thingumbob again!” That was the first abstraction. From that moment on, everything was different. Man was loose on the Earth.
Abstraction is profoundly human, but pattern recognition is not. It is not unique to humans at all. The mouse has figured out when the cat is likely to be asleep, when the humans are sure to be out of the kitchen, and when the crumbs have been recently dropped but not yet swept up. Your family dog knows all the signals that precede what you thought was going to be a totally unexpected getaway weekend. (Could it have been the suitcase?) And the neighborhood raccoon understands that when the tide is out, pickings are bound to be better on the beach than in your compost pile. But for all their pattern recognition mastery, what the mouse/dog/raccoon cannot do is observe, “Hello! Thingumbob again!” That involves abstraction.
The key difference is how the essence is captured. Patterns are absorbed and refined over time, stored away in the deep, nonverbal recesses of your mind, and conveyed to you in the form of hunches. The hunch that a particular ballcarrier is about to dart left, or that your spouse is ready to explode in anger, is the result of recognized patterns from the past. So is the hunch that this week’s project status meeting is going to be contentious. The unarticulated pattern may be useful to you—it clearly has survival value—but its value can increase markedly when you mull it over and begin to develop from it some declarable observations.
For example, ask yourself this question: What did the few contentious meetings over the past year all have in common? Well, they were most often the ones that the boss’s boss attended, usually near the end of a quarter. In the worst meetings, the team reported a slip in the schedule. You form this into a statement of the pattern: “My boss tends to be extremely cranky about slip reported at a meeting, especially near the end of the quarter, when his own boss is in attendance.”
The recognized signals that led to this observation are still buried in your unconscious, still able to provide you with occasional hunches. But now, in a momentary connection between the right brain hunch and the left brain articulation capability, you’ve isolated the essence and turned it into words. You can write it down, formulate tests to check its validity, share it with others, and merge your observations with those of your co-workers.
Most people who do project work are pretty good at pattern recognition and derived hunches (“I sense that this project is headed for disaster”), but not so good at abstracting their patterns into a more usable form. Thus this book. We six authors have put our heads together to articulate the patterns we’ve been absorbing during our combined one hundred and fifty years of experience.
The form of a book imposes a certain ordering of presentation, since each page must necessarily come either before or after any other. But the patterns themselves have no natural sequence. We’ve ordered them to suit our own tastes, striving only for the most enjoyable reading experience from the first page to the last.
Whether you read them straight through or nonsequentially, bear in mind this cautionary note: We make no claim to the universality of our observed patterns. They certainly don’t apply everywhere. A given pattern may fit your organization or not. If it does, we hope it helps transform what before had only been a hunch into an observation you can express, test, and refine with your team.
In writing this book, we have been constantly aware of our debt to the architect and philosopher Christopher Alexander and his admirable book A Pattern Language. In this seminal work, Alexander and his coauthors articulated a few hundred patterns about architecture. The book helps us better understand the buildings we occupy—and the ones we’d like to—and it also shows us the way that thoughtfully articulated abstractions can elucidate any subject.
Tom DeMarco gives the keynote at the OOP Konferenz 2015 in Munich, January 29, 2015.
Business Analysis Conference Europe. Details and registration a Details and registration at Business Analysis Conference Europe 2015.
Take a look at Tom DeMarco's new article in the January, 2015 issue of CrossTalk. It's called Risk Management for Dummies.
Als auf der Welt das Licht Ausging, the German edition of Tom DeMarco's science fiction epic, Andronescu's Paradox, has now been published by Hanser Verlag in Munich. Translation by Andreas Brandhorst.
Read Tom DeMarco's article from the July/August edition of IEEE Software: Sigil, BlueGriffon, and the Evolving Software Market.
Announcing the publication of the third edition of Tom DeMarco and Tim Lister's iconic text, Peopleware: Productive Projects and Teams. The book is available now from Amazon or directly from Addison Wesley. See press release on Business Wire.
"This war isn't going to blow anything up, only turn everything off."
Read Tom DeMarco's essay from the July/August issue of Software Magazine. It's entitled, Bells, Whistles, Power, and the Requirements Process.