(57)【要約】【課題】業務の手順を生成する場合にあって、既に行われている業務に即した業務の手順を生成するようにした情報処理装置を提供する。【解決手段】情報処理装置の操作履歴受付手段は、文書に対する操作履歴を受け付け、業務手順抽出手段は、前記操作履歴受付手段によって受け付けられた操作履歴に基づいて、業務の手順を抽出し、提示手段は、前記業務手順抽出手段によって抽出された業務の手順を提示する。【選択図】図１
2010157183.tif 000002
【特許請求の範囲】
【請求項１】
文書に対する操作履歴を受け付ける操作履歴受付手段と、
前記操作履歴受付手段によって受け付けられた操作履歴に基づいて、業務の手順を抽出する業務手順抽出手段と、
前記業務手順抽出手段によって抽出された業務の手順を提示する提示手段
を具備することを特徴とする情報処理装置。
【請求項２】
前記操作履歴受付手段が受け付ける操作履歴として、操作が行われた時、操作、操作対象である文書名を含み、
前記業務手順抽出手段は、前記操作履歴に基づいて、前記操作及び前記操作対象である文書名に基づいて、業務における活動を抽出する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記操作履歴受付手段が受け付ける操作履歴として、さらに操作者を含み、
前記操作者を業務における役割に変更する操作者・役割変更手段
をさらに具備し、
前記業務手順抽出手段は、前記操作者・役割変更手段によって変更された役割及び前記操作対象である文書名に基づいて、異なる業務における活動であるか否かを判断し、業務毎に該業務の手順を抽出し、
前記提示手段は、業務毎に該業務の手順を提示する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記提示手段は、複数の業務における活動で、共通する活動とそれ以外の活動を異なる態様で提示する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記操作対象の文書は、階層構造を有している記憶装置に記憶されており、前記文書名として、該階層の名称を含み、
前記業務手順抽出手段は、前記操作及び前記操作対象である文書名内の前記階層の名称に基づいて、業務における活動を抽出する
ことを特徴とする請求項２から４のいずれか一項に記載の情報処理装置。
【請求項６】
前記提示手段は、財務内部統制における業務フローに関する情報として業務の手順を提示し、複数の業務における活動で、共通する活動とそれ以外の活動がリスク又はコントロールの対象となり得ることを提示する
ことを特徴とする請求項１から５のいずれか一項に記載の情報処理装置。
【請求項７】
コンピュータを、
文書に対する操作履歴を受け付ける操作履歴受付手段と、
前記操作履歴受付手段によって受け付けられた操作履歴に基づいて、業務の手順を抽出する業務手順抽出手段と、
前記業務手順抽出手段によって抽出された業務の手順を提示する提示手段
として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
業務に用いられる文書を管理するシステムとして文書管理システムがある。その文書管理システムが管理している文書を用いて、さまざまな情報を収集することが行われている。
【０００３】
これに関連する技術として、例えば、特許文献１には、階層構造やタイトル構造という文書管理システム固有の管理体系を情報収集に有効に活用することが可能な情報収集システムを実現することを課題とし、情報収集システムは、収集方式選択画面を管理者ユーザーのクライアント端末に表示し、管理者ユーザーは、収集方式選択画面で「書棚から書類箱を選択」する方式と「タイトル構造を選択」する方式のどちらかを選択することができ、「書棚から書類箱を選択」する方式が選択された場合には、階層構造に従って収集対象とすべき登録場所を指定するための情報がクライアント端末に提供され、また「タイトル構造を選択」する方式が選択された場合には、複数種のタイトル構造のなかから収集対象とすべきタイトル構造を指定するための情報がクライアント端末に提供されることが開示されている。
【特許文献１】特開２００４−０８６３３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、業務の手順を生成する場合にあって、既に行われている業務に即した業務の手順を生成するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、文書に対する操作履歴を受け付ける操作履歴受付手段と、前記操作履歴受付手段によって受け付けられた操作履歴に基づいて、業務の手順を抽出する業務手順抽出手段と、前記業務手順抽出手段によって抽出された業務の手順を提示する提示手段を具備することを特徴とする情報処理装置である。
【０００６】
請求項２の発明は、前記操作履歴受付手段が受け付ける操作履歴として、操作が行われた時、操作、操作対象である文書名を含み、前記業務手順抽出手段は、前記操作履歴に基づいて、前記操作及び前記操作対象である文書名に基づいて、業務における活動を抽出することを特徴とする請求項１に記載の情報処理装置である。
【０００７】
請求項３の発明は、前記操作履歴受付手段が受け付ける操作履歴として、さらに操作者を含み、前記操作者を業務における役割に変更する操作者・役割変更手段をさらに具備し、前記業務手順抽出手段は、前記操作者・役割変更手段によって変更された役割及び前記操作対象である文書名に基づいて、異なる業務における活動であるか否かを判断し、業務毎に該業務の手順を抽出し、前記提示手段は、業務毎に該業務の手順を提示することを特徴とする請求項２に記載の情報処理装置である。
【０００８】
請求項４の発明は、前記提示手段は、複数の業務における活動で、共通する活動とそれ以外の活動を異なる態様で提示することを特徴とする請求項３に記載の情報処理装置である。
【０００９】
請求項５の発明は、前記操作対象の文書は、階層構造を有している記憶装置に記憶されており、前記文書名として、該階層の名称を含み、前記業務手順抽出手段は、前記操作及び前記操作対象である文書名内の前記階層の名称に基づいて、業務における活動を抽出することを特徴とする請求項２から４のいずれか一項に記載の情報処理装置である。
【００１０】
請求項６の発明は、前記提示手段は、財務内部統制における業務フローに関する情報として業務の手順を提示し、複数の業務における活動で、共通する活動とそれ以外の活動がリスク又はコントロールの対象となり得ることを提示することを特徴とする請求項１から５のいずれか一項に記載の情報処理装置である。
【００１１】
請求項７の発明は、コンピュータを、文書に対する操作履歴を受け付ける操作履歴受付手段と、前記操作履歴受付手段によって受け付けられた操作履歴に基づいて、業務の手順を抽出する業務手順抽出手段と、前記業務手順抽出手段によって抽出された業務の手順を提示する提示手段として機能させることを特徴とする情報処理プログラムである。
【発明の効果】
【００１２】
請求項１記載の情報処理装置によれば、業務の手順を生成する場合にあって、既に行われている業務に即した業務の手順を生成できる。
【００１３】
請求項２記載の情報処理装置によれば、業務の手順を生成する負荷を軽減できる。
【００１４】
請求項３記載の情報処理装置によれば、複数の業務における履歴がある場合であっても、業務毎にその業務の手順を生成することができる。
【００１５】
請求項４記載の情報処理装置によれば、他の業務と比較して、異なる業務を発見しやすくすることができる。
【００１６】
請求項５記載の情報処理装置によれば、文書が階層構造を有している記憶装置に記憶されている場合であっても、業務の手順を生成することができる。
【００１７】
請求項６記載の情報処理装置によれば、財務内部統制における業務フローの生成に適した情報を提示することができる。
【００１８】
請求項７記載の情報処理プログラムによれば、業務の手順を生成する場合にあって、既に行われている業務に即した業務の手順を生成できる。
【発明を実施するための最良の形態】
【００１９】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。「予め定められた」とは、対象としている処理の前であることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。
【００２０】
本実施の形態で取り扱う文書とは、画像、テキストデータ、動画、音声等の電子データ、又はこれらの組み合わせであり、記憶、編集及び検索等の対象となり、システム又は利用者間で個別の単位として交換できるものをいい、これらに類似するものを含む。
【００２１】
本実施の形態である情報処理装置は、文書管理システム１４０によって管理されている文書に対する操作履歴を用いて、業務の手順（以下、業務フローともいう）を提示するものであって、図１に示すように、操作履歴抽出モジュール１１０、業務フロー抽出モジュール１２０、業務フロー提示モジュール１３０を有しており、文書管理システム１４０、ユーザー管理システム１５０と接続されている。
【００２２】
文書管理システム１４０は、操作履歴抽出モジュール１１０と接続されており、文書の管理（文書の記憶、文書の属性／アクセス権等の付与／記憶等、文書の検索等）を行い、その管理している文書は操作対象となり、その編集履歴を記憶している。操作履歴抽出モジュール１１０からの要求にしたがって、記憶している編集履歴を渡す。
また、文書管理システム１４０は、階層構造を有している記憶装置として、操作対象の文書を記憶してもよい。例えば、階層構造として、フォルダ内に文書が格納されている場合がある。また、そのフォルダ内にフォルダがあってもよい。
ユーザー管理システム１５０は、操作履歴抽出モジュール１１０と接続されており、ユーザーの管理（文書管理システム１４０、情報処理装置等のユーザーを対象とし、そのユーザーに関する情報（例えば、ユーザーの属性（役割））等の記憶等）を行い、操作履歴抽出モジュール１１０からの要求にしたがって、その管理しているユーザーに関する情報を渡す。例えば、ユーザーと役割を対応させたテーブルを記憶しており、このテーブルを操作履歴抽出モジュール１１０に渡す。
【００２３】
操作履歴抽出モジュール１１０は、文書管理システム１４０、業務フロー抽出モジュール１２０、ユーザー管理システム１５０と接続されており、文書管理システム１４０から文書に対する操作履歴を受け付ける。そして、その操作履歴（操作履歴抽出モジュール１１０によって変更処理が加えられた操作履歴を含む）を業務フロー抽出モジュール１２０に渡す。
例えば、受け付ける操作履歴として、操作が行われた時、操作、操作対象である文書名を含んでもよい。
【００２４】
また、受け付ける操作履歴として、さらに操作者を含んでもよい。操作者とは、その文書に対して操作を行った者をいい、操作履歴として含まれる操作者として、その操作者を特定するユーザーＩＤ、ユーザー名等がある。
また、操作履歴抽出モジュール１１０は、受け付けた操作者を業務における役割に変更するようにしてもよい。例えば、ユーザー管理システム１５０にユーザーと役割を対応させたテーブルを要求し、そのテーブルからユーザーを役割に変更するようにしてもよい。
【００２５】
また、文書名として、その文書単独の名称の他に、その文書が格納されている記憶装置（文書管理システム１４０）における階層の名称（いわゆるパス名）を含んでいてもよい。なお、文書名は業務の名称を含んでいるように付与（名付け）されている。その業務の名称が含まれている位置は、文書単独の名称の部分であってもよいし、階層の部分であってもよい。以下、この文書名のことを、ファイルＩＤ、ファイルパスともいう。
また、操作履歴抽出モジュール１１０が行う変更処理として、ユーザーから役割に変更することの他に、操作が行われた時をその操作の順番に変更し、階層の名称を含んでいる文書名から予め定められた階層部分を抽出するようにしてもよい。
【００２６】
業務フロー抽出モジュール１２０は、操作履歴抽出モジュール１１０、業務フロー提示モジュール１３０と接続されており、操作履歴抽出モジュール１１０によって受け付けられた操作履歴に基づいて、業務の手順を抽出する。業務は活動を含み、その活動の順番が決まっているものである。さらに、その活動を行う役割が決まっていてもよい。そして、抽出した業務の手順を業務フロー提示モジュール１３０に渡す。
また、業務フロー抽出モジュール１２０は、受け取った操作履歴に基づいて、操作及び操作対象である文書名に基づいて、業務における活動を抽出するようにしてもよい。
また、操作履歴抽出モジュール１１０によって変更された役割及び操作対象である文書名に基づいて、異なる業務における活動であるか否かを判断し、業務毎にその業務の手順を抽出するようにしてもよい。
また、操作及び操作対象である文書名内の階層の名称に基づいて、業務における活動を抽出するようにしてもよい。
【００２７】
業務フロー提示モジュール１３０は、業務フロー抽出モジュール１２０と接続されており、業務フロー抽出モジュール１２０によって抽出された業務の手順を提示する。
また、複数の業務があれば、業務毎にその業務の手順を提示するようにしてもよい。
また、複数の業務における活動で、共通する活動とそれ以外の活動を異なる態様で提示するようにしてもよい。異なる態様で提示とは、例えば、活動に対応するアイコン（小画像）を他のものと区別できるようにするものであり、色彩、形状、模様、音声又はこれらの組み合わせを変更することが該当する。なお、音声を変更するとは、該当するアイコンを選択すると他とは異なる音声が出力される等が該当する。
【００２８】
図２は、本実施の形態（第１から３の実施の形態）を実現するためのシステム構成例を示す説明図である。
文書管理システム１４０、ユーザー管理システム１５０、業務フロー抽出システム２００は、通信回線を介して接続されている。図１の例に示した操作履歴抽出モジュール１１０、業務フロー抽出モジュール１２０、業務フロー提示モジュール１３０は、業務フロー抽出システム２００内に構築されている。また、文書管理システム１４０、ユーザー管理システム１５０、業務フロー抽出システム２００は、図２の例ではそれぞれ１つずつであるが、複数あってもよい。主に、文書管理システム１４０、ユーザー管理システム１５０はサーバーとして動作し、業務フロー抽出システム２００はそのサーバーに対するクライアントとして動作する。また、文書管理システム１４０に管理されている文書を編集するためのＰＣ（パーソナルコンピュータ）が接続されていてもよい。
【００２９】
図３は、操作履歴抽出モジュール１１０、文書管理システム１４０、ユーザー管理システム１５０内のモジュール構成例を示す説明図である。
文書管理システム１４０は、文書ＤＢ１４１、操作履歴ＤＢ１４２を有している。文書ＤＢ１４１は文書を記憶しているデータベースであり、文書はユーザーによる操作によって編集され得る。
例えば、図６の例に示す文書ＤＢ１４１のように、階層構造を有している文書を記憶している。図６の例に示すものは、フォルダである業務文書フォルダ６００下に２つのフォルダである受注業務フォルダ６１０、受注業務フォルダ６３０を有しており、受注業務フォルダ６１０下に３つのフォルダである見積依頼フォルダ６１１、見積フォルダ６１４、注文フォルダ６１７を有しており、見積依頼フォルダ６１１下には２つの文書である見積依頼書１  ６１２、見積依頼書２  ６１３を有しており、見積フォルダ６１４下には２つの文書である見積書１  ６１５、見積書２  ６１６を有しており、注文フォルダ６１７下には２つの文書である注文書１  ６１８、注文書２  ６１９を有している。
操作履歴ＤＢ１４２は、その文書に対する操作の履歴を記憶しているデータベースである。操作履歴として、例えば、操作した時（年、月、日、時、分、秒等のいずれか、これらの組み合わせであって、２つの操作の前後が判明し得るものであればよい）、操作、操作したユーザー、操作対象の文書名（以下、ファイルＩＤ、ファイルパスともいう）等がある。
【００３０】
ユーザー管理システム１５０は、ユーザー情報ＤＢ１５１を有している。ユーザー情報ＤＢ１５１は、ユーザーに関する情報を記憶しているデータベースである。例えば、図７の例に示すようにユーザー情報テーブル７００を記憶している。図７は、ユーザー情報テーブル７００のデータ構造例を示す説明図である。ユーザー情報ＤＢ１５１は、ユーザー情報テーブル７００を記憶しており、ユーザー情報テーブル７００は、ユーザー欄７１０、ロール欄７２０を有している。ユーザー欄７１０はユーザーとしてその名称を記憶しており、ロール欄７２０はそのユーザーに対応する役割（以下、ロールともいう）としてその名称を記憶している。
【００３１】
操作履歴抽出モジュール１１０は、対象操作履歴抽出モジュール１１１、操作履歴変更モジュール１１２を有している。
対象操作履歴抽出モジュール１１１は、文書管理システム１４０から業務フロー抽出対象の階層（フォルダ）下の文書に対する操作履歴を取得する。そして、その取得した操作履歴を操作履歴変更モジュール１１２へ渡す。
そして、操作履歴変更モジュール１１２は、その取得したデータから操作順序、ロール、操作ファイルの階層情報、ファイルＩＤといった形式の操作履歴を抽出する。その抽出は、文書管理システム１４０から取得した操作履歴からデータを選別することの他に、必要に応じてデータを変換する。例えば、ユーザー管理システム１５０に問い合わせて、操作履歴に含まれるユーザー名をロール名に変換する。
【００３２】
また、業務フロー抽出システム２００は、本実施の形態の処理対象（業務の手順として解析すべき文書（その操作履歴群））の指定を受ける。この指定には、ユーザーの操作に応じた指定、又は予め定められた指定等がある。例えば、図８の例に示す設定テーブル８１０によって指定される。そして、業務フロー抽出システム２００は、業務フロー抽出モジュール１２０による業務フローの抽出結果である操作履歴テーブル８２０を記憶している。
【００３３】
図４は、業務フロー抽出モジュール１２０内のモジュール構成例を示す説明図である。業務フロー抽出モジュール１２０は、操作履歴抽出モジュール１１０からの操作履歴から業務フローのインスタンス（実体）を抽出する。
業務フロー抽出モジュール１２０は、サブフロー抽出モジュール１２１、操作ルール適用モジュール１２２、ロール・サブフロールール適用モジュール１２３、ファイルＩＤルール適用モジュール１２４を有している。
サブフロー抽出モジュール１２１は、操作履歴抽出モジュール１１０によって抽出されたファイルＩＤからサブフローを抽出する。ここで、サブフローとは、業務を構成しており、活動名の部分を構成するものである。サブフローの抽出は、後述する設定テーブル８１０の階層サブフロー対応欄８１２によって指定されたものにしたがって抽出する。より具体的には、例えば、図２４に示したフローチャートに従う。この具体的な処理については後述する。
【００３４】
操作ルール適用モジュール１２２は、操作履歴抽出モジュール１１０によって抽出された操作履歴にルールを適用して、業務フローを抽出する。ここで、ルールとして、例えば、同じロールによる同じ文書種別の新規登録（操作）が業務フローの１インスタンスで１回のみ行われること、ある業務フローのインスタンスで登録された文書に対する更新の活動は、登録した業務フローのインスタンスに含まれるということ等がある。このルールに基づき、ロール・サブフロールール適用モジュール１２３、ファイルＩＤルール適用モジュール１２４を制御して、業務フローのインスタンスを操作履歴から抽出する。より具体的には、例えば、図１９に示したフローチャートに従う。この具体的な処理については後述する。
【００３５】
ロール・サブフロールール適用モジュール１２３は、ロールとサブフローを対象として、予め定められたルールに従って、操作履歴内の操作を活動として含めるか否かを判断する。具体的な例として、操作履歴内の操作が登録であり、ロールとサブフローの組み合わせと同じものが、既に業務フローとして抽出されていなければ、その登録操作を業務フローの活動として抽出する。
ファイルＩＤルール適用モジュール１２４は、ファイルＩＤを対象として、予め定められたルールに従って、操作履歴内の操作を活動として含めるか否かを判断する。具体的な例として、操作履歴内の操作が更新であって、その更新対象のファイルＩＤが、既に抽出されている業務フロー内の登録操作の活動のファイルＩＤに含まれている場合は、その業務フローの活動として抽出する。
【００３６】
図５は、業務フロー提示モジュール１３０内のモジュール構成例を示す説明図である。業務フロー提示モジュール１３０は、業務フロー抽出モジュール１２０が抽出した業務フローのインスタンスのデータを、業務フロー図やワークフローシステムの定義データとして、画面やファイルに提示する。また、業務フロー抽出モジュール１２０により、複数の異なる業務フローのインスタンスが抽出された場合、抽出された業務フローを抽出インスタンス数の多いものから順に画面に提示し、提示する業務フローを選択する機能を備えるようにしてもよい。
【００３７】
業務フロー提示モジュール１３０は、アクティビティ名生成モジュール１３１、ファイルリンク生成モジュール１３２、共通アクティビティ抽出モジュール１３３、提示モジュール１３４を有している。
アクティビティ名生成モジュール１３１は、活動（アクティビティ）の名称を生成する。より具体的には、例えば、サブフロー名と操作名を結合して活動名を生成するようにしてもよい。
ファイルリンク生成モジュール１３２は、その活動と対応付けられている文書とのリンクを生成する。
【００３８】
共通アクティビティ抽出モジュール１３３は、複数の業務フローが抽出された場合は、その複数の業務フロー内の活動で共通するものを抽出する。また、それ以外の活動（共通していない活動）を抽出してもよい。
提示モジュール１３４は、業務フロー抽出システム２００のディスプレイに業務フロー図を提示、また、業務フローを定義するデータ（その業務フローの定義データの原型を含む）を提示する。
【００３９】
図８は、設定・結果テーブル群８００のデータ構造例を示す説明図である。業務フロー抽出システム２００は、設定・結果テーブル群８００を有している。設定・結果テーブル群８００には、設定テーブル８１０、操作履歴テーブル８２０が含まれている。
設定テーブル８１０は、解析対象欄８１１、階層サブフロー対応欄８１２を有している。解析対象欄８１１は、文書管理システム１４０内の対象としている文書を記憶しているフォルダを記憶している。階層サブフロー対応欄８１２は、サブフローとして抽出すべき対象を記憶している。
図８に示す例では、解析対象として「／受注業務」が指定されており、これは図６の例に示す受注業務フォルダ６１０下の文書を対象とすることを示している。そして、サブフローとして抽出すべき対象は、子フォルダであることが指定されており、これは図６の例に示す受注業務フォルダ６１０下の３つのフォルダである見積依頼フォルダ６１１、見積フォルダ６１４、注文フォルダ６１７の名称をサブフローとして抽出することを示している。
【００４０】
操作履歴テーブル８２０は、順序欄８２１、操作欄８２２、ロール欄８２３、階層欄８２４、ファイルＩＤ欄８２５を有している。
順序欄８２１は、その活動の業務内における順番を記憶する。
操作欄８２２は、その活動における操作を記憶する。
ロール欄８２３は、その操作を行ったロールを記憶する。
階層欄８２４は、その操作対象である文書の階層名の部分（その文書単独の名称を含んでいてもよい）を記憶する。
ファイルＩＤ欄８２５は、その活動における操作の対象であるファイルＩＤを記憶する。
なお、本実施の形態による処理を行う前の状態は、図８の例に示すように各欄とも空の状態である。また、解析対象に含まれている業務が複数ある場合は、処理結果として操作履歴テーブル８２０が業務数だけ生成されることになる。
【００４１】
図９は、第１の実施の形態によるステップ（１）の処理例を示すフローチャートである。この処理は、操作履歴抽出モジュール１１０によって行われる。操作履歴抽出モジュール１１０は、設定テーブル８１０の解析対象欄８１１から解析対象となるフォルダを取得し、文書管理システム１４０から解析対象であるフォルダ下にある文書の操作履歴を取得し、業務フロー抽出モジュール１２０における処理で必要な情報（順序、操作（操作の種別）、ロール、階層、ファイルＩＤ）を抽出する。なお、ロールは、ユーザー管理システム１５０から取得する。
【００４２】
ステップＳ９０２では、対象操作履歴抽出モジュール１１１が、文書管理システム１４０から解析対象である「／受注業務」フォルダ下の文書に対する操作履歴を取得する。例えば、図１０の例に示す取得操作履歴テーブル１０００がある。図１０は、取得操作履歴テーブル１０００のデータ構造例を示す説明図である。取得操作履歴テーブル１０００は、日時欄１０１０、操作欄１０２０、ユーザー欄１０３０、ファイルＩＤ欄１０４０等を有している。日時欄１０１０は、その操作が行われた日時（年、月、日、時、分、秒等のいずれか、これらの組み合わせであって、２つの操作の前後が判明し得るものであればよい）を記憶している。操作欄１０２０は、行われた操作を記憶している。ユーザー欄１０３０は、その操作を行ったユーザーＩＤを記憶している。ファイルＩＤ欄１０４０は、操作対象であるファイルＩＤを記憶している。これらの他の情報を記憶していてもよい。
【００４３】
ステップＳ９０４では、対象操作履歴抽出モジュール１１１が、取得操作履歴テーブル１０００から日時欄１０１０、操作欄１０２０、ユーザー欄１０３０、ファイルＩＤ欄１０４０のデータのみを抽出する。
ステップＳ９０６では、操作履歴変更モジュール１１２が、ステップＳ９０４での処理結果に対して、日時欄１０１０内の日時列を順序に置き換える。ここで、順序とは順序を表す符号（数字等）であればよい。
ステップＳ９０８では、操作履歴変更モジュール１１２が、ステップＳ９０６での処理結果に対して、ユーザー管理システム１５０に問い合わせを行い、ユーザーをロールに置き換える。つまり、ユーザー情報テーブル７００を用いて、ユーザーに対応するロールを抽出して、そのロールに置き換える。
ステップＳ９１０では、操作履歴変更モジュール１１２が、ステップＳ９０８での処理結果に対して、ファイルＩＤ欄１０４０内のファイルパスから、設定テーブル８１０の階層サブフロー対応欄８１２に従って、「／受注業務」を取り除いたもの（中間フォルダ名と文書単独のファイル名（ファイルパスの部分））を「階層」列（ステップ（１）抽出結果テーブル１１００の階層欄１１４０）として追加する。
【００４４】
このステップ（１）の処理例によって、図１０の例に示す取得操作履歴テーブル１０００は図１１の例に示すステップ（１）抽出結果テーブル１１００のようになる。図１１は、ステップ（１）抽出結果テーブル１１００のデータ構造例を示す説明図である。ステップ（１）抽出結果テーブル１１００は、順序欄１１１０、操作欄１１２０、ロール欄１１３０、階層欄１１４０、ファイルＩＤ欄１１５０を有している。
順序欄１１１０は、ステップＳ９０６によって取得操作履歴テーブル１０００の日時欄１０１０から変換されたものである。
操作欄１１２０は、取得操作履歴テーブル１０００の操作欄１０２０と同じものである。
ロール欄１１３０は、ステップＳ９０８によって取得操作履歴テーブル１０００のユーザー欄１０３０から変換されたものである。
階層欄１１４０は、ステップＳ９１０によって取得操作履歴テーブル１０００のファイルＩＤ欄１０４０から変換して追加されたものである。
ファイルＩＤ欄１１５０は、取得操作履歴テーブル１０００のファイルＩＤ欄１０４０と同じものである。
【００４５】
図１２は、第１の実施の形態によるステップ（２）の処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。業務フロー抽出モジュール１２０がステップ（１）による抽出結果から業務フローを抽出する。操作履歴から業務フローの１案件単位の文書の集合と登録・更新順に基づいて、設定テーブル８１０の階層サブフロー対応欄８１２で規定している階層情報とサブフロー名の対応関係を基に、業務フローを抽出する。
【００４６】
ステップＳ１２０２では、変数Ｍに１を代入して、ステップ（１）による抽出結果（ステップ（１）抽出結果テーブル１１００）の全行が削除されるまで、ステップＳ１２０４からステップＳ１２０８までの処理を繰り返す（ループＢ）。つまり、このステップ（２）の処理が終了した時点では、変数Ｍは業務フローの数に１を加えた数となり、ステップ（１）による抽出結果は空となり、代わりに業務フローの数だけ新しい抽出結果のテーブルができあがることになる。
これを図１３から図１５を用いて説明する。
図１３は、ステップ（１）抽出結果テーブル１３００のデータ構造例を示す説明図である。ステップ（１）抽出結果テーブル１３００は、順序欄１３１０、操作欄１３２０、ロール欄１３３０、階層欄１３４０、ファイルＩＤ欄１３５０を有しており、これは、ステップ（１）抽出結果テーブル１１００が空の状態になったものである。
図１４は、ステップ（２）抽出結果１テーブル１４００のデータ構造例を示す説明図である。ステップ（２）抽出結果１テーブル１４００は、順序欄１４１０、操作欄１４２０、ロール欄１４３０、サブフロー欄１４４０、ファイルＩＤ欄１４５０を有しており、これは、ステップ（１）抽出結果テーブル１１００から業務１にかかわる操作の行を抽出したものである。
図１５は、ステップ（２）抽出結果２テーブル１５００のデータ構造例を示す説明図である。ステップ（２）抽出結果２テーブル１５００は、順序欄１５１０、操作欄１５２０、ロール欄１５３０、サブフロー欄１５４０、ファイルＩＤ欄１５５０を有しており、これは、ステップ（１）抽出結果テーブル１１００から業務２にかかわる操作の行を抽出したものである。
【００４７】
ステップＳ１２０４では、引数として変数Ｍを用いた処理Ｂを行う。処理Ｂは、図１６の例に示したフローチャートを用いて後述する。
ステップＳ１２０６では、変数Ｍを１増加させる。つまり、次の業務フローを抽出対象とするためである。
ステップＳ１２０８では、ステップＳ１２０２へ戻り、ステップ（１）による抽出結果の全行が削除されている状態であるならば、ステップ（２）の処理を終了する（ステップＳ１２９９）。
【００４８】
図１６は、第１の実施の形態による処理Ｂの処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。図１２の例に示したフローチャートのステップＳ１２０４の処理である。変数Ｍ番目の業務フローを抽出する。
【００４９】
ステップＳ１６０２では、業務フローＭの抽出結果を格納する空のテーブルを作成する。具体的な例として、図１７に示すような抽出結果１テーブル１７００を作成する。図１７は、抽出結果１テーブル１７００のデータ構造例を示す説明図である。抽出結果１テーブル１７００は、順序欄１７１０、操作欄１７２０、ロール欄１７３０、サブフロー欄１７４０、ファイルＩＤ欄１７５０を有している。ステップ（１）の抽出結果であるステップ（１）抽出結果テーブル１１００とは、階層欄１１４０ではなく、サブフロー欄１７４０であることが異なる。
【００５０】
ステップＳ１６０４では、ステップ（１）による抽出結果（ステップ（１）抽出結果テーブル１１００）の各行のそれぞれを対象とした処理（ステップＳ１６０６からステップＳ１６０８までの処理）を繰り返す（ループＡ）。つまり、この処理Ｂが終了した時点では、業務フローＭの抽出結果のテーブルができあがることになる。
これを図１８を用いて説明する。図１８は、Ｍが１の場合の業務フローの抽出結果１テーブル１８００のデータ構造例を示す説明図である。抽出結果１テーブル１８００は、順序欄１８１０、操作欄１８２０、ロール欄１８３０、サブフロー欄１８４０、ファイルＩＤ欄１８５０を有している。つまり、抽出結果１テーブル１７００に抽出結果を挿入したものである。
【００５１】
ステップＳ１６０６では、引数として変数Ｍと現在の対象行を用いた処理Ａを行う。処理Ａは、図１９の例に示したフローチャートを用いて後述する。
ステップＳ１６０８では、ステップＳ１６０４へ戻り、ステップ（１）の抽出結果の各行に対する処理が終了している状態であるならば、処理Ｂを終了する（ステップＳ１６９９）。
【００５２】
図１９は、第１の実施の形態による処理Ａの処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。図１６の例に示したフローチャートのステップＳ１６０６の処理である。ステップ（１）の抽出結果（ステップ（１）抽出結果テーブル１１００）の対象行は、変数Ｍ番目の業務フローにおける操作であるか否かを判断して、変数Ｍ番目の業務フローにおける操作である場合のその操作を抽出する。
具体的な例として、ステップ（１）の抽出結果であるステップ（１）抽出結果テーブル１１００の１行目、Ｍ＝１である場合を図２０の例に示す。図２０は、引数行＝ステップ（１）抽出結果１行目２０００のデータ構造例を示す説明図である。引数行＝ステップ（１）抽出結果１行目２０００は、順序欄２０１０、操作欄２０２０、ロール欄２０３０、階層欄２０４０、ファイルＩＤ欄２０５０を有している。つまり、引数行＝ステップ（１）抽出結果１行目２０００は、ステップ（１）抽出結果テーブル１１００の１行目を複写して対象としたものである。
【００５３】
ステップＳ１９０２では、処理Ｃを行う。処理Ｃは、図２４の例に示したフローチャートを用いて後述する。処理Ｃが終了した時点での引数行＝ステップ（１）抽出結果１行目２０００を対象とした１行目取得行の階層サブフローの置き換え（子フォルダ）２１００の状態を図２１の例に示す。図２１は、１行目取得行の階層サブフローの置き換え（子フォルダ）２１００のデータ構造例を示す説明図である。１行目取得行の階層サブフローの置き換え（子フォルダ）２１００は、順序欄２１１０、操作欄２１２０、ロール欄２１３０、サブフロー欄２１４０、ファイルＩＤ欄２１５０を有している。つまり、処理Ｃによって「階層」が「サブフロー」に変換されている。
【００５４】
ステップＳ１９０４では、操作ルール適用モジュール１２２が、引数行（１行目取得行の階層サブフローの置き換え（子フォルダ）２１００）の操作欄２１２０が“登録”であるか否かを判断する。“登録”である場合はステップＳ１９０６へ進み、それ以外の場合はステップＳ１９０８へ進む。
ステップＳ１９０６では、ロール・サブフロールール適用モジュール１２３が、引数行（１行目取得行の階層サブフローの置き換え（子フォルダ）２１００）のロール欄２１３０とサブフロー欄２１４０の値の組み合わせが、ステップ（２）の抽出結果Ｍに存在しなければ、その引数行を抽出結果Ｍに含める。つまり、同じ役割の人によって同じサブフローの操作（登録）が既に抽出されているか否かを判断して、抽出されていなければ抽出結果Ｍとして抽出する。ステップＳ１９０６が終了した時点での１行目取得行の階層サブフローの置き換え（子フォルダ）２１００を対象としたステップ（２）抽出結果１テーブル２２００の状態を図２２の例に示す。図２２は、ステップ（２）抽出結果１テーブル２２００のデータ構造例を示す説明図である。ステップ（２）抽出結果１テーブル２２００は、順序欄２２１０、操作欄２２２０、ロール欄２２３０、サブフロー欄２２４０、ファイルＩＤ欄２２５０を有している。つまり、抽出結果１では何も抽出されていない状態（抽出結果１テーブル１７００）であったので、１行目取得行の階層サブフローの置き換え（子フォルダ）２１００の行をステップ（２）抽出結果１テーブル２２００に含める。
【００５５】
ステップＳ１９０８では、操作ルール適用モジュール１２２が、引数行（１行目取得行の階層サブフローの置き換え（子フォルダ）２１００）の操作欄２１２０が“更新”であるか否かを判断する。“更新”である場合はステップＳ１９１０へ進み、それ以外の場合はステップＳ１９９９（処理Ａを終了して、図１６の例に示したフローチャートのステップＳ１６０６へ戻る）へ進む。
ステップＳ１９１０では、ファイルＩＤルール適用モジュール１２４が、ステップ（２）の抽出結果Ｍのテーブルの操作欄が“登録”である行に、引数行のファイルＩＤ（ファイルパス）欄内のファイルパスが含まれていれば、ステップ（２）の抽出結果Ｍのテーブルに引数行を含める。つまり、操作が行われていることは、既に登録が行われているはずであり、同じファイルパスが含まれている場合（既に登録された文書に対しての更新である）、その業務フローＭにおける操作であるので、引数行を抽出結果Ｍのテーブルに含める。
【００５６】
ステップＳ１９１２では、引数行をステップ（１）の抽出結果（ステップ（１）抽出結果テーブル１１００）から削除する。ただし、ここで削除する引数行は、ステップＳ１９０６又はステップＳ１９１０の処理で、抽出結果Ｍに含めた行のことをいう。したがって、抽出結果Ｍに含められなかった行は削除されずに、そのまま残ることになる。
ステップＳ１９１２の処理が終了した時点でのステップ（１）抽出結果テーブル１１００の状態を図２３の例に示す。図２３は、ステップ（１）抽出結果テーブル２３００のデータ構造例を示す説明図である。ステップ（１）抽出結果テーブル２３００は、順序欄２３１０、操作欄２３２０、ロール欄２３３０、階層欄２３４０、ファイルＩＤ欄２３５０を有している。つまり、ステップ（１）抽出結果テーブル１１００から順序１の行を削除したものである。
【００５７】
図２４は、第１の実施の形態による処理Ｃの処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。図１９の例に示したフローチャートのステップＳ１９０２の処理である。階層をサブフローに変換する。
ステップＳ２４０２では、引数行の階層欄にあるファイルパス内の最上位フォルダ名を値として、サブフロー欄に置き換える。この処理は、設定テーブル８１０の階層サブフロー対応欄８１２にしたがって行われるものである。具体的な例として、図６の例に示した見積依頼フォルダ６１１、見積フォルダ６１４、注文フォルダ６１７のフォルダ名を抽出したことになる。
【００５８】
図２５は、第１の実施の形態によるステップ（２）の処理結果例を示す説明図である。
図２５（ａ）の例に示すステップ（１）抽出結果テーブル２５００は、ステップ（１）の処理結果を示す（図１１の例に示したステップ（１）抽出結果テーブル１１００と同等）。ステップ（１）抽出結果テーブル２５００は、順序欄２５１０、操作欄２５２０、ロール欄２５３０、階層欄２５４０、ファイルＩＤ欄２５５０を有している。
【００５９】
図２５（ｂ）の例に示すステップ（２）抽出結果１テーブル２５００Ａは、業務フロー１として抽出された操作である。
ステップ（２）抽出結果１テーブル２５００Ａは、順序欄２５１０Ａ、操作欄２５２０Ａ、ロール欄２５３０Ａ、サブフロー欄２５４０Ａ、ファイルＩＤ欄２５５０Ａを有している。つまり、ステップ（１）抽出結果テーブル２５００の階層欄２５４０をサブフロー欄２５４０Ａに変換（処理Ｃ）して、操作欄２５２０が“登録”のうち、ロールとサブフローの組み合わせが最初に現れたものが抽出され、操作欄２５２０が“更新”のうち、ファイルパスとしてステップ（２）抽出結果１テーブル２５００Ａ内に既にあるものが抽出されたものである。
【００６０】
図２５（ｃ）の例に示すステップ（２）抽出結果２テーブル２５００Ｂは、業務フロー２として抽出された操作である。
ステップ（２）抽出結果２テーブル２５００Ｂは、順序欄２５１０Ｂ、操作欄２５２０Ｂ、ロール欄２５３０Ｂ、サブフロー欄２５４０Ｂ、ファイルＩＤ欄２５５０Ｂを有している。つまり、ステップ（１）抽出結果テーブル２５００の階層欄２５４０をサブフロー欄２５４０Ｂに変換（処理Ｃ）して、操作欄２５２０が“登録”のうち、ロールとサブフローの組み合わせが２番目に現れたものが抽出され、操作欄２５２０が“更新”のうち、ファイルパスとしてステップ（２）抽出結果２テーブル２５００Ｂ内に既にあるものが抽出されたものである。
【００６１】
図２６は、第１の実施の形態の業務フロー提示モジュール１３０による処理結果の提示例を示す説明図である。
図２６（ａ）の例に示す抽出結果１  ２６００Ａは、図２５（ｂ）の例に示すステップ（２）抽出結果１テーブル２５００Ａを図示したものである。
受付担当２６１０Ａ、見積・注文担当２６２０Ａ、管理担当２６３０Ａは、ステップ（２）抽出結果１テーブル２５００Ａのロール欄２５３０Ａから生成したものである。
各活動（見積依頼＿登録２６１１Ａ、見積依頼＿更新２６３１Ａ、見積＿登録２６２１Ａ、見積＿更新２６３３Ａ、注文＿登録２６２３Ａ）には業務フローの抽出に使用した文書へのリンクアイコン（見積依頼書１  ２６１２Ａ、見積依頼書１  ２６３２Ａ、見積書１  ２６２２Ａ、見積書１  ２６３４Ａ、注文書１  ２６２４Ａ）が置かれている。
そして、各活動は、順序欄２５１０Ａにしたがって矢印で結ばれている。
抽出結果１  ２６００Ａの各活動は、ステップ（２）の抽出結果（ステップ（２）抽出結果１テーブル２５００Ａ）の各行に対応しており、活動名は操作欄２５２０Ａとサブフロー欄２５４０Ａ内の文字列を連結したものとしている。例えば１行目の見積依頼＿登録２６１１Ａの活動名は、サブフロー「見積依頼」と操作「登録」を連結して、「見積依頼＿登録」としている。
【００６２】
また、図２６（ｂ）の例に示す抽出結果２  ２６００Ｂも同様に、図２５（ｃ）の例に示すステップ（２）抽出結果２テーブル２５００Ｂを図示したものである。
業務フロー提示モジュール１３０は、複数の抽出結果（抽出結果１  ２６００Ａと抽出結果２  ２６００Ｂ）を提示する。そして、例えば、共通部分を青色、非共通部分を赤色（図２６では見積＿更新２６３３Ａを斜線付き）で示す。
【００６３】
次に第２の実施の形態を説明する。
第２の実施の形態のモジュール構成例等は、第１の実施の形態（図１から図５）と同等のものである。
第２の実施の形態は、文書管理システム１４０が、図２７の例に示すような階層構造を有している文書を記憶している場合に対応するものである。図２７は、文書ＤＢ１４１内の文書の構成例を示す説明図である。つまり、第１の実施の形態が対象としていた階層構造とは異なり、受注業務フォルダ２７１０内はフォルダ分けされておらず、直接文書（見積依頼書１  ２７１１から注文書２  ２７１６）が記憶されている場合に対応するものである。そして、活動の名称がファイル名として予め定められたルールで含められている。
【００６４】
また、このような階層構造に対応するために、業務フロー抽出システム２００の設定・結果テーブル群２８００内の設定テーブル２８１０（第１の実施の形態では図８の例に示した設定テーブル８１０に対応）が、図２８の例に示すように解析対象欄２８１１、階層サブフロー対応欄２８１２を有している。図２８は、設定・結果テーブル群２８００のデータ構造例を示す説明図である。解析対象欄２８１１は、設定テーブル８１０の解析対象欄８１１と同等である。階層サブフロー対応欄２８１２は、設定テーブル８１０の階層サブフロー対応欄８１２に対応するが、その内容は、ファイルパスである文字列からサブフローを抽出するための正規表現（ｒｅｇｕｌａｒ  ｅｘｐｒｅｓｓｉｏｎ）である。図２８の例に示した正規表現は、例えば、注文書２  ２７１６から「注文」という文字列をサブフローとして抽出するものである。
【００６５】
図２９は、第２の実施の形態によるステップ（１）の処理例を示すフローチャートである。この処理は、操作履歴抽出モジュール１１０によって行われる。操作履歴抽出モジュール１１０は、設定テーブル２８１０の解析対象欄２８１１から解析対象となるフォルダを取得し、文書管理システム１４０から解析対象であるフォルダ下にある文書の操作履歴を取得し、業務フロー抽出モジュール１２０における処理で必要な情報（順序、操作（操作の種別）、ロール、階層、ファイルＩＤ）を抽出する。なお、ロールは、ユーザー管理システム１５０から取得する。
ステップＳ２９０２からステップＳ２９０８までの処理は、第１の実施の形態による図９の例に示したフローチャートのステップＳ９０２からステップＳ９０８までの処理と同等である。
ステップＳ２９１０では、操作履歴変更モジュール１１２が、ステップＳ２９０８での処理結果に対して、ファイルＩＤ欄３０４０内のファイルパスから、設定テーブル２８１０の階層サブフロー対応欄２８１２（ただし、ここでは正規表現の対象となる部分を抽出するという指示の意）に従って、「／受注業務」を取り除いたもの（文書単独のファイル名）を「階層」列（ステップ（１）抽出結果テーブル３１００の階層欄３１４０）として追加する。
【００６６】
なお、第２の実施の形態による処理対象の操作履歴として、図３０の例に示す取得操作履歴テーブル３０００がある。図３０は、取得操作履歴テーブル３０００のデータ構造例を示す説明図である。取得操作履歴テーブル３０００は、日時欄３０１０、操作欄３０２０、ユーザー３０３０、ファイルＩＤ欄３０４０等を有しており、図１０の例に示した取得操作履歴テーブル１０００に対応するものである。
また、図２９の例に示した処理によって、取得操作履歴テーブル３０００は、図３１の例に示すステップ（１）抽出結果テーブル３１００のようになる。図３１は、ステップ（１）抽出結果テーブル３１００のデータ構造例を示す説明図である。ステップ（１）抽出結果テーブル３１００は、順序欄３１１０、操作欄３１２０、ロール欄３１３０、階層欄３１４０、ファイルＩＤ欄３１５０を有しており、図１１の例に示したステップ（１）抽出結果テーブル１１００に対応するものである。
【００６７】
第２の実施の形態が行うステップ（２）の処理は、第１の実施の形態における図１２、図１６、図１９の例に示したフローチャートによる処理例と同等である。ただし、処理Ｃは、図３２の例に示すフローチャートにしたがう。
図３２は、第２の実施の形態による処理Ｃの処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。図１９の例に示したフローチャートのステップＳ１９０２の処理である。階層をサブフローに変換する。
ステップＳ３２０２では、設定テーブル２８１０の階層サブフロー対応欄２８１２内の正規表現を使って、取得した引数行の階層欄にある文字列から、サブフロー名を抽出し、階層欄をサブフロー欄に置き換える。
【００６８】
図３２の例に示すフローチャートの処理例を図３３、図３４を用いて説明する。
処理Ｃにおける引数行の例を図３３に示す。図３３は、ステップ（１）抽出結果１行目３３００のデータ構造例を示す説明図である。ステップ（１）抽出結果１行目３３００は、順序欄３３１０、操作欄３３２０、ロール欄３３３０、階層欄３３４０、ファイルＩＤ欄３３５０を有している。つまり、ステップ（１）抽出結果１行目３３００は、ステップ（１）抽出結果テーブル３１００の１行目を複写して対象としたものである。
処理Ｃが終了した時点でのステップ（１）抽出結果１行目３３００を対象とした１行目取得行の階層サブフローの置き換え（正規表現）３４００の状態を図３４の例に示す。図３４は、１行目取得行の階層サブフローの置き換え（正規表現）３４００のデータ構造例を示す説明図である。１行目取得行の階層サブフローの置き換え（正規表現）３４００は、順序欄３４１０、操作欄３４２０、ロール欄３４３０、サブフロー欄３４４０、ファイルＩＤ欄３４５０を有している。つまり、処理Ｃによって「階層」が「サブフロー」に変換されている。
【００６９】
図３５は、第２の実施の形態による処理結果例を示す説明図である。
図３５（ａ）の例に示すステップ（１）抽出結果テーブル３５００は、ステップ（１）の処理結果を示す（図３１の例に示したステップ（１）抽出結果テーブル３１００に対応）。ステップ（１）抽出結果テーブル３５００は、順序欄３５１０、操作欄３５２０、ロール欄３５３０、階層欄３５４０、ファイルＩＤ欄３５５０を有している。
【００７０】
図３５（ｂ）の例に示すステップ（２）抽出結果１テーブル３５００Ａは、業務フロー１として抽出されたテーブルである。
ステップ（２）抽出結果１テーブル３５００Ａは、順序欄３５１０Ａ、操作欄３５２０Ａ、ロール欄３５３０Ａ、サブフロー欄３５４０Ａ、ファイルＩＤ欄３５５０Ａを有している。第１の実施の形態の処理例における図２５（ｂ）の例に示したステップ（２）抽出結果１テーブル２５００Ａに対応するものである。
【００７１】
図３５（ｃ）の例に示すステップ（２）抽出結果２テーブル３５００Ｂは、業務フロー２として抽出されたテーブルである。
ステップ（２）抽出結果２テーブル３５００Ｂは、順序欄３５１０Ｂ、操作欄３５２０Ｂ、ロール欄３５３０Ｂ、サブフロー欄３５４０Ｂ、ファイルＩＤ欄３５５０Ｂを有している。第１の実施の形態の処理例における図２５（ｃ）の例に示したステップ（２）抽出結果２テーブル２５００Ｂに対応するものである。
【００７２】
次に第３の実施の形態を説明する。
第３の実施の形態のモジュール構成例等は、第１の実施の形態（図１から図５）と同等のものである。
第３の実施の形態は、文書管理システム１４０が、図３６の例に示すような階層構造を有している文書を記憶している場合に対応するものである。図３６は、文書ＤＢ１４１内の文書の構成例を示す説明図である。つまり、第１の実施の形態又は第２の実施の形態が対象としていた階層構造とは異なり、受注業務フォルダ３６１０内は年度毎にフォルダ分け（２００８年度フォルダ３６２０）され、さらに、案件毎にフォルダ分け（案件１０１フォルダ３６３０、案件１０２フォルダ３６４０）されており、その下は図６の例に示したフォルダと文書の階層構造と同等である。複数の階層によって構成されている場合に対応するものである。そして、活動の名称がいずれかの階層のフォルダ名として予め定められたルールで含められている。
【００７３】
また、このような階層構造に対応するために、業務フロー抽出システム２００の設定・結果テーブル群３７００内の設定テーブル３７１０（第１の実施の形態では図８の例に示した設定テーブル８１０に対応）が、図３７の例に示すように解析対象欄３７１１、階層サブフロー対応欄３７１２を有している。図３７は、設定・結果テーブル群３７００のデータ構造例を示す説明図である。解析対象欄３７１１は、設定テーブル８１０の解析対象欄８１１と同等である。階層サブフロー対応欄３７１２は、設定テーブル８１０の階層サブフロー対応欄８１２に対応するが、その内容は、ファイルパスである文字列からサブフローを抽出するための正規表現である。図３７の例に示した正規表現は、例えば、見積依頼書３６３２のファイルパスの文字列から「見積依頼」という文字列をサブフローとして抽出するものである。
【００７４】
図３８は、第３の実施の形態によるステップ（１）の処理例を示すフローチャートである。この処理は、操作履歴抽出モジュール１１０によって行われる。操作履歴抽出モジュール１１０は、設定テーブル３７１０の解析対象欄３７１１から解析対象となるフォルダを取得し、文書管理システム１４０から解析対象であるフォルダ下にある文書の操作履歴を取得し、業務フロー抽出モジュール１２０における処理で必要な情報（順序、操作（操作の種別）、ロール、階層、ファイルＩＤ）を抽出する。なお、ロールは、ユーザー管理システム１５０から取得する。
ステップＳ３８０２からステップＳ３８０８までの処理は、第１の実施の形態による図９の例に示したフローチャートのステップＳ９０２からステップＳ９０８までの処理と同等である。
ステップＳ３８１０では、操作履歴変更モジュール１１２が、ステップＳ３８０８での処理結果に対して、ファイルＩＤ欄３９４０内のファイルパスから、設定テーブル３７１０の階層サブフロー対応欄３７１２（ただし、ここでは正規表現の対象となる部分を抽出するという指示の意）に従って、「／受注業務」を取り除いたもの（複数の中間フォルダ名と文書単独のファイル名）を「階層」列（ステップ（１）抽出結果テーブル４０００の階層欄４０４０）として追加する。
【００７５】
なお、第３の実施の形態による処理対象の操作履歴として、図３９の例に示す取得操作履歴テーブル３９００がある。図３９は、取得操作履歴テーブル３９００のデータ構造例を示す説明図である。取得操作履歴テーブル３９００は、日時欄３９１０、操作欄３９２０、ユーザー３９３０、ファイルＩＤ欄３９４０等を有しており、図１０の例に示した取得操作履歴テーブル１０００に対応するものである。
また、図３８の例に示した処理によって、取得操作履歴テーブル３９００は、図４０の例に示すステップ（１）抽出結果テーブル４０００のようになる。図４０は、ステップ（１）抽出結果テーブル４０００のデータ構造例を示す説明図である。ステップ（１）抽出結果テーブル４０００は、順序欄４０１０、操作欄４０２０、ロール欄４０３０、階層欄４０４０、ファイルＩＤ欄４０５０を有しており、図１１の例に示したステップ（１）抽出結果テーブル１１００に対応するものである。
【００７６】
第３の実施の形態が行うステップ（２）の処理は、第１の実施の形態における図１２、図１６、図１９の例に示したフローチャートによる処理例と同等である。ただし、処理Ｃは、図４１の例に示すフローチャートにしたがう。
図４１は、第３の実施の形態による処理Ｃの処理例を示すフローチャートである。この処理は、業務フロー抽出モジュール１２０によって行われる。図１９の例に示したフローチャートのステップＳ１９０２の処理である。階層をサブフローに変換する。
ステップＳ４１０２では、設定テーブル３７１０の階層サブフロー対応欄３７１２内の正規表現を使って、取得した引数行の階層欄にある文字列から、サブフロー名を抽出し、階層欄をサブフロー欄に置き換える。
【００７７】
図４１の例に示すフローチャートの処理例を図４２、図４３を用いて説明する。
処理Ｃにおける引数行の例を図４２に示す。図４２は、ステップ（１）抽出結果１行目４２００のデータ構造例を示す説明図である。ステップ（１）抽出結果１行目４２００は、順序欄４２１０、操作欄４２２０、ロール欄４２３０、階層欄４２４０、ファイルＩＤ欄４２５０を有している。つまり、ステップ（１）抽出結果１行目４２００は、取得操作履歴テーブル３９００の１行目を複写して対象としたものである。
処理Ｃが終了した時点でのステップ（１）抽出結果１行目４２００を対象とした１行目取得行の階層サブフローの置き換え（正規表現）４３００の状態を図４３の例に示す。図４３は、１行目取得行の階層サブフローの置き換え（正規表現）４３００のデータ構造例を示す説明図である。１行目取得行の階層サブフローの置き換え（正規表現）４３００は、順序欄４３１０、操作欄４３２０、ロール欄４３３０、サブフロー欄４３４０、ファイルＩＤ欄４３５０を有している。つまり、処理Ｃによって「階層」が「サブフロー」に変換されている。
【００７８】
図４４は、第３の実施の形態による処理結果例を示す説明図である。
図４４（ａ）の例に示すステップ（１）抽出結果テーブル４４００は、ステップ（１）の処理結果を示す（図４０の例に示したステップ（１）抽出結果テーブル４０００に対応）。ステップ（１）抽出結果テーブル４４００は、順序欄４４１０、操作欄４４２０、ロール欄４４３０、階層欄４４４０、ファイルＩＤ欄４４５０を有している。
【００７９】
図４４（ｂ）の例に示すステップ（２）抽出結果１テーブル４４００Ａは、業務フロー１として抽出されたテーブルである。
ステップ（２）抽出結果１テーブル４４００Ａは、順序欄４４１０Ａ、操作欄４４２０Ａ、ロール欄４４３０Ａ、サブフロー欄４４４０Ａ、ファイルＩＤ欄４４５０Ａを有している。第１の実施の形態の処理例における図２５（ｂ）の例に示したステップ（２）抽出結果１テーブル２５００Ａに対応するものである。
【００８０】
図４４（ｃ）の例に示すステップ（２）抽出結果２テーブル４４００Ｂは、業務フロー２として抽出されたテーブルである。
ステップ（２）抽出結果２テーブル４４００Ｂは、順序欄４４１０Ｂ、操作欄４４２０Ｂ、ロール欄４４３０Ｂ、サブフロー欄４４４０Ｂ、ファイルＩＤ欄４４５０Ｂを有している。第１の実施の形態の処理例における図２５（ｃ）の例に示したステップ（２）抽出結果２テーブル２５００Ｂに対応するものである。
【００８１】
次に本実施の形態を財務内部統制に用いる場合について説明する。
近年、財務内部統制が求められている。その財務内部統制とは、１９９２年にＣＯＳＯ（トレッドウェイ委員会組織委員会）が発表した「内部統制−統合的枠組み」が、事実上の標準となっており、「（１）業務の有効性・効率性、（２）財務諸表の信頼性、（３）関連法規の遵守の３つの目的を達成するために、合理的な保証を提供することを意図した、取締役会、経営者及びその他の職員によって遂行される一つのプロセス」と定義されている。
本実施の形態は、財務内部統制（以下、内部統制ともいう）に用いられることが好適である。
財務内部統制を行うために、活動／システム／資源／知識情報などの関係を整理して業務プロセス（以下、単にプロセスともいう）を文書化し、その文書を活用、評価（整備評価、運用評価）等するためのシステムを構築する必要がある。
まず、文書化対象の内部統制の「基本４文書」について説明する。
基本４文書とは、内部統制の対象となる業務プロセス毎に作成される基本文書のことをいい、具体的には、業務記述書、業務フロー図、ＲＣＭ（リスク・コントロール・マトリックス）、職務分離表がある。
業務記述書は、ナラティブとも呼ばれる。取引の開始から最終的な総勘定元帳への記帳、報告へ至るまでの一連の業務の流れを文書化したものである。人事規定、経理業務規定などの規定書類は、業務記述書の上位文書であり、その改訂は、業務記述書に影響を与える。また、業務マニュアルは、業務記述書の下位文書であり、その改訂により影響を受ける。
業務フロー図とは、取引の開始から最終的な総勘定元帳への記帳、報告へ至るまでの一連の業務の流れを視覚的にフローチャート化したものである。リスクとコントロールもこの業務フロー上に配置される。
ＲＣＭとは、業務プロセスに関連する内部統制活動について、達成されるべき統制上の要点（アサーション）、想定されるリスク、対応する内部統制活動を一覧表としてまとめたものである。
職務分離表とは、業務プロセスの流れのなかで、財務統制上問題となるような、同一の担当者による処理の重複が発生していないかをチェックするためのものである。
なお、アサーションとは、財務情報が信頼性のある情報といえるための前提条件となるものであり、具体的には、実在性、網羅性、評価、権利と義務、期間／配分、表示の６項目が一般的には使用される。しかし、各社又は監査法人により一部変更つまりカスタマイズされる場合もあり、前述の６項目に限られる必要はない。
リスクとは、業務プロセス上で想定されるアサーションに対する阻害要因のことをいう。
コントロール（統制）とは、リスクに対する内部統制活動のことをいい、統制のタイプとして、防止的、発見的等がある。
また、その内部統制の文書通りに運用されているかを証跡を用いてテストする評価を実施する必要がある。したがって、この証跡は保存しておく必要がある。
【００８２】
前述の実施の形態は、内部統制における業務フロー図を作成するのに好適である。特に、業務フロー提示モジュール１３０によって提示される業務の手順（例えば、図２６の例に示したもの）を、内部統制における業務フローに関する情報（例えば、業務フロー図又はその原型等）としてもよい。したがって、内部統制システムを導入するにあたっても利用し得る。
また、前述の実施の形態の業務フロー提示モジュール１３０は、複数の業務における活動で、共通する活動とそれ以外の活動を異なる態様で提示する場合に、共通する活動以外の活動をリスクとなり得ると判断して、そのメッセージを提示するようにしてもよい。また、共通する活動以外の活動をコントロールの対象となり得ると判断して、そのメッセージを提示するようにしてもよい。
【００８３】
なお、前述の実施の形態としてのプログラムが実行されるコンピュータ（業務フロー抽出システム２００、文書管理システム１４０、ユーザー管理システム１５０）のハードウェア構成は、図４５に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ４５０１を用い、記憶装置としてＲＡＭ４５０２、ＲＯＭ４５０３、ＨＤ４５０４（例えばハードディスクを用いることができる）を用いている。操作履歴抽出モジュール１１０、業務フロー抽出モジュール１２０、業務フロー提示モジュール１３０等のプログラムを実行するＣＰＵ４５０１と、そのプログラムやデータを記憶するＲＡＭ４５０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ４５０３と、補助記憶装置であるＨＤ４５０４と、キーボード、マウス等のデータを入力する入力装置４５０６と、ＣＲＴや液晶ディスプレイ等の提示装置４５０５と、通信ネットワークと接続するための通信回線インタフェース４５０７（例えばネットワークインタフェースカードを用いることができる）、そして、それらをつないでデータのやりとりをするためのバス４５０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００８４】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図４５に示すハードウェア構成は、１つの構成例を示すものであり、前述の実施の形態は、図４５に示す構成に限らず、前述の実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図４５に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００８５】
前記実施の形態においては、操作として「登録」と「更新」の例を示したが、その他の操作を対象としてもよい。例えば、操作として「参照」を含め、操作履歴内に「参照」の操作があった場合は、業務フローとしては抽出しないように処理してもよい。
【００８６】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００８７】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】第１から３の実施の形態を実現するためのシステム構成例を示す説明図である。
【図３】操作履歴抽出モジュール、文書管理システム、ユーザー管理システム内のモジュール構成例を示す説明図である。
【図４】業務フロー抽出モジュール内のモジュール構成例を示す説明図である。
【図５】業務フロー提示モジュール内のモジュール構成例を示す説明図である。
【図６】文書ＤＢ内の文書の構成例を示す説明図である。
【図７】ユーザー情報テーブルのデータ構造例を示す説明図である。
【図８】設定・結果テーブル群のデータ構造例を示す説明図である。
【図９】第１の実施の形態によるステップ（１）の処理例を示すフローチャートである。
【図１０】取得操作履歴テーブルのデータ構造例を示す説明図である。
【図１１】ステップ（１）抽出結果テーブルのデータ構造例を示す説明図である。
【図１２】第１の実施の形態によるステップ（２）の処理例を示すフローチャートである。
【図１３】ステップ（１）抽出結果テーブルのデータ構造例を示す説明図である。
【図１４】ステップ（２）抽出結果１テーブルのデータ構造例を示す説明図である。
【図１５】ステップ（２）抽出結果２テーブルのデータ構造例を示す説明図である。
【図１６】第１の実施の形態による処理Ｂの処理例を示すフローチャートである。
【図１７】抽出結果１テーブルのデータ構造例を示す説明図である。
【図１８】抽出結果１テーブルのデータ構造例を示す説明図である。
【図１９】第１の実施の形態による処理Ａの処理例を示すフローチャートである。
【図２０】引数行＝ステップ（１）抽出結果１行目のデータ構造例を示す説明図である。
【図２１】１行目取得行の階層サブフローの置き換え（子フォルダ）のデータ構造例を示す説明図である。
【図２２】ステップ（２）抽出結果１テーブルのデータ構造例を示す説明図である。
【図２３】ステップ（１）抽出結果テーブルのデータ構造例を示す説明図である。
【図２４】第１の実施の形態による処理Ｃの処理例を示すフローチャートである。
【図２５】第１の実施の形態による処理結果例を示す説明図である。
【図２６】第１の実施の形態による処理結果の提示例を示す説明図である。
【図２７】文書ＤＢ内の文書の構成例を示す説明図である。
【図２８】設定・結果テーブル群のデータ構造例を示す説明図である。
【図２９】第２の実施の形態によるステップ（１）の処理例を示すフローチャートである。
【図３０】取得操作履歴テーブルのデータ構造例を示す説明図である。
【図３１】ステップ（１）抽出結果テーブルのデータ構造例を示す説明図である。
【図３２】第２の実施の形態による処理Ｃの処理例を示すフローチャートである。
【図３３】ステップ（１）抽出結果１行目のデータ構造例を示す説明図である。
【図３４】１行目取得行の階層サブフローの置き換え（正規表現）のデータ構造例を示す説明図である。
【図３５】第２の実施の形態による処理結果例を示す説明図である。
【図３６】文書ＤＢ内の文書の構成例を示す説明図である。
【図３７】設定・結果テーブル群のデータ構造例を示す説明図である。
【図３８】第３の実施の形態によるステップ（１）の処理例を示すフローチャートである。
【図３９】取得操作履歴テーブルのデータ構造例を示す説明図である。
【図４０】ステップ（１）抽出結果テーブルのデータ構造例を示す説明図である。
【図４１】第３の実施の形態による処理Ｃの処理例を示すフローチャートである。
【図４２】ステップ（１）抽出結果１行目のデータ構造例を示す説明図である。
【図４３】１行目取得行の階層サブフローの置き換え（正規表現）のデータ構造例を示す説明図である。
【図４４】第３の実施の形態による処理結果例を示す説明図である。
【図４５】第１から３の実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【符号の説明】
【００８８】
１１０…操作履歴抽出モジュール
１１１…対象操作履歴抽出モジュール
１１２…操作履歴変更モジュール
１２０…業務フロー抽出モジュール
１２１…サブフロー抽出モジュール
１２２…操作ルール適用モジュール
１２３…ロール・サブフロールール適用モジュール
１２４…ファイルＩＤルール適用モジュール
１３０…業務フロー提示モジュール
１３１…アクティビティ名生成モジュール
１３２…ファイルリンク生成モジュール
１３３…共通アクティビティ抽出モジュール
１３４…提示モジュール
１４０…文書管理システム
１４１…文書ＤＢ
１４２…操作履歴ＤＢ
１５０…ユーザー管理システム
１５１…ユーザー情報ＤＢ
２００…業務フロー抽出システム
【図１】
2010157183.tif 000003
【図２】
2010157183.tif 000004
【図３】
2010157183.tif 000005
【図４】
2010157183.tif 000006
【図５】
2010157183.tif 000007
【図６】
2010157183.tif 000008
【図７】
2010157183.tif 000009
【図８】
2010157183.tif 000010
【図９】
2010157183.tif 000011
【図１０】
2010157183.tif 000012
【図１１】
2010157183.tif 000013
【図１２】
2010157183.tif 000014
【図１３】
2010157183.tif 000015
【図１４】
2010157183.tif 000016
【図１５】
2010157183.tif 000017
【図１６】
2010157183.tif 000018
【図１７】
2010157183.tif 000019
【図１８】
2010157183.tif 000020
【図１９】
2010157183.tif 000021
【図２０】
2010157183.tif 000022
【図２１】
2010157183.tif 000023
【図２２】
2010157183.tif 000024
【図２３】
2010157183.tif 000025
【図２４】
2010157183.tif 000026
【図２５】
2010157183.tif 000027
【図２６】
2010157183.tif 000028
【図２７】
2010157183.tif 000029
【図２８】
2010157183.tif 000030
【図２９】
2010157183.tif 000031
【図３０】
2010157183.tif 000032
【図３１】
2010157183.tif 000033
【図３２】
2010157183.tif 000034
【図３３】
2010157183.tif 000035
【図３４】
2010157183.tif 000036
【図３５】
2010157183.tif 000037
【図３６】
2010157183.tif 000038
【図３７】
2010157183.tif 000039
【図３８】
2010157183.tif 000040
【図３９】
2010157183.tif 000041
【図４０】
2010157183.tif 000042
【図４１】
2010157183.tif 000043
【図４２】
2010157183.tif 000044
【図４３】
2010157183.tif 000045
【図４４】
2010157183.tif 000046
【図４５】
2010157183.tif 000047