Since there are a couple of really smart Spring Integration guys on the list right now (thanks Mark and Mark), I thought I would take advantage of that and post a few topics that I, and probably others, have questions on...
I'm about to use Spring Integration in anger on a software project at work. It's one of those projects that has existed for some time, but was written by a very smart C programmer that was fairly new to
Java. The result is that it doesn't feel like Java in some places and the overall architecture is overly complicated. This makes it difficult to maintain. The great thing is that he sees this and has asked me to come in and overhaul the architecture. He wants the overhaul to fix that one project, but for it also to serve as a model for related projects. The applications are data flow type applications where they accept files and do multiple steps of processing on them and output files at the other end. So they definitely lend themselves to Spring Integration. Since this is the model for going forward on a number of other projects, there's some extra emphasis on documenting it right so that others can understand the architecture and implement it in a number of places. As a result, I have a couple of questions on documentation that maybe you can help me on.
1) I've been studying the Enterprise Integration
Patterns (EIP) book by Hohpe (
http://www.eaipatterns.com/) and have downloaded the Visio stencils from his web site. I intend to use them in the software documentation as they seem to be a very complete and easy to understand grammar for Spring Integration (since the latter was based on the former, that makes sense). How do you see these sorts of diagrams fitting into a software documentation package? Do they replace sequence diagrams? Are there other places that the use of EIP affects the documentation?
2) Is there a Spring Integration Petstore? And if so, does it have accompanying software documentation? I'm looking for an example software documentation package that would show how documentation that is specific to Enterprise Integration Patterns (with a Spring Integration implementation) might fit into the more general documentation for an N-tiered application.
Thanks,
Josh