UML-to-SOA transformations description
Valid transformation sources
- UML models, with or without the Services Modeling (SoaML) profile
or the Software Services profile
appliedImportant: The Software Services profile is deprecated and a profile called the Services Modeling (SoaML) profile is available for modeling services. For information about migrating from the Software Services profile to the Services Modeling (SoaML) profile, see the related link at the end of this topic. For information about how stereotypes in the Software Services profile map to stereotypes in the Services Modeling (SoaML) profile, see the related link at the end of this topic.
- UML models that contain software services realizations and related artifacts, such as data types, and interfaces or references to domain-specific elements
- Software services models, including those generated by the following
transformations:
- Java-to-Service-Model transformation
- Session-Bean-to-Service-Model transformation
- BPMN-to-Service-Model transformation
- Business-Process-to-Service-Model transformation
Valid transformation sources might vary, depending on the transformation extension that you specify to generate domain-specific output. You can specify the appropriate extension in the transformation configuration file. The selected transformation extension validates the transformation source that you specify in the transformation configuration. Check the Problems view for source and target validation errors.
If you select a transformation source from the Project Explorer view instead of using the Transformation Configuration editor, the project that you select overrides the source project that is specified in the transformation configuration. The transformation configuration is not affected and the source that you specify on the Source and Target page of the transformation configuration editor or in the New Transformation Configuration wizard does not change.
Valid transformation targets
- The current workspace
If you are using a shell-sharing environment that includes WebSphere Integration Developer, you might select this option.
- A project
- A folder in a project
Transformation output
The UML-to-SOA transformation invokes several other transformations to generate different types of output, such as Service Component Definition Language (SCDL), Web Services Description Language (WSDL), XML Schema Definition (XSD), and Business Process Engineering Language (BPEL).
The UML-to-SOA transformation automatically generates SCDL Module and Library projects in the target container that you specify in the UML-to-SOA transformation configuration. The Module and Library projects have the same structure as a WebSphere Integration Developer project.
When the transformation generates BPEL artifacts, these artifacts are typically generated in the Module projects. For more information about the Web Services BPEL (WS-BPEL) standard, which is defined by the Organization for the Advancement of Structured Information Standards (OASIS)
The transformation output is compatible with WebSphere Integration Developer version 6.0.2 or later. You can export the generated module and library projects to WebSphere Integration Developer to further refine the implementation details of a business process, create additional services that realize business processes by grouping individual Module projects, and test and deploy to a runtime environment such as WebSphere Process Server.
To view the output of the UML-to-SOA transformation and its extensions, you must enable the Web Services Developer capability.
Limitations of SOA transformations
The SOA transformations cannot transform references to interfaces that exist in other models. In a BPMN model, you can reference UML elements, but the transformation does not process these referenced elements.
If the UML model to transform contains a loop back in a UML activity, no corresponding BPEL loop is generated.
Tasks in a BPMN process that do not contain incoming or outgoing flows are not transformed into BPEL.
In a BPMN event that contains multiple triggers, the transformation processes only the first supported trigger that it encounters.
UML components that contain links to BPMN processes
If a UML component in the source model contains an opaque behavior without UML activities, and whose provided services are implemented by a Business Process Modeling Notation (BPMN) process, the transformation transforms elements of the BPMN process into BPEL elements. See the link to the related reference topic at the end of this topic.
References to interfaces in UML models
You can use Java™ interfaces, WSDL port types, or UML interfaces to specify the provided or required interfaces of a software service, and to specify the provided or required interfaces of the internal structural parts of a software service. For example, internal and external UML ports of the component of the service provider can be typed as Java interfaces.
Java code compatibility for generating BPEL artifacts
For the UML-to-SOA transformation to generate BPEL artifacts that can be exported to WebSphere Integration Developer, Java code that is part of a guard condition or action for a variable in a UML activity or conditional expression in a BPMN process must be compatible with WebSphere Integration Developer version 6.0.2 or later.
The following table lists examples of supported and unsupported code fragments that are associated with a guard or action for a variable in a UML activity or a conditional expression in a BPMN process. In this example, var1 is a UML activity variable of type UMLPrimitiveTypes::Boolean, and var2 is a UML activity variable of type UMLPrimitiveTypes::Integer.
| Supported code | Unsupported code |
|---|---|
|
|
UML-to-SOA transformation extensions
The current implementation of the UML-to-SOA transformation includes a UML-to-SCDL extension for a SOA implementation that is based on the SCDL specification. The UML-to-SCDL transformation creates Service Component Architecture (SCA) 1.0 artifacts, and Module and Library projects that you can export to WebSphere Integration Developer version 6.0.2 or later.
You can extend the UML-to-SCDL transformation to customize how it generates output. See the related topic at the end of this topic.
Comparing and merging transformation output with target content
The UML-to-SOA transformation uses the comparing and merging functionality to determine the differences between the artifacts that a transformation generates and the existing target project structure and file content. When you run the UML-to-SOA transformation, in the merge editor, you can select the changes that the transformation merges into the transformation target content.Integration with team support
The transformation provides integration functionality with IBM Rational Team Concert™, CVS, Rational ClearCase, and Rational ClearCase LT version control systems, which enables you to automatically check out files or add new files. You must enable team capabilities to work with configuration management systems.
