SOAは、コンピュータのソフトウェア機能を、独立した「サービス」という単位で扱うことにより、複数のサービスを組み合わせてシステムを作っていくことを指します。
SAOの特徴は主に3つあります。1つ目に、アプリケーションが業務処理などの単位でサービス化されていること。2つ目に、オープンで標準的なインターフェースでサービスが定義され、呼び出すことが可能であること。3つ目に、サービスを組み合わせてアプリケーションを構築することです。
この特徴の説明だけでは抽象的ですので、「在庫管理」「在庫照会」という具体的なサービスを例にしてさらに詳しく説明していきます。
物販に関するビジネス、業務を行っている場合、商品発注プロセス、オーダー受注プロセス、倉庫管理プロセスという3つの業務プロセスが必要になります。
しかし、この3つがそれぞれ別のサービスを利用して行われる場合、サービスの数が増えて複雑になってしまいますので、「在庫管理サービス」「在庫照会サービス」という2つのサービスでシステムを構築します。
「在庫管理サービス」「在庫照会サービス」2つのサービスをつなぎ合わせ、在庫照会サービスを呼び出して利用した後に在庫管理サービスを呼び出すなど、1つの業務プロセスを行っていくこともできます。
その結果、複数の業務プロセスで同じサービスを利用できるので、ITリソースを効率化していくことが可能になります。
まとめ
SOAを導入することで、システムを市場の変化に合わせて迅速に対応させることができますし、特定のインフラに依存しないサービスを利用することによってベンダー、プラットフォームの選択肢が大きく広がります。
さらに、開発者側からしても、システム開発が容易になることや、サービスが再利用しやすいというメリットがあるために、
開発生産性の向上が図れるという大きな利点があります。