Exclusive: Software AG crossvision suite takes on SOA
Closely integrated mix of Java, XML gives nonprogrammers a leg up on service creation
A combination registry and repository with a bit of application server thrown in, CentraSite acts as both broker — managing a directory of available services — and a kind of database for those services. In addition, when you create a project, CentraSite manages storage of all the resources that comprise your service. (Fujitsu and Software AG jointly developed CentraSite.)
Click for larger view.
Orchestrator acts like a kind of document digestive system. A document arrives, delivered via e-mail, JMS, a SOAP message, or HTTP; its arrival triggers the execution of code that examines characteristics such as the document’s name, extension, origin, and specific contents to determine how it is to be processed.
After Orchestrator establishes the “how” of the processing, it then summons the appropriate code to do the actual work. This work could be as simple as shuttling the document to its destination or as complex as extracting disparate data from various portions of the document, forming a brand-new doc with it and depositing the result into an e-mail inbox.
Orchestrator’s documentation refers to the source code as a “sequence,” which is a mixture of Java components and XML. The flow of control is specified in the XML, and the Java components — dubbed “Orchestrator Components” — perform the actual heavy lifting. Orchestrator’s runtime is itself an Orchestrator Component called a Sequencer Component, and a source-code file is called a Sequence Document. A Sequence Document is a collection of processing elements that you can call on in a manner similar to the way you would call methods in an API.
In Orchestrator, the “methods” are the Java components, and messages are the documents. The XML acts as executable glue that binds the processing elements, and orchestrates their behavior into a usable program. This glue includes fundamental sequence control (execute statement A, then execute statement B) and decision making (that is, if/then statements).
Orchestrator comes with approximately 30 built-in components that cover just about every aspect of document processing and transmission protocols. Ordinarily, you never need to “go inside” a Java component; all the dirty work has been done for you. However, Software AG does provide development tools if you want to create your own components.
To create a service — that is, to write the XML code for a Sequence Document, debug, and deploy the result — you must visit the Orchestrator Studio. You can build a project’s source graphically or, if you prefer old-school text-based source code, as a series of XML statements.