Re: [re-online] Bottom-up RE methods

From: Andrew Gabb (agabb@tpgi.com.au)
Date: Tue May 04 2004 - 21:44:03 EST



These are good issues, Ilia, but I doubt that they're strongly covered in design literature, which tends to assume that you have requirements before you start, or that RE is relatively straightforward. I don't think I've seen much on this in RE literature either, although it's almost certainly covered in cognitive science stuff on problem solving and decision making (something I've always wanted to get deeper into and never will now - I've been scratching the surface talking about mental models for years).

There are probably a number of reasons why it isn't commonly discussed in the techo stuff (apart from the underwhelming psych credentials for most REs). One of the most likely is that it's not about what you *do* but how you *think*. I also don't know how you would teach it.

BTW, the bottom-up equivalent of your example is something I think we all do. The user talks about something he does or needs and we automatically see semi-analogies with other work we've done, even though the actual work area may be totally different. This allows us to understand and 'populate' the larger domain much faster, and helps with completeness. It also allows us to jump to incorrect conclusions, which can remain uncorrected for the life of the project - I've had one or two of these myself.

However, I guess I don't see this as dangerous as you apparently do. I feel that it's a very powerful technique (or talent, because I've noticed only some folks can't do it effectively no matter how hard they try). Without it, we can take forever to understand the user domain. It also allows us to make useful comments and ask penetrating questions even when our understanding is far from complete, which means the users are less frustrated with our obvious stupidity. I think this is one reason why REs with *broad* experience can offer much more to a project.

If you think about it, the dangers are just an extension of those that are inherent in developers doing RE, in that they are too ready to assume that they understand what the system should do, and leap into design too soon. They obviously get the requirements from *somewhere*. OTOH, good REs tend to be paranoid about their understanding of the users' needs and activities, simply because they know how easy it is to guess wrong.

As a final aside, slightly related, I think that it's very important for an RE to be able to have several models (or several variants) of the user domain in his/her head at any one time, and usually there are conflicts between and within these mental models. Gradually the models disappear or merge as the elicitation proceeds. If we tried to ensure that we were always working with one perfect model, I don't think we could work efficiently.

Andrew

Ilia Bider wrote:
> At 16:54 2004-05-02 +1200, Overmyer, Scott wrote:
>> What I meant was that most analysts move between higher and lower levels
>> of abstraction, as the opportunity to do so arises. For example, if
>> something at a high level triggers the memory of a pattern that the
>> analyst had used in the past, he or she might "opportunitistically"
>> follow
>> that path to a lower level while the knowledge is "available", returning
>> to a higher level when either the knowledge is exhausted or when another
>> thought triggers an opportunity to pursue a higher level design
>> construct.
>
> Recognizing a pattern from past experience and following it down is the way
> an experience analyst shortens the time needed for analysis. On the other
> hand, it is extremely dangerous thing to do as the analyst may impose the
> "wrong" structure in the model. This might be due to using a "shallow"
> similarity between a current problem (domain) and the one that was
> encountered in the past. Ability to differentiate "shallow" similarities
> from the deep ones is what distinguish a "good" analyst from the "bad" one.
> I wonder if this topic is covered in the design literature?

-- 
Andrew Gabb
email: agabb@tpgi.com.au       Adelaide, South Australia
phone: +61 8 8342-1021, fax: +61 8 8269-3280
-----
-------------------------------------------------------------------------------
To send a message to this mailing list send it to re-online@it.uts.edu.au.
To unsubscribe from this mailing list, email majordomo@it.uts.edu.au with the
message `unsubscribe re-online' in the BODY of the mail.


This archive was generated by hypermail 2.1.6 : Mon May 10 2004 - 09:00:17 EST