SaaSという言葉が、(またもや)流行っているようだ。

Software as a Service の略だ。

ちなにSOAは、Service Oriented ArchITecture の略だ。

日本語では “サービス指向アーキテクチャー” と訳す。

SOAという用語は、最近は聞かれなくなったが...

“どうして流行の SaaSを取り上げたんですか?”

はい。 流行っているからです。

※ この記事は、最初、2009年に掲載した。
※ その記事の改訂版だ。当時のタイトルは「ERPとSOA」だった。

例のクラウドとかいう...   この前(2009年当時)、NHKで特集していた。

入道雲(にゅうどうぐも)   セールスフォース・ドットコム...

論点が分からなくなってきた...

SaaSとSOAに共通しているのは、Service (サービス)だ。

ところで、数年前には、“ASP” という言葉が流行っていた。

日本語訳は、 “アプリケーション・サービス・プロバイダー” だ。

業務ソフトをインターネット経由で顧客にレンタルする業者のことだ。

ユーザーは、ASPが準備したサーバーの業務ソフトをWebブラウザ (インターネット) 経由で利用する、という仕組みだ。

最近は、とんと聞かれなくなったが...

ASP(という用語)が、すたれた原因は、

・ 顧客は、業務ソフトを自社向けにカスタマイズできなかった
・ASPのサービスは、他のアプリケーションとの連携ができなかった
・ユーザーのインターネットの回線スピードが、遅すぎた...

などなど、ブームが去ってから...   後付けで...

その欠点を直したのが、 “SaaS” のようだ。

お気づきのように、ASPも “サービス” を含んでいた。

セールスフォース・ドットコムは、SaaSプロバイダーとして有名になっている。

SaaSとは …  ウィキペディアの記事から引用

必要な機能を必要な分だけサービスとして利用できるようにしたソフトウェア(主にアプリケーションソフトウェア)もしくはその提供形態のこと。

一般にはインターネット経由で必要な機能を利用する仕組みで、シングルシステム・マルチテナント方式になっているものを指す。

関心が薄いようなので、SaaSという用語の使われ方の不健全性 を指摘することにする。

実は、私もわかっているとは言えないのだ。
というのは、SaaS の定義がバラバラなのだ。

サービスは、いわゆる “サービス” または “部品” と思っていい。

少し、説明の範囲を絞る。

ERPパッケージのサービス化についてだ。

いくつかの専門用語を使って説明することになる。

読者は、ERPを提供している企業が、最近なにを宣伝しているのか、その概要を知る程度の気持ちで読んでいただければと思う。

ERPベンダーの不健全性を指摘することにはなるが...

別の記事には、次のように書いてある。

受注、発注、請求といった業務の単位で、システムに必要な機能を “サービス” として提供する。

利用者からみれば、会計、販売、購買などの機能のかたまりである “モジュール” は、ない。

受注は販売の、発注は購買の、請求は会計の仕事だ。

利用者は、ERPユーザーを想定しているようだ。

ERPユーザーの立場では、モジュールなんて言葉は知らないし、受注業務、発注業務、請求業務であることには、変わりないはずだ。

同じ記事に 『個々のサービスは、Webサービスを介して連携できる』 と書いてある... 深追いするのは、やめにする。

でないと、サーブレットや JSP や EL など、Web アプリケーションの仕組みを説明することになってしまう。

まずは、古典的なSaaSの仕組みを説明する。

SaaSは、次の4つの要素から構成されている。

  • プロバイダ … サービスを登録する
  • ブローカー … サービスを仲介する
  • レジストリ … サービスを保管する
  • リクエスタ … サービスを利用する
  1. プロバイダは、サービスをレジストリに登録する。
  2. リクエスタは、ブローカーでサービスを検索する。
  3. ブローカーは、サービスの場所をリクエスタに提供する。
  4. リクエスタは、プロバイダにサービスを要求する。
  5. 結局、プロバイダは、リクエスタにサービスを提供する。

日本語が、少しおかしいところがあると思う...

わかりにくいと思うが、少しだけ我慢してください。

プロバイダが登録したレジストリに保管されているサービスを、リクエスタがブローカーを介して利用する。

これなら、なんとなく、わかったような気がするでしょう。

  1. 私は、“ERPとSaaS” の記事を、サイトに登録する。
  2. 読者は、検索エンジンで “ERPとSaaS” を含むサイトを検索する。
  3. 検索エンジンは、“ERPとSaaS” の登録サイトを読者に提供する。
  4. 読者は、登録サイトに “ERPとSaaS” の情報を要求する。
  5. 結局、私は、読者に “ERPとSaaS” の情報を提供する。

ひょっとして気がついていない読者に、対応関係を説明する。

  • プロバイダ … サービスの提供者   … 私
  • ブローカー … サービスの仲介者   … XXXXXX
  • レジスタ   … サービスの登録場所 … “ERPとSaaS” の登録サイト
  • リクエスタ … サービスの利用者   … 読者

ところで、ブローカーの右側の “XXXXXX ” は、なんでしょう?

一緒に考えてみましょう...  下は見ずに...

そうです。“検索エンジン” です。

同じ答えでしたか?

私が登録したサイトに保管されているサービスを 読者が、検索エンジンを介して利用する。

プロバイダ が登録した ジストリ に保管されているサービスを、リクエスタ が、ブローカー を介して利用する。

SaaSの究極の仕組みを、こんなに簡単に説明してしまうとは...

実用新案に登録したいぐらいだ。

自然法則を利用していないので、特許にも実用新案にもなりそうにないが...

“SaaSとは” で、インターネット検索で見つけた説明とは、だいぶ違っている...

業務プロセスを記述するだけで、別々のシステムに散在する機能を組み合わせて、複雑なアプリケーションを開発する手法。

対象となるシステムは、ERPパッケージや自社開発システムなど、種類を問わない。

受注処理、在庫確認、請求書発行といった業務処理機能を、サービスとして扱える仕組みを提供する。

これほどまでに、SaaSの定義は、説明者の立場や説明する時期などで違っているのだ。

  • Webサービス ∈ SOA       ※ ∈  ;含まれる
  • UDDI = レジストリ + ブローカー
  • BPEL ...

ERP向けの記事から全く外れている...

業務プロセスを記述するだけで、別々のシステムに散在する機能を組み合わせて複雑なアプリケーションを開発できる...

そのためには、BPEL(業務プロセス実行言語)を使う必要があるはずだが...

そういえば、私が、全社的な業務フローの作成が必要な時に使っている業務フロー作成ソフトは、作成した業務フローから Java のアプリケーションを生成する。

 同じような仕組み?

SaaSのERPへの適用が普及するかどうか、(またもや)歴史の判断を待ちたいと思う。 

そろそろ、記事を改訂した目的を明かす。

読者が、SaaS方式を名乗っているERP製品に騙されないようにするためだ。