How Now Brown Cow

Deel dit bericht

Multiple Viewpoints

A common problem voiced by requirements analysts is: “people don’t tell me their requirements, they tell me a solution to some unstated problem”. This focus on solutions is further complicated when it is mixed together with current business constraints, technical constraints and personal perceptions of the world.

Francis the accountant sees the world in terms of financial rules and budgets, Genevieve in Human Resources is concerned with whether the height of the bookshelves contravene Health and Safety rules, Edme the librarian talks about procedures for lending books and facilities for answering borrowers’ questions, Henk the systems architect is most concerned with the technical systems architecture and Ivor the manager always talks about improving the nationwide rating of the library.

In other words people (all of us) see the world in terms of their own experience and importance, and their own levels of abstraction. The requirements analyst needs to be able to unscramble these disparate viewpoints and decide what to focus on to further the goals of the project. The Brown Cow[1] model is a tool for helping to understand a number of different viewpoints in parallel.

Brown Cow Model

Typically useful systems viewpoints are Now (often referred to as “as is”) and Future (also called “to be”). The Brown Cow takes a more granular approach by looking at the How (solution) and What (essence) of both Now and Future. Figure 1 is a generic model that illustrates the sorts of subject matter you might identify as belonging to each of the four points of view.

Figure 1: A generic Brown Cow model

Each of the quadrants focuses on a specific point of view and provides you with a way of organising what you discover. We use the Library Loans project (used as an example in the previous 4 articles in this series) to discuss each of the four viewpoints.

How Now

In the Library Loans project the “How Now” viewpoint (bottom left-hand quadrant of the model) focuses on how the library is currently organised. The library organisation chart would show the employees, their job titles and who reports to whom. There might be some business process models and procedures manuals giving details of how the library is run now. The physical structure of the library buildings and furniture, the process for recording books lent to a borrower, the library card system and microfiche are all details that help to understand how things are done now. The design of any current computer systems along with their systems architecture, coding standards and file design are all part of the “How Now” view.

At the beginning of an investigation you often need to start by understanding how things are done at the moment. Once that is understood, you have a basis for deciding what will benefit from further investigation. The problem with the “How Now” view is that it is usualluy complex and, unless you are careful, it can consume a lot of your time.

What Now

That brings us to the “What Now” viewpoint in the top left-hand quadrant of the model. This abstract view is only concerned with what has to be done regardless of how it is designed or implemented. You need to understand this view in order to discover the real business requirements.

In the library loans example this view is concerned with the rules that have to be carried out in order to do the work of loaning books to borrowers. How many books is one borrower entitled to borrow, what are the penalties for overdue loans, what are the rules for deciding whether to place an order for a new book, and many more. All of these are considered independently from the manual and automated procedures that might be used for the current implementation.

This view is also concerned with understanding the business data, once again independently from how that data is currently implemented. For instance, what is a “Book” and what are its attributes (book title, book number, book colour, book publishing date, etc.)? And what do we mean by “Loan” and “Borrower”, and what do we need to remember about them and how they relate to each other? For any experienced business analyst this is often represented as a business data model.

The point of the “What Now” view is that it ignores implementation complexity and reveals the real business problem thus providing the basis for understanding what the business and technical systems are really trying to achieve.

What Future

Once you do understand the “What Now” you can stand in the “What Future” (Top right-hand quadrant) and see if there are any opportunities for innovation that would benefit the business. For example you might point out that we are currently keeping track of how often a book is loaned. Maybe we could make more use of this data by identifying the books most frequently on loan and suggesting for which books we would benefit by having multiple copies.

And while we are at it, are we limited to lending books? In the future would we benefit from lending other media like videos, music recordings, sheet music and so on.

Considering the “What Future” might only take a few minutes. It is concerned with carefully considering the essence of the problem and looking for new ways of taking advantage of what we already have.

How Future

The “How Future” brings us down to earth in the lower right-hand quadrant of the model. This view focuses on how we are going to solve the problem, implement the new system, make the change. Here we are concerned with the complexities of the future world: who will do what and how will they do it; new and changed roles; design of software; implementation of vendor software; training in how to use new technology; procedures and so on. These are all aspects of how things will work in the future given the constraints on the design.

Brown Cow

Next time you think someone is asking for a solution instead of a requirement draw the Brown Cow quadrants on your whiteboard/flip chart/notebook. Then write or draw whatever the requirer asks for in the “How Future” quadrant. You can then ask questions such as “why is this important to you?” Whenever you discover a business rule or some business data, write it into the “What Now” or “What Future” quadrant. As you understand the parts of the current world that are affected make a note of the impact in the “How Now” quadrant.

If you do this then you rarely have to go into long and complicated explanations. Your behaviour and the questions you ask demonstrate that you are acknowledging and understanding what you are being told. Most importantly you are making it possible for everyone to see it from a number of points of view. Your success will speak for itself when you help the requirer to uncover the real business problem, come up with new ways of taking advantage of business knowledge, and often are able to suggest a better solution – one that solves the real problem.

One last thing about the Brown Cow model: take it with you to meetings (whether they are very technical or high level management, informal or formal) and sketch it on the whiteboard. When people start jumping from one viewpoint to another use the Brown Cow to make them aware of their focus, help to keep the meeting on track and avoid losing any good ideas.

Summary

There are many ways of looking at any problem. Trying to think of everything at once results in misunderstandings, missed questions and missed opportunities. The Brown Cow model provides a tool for taking four important systems viewpoints in parallel. The non-procedural nature of the model means that the analyst can choose to take the most relevant viewpoints in whatever order suits the particular situation.

[1] How Now Brown Cow is an elocution exercise designed to teach how to pronounce rounded vowel sounds.