クライアント型SOAによるスモール&クイックスタート-最適な投資とは
クライアント型かサーバ型か
ここで、同じSOAを使用するシステムでもクライアント型にするのかサーバ型にするのかという選択肢が1つ生まれてきます。SOAの特性をよりいかすのはどちらでしょうか。
単純に考えれば、現状ではサーバ型のシステムが多く存在するため、サーバ型の選択が現在運用しているシステムの方向性を変えることが比較的少ない方法にみえます。サーバ側で、先ほどの「プチSOA」を実践していけばサーバ型SOAは実現可能ですが、現実的にはやっと運用がうまくまわりはじめているのにまたプログラム改修していくのは多少なりとも勇気がいることのはずです。そこで、クライアント側でシステムを構築してサーバとの連携を取っていく思想であるクライアント型SOAの手法を取り入れて見た場合はどうでしょうか。
最近のシステムではサーブレットなどを使用したサーバ中心のシステムが多く使われています。そこで、サーバ側のシステムを1つのサービスとしてうまく活用しながら、他のサービスをクライアント側のサービスとして付加すれば各担当者が使いやすいものになるのではないでしょうか。
それはサーバ側のシステムを改良するのと同じ効果が得られることが予想できます。クライアントSOAであれば根本的なサーバ側のシステムは変わっていないので致命的なバグはほぼ起こりえません。
しかも、サーバ連携のみや付加機能部分のみといったサービス単位で構築していけば、クイック&スモールスタートの実現といえるので、究極の「プチSOA」になりえるのではないでしょうか。ただ、クライアント型のシステムはプログラムの追加や修正をする度に、システム利用者すべての端末にプログラムの追加修正を行わなければならないという問題があります。
1クライアントごとにプログラムの追加や修正の作業を行うとどうしても時間も手間もかかります。
数年前まではあまりこの問題に対応する手段はありませんでしたが、インターネット、イントラネットの普及などにより簡単にプログラムの配布などを行うことができるようになりました。
ネットワークを介しての自動配布を行うサービスを連携させていければこの問題も解決です。また、1つ1つの機能が小さくできているために、サービスで連携をとっているサーバ側システムに何らかの手直しが発生したとしても、その小さな1機能のみを修正、もしくは再作成するだけで他の機能には何の影響も与えることのないものを作成することができるはずです。
この手法を使えばシステムがつぎはぎになることもなくなるため、修正・追加開発のコストも激減するはずです。
効率的な投資とは
現在、社内システムが完成している中でシステム投資を行うためにどうしても考えなければならないことは、いかに効率的に予算を使っていくかだと思います。そのためには一度に大きな投資を行うよりも、繰り返し小さな投資を行っていくほうがビジネス環境の変化に則した投資ができるので、投資効果もあがっていくといえるのではないでしょうか。
そこで、1回の投資金額をいかに少なく抑えることができるかが大きなポイントです。これは「プチSOA」によって実現できます。また、クイック&スモールスタートを実践していけば初期投資も少なくなるでしょう。このことからも、効率的な投資の選択肢の1つとして考えてみても面白いのではないでしょうか。
まとめ
SOAは注目をされてきてはいますが、まだまだ身近ではないシステム構築手法です。ただ、一部の先進的な企業でSOAの手法を取り入れ、成功している事例もでてきています。
次回は、今回説明したクライアント型SOAが物流システムではどのように有効にいかすことができるかを、SOAソリューションの一例として説明していきます。