170 likes | 282 Vues
This presentation delves into the future of Service-Oriented Architecture (SOA) through composite applications. We explore the integrated process of handling purchase orders utilizing four key technologies: Service Component Architecture (SCA) for coherence, Service Data Objects (SDO) for data movement, XForms for human interfaces, and Business Process Execution Language (BPEL) for workflow definition. The scenario illustrates order processing, including credit checks and notifications, showcasing the synergy of these technologies in modern enterprise applications. Join us for further discussions at the SCA Roadshow!
E N D
The All-Singing, All-Dancing Composite Application Doug Tidwell, IBM dtidwell@us.ibm.com
Status > >
The big picture • Our composite application processes a purchase order. • We’ll take a very quick look at four technologies that are the future of SOA: • All of the services involved are accessed with SCA. • The data sources are accessed with SDO. • The interface is based on XForms. • The process definition is based on BPEL.
Our scenario • The customer submits an order. • We check the total of the order. Any order of more than $750 (£38, €57) must be approved by a manager. Anything less automatically goes to the next step in the process. • If the order is approved, we check the customer’s account status. • If the order is approved and the customer’s credit is OK, we send the customer a notice that their order is on the way.
Key standard #1: SCA • We need a single, coherent, manageable way to build composite applications. • I’m assuming we’re all in agreement here…
Key standard #2: SDO • We need a single, coherent, manageable way to move data from one place to the next. • In a composite application, data will most likely be XML. • In a composite application, different components will need data in different formats. • Similar yet incompatible data binding frameworks will outnumber the human population by 3Q 2013.
Key standard #2a: XForms • With XML as a universal data interchange format, HTML forms aren’t an ideal option. • Not built around a data model • Controls are hand-linked to items in the data model • Changes to the data model require manual changes to all interfaces • XForms overcomes these limitations: • The form is built around an XML data model (XML Schema, most likely) • Controls are bound directly to the XML (XPath ties control x to element/attribute y) • The interface can be regenerated from an updated schema.
Key standard #3: BPEL • An application with any degree of sophistication will likely require workflow and human interaction. • We’ll use BPEL to define the workflow. Many steps in the workflow will be services. • A BPEL process is itself a WSDL-addressable service (or an SCA service) • Human tasks typically involve reviewing some sort of business object (XML document)…XForms fits nicely here.
Our application Order Processing Composite Component B (Credit check) Component A (BPEL workflow) Component C (Shipping)
Assembly with SCA • Current implementations let us access a BPEL process as an SCA component (<implementation.bpel>). • Ideally the BPEL process could access SCA components as steps in the process, although we’re not there yet.
Data access with SDO • There are a number of business objects: • Purchase order • Customer number, items+, status • Customer • Customer number, name/address, credit rating • We’ve kept this simple; a real-world scenario would use many more objects. • Each business object is defined with XML Schema and manipulated by SDO.
Human interfaces with XForms • We’ll look at different XForms that deal with the human tasks in the process. • These can be generated directly from the XML documents (BPEL variables) defined in the process. • We’ll define an XHTML frame to hold the controls and style everything with CSS.
The SCA Roadshow Coming soon to a continent near you!
The SCA Roadshow • OASIS is sponsoring a series of half-day sessions on SCA. • These sessions are vendor-neutralexplorations of SCA as a technology. • See oasis-opencsa.org/sca-roadshow/ to register. • We have three events scheduled for China in May; others are coming throughout the year.
If you’re interested in participating / hosting, contact Doug Tidwell, dtidwell@us.ibm.com.