IBM®
本文へジャンプ
    Japan [変更]    ご利用条件
 
 
検索範囲検索:    
    ホーム    製品    サービス & ソリューション    サポート & ダウンロード    マイアカウント    
skip to main content

developerWorks Japan  >  Information Management  >

IBM FileNet P8 機能概説: Part 5 – BPMアジャイル開発

developerWorks
ページオプション

JavaScript を要するドキュメントオプションは表示されません


レベル: 初級

中野 和人, IM SWサービス企画, IBM

2009年 1月 13日

FileNet P8の主要な機能としてビジネスプロセス管理(BPM)が挙げられます。ワークフローのモデリングを行う際にBPMN(Business Process Modeling Notation)を用いて記述するケースがあり、記述方法が簡単なため、ビジネスアナリストやビジネスユーザーも要件定義に参加することが可能となります。本稿では、BPMNで表現されたフロー図をFileNetに取り込むことを起点として、コードを記述することなくワークフローシステムを開発する例を紹介します。ここではeFormsを使って、紙帳票を電子化する架空のプロジェクト(プロジェクトX)を扱い、いかに俊敏にシステム構築できるかを説明します。


はじめに

BPMNを用いたワークフロープロセス定義

ビジネスプロセスに関する表記を統一する目的でBPMNという手法が提唱され、要件定義段階におけるビジネスプロセス定義の表記法を容易な記述で統一することで、早期のインスペクションによる欠陥除去を可能とさせています。以下の図はプロジェクトXで取り扱うワークフローの仕様です。

  • 担当者が電子フォームを起票し、課長、部長の順に承認を行います。
  • 上司の承認ルートはシステムで自動決定します。
  • 上司が承認・拒否を選択することができ、拒否の場合は部下に差し戻します。


以下の図はVisioを使って、電子フォームを承認するルート経路を定義した例です。スイムレーンにて処理を行うグループや人などを表し、専門記号を用いて排他的な分岐、並列な分岐などを表します。FileNet ではFileNet Connector for Visioというオプションが用意されており、VisioのBPMNステンシルを使用しながらビジネスフローのモデリングを行うことが可能です。



通常の場合、ワークフローはプロセスデザイナー上でGUIを使って定義を行いますが、FileNetにはVisioファイルをインポートする機能がありますので、プロセスデザイナー用のプロセス定義として簡単に取り込むことが可能です。



eFormsについて

以前の記事でも紹介させていただきましたeFormsですが、ここではアジャイル開発を支える代表的な機能について説明します。

  • カレンダー機能
    フィールドが日付の場合には、入力時にカレンダーがポップアップで表示されて入力を補助します。また、決められた日などをプリセットする機能も備えています。
  • タブ機能、複数ページ機能
    フォームは1枚とは限らず、また違うレイアウトを混ぜたフォームを作成することが可能です。
  • フィールド書式設定
    通貨マークを最初の桁に自動的に付加を行ったり、ある桁数に達しないとエラーを表示するような細やかな書式設定を行うことが可能です。
  • ファイル添付
    ワークフロー時にフォームと共に回覧する添付ファイルを指定することが可能です。あたかも、バインダーに書類を追加していくイメージで操作することが可能です。
  • 署名フィールド
    署名欄を定義することができ、承認した人のデジタル署名を残すことが可能です。
  • PDF出力
    現在表示されているフォームのPDF出力を行うことが可能です。
  • 承認・拒否機能
    プロセスデザイナーで定義されたルート条件を基に、フォームの承認・拒否を行うことが可能です。

eFormsの機能とプロセスマネージャーとは密接に関連しており、表示されているフォームの画面から承認・拒否などの操作を行うことができたり、入力されたフィールド値をルートの分岐条件にすることが可能です。また、eFormsで起票されたデータはContent Engineに格納されますので、監査証跡やアクセスコントロールなどはContent Engineの機能そのままを受け継ぐことが可能です。




上に戻る


FileNetアジャイル開発について

要件確認とモデリング

どのシステム開発でも最初に行うことは要件の確認です。業務を可視化するために、ユースケース図などを使いながら業務に携わる人とタスクとを明確にすることがあります。その際にシステムのみならず、人間系で行われているタスクを含めておくことで、どこまでをシステム化できるかを判断する場合に役に立ちます。また、ユースケース記述書を作成しておくと、アクターの行動がより明確となり、曖昧さが激減していきます。

ユースケースを作成する際には、併せてシーケンス図を作ることがありますが、これは上記で説明したBPMN図で置き換えることが可能です。これによりスイムレーンや並列分岐などが明示的に記述されるためワークフローに適した要件定義を行うことが可能です。ディシジョンテーブルはワークフロー分岐のルールを表すことが可能となり、BPMN図の分岐記号を対比させるように記述を工夫すると見やすくなります。

FileNetで扱うワークフローはコンテンツを伴っていることがほとんどですので、以下の点に留意すると良いでしょう。

  • 人とシステム
    ワークフローの流れを組み合わせ的に考えると、“人と人”、“人とシステム”、“システムとシステム”があります。分岐判断等にシステムのかかわり部分が多くなると自動化(機械化)される割合が増えてきます。ルール条件を洗い出す際にプロパティーなどを組み合わせて自動的にルートを判断できる箇所を調査するようにしてください。
  • グループと個人ユーザー
    ワークフローを実施するアクターが“グループ”、“ユーザー”を明確にしてください。BPMN図でスイムレーンに現れてきます。個人ユーザーに処理が限定されてしまうと、代行処理・緊急処理などの余分なルートの設計が必要になることがあります。
  • 直列と並列
    ワークフロー処理を並列化できるかどうかを調査してください。FileNetでは並列処理を待ちうけすることができますので、処理を分割して並列化できるようになると処理効率は格段に向上します。また、同じ処理ですが並列化することでダブルチェックを実現するという観点でも重要視する場合があります。

FileNetツールの活用

FileNetが提供するツール群を用いることで、フォームの設計や開発、ワークフローの定義などを簡単に行うことができ、定義後にすぐにフォームの承認ワークフローを実行することが可能です。以下に開発の流れを示します。 ほとんどの場合はJavaやJSPなどでのコーディングは不要で、設定されたその時点から実行させることが可能です。図に記載されているツールは以前の記事で使い方の紹介がありますので、ここでは省略いたします。



ワークフローのテスト

上記のようにツールを設定し、Workplace画面からフォームを起票すると、その時点からワークフローが開始されます。また、ワークフローの状況はプロセストラッカーを使用することで、ワークフローのデバックを行うことが可能です。



ワークフロー要件の見直し

プロジェクトXのワークフローをユーザーと共にテストを行いましたが、課長の処理がボトルネックとなっていることが判明し、その理由がチェックを行う際に複数担当者に問い合わせを行わなければ処理が進められなかったことがわかりました。そこで、ビジネスフローを以下のように見直し、課長の処理の前に単純な不備チェックを行うグループと専門性の高いチェックを行うグループとで事前処理を行い、事前チェックを並列化することにしました。BPMN図で記述すると以下のようになります。レーンが2つ追加され、その処理が並列化されていることがわかります。



上記のVisioを再びFileNetにインポートを行い、改良版のワークフローの定義が完了しました。これですぐに新しい仕様のワークフローのテストを行うことができます。



このワークフローをテストした結果、ボトルネックが見事に解消したので、このプロセス定義を採用することにしました。以下の図がアジャイル開発の結果で改善された業務の流れとなります。一般事務による不備チェックはマニュアルを用意さえすれば可能な簡単な仕事とわかりましたので、派遣社員で行うことも視野に入れることができるようになりました。



eFormsにおける機能拡張の例

アジャイル開発では、開発と評価とを繰り返し行いますが、コーディングなどでの機能追加としては以下のような例があります。

  • フォーム中のテキストフィールドが静的なリストではなく、他のデータソースから動的に得る。今回のフォームの場合は、損害箇所をデータベースのある項目からルックアップする。この場合はeFormsからルックアップするインターフェースを開発します。eForms DesignerにはJDBC/ODBC/HTTP経由によりレスポンスしてフィールドのリストを動的に得る機能があり、これを使用することで動的リストを表示することが可能です。



  • フィールドのチェックを行うスクリプトを作成します。例えば以下の場合は、各金額フィールドの合計を計算します。eFormsではビルトインで備えられた関数やJavaScriptによるプログラム記述による機能拡張を行うことが可能です。






上に戻る


アジャイル開発を支えるその他のコンポーネント

FileNetでは今回紹介したeFormsのほかに、次回の記事で紹介しますBPF(Business Process Framework)、スキャナーなどでイメージを簡単に取り込むことができるCaptureなど、製品を買い求めたその日から簡単に使いこなせるオプション群が沢山存在しています。Captureについては、別な機会に説明させていただくことにしまして、以下に簡単な画面紹介をいたします。この画面では中央にスキャナーで採取したイメージを表示し、右ではイメージを見ながら属性(プロパティー)を入力しています。OCR機能でのプリセットなどの補助機能を備えています。






上に戻る


まとめ

本稿で紹介したアジャイル開発を用いると、今回の例ではフォームを簡単にワークフロー化でき、非常に短期間でシステム構築を行うことが可能となります。FileNet BPMはコンテンツをベースにしたビジネスプロセスを実現するための製品ですが、コーディングを行わずにGUI上でのワークフロー定義などFileNetで完結したツールを活用することにより、パッケージ化したソリューションを提供しています。更に、eFormsでは様々なコーディングを付加することができ、きめ細やかな独自の拡張機能を加えることが可能なアーキテクチャーとなっています。

以前の記事で説明を行ったプロセスアナライザーとプロセス・シミュレーターは業務の継続改善という観点で活用できる機能であり、プロセスのボトルネックやワークフローの原価計算をトラッキングすることにより、より効果の高いBPMシステムを維持することが可能となります。



参考文献



著者について

中野 和人はソフトウェア開発研究所のエンジニア兼プロジェクトマネージャーです。Enterprise Content Management分野、特にFileNetにおけるプロジェクトでの業務を担当しています。プロマネしているよりもデバッグしているほうが好きで、華道をこよなく愛し、偶には展覧会にも出展しています。




記事の評価


サイト改善のため、ご意見をお寄せください。こちらのフォームからお願いいたします。



 


 


不充分・不完全である大変素晴らしい
 


この記事を共有する

del.icio.us del.icio.us newsing newsing FC2ブックマーク FC2ブックマーク
Choix! Choix! ニフティクリップ ニフティクリップ Yahoo!ブックマーク Yahoo!ブックマーク
MM/memo MM/memo CZブックマーク CZブックマーク livedoorクリップ livedoorクリップ
はてなブックマーク はてなブックマーク Buzzurl(バザール) Buzzurl(バザール)




上に戻る


    日本IBMについて プライバシー お問い合わせ