Re: ARC & GNOME [Was: How we make decisions...]



Greetings, I'm one of the ARC (architecture review committee) chairs inside
Sun and Brian Cameron has asked me for a few comments on the GEP process.  I've
read some of the postings on it but I'm still digging in to various threads so
my opinions will no doubt change over time.

After reading through some of the GEP documentation and discussion here are a
few observations and questions that should help me understand things better.

The GEP process as defined in GEP-0 from 2002 seems to be more focused on the
collection of product requirements than the discussion of architecture.
Certainly, architecture may come up in the discussion of a requirement but
since the proposals are supposed to be solution neutral that would seem to
imply that there is not much known about the architecture at this point.
Inside Sun we have a mechanism for collecting these requirement proposals and
they (in theory) get reviewed and sorted into a set of prioritized buckets for
action to be taken later.  Based on what I've seen there is not a high enough
volume of GEP proposals to warrant a priority scheme.  However, I am curious
as to whether or not the community sees two possible processes here.  One to
handle requirements and one to handle architecture once the requirements are
understood.  I think this would translate into separating the action GEP's
from the requirement GEP's into two separate (but potentially very similar)
processes.  Having two separate processes allows you to decide if there are
different skill sets required for each process.  For instance the people who
run a requirements GEP could be different than the people who run an action
GEP.  Again I'm drawing some conclusions based on how we do things inside Sun
and my interpretation of what the GEP process is trying to accomplish.

The current process steps do not make a distinction between how an action GEP
is treated verse a requirement GEP.  For instance, once something passes the
requirement phase does it then redo the process as an action GEP?  Presumably,
the things you pay attention to would be different in each case.  This may be
defined somewhere but so far I haven't stumbled across it.

Given the nature of the community it seems like a fast/light weight process
should exist.  I.E. a one week action GEP where the change required some
review but you expect it not to be controversial.  Essentially, at the end of
the review period, unless someone specifically stopped the GEP, it would be
marked approved.  Have you all considered something light weight like that?
The nice thing about it is that the proposals are somewhat self documenting
since everything of interest happens in the email thread around the fast
action GEP.

One thing I think would make sense is to try and be more definitive about what
the outputs of the process are and who you expect to consume them.  If there
are no consumers for your process then no one will use it.  Since I'm new to
this can someone say a few words on what the high order problems are you're
trying to deal with?  Is it requirements management?  Is it communicating
architectural changes?  Is it tracking change?  Depending on what you want to
get out of it the process should reflect that.  At Sun we've been focused on
compatibility so our process tends to focus on the interfaces between things.  
Requirements gathering is handled outside of the architecture process.

Ultimately, the ARC question (as viewed inside Sun) comes down to where/how do 
you capture interface related changes before they occur.  Once you have them 
captured you can refer back to them later.  That's one of the prime things of 
the Sun process.  Is this something you all want to get out of the GEP process 
or is it captured somewhere else?

Sun currently spends a lot of time and energy trying to ensure that the GNOME
stack is as stable as possible via our internal process.  We think it might be
more beneficial to review the GNOME stack from this perspective directly with
the community.  If Sun were willing to work within the GEP process and were
able to provide resources towards improving interface stability, would this be
of interest to the community.  We at Sun are thinking that this could be a
better approach than Sun trying to address these issues independently and we
are wanting to know if there is also a community interest in this area.

Ed Hunter




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