The SENSORIA family of UML profiles for SOA consists of five extensions addressing different aspects of a SOA system: UML4SOA, UML4SOA-NFP, Business Policies Support, Service Modes and Service Deployment. They focus on behavioural aspects of service-oriented software such as message passing among requester and provider of services, compensation of long-running transactions, modes, and policies associated to services. The support of these service concepts in the modelling language avoids diagrams overloaded with technical constructs and improves the readability of the models.
UML profiles and their corresponding metamodels constitute the basis for model transformations and code generation defining a modeldriven development process. In particular, the MDD4SOA (Model Driven Development for SOA) transformers also developed within the scope of the SENSORIA project are model transformations implemented as Eclipse plug-ins. They automatically transform service orchestrations specified with our UML4SOA profile to executable code, such as BPEL/ WSDL, Java and JOLIE.
UML4SOA
This profile supports modelling orchestration of services. Orchestration is the ability to compose existing services creating a description of the interaction of several services supporting constructs such as message passing, addressing partner services, compensation and event handling.
This profile aims at the modelling of arbitrary “quality of service” properties defined for a particular given client-server pair. Since in real service configurations, service properties can vary for different classes of clients, we follow a contract-based approach, where nonfunctional properties of services are defined between two participant components: the service provider and the service requester.
This profile deals with the connection of services and business policies, in the context of StPowla. The goal of STPOWLA is to define the business process so that the business stakeholder can easily adapt it to the current state of affairs, by controlling the resources used by the basic tasks in the workflows. To this purpose, the stakeholders issue policy definitions, which constrain the resource usage as a function of the state of the workflow when a task is needed.
Service Modes profile supports modelling of adaptive service brokering offering SOA architectural artefacts, which are an abstraction of a specific set of services that must interact for the completion of a specific subsystem task. A mode will determine the structural constraints that rule a (sub)system configuration at runtime.>
Service Deployment profile supports modelling deployment architecture nodes (Servlet, WebServer) and deployment artefacts (ServiceOrchestration and Resource).