SoaML
# SoaML

SoaML (Service-oriented architecture Modeling Language /ˈswɑːməl/) is an open source specification project from the Object Management Group (OMG), describing a UML profile and metamodel for the modeling and design of services within a service-oriented architecture.

## Description

SoaML has been created to support the following modeling capabilities:

* Identifying services, dependencies between them and services requirements
* Specifying services (functional capabilities, consumer expectations, the protocols and message exchange patterns)
* Defining service consumers and providers
* The policies for using and providing services
* Services classification schemes
* Integration with OMG Business Motivation Model
* Foundation for further extensions both related to integration with other OMG metamodels like BPDM and BPMN 2.0, as well as SBVR, OSM, ODM and others.

The existing models and meta models (e.g. TOGAF) for describing system architectures turned out to be insufficient to describe SOA in a precise and standardized way. The UML itself seems to be too general for the purpose of describing SOA and needed clarification and standardization of even basic terms like provider, consumer, etc.

