axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James M Snell" <>
Subject Re: Axis Re-architecture
Date Wed, 12 Jun 2002 15:15:07 GMT
Just my perspective:

We need to get 1.0 out the door.  That means finishing JAX-RPC support, 
fixing bugs, and improving documentation.  Once it is done, let's all get 
together as a team and discuss various architectural proposals we'd like 
to see addressed for post 1.0.  I, like Glyn and I'm sure a number of 
others have a wish list of things I'd like to see addressed, and have been 
working off a local sandbox copy of axis for a while to experiment and 
prove various architectural concepts that I plan to push for post 1.0.  At 
the same time, I don't want to disrupt the current development flow. 

I can understand Glyn's frustration.  I helped design Axis originally and 
it's hard for me to go through and figure out what is going on where and 
how things are working now.  I can understand the challenges he is facing. 
 Post 1.0, I think we need to take a strong critical look at Axis to 
figure out what and how things need to evolve. 

- James M Snell/Fresno/IBM
    Web services architecture and strategy
    Internet Emerging Technologies, IBM
    544.9035 TIE line
    559.587.1233 Office
    919.486.0077 Voice Mail
 Programming Web Services With SOAP, O'reilly & Associates, ISBN 

Have I not commanded you?  Be strong and courageous.  Do not be terrified, 

do not be discouraged, for the Lord your God will be with you wherever you 
- Joshua 1:9

Please respond to 
Subject:        Re: Axis Re-architecture

It's hard to argue with Glyn here.  I've been staring at chuncks of this 
for months, and feel like I'm just treading water.  I'm still convinced 
that we can fix this through smaller refactoring steps.  It DOES help to 
go through the code, see where there is too much dependence on internal 
data by using classes, and move function back into classes that own data. 
(hence refactoring... ok ok... so now everyone knows what my real goals 
are :-)  Over time I expect the see the trees for the forest (better) and 
be able to make more significant changes if necessary (and if agreed 


Richard A. Sitze  
CORBA Interoperability & WebServices
IBM WebSphere Development
[IMAGE]Glyn Normington/UK/IBM@IBMGB



Glyn Normington/UK/IBM@IBMGB 

06/12/2002 08:38 AM
Please respond to axis-dev

        Subject:        Re: Axis Re-architecture



I understand your sentiments, but I think you over-estimate how little I 
personally able to contribute to Axis as it currently stands.

To be blunt, I have never managed to get a good understanding of the whole
of Axis and so have had to limit myself to doing keyhole surgery without
being sure of the impacts of what I was doing, which is very frustrating.
Another symptom of my lack of understanding is that I haven't fixed a
single Bugzilla bug. If I had a reasonable understanding, I'm sure I would
have been able to fix a few bugs and be productive in adding function. 
isn't a problem with my skills or experience - I've worked on a large 
of system software (CICS) for many years and feel fairly confident
restructuring it and making changes to various components because I
understand how it hangs together -- the problem is my *understanding* of

Also, if the code had been better structured, I would have been willing to
invest more time reverse engineering it to discover the underlying
concepts, which is what I started doing when I wrote the architecture
guide. However, I ran out of steam because the code is lacking the kind of
conceptual integrity where each component has well-scoped responsibilities
and clean interfaces to other components. For example, I can't answer
simple questions like which components would need to be changed to support
a transport protocol other than HTTP (although someone is now bound to 
up with a succinct answer!).

I hope this doesn't appear to be negative. Axis would never have got as 
as it has without the stirling work of a number of key committers such as
yourself and Doug, to name only two. But I want to make a stab at fixing
this serious problem rather than wasting my time fiddling around in
relative ignorance. I would like to make things better so that other
newcomers can get a proper understanding and become productive quickly. I
can't see any other way than doing some re-architecture.


"Glen Daniels"  
<gdaniels@macrome        To:       <>>                 cc:  
Subject:  Re: Axis Re-architecture  
12/06/02 14:07  
Please respond to  

Glyn et al:

I'm all for clean architecture, and lord knows we went through several
of trying to do this during the project.  As various new people have come
and left, we've lacked some common mental models of how things should 
which has in part resulted in a less than completely modular/elegant 
design (though frankly I don't think what's there is really that bad,
except in
certain areas).

I really don't want to get down on you for being psyched about doing good
stuff, Glyn, but I also think that this kind of message at this stage of
development sort of contributes to the problems we've been having about
cohesion and timing.  I really wish we could all pull together as a team
get 1.0 out the door, rather than going off in different directions 
things into new shapes.  It feels like we're all "Axis committers" working
on 3
different projects and that is extremely uncomfortable for me.

Related to this, I've also been sort of disappointed that people are
putting in
time to do all this refactoring and redesign on areas that (IMHO of 
nothing for Axis' core functionality and getting 1.0 finished and out the
so we can start on the next version, when all of this becomes, I think,
appropriate and encouraged.

I think:

- Bug fixing / interop is critical.
- JAX-RPC compliance is critical.
- TCK compliance is critical.
- SOAP 1.2 compliance is slightly less important, but still critical.
- Performance and ease of use are also in the fairly critical category,

I don't see much else (i.e. refactoring, code cleanup, etc) as being that
critical right now, to tell you the truth.

I guess I'm saying that I wish we could all spend our valuable brain and
keyboard time doing 1.0-related things rather than branching off in new
directions.  Naturally, this is just my opinion and you should do what you
is right.

I'm sorry if this is less than perfectly written, I'm in the midst of a
group discussion while typing...


----- Original Message -----
From: "Glyn Normington" <>
To: <>
Sent: Wednesday, June 12, 2002 1:39 PM
Subject: Axis Re-architecture

> I plan to start some re-architecture work in a separate 
> directory. I have discussed re-architecture with some other committers,
> few of them are keen to do anything prior to v1.0. I don't want to
> their progress, but I feel some revolutionary change is required (see
> to position Axis well for the future.
> My aim is to build up a clean collection of subsystems along the lines
> described by the architecture guide but with subsystem interfaces
> represented properly in the code. I aim to introduce documentation and
> tests as I go in order to maintain intellectual control and enable 
> to join in. If this remains a one person effort, progress will be
> relatively slow, but at least I may be able to demonstrate some facets 
> clean architecture to guide the future direction.
> As a consequence, my work on JAXM (or more accurately SAAJ) is
> suspended but may need to be completed by others so that Axis can gain
> JAX-RPC compliance. I don't expect this to significantly impact the
> progress of the project as my enthusiasm for that piece of work was
> lacking and progress was painfully slow as I hardly ever got round to
> giving it time. There's not a great deal of raw coding to be done, but
> there is probably a SAAJ TCK to be passed, which involved negotiations 
> get hold of the TCK and a reasonable investment of time to get it 
> and more so to get a pass. I have committed a class diagram change into
> architecture guide which shows what mapping I planned for the
> interfaces. This mapping is non completely obvious and certainly doesn't
> match the current code (!). Perhaps a non-committer will step up to 
> this piece of work as a way of getting involved in Axis (hint, hint!) -
> gladly give advice and encouragement to anyone who is interested. 
> regarding JAXM, I would like to apologise to dims publicly as he has 
> the main encouragement for me to do anything on JAXM and I rather feel 
> if I'm letting him down.  I hope he'll understand my passion for pushing
> towards a clean architecture.
> Glyn
> [1]

View raw message