MDD4SOA is a software development methodology which applies the principles of model-driven development (MDD) to software applications based on service-oriented architectures (SOAs). For this purpose, MDD4SOA introduces three components:
- A UML profile (UML4SOA), which contains specialized elements for modelling service interactions, compensation, exception, and event handling. These elements are defined as UML2 stereotypes. See www.uml4soa.eu for more information
- Model transformers for converting orchestrations written as UML2 activity diagrams with specialized elements from the UML4SOA profile to executable target languages. Currently, the Web service standards family (BPEL, WSDL, XML Schema, etc.) and the traditional object-oriented programming language Java are supported.
- Protocol verification support for checking service behaviour against a protocol. Both behaviour and protocol are specified in UML4SOA. A verification tool, the Mio Workbench, aids in the verification process. See www.miowb.net for more information.