A Worthy Opponent
A few weeks ago, my wife forwarded me a link to a blog from a developer who had finally “seen the light”. That’s what she does, my wife, she sends me links. Of course, to understand that, you probably have to know that my wife is not only my wife. She is also my primary researcher (source of all my knowledge), my literary critic, (source of all my insights), and my guide in life (source of all my wisdom). But that is beside the point.
The point is the aforementioned blogger and his insights (or her insights – in the blogosphere, no one knows for sure. For the sake of simplicity – and not to affront any gender but my own – I’m going to refer to this individual in the masculine form. Also, to maintain the anonymity that is uniquely electronic, but to maintain the social conventions of referring to people by their name, I’m going to anoint him “The Man”.).
The Nature of User Requirements — According To “The Man”
The Man’s insights had to do with user requirements. The gist of The Man’s blog was that user requirements are a joke. In his opinion, the problem is not that we have difficulty getting good user requirements; the problem is that we are wasting our time trying. To quote The Man, "did you ever notice that the applications and technologies we use most, probably >90% of the time, were never, ever conceived by the people that actual use them? For example, did you personally participate in the design and user requirements for email, browsers, operating systems, spreadsheets, microprocessors, word processing, disk drives, presentation software, monitor, voice mail, routers, etc? No. Nor is it necessary that you do. The very idea of a lengthy ’user requirement’ activity for technologies and applications is nonsense, absurd. "
So these applications, as I understand The Man, were, “obviously” designed by intelligent designers who understood the basic needs of all humans well enough to develop these products without bugging the fictive “process owners” and “subject matter experts” with questions and demanding decisions they (the process owners and subject matter experts) were ill-equipped to make.
The Logic of History
After reading The Man’s blog, I was elated. I (thanks to my loving wife) had finally found “The Man”. He was the Holmes to my Moriarity, the Superman to my Lex Luthor. The Man had seen the light and, in so doing, had ignited a light in my mind that darn near blinded me. The Man awakened me to my true calling, showed me my mission in life. I, the consummate requirements analyst, finally knew why I was put on this Earth. I was destined to fill this gaping void by reverse engineering the user requirements for these ubiquitous programs that have blessed our daily lives for so long.
Actually, I don’t know why it hadn’t hit me a lot sooner. I mean, it is common practice in Corporate America to buy a software product and then give the business analysts the assignment to define what the heck it’s good for. At least, that’s the way many projects I know about got started. Why, oh why hadn’t I applied this simple yet economically ruinous concept to the products upon which I depend for a livelihood? But enough of bemoaning fate, now I was finally, finally ready to seize the moment, to go where no man had gone before, to accept my destiny and, in so doing, to change the way the world perceived user requirements forever.
So without further ado (and we have had plenty ado, haven’t we?), let me start. To start with the obvious, since I had to use a word processor to capture my insights and revelations on this topic, I am going to write the missing user requirements for it. (As an added incentive, the recursive concept of using a word processor to capture the user requirements for the word processor itself also appeals greatly to my inner Geek!) So, here are the first–cut, reverse–engineered user requirements for this versatile tool.
The Re-engineered User Requirements
- The system should capture my keystrokes and render them electronic thereby allowing me to store them in files that I can never find again.
- The system should allow me to change the files I have created and automatically save the changes in places that I would never think to look.
- The system should automatically check my spelling while I type and distract me by red-lining any incorrectly spelt word.
- The system should offer spelling alternatives for a red-lined word to further confuse me by suggesting words that I never even knew existed.
- The system should auto-magically switch languages whenever my misspellings approach proper French, German or Italian words and assume that I meant to become proficient in that language. (Since I am fluent in German, I am astounded at the translated suggestions it offers.)
- Once it has switched languages, the system should then assume that everything I wrote up to that point has to be rechecked to ensure that my text meets the spelling rules for this new language, adding additional comfort to my eyes with more red lines.
- The system should further confound me by refusing to offer spelling suggestions for words that are not red-lined but for which I want to check the spelling in advance to avoid the red-line distraction.
- The system should automatically inform me of grammatical strokes of genius by green-lining passages for no apparent reason.
- The system should hone my social skills by telling me why it chose to green-line my text with cryptic messages that I have to call my 8th grade English teacher to translate for me.
- The system should automatically format my text into bullet lists, paragraphs, pages and tables in such a manner that it can truly confound my every effort to achieve a page break where I want it.
- The system should wow me by numbering my numbered lists in such a way that amazes me and, again, removes any temptation to comprehend the rationale let alone manipulate the numbering to meet my needs.
- Finally, the system should offer hope by allowing me to modify any and all settings and then confound me by hiding this flexible feature behind a barrage of menu entries and secret key strokes.
- Oh, and one more thing. The system should be re-released every few years, just when I start to get the hang of it but before I gain the level of proficiency to which I strive and the new release should offer the same functionality as the old but better disguised behind yet again different modes of interaction such as “ribbons”.
The Last Word
OK, thirteen is the maximum number of user requirements allowed for a tool this simple, so I have to quit now. At this point, I could launch myself into defining the user requirements for my spreadsheet program, my presentation tool, and (my personal favorite) my email / contact / time-manglement application that I rely on to keep my life orderly. Unfortunately, I am discovering that this is really hard work, so maybe The Man was right after all. We should just quit wasting our time trying to define the future features, functions, facts and behaviors that the proposed IT solution should enable, execute, enforce, or exhibit when it is delivered. We should just stand aside and let the developers like The Man do their job. After all, we are just annoying The Man with our “user requirements” and, obviously, the user requirements don’t help The Man anyway. The Man knows what we need a lot better than we do, so let’s get out of The Man’s way and let The Man work, shall we?