本記載から生じる全ての事項について、江端は責任を持ちません。
2014年12月18日 江端智一
要するに、プログラムで言うところのサブルーチンを、Web I/Fで呼び出せるサービスに置き換えただけのものです。
メインルーチンは、その呼び出すURLをダラダラと記載したに過ぎません。
まあ、WebI/Fでアクセスできる単位で付くっておけば、複数のアプリケーションがてんでバラバラにアクセスできる、という点では、確かに美味しいと言えるかもしれません。
「SOA」なんぞ全然新しくもない。
ただですね、「SOA」のちょっとだけ「おや?」と思えるところは、業務内容の流れとサービスの流れを一致させよう、という試みが、ちょっとだけ新鮮なんですよ。
■「見積」という作業に対応する「見積サービス」をWebI/Fで作っておく。
■「発注」という作業に対応する「発注サービス」をWebI/Fで作っておく。
■「承認」という作業に対応する「承認サービス」をWebI/Fで作っておく。
これを組み合わせると、『まあ、なんてことでしょう? あっと言う間に、社内の業務サービスができてしまったわ! 』ということです。
それに、あながち捨てたもんじゃないと思いますよ。
だって、オブジェクト指向プログラムだって、「目に見えるモノ」そのものをベースにしてプログラミングしようという試みでしたよね。
オブジェクト指向プログラムを初めて書いた時の、あの「おぞましい感覚」に比べれば、「SOA」の方がまだマシな方だと思いますよ。
■「SOAP」は、XML-RPCから発展した、WebサービスのためのRPCプロトコル。
■「WSDL」は、どんなサービスがどこにあってどうやって使うのかを記述する手段。
■「UDDI」は、サービスを探し出すDNS(ドメインネームサービス)
のようなものと思えば良いでしょう。
でも、実際、そのどれ一つとして必要ではありません。
WebI/Fでアクセスできるサービスがあれば、それで足ります。
■業務単位に応じたサービス単位を規定して、
■その上でそのサービスをコーディングして、
■それをWebI/F単位で動くような状態にし、
■さらにそのサービスを呼び出すメインルーチンを作る
―― そういう気合が必要なのです。
―― いや、まあ、できますよ。
■レガシーシステムのソースコードが完璧に残っていて、
■レガシーシステムを開発した開発者がまだ在籍していて、
■レガシーシステムをサービス単位に再コーディングして、
■そのサービスから完全にバグを叩き出すことができれば
可能です。
『パッケージアプリを統合』てな話に至っては、「夢でも見ているんですか」と言いたくなるのです。
こぼれネットへ戻る