クライアント型SOAによるスモール&クイックスタート-最適な投資とは
SOAは有効か?
近年、SOAというものがクローズアップされていますが、目新しいものなので概念が浸透していません。また、投資効果が不透明のため、身近に感じることができず、本気で取り入れるという考えがあまり生まれてこないようです。
SOAの導入
これまでの連載によりSOAがどのようなものなのかはわかっていただけていると思いますが、SOAを簡単に説明するとシステムをサービス単位に切り分けて、サービス同士を連携させることで必要な業務システムを完成させていく設計手法です。
最近では、このSOAがSOX法への対応を期待できる手段としてもひそかに注目されてきているのは既述しました。では、実際にどのような点で有効な手段であり、現状との違いはどこにあるのかなどを踏まえながら説明していきます。
SOAの有効性
近年、多くのシステムは規模が大きく膨れ上がり、運用・保守のコストだけでなく、新規の機能追加・変更にも膨大なコストがかかるようになっていることがほとんどです。だからといって、システムすべてを作り直すことはシステムの大きさから考えてとても困難です。
ところが、SOAを採用することによってそのシステムの再製作が比較的やりやすくなるのです。普通であればシステムの改良を行うためにはそれに伴うシステム全体の影響調査などからはじめなければなりません。
実際、筆者も今まで様々なシステムに携わりシステムの改良などにも着手してきましたが、あまりに影響度が大きく断念することもしばしばありました。それに、既存の動作しているシステムをすべて捨てて一から作り直すことは現実的ではありません。
ところがSOAのようにサービス単位であれば、現状の修正を行っていく感覚でシステム改良などを進めていくことができるのです。すべてのシステムに一度に手を加えるのではなく少しずつ手を加えていくことはSOAを取り入れる上でとても有効な手段といえるのです。
このような手段は最近では「プチSOA」として広く紹介されはじめました。前回のコラムでもこの「プチSOA」についてお話していますが、この考え方は既存のシステムを部分的に利用しているのでバグなども最小限におさえられ、今後改良が必要になったシステムから順にSOA化させていけば最終的に「プチSOA」がプチではなくなってきます。そうなれば、運用・保守、変更・修正の簡易化・低コスト化の大きな武器になるはずです。
現状の問題点
現状のシステムは保守・運用に膨大なコストがかかるということを前述いたしました。では、なぜこのようなことが起こっているのでしょうか。現状のシステムの問題点をあげてみましょう。まず、現状のシステムは機能の追加や修正が非常に難しいものになっています。
それは、修正や仕様変更を繰り返しているうちにつぎはぎだらけのシステムになっていることが多くあるからです。では、なぜこのようなことが起きてしまうのでしょうか。
修正箇所や無駄を大きく作ってしまう大きな原因の1つは、最初にすべての仕様を決定してしまうという点ではないでしょうか。完成した機能に追加・変更を加えるのはコストもかかり、その費用の決済稟議を取ることにおいても大変なことなので、システム作成をはじめる前の決め事が多くなってしまいがちです。
また、機能追加・変更が容易でないという理由から当面不必要と考えられる機能を盛り込んでしまいますが、これが最終的に修正を困難にしている原因ではないでしょうか。つまり、スタートから大きなものを見据えて作ろうとすると失敗も大きくなってしまうということなのです。
ここで、先ほどの「プチSOA」を考えて見ましょう。「プチSOA」はその名の通りプチ、つまり小さなサービス単位ではじめていきます。もちろん、最初は全体的な構成・インターフェースなどをきっちり決めて行かなければいけませんが、実際には全体から見るととても小さな部分のみを作成していけばいいので、スタートはとても小さなところからはじめることができるのです。
「プチSOA」は現状の問題点を解決する方法の1つとしてあげることができるのではないでしょうか。