そごうソフトウェア研究所

SOA、開発プロセス、ITアーキテクチャなどについて書いています。Twitterやってます@rsogo

SOAにおけるサービス間の依存性について

Managing Process and Service Dependencies in a SOA Environment

読みかけだけど、興味深い。
確かにそうなんですよね。まだまだ日本では全社のシステムをサービス化しているところって少ないのかなと、思っているですが、この流れが一巡して、いっぱいサービスができて(PL/SQLを単にラップしたやつとか)、なにがどのサービス読んでるんだかってことになりかねない。

ひとつは、ESBを使ってある境界を越えるやりとりは、必ずバスを通る。そのある境界を越えて、Privateなサービスは呼ばない。っていうドメインの考え方で、煩雑さを抑えることはできるかなーと思います。

この記事は、変更があるたびにすべてのサービスをデプロイし直すなんていやだ、俺は依存関係のあるサービスだけ自動でデプロイしたいし、依存関係は勝手にビジュアル化するぜ!というもの。
以下、導入部分の要約。

背景
あなたのBPELプロセスがどのサービスに依存しているか知っていますか?依存関係はすぐに複雑になってしまうし、それらをテストするのも大変ですよね。
普通、私たちはVisioなんかを使って手動でその依存性を記述してきました。

今回はパイロットプロジェクトとして、12の公開されたBPELプロセスおよびESBサービスと、大量の非公開のBPELプロセスとESBサービスを例にとってチャンレンジしてみた。

まず、私たちはプロジェクトで扱うすべてのサービスをAntベースのデプロイで行うことに決めました。
これにはBPELのテストケースも含むし、テスト環境、結合環境、本番環境の異なる環境に対するESBサービスも含むみます。