BPMを使う
業務コンポーネントは、oss-CMSを有効に活用し、できない部分も軽量言語とフレームワークでさくさくと開発してしまいましょうということを提案した。
さて次に、そうした業務コンポーネントをフローにしていかなくてはいけない。しかも、単なるワークフローではなく、業務フローが適正なつながりになっているか検証できるシミュレーション機能やできあがったフローの稼動を監視するモニタリング機能などが要求されてきている。そういった意味では、最近注目のBPMを使って業務プロセスを組み上げ、フロー制御していくのが有効な手段であると考えている。
BPM製品もEAIやWASから拡張されたようなものも含め、数が増えてきているが、ここでは「SAVVION」という製品でBPMを行なってみる。この製品は4年前に筆者が実際に使ったことがあることや機能的にもすぐれているので採用することにする。
ただし、この製品でなくいてはいけないということではなく、他の製品でもかまわないし、場合によってはオープンソースのものでもいいのだが、この分野はまだコミュニティが成熟していないのでまだリスクが大きいと思われる。
BPMで必要な機能とはいったい何なのだろうか。最低必要なものとしては、
であると考える。
その他、BAMだとかBIあるいはビジネスルールなどあるが、そこまで活用できる企業は少ないのではないでしょうか。ですから、まずは、適正な業務プロセスが作れて、すぐに動かすことができ、その動いている状況を把握できる仕組みがあればいいのです。
こうしたものはBPMS(BPM Suite)とよばれるが、このBPMSが機能的にすぐれた道具の集まりであることが大切で、誤解をおそれず言うと、BPMそのものあるいはBPMN,BPELとかはあまり重要視していない。
ここで、ビジネスプロセスデザイン機能についてもう少し詳しくみていく。単純に今やっている業務フローを書き出すだけでは、ビジネスプロセスデザインとは呼べない。そのAsIsのフローをシンプルで一貫化されたものにする、適正化という作業が大事である。そのためには、BPMSの中に適正化のためのチェックが自動的に行なわれることと、いろいろなケーススタディができる機能が望まれる。ここはまだ研究中でどうするかは時間が要りそうだ。
もう一つの検討課題は、PloneとSAVVIONとの接続性の問題であるが、これについては、Webサービスを用いてやることになるが、もちろん開発要素は出てくるが接続性については問題にはならない感触を得ている。
参考までに、SAVVIONのモデラーでサンプル業務フローを書いた例を載せる。
この四角の箱がアクティビティであるが、その中味はPloneで作られているといったイメージになる。そして、それぞれの線の取り合いが依頼と受付になる。それで理想的には、アクティビティの機能や線のつなぎ方に業務プロセス上で重複や迂回などのルール違反があるとワーニングしてくれるというのがうれしいのですが。

次回は、開発方法について考えてみる。