|
SOA does not support all aspects of the SOA-based
implementations by itself. Besides business process modeling, the most important
aspect not directly supported by SOA is a guidance in how to map the business
process models to the SOA components and capabilities. Federated Enterprise
Reference Architecture (FERA) emerged as the leading methodology supporting
this guidance.
This article describes FERA-based SOA developed by Semantion. It supports all
SOA levels from SOAP message exchanges to the most complex orchestrated
collaborative processes. Semantion's SOA specification defines and shapes the
way how collaborative (business) processes are modeled, deployed and
executed internally and/or externally over the Internet. It also supports
standard convergence that enables interoperability between different standards
and technologies and at the same time supports the consolidation of
standards (Web Services, ebXML, etc.) used in SOA.
FERA
FERA is a reference architecture describing a generic SOA stack required to support
any collaborative process. FERA also provides mapping of process models to the
technology stack components and their capabilities.
FERA supports integration of process and technology frameworks. These integrated
frameworks posses ability to model the process, analyze and simulate it, and then
through a series of successive transformations of the model data define a
complete deployment architecture and XML files containing required information
for the configuration and deployment of the final solution.
Modeling languages and annotations supported by FERA are UML, PSL, VRM and BPMN.
Deployment documents are based on the Collaborative Process Information Document
(CPID) format of SOA Information Model (SOA-IM).
SOA
FERA-based SOA provides support for the following key aspects in a top-down
business process-based approach: business process modeling, document engineering,
business process execution, overall architectural integration and standard
convergence.
Business process (aka. collaborative process) modeling based on FERA
FERA requires each business process flow to be defined with process
characteristics whose combinations uniquely define one of the patterns
presented in FERA. Each of the patterns in turn points to the set of
deployment elements required for exact configuration of the component
stack for run time execution. These FERA patterns support collaborative
processes of any type and complexity.
Document engineering based on universal data formatting
Today many systems still "speak" their own data formatting language and
expensive translations happening on millions of computers every moment
on the Internet. There are three distinctive and main benefits with
document engineering:
- Orientation towards standardized content formatting.
- Development of mechanisms that enable content transformations.
- Automatic business (collaborative) documents creation during the both
collaborative process modeling (static aspect of collaborative data)
and the collaborative process execution (dynamic aspect of the
collaborative data).
Business process execution with context and content process management
supported by SOA Information Model and SOA Collaboration Semantics
This is the first time that one architectural solution provides complete
definition of a collaborative processes information model as well as
collaboration semantics. SOA information model and semantics are crucial
in providing support for business process modeling with automatic creation
of the business process models (using modeling tools) and their deployment and
execution on the SOA platforms.
Overall architectural integration with standard-based components
FERA-based SOA provides complete integration of the best available standard
components (external and internal collaborations, security, registry and
repository, XML-based messaging, universal business data formatting, etc.).
This means standard convergence that is a very important
factor in the overall standards consolidations that will drastically improve
interoperability as one of the most important aspects of SOA.
SOA Virtual Machine
It is important to note that FERA-based SOA
provides solutions that do not require business logic coding, including the typical
traditional coding or re-coding approach plaguing most software solutions today.
SOA Collaboration Semantics (SOA-CS) and SOA Information Model (SOA-IM)
are universal for any collaborative (business) process. They do not
have to change from case to case. They are based on collaborative rules capable of
supporting collaborative processes of any complexity and type. In general, FERA-based SOA,
with its information model and semantics capabilities, is a virtual machine that
virtually supports deployment and execution of any collaborative process.
SOA Design and Deployment
SOA design and deployment include the following steps:
- High-level business process modeling
- Detailed modeling of collaborative processes with SOA-IM
- Deployment of SOA documents
These steps are presented in Figure1 - SOA Design and
Figure 2 - SOA Deployment.
According to business requirements, SOA business process modeling defines:
- Collaborative process and its collaborative process flows
- Collaborative process roles
- SOA participants (federates) with assigned roles
- Collaborative documents
- Collaborative scenarios
 |
| Figure 1: SOA Design |
Each SOA supported business process, also referred to as a collaborative
process, implements some kind of collaboration. A collaborative process
can have one or more collaborative process flows that include activities,
decisions and events taking place during the collaboration. Collaborative
process roles perform activities and decisions. Collaborative process roles
are assigned to SOA participants. A participant can be a user, a service or
an agent.
There are two types of documents used in SOA: collaborative documents and
SOA documents. Collaborative documents (e.g., invoices, purchase orders,
store orders, etc.) are documents that contain information received or
generated during the execution of the collaborative processes.
SOA documents, on the other hand, are documents that contain information
needed to model collaborative processes and support their execution in SOA.
SOA documents examples are SOA Collaborative Process Information Document (CPID),
Web Services Description Language (WSDL), ebXML Collaboration Protocol Profile
and Agreement (CPPA), etc.
When the SOA business process modeling is completed, the next step is the detailed
collaborative process modeling which models and defines all details related to
activities, decisions and events in collaborative process flows. This step
generates
- The rest of collaborative document formats not defined in the high-level
business process modeling step
- SOA documents (CPID, WSDL, CPPA, etc.)
 Figure 2: SOA Deployment |
The final step is deployment of SOA documents in SOA Federation.
Run-time FERA-based SOA
The main architectural components of FERA-based SOA are: federates, interfaces
and SOA Federation.
Each participant involved in the collaboration is referred to as a federate.
Federates can be systems or people. People access the SOA Federation through
the Portal interface using personal computers (desktop, laptop) or handheld
wireless devices. Systems access the SOA Federation through the Gateway
interface. The Gateway interface provides complete support for external
(public) collaborations and highly secured communications between federates
and the SOA Federation. As shown in Figure 3, the SOA Federation is the
central framework of the SOA. The SOA Federation includes the following
core components:
- Federation Server (Federation Manager, Federation Registry, Agent
Interface Manager, Security Provider)
- Agent Framework
- Collaborative Process (CP) Flow Controller (Process Flow Manager,
Activity Manager, Decision Manager, Event Manager, Process Flow Registry)
- Built-in Services
 |
| Figure 3: Run-time FERA-based SOA |
In general, the Federation Server is a bridge between the SOA external and
internal worlds. The Agent Framework is a pool of agents that perform
activities and make decisions during the execution of collaborative processes.
The CP Flow Controller manages collaborative process flows comprising a
collaborative process. Each collaborative process can have one or more
collaborative process flows. A collaborative process flow includes activities,
decisions and events that are SOA Information Model collaborative elements.
Built-in Services are third-party tools for the collaborative data analysis,
reporting, etc.
Summary
SOA requires careful planning and is an open and flexible technology solution
that provides an agile architectural infrastructure that meets the reality
of the demands of continuously changing business requirements.
Today’s business end users need and require both technology and guidance
in how to use the technology to achieve business goals. FERA as the SOA
guidance and FERA-based SOA as an architectural solution support
collaborative processes modeling, deployment and execution in all SOA
levels from SOAP message exchanges to the most complex
orchestrated collaborative processes.
For more information about FERA-based SOA please contact us at
info@semantion.com.
|