[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Requirements process suggestions



The requirements process doesn't seem to be going very well,
which isn't that surprising - requirements documents are hard 
to do.  I think it might be possible to have the son-of-IKE 
requirements through WG last call before Yokohama
by applying some discipline, if that's what the working group
wants.

In particular, it's impossible to develop a good requirements
document by evaluating it in terms of whether or not it presents
a harmonious, pleasing whole.  It's got to be taken apart and
put back together again.  What I've found to be effective (but
a lot of work) is:

1) take the requirements document, turn it into a numbered
   list of crisp, declarative sentences
2) make a quick first pass through the list and identify items
   on which there's already consensus either to keep or to
   drop.  If there's any - *any* - disagreement about anything, 
   it goes on the "unresolved" list.  
3) Someone needs to keep track of all three categories and make 
   that information public - you can use a web page, a database, 
   bugzilla, etc.
4) the chairs need to work the unresolved list.  That means every
   few days put a small number of the unresolved items (say, 2-4) 
   out to the mailing list and try to come to consensus on them.  If 
   it becomes impossible to reach a decision on something, move on and 
   come back to it later.  The answer may fall out of later discussions 
   of other items
5) as new requirements come up (and they will), add them to the
   unresolved list
6) when everything's resolved, turn it back into a requirements 
   document and return to usual working methods

I've found that the only thing that requires face-to-face interaction
is item 2 - doing it on the mailing list is too slow.  However, given
the 30-day-notice requirement for interim meetings waiting for an
interim meeting may take too long, too, and perhaps instead everything
could go on the unresolved list.  It's a lot of work for the chairs
since they have to actively manage the process, both in getting the
items out there and in determining consensus.  The process also isn't
much fun for anybody, but it will get the document finished within a
reasonable amount of time and it will guarantee that every requirement
receives its due consideration.

Melinda