Shoeisha Technology Media

EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

SOAを導入したくなったら?

  2010/09/29 00:00

南波先生のSOA講座もついに完結。最終回は、具体的なSOAの進め方について解説します。導入を決意したシステム管理者はどのようにSOA化を進めていけばよいのでしょうか?  社内展開の2つのプランを紹介します。

どのようにしてSOA化をすすめるの?

生徒

最後にSOAの進め方に簡単にご説明いただけますでしょうか。何と言っても、システム全体の構造を変更するわけですから、派手な変更が必要になるんですかね?

先生

そこはいくつかやり方があってね。最初からSOAで作り直しても良いというのであれば、SOAとしてきれいに設計しちゃうっていう手がありますね。これは、システム全体ではなく、サブシステムであっても構わない。お金や手間は掛かるけれど、すっきりするよね。それから、既存システムをサービスとして再構成するって考え方もある。

生徒

それは具体的にどういう形になるんでしょうか?

先生

単純に言えばラッパーだよね。例えば、既存のシステムは在庫の引当処理や出荷処理といった機能を担っていると思うんだけど、そういった目的に沿って処理をまとめてサービスにする。例えば、顧客情報を取得するためのサービスだったら、それに必要な処理をまとめてしまって、サービスコンシューマとやりとりするためのインタフェースを決めてやればいい。

既存システムを業務的に意味のある単位で区切ってみる
既存システムを業務的に意味のある単位で区切ってみる

 

生徒

そのラッパーに頼むと、ムダはあるにせよ、既存システムのあちこちと掛け合って必要なデータを揃えたり、登録したりしてくれるイメージでしょうか。

先生

そうそう。結局、サービスにやってほしいことって、まさにそれじゃないですか。スパゲティ状態になっているシステムから、意味のある汎用的な処理のまとまりとして、うまく区切ってやるわけだよね。

生徒

これはある程度、機能分割ができている場合ですよね。ラッパーが必要な処理だけ引っこ抜けないようなスパゲティ状態になっていたらお手上げですよね。

先生

そうだね。だから、初めから終わりまで全部ひとつになっちゃっている場合は、そのまま扱うしかありません。例えば、レガシーの場合はほとんどがそうですね。じゃあ、どうするか。大抵の場合、レガシーは対話式のメニュー画面で選択肢を選んでいって、最終的に行き着いたところで処理を走らせるという作りになっていますね。

機能分割の余地がないほど複雑化したシステムだったら?
機能分割の余地がないほど複雑化したシステムだったら?
 

サービスは、メニューを最後まで掘り進むために必要なパラメータを全部受け取って、対話式メニューのボタン押下を代行するような動きをすることになります。返す値の形式も、渡した引数によって全く異なる。サービスとして美しいかどうかは別として、それでもレガシーをSOAの世界に参加させることはできるわけです。 (次ページへ続く)

 

 

 

※この続きは、会員の方のみお読みいただけます(登録無料)。


※この続きは、会員の方のみお読みいただけます(登録無料)。


著者プロフィール

  • 南波 幸雄(ナンバ ユキオ)

    産業技術大学院大学 産業技術研究科 教授、博士(学術)。専門は情報システムアーキテクチャ、概念データモデリングの教育、CIOの養成など。 学生時代は化学工学を専攻。1972年にソニーに入社。磁気テープの研究・開発・製造技術などを担当。その後、生産管理システムプロジェクトへの参画を機に、情報システム...

バックナンバー

連載:南波先生のSOAってそういうことだったのね講座

もっと読む

All contents copyright © 2007-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5