サービス・モデリングとサービス・モデリング・ツールは、 サービス指向開発プロセスの一部として、モデル駆動型環境を使用して サービスを識別、設計、および開発を効果的に行えるようにするために設計されています。 サービス・モデリング・ツールは、オブジェクト管理グループ (OMG) が作成したサービス指向アーキテクチャー・モデリング言語 (SoaML) に基づいています。 サービス・モデリング・ツールを使用すると、サービス指向アーキテクチャー内のサービス間の設計、構成、および相互関係をモデル化することができます。
サービス・モデリング・ツールを使用して、サービス指向アーキテクチャーと、サービスが互いに適合する方法を、計画、設計、および視覚化できます。 サービス・モデルは、最初から作成するか、ビジネス・プロセス・モデル (ビジネス・プロセスと IT 要件を伝えるために他者によって提供されることがある) から派生させることができます。
サービス・モデリングを開始する際、通常は最初に、 候補サービス (SoaML では機能と呼ばれる) を識別してから、 設計と実装を進める優先順位を判別するために分析します。 次に、優先順位が付けられたサービス用に、サービスが提供する操作とサービスのコンシューマーが提供しなければならない操作の両方を定義するサービス・インターフェースを作成します。 続いて、サービス参加者 (アトミックとコンポジットの両方) を定義した後、 実現して公開するサービスとその方法を指定するため、それらの間の接続を定義します。 このサービス・モデルを変換すると、開発者が実装するためのコード・スケルトンを生成することができます。 また、デプロイメント・モデルでサービス・モデルを使用して、サービスのデプロイメントを計画することもできます。