On 2/19/2011 8:24 AM, Christian Schneider wrote:
The next thing is how to document our architecture. We have a good starting point at https://cwiki.apache.org/confluence/display/CXF20DOC/CXF+Architecture but I think some important things are lacking. This page describes the key structural elements and how some key elements work together in CXF. That is very important and we should simply try to improve it. I would also like to add our common definition of what architecture is to that document.
no problem
The first thing I would like to add are architectural goals. An architecture can never be good in itself. It can only be judged against the goals it tries to achieve. Here again we should only track the most important goals.
OK, sounds good.
The second thing I would like to add is a page about architectural decisions. It should contain a short description of the process how we do these decisions and a list of decisions in a well defined format. I would also like to limit the decisions to a certain number so we are sure that only the most important decisions are tracked. I added such a page as my proposal and we should discuss if this is ok for all. As I have no idea how many decisions we should track I think we could simply start and keep in mind that it should not grow too large. See https://cwiki.apache.org/confluence/display/CXF20DOC/Architectural+Decisions
Errr, I'd be more comfortable about going in this direction if there were any other Apache projects doing the same. We can guinea pig ourselves here, but I'm not certain how useful this documentation would be to ourselves or most readers. Rather, the reasons for architectural designs I think can be more conveniently placed and described within the architecture document (what you mention at the top).
Glen