IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特開2024-126245進捗管理装置、進捗管理方法及び進捗管理プログラム
<>
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図1
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図2
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図3
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図4
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図5
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図6
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図7
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図8
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図9
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図10
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図11
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図12
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図13
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図14
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図15
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図16
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図17
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図18
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図19
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図20
  • 特開-進捗管理装置、進捗管理方法及び進捗管理プログラム 図21
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024126245
(43)【公開日】2024-09-20
(54)【発明の名称】進捗管理装置、進捗管理方法及び進捗管理プログラム
(51)【国際特許分類】
   G06Q 10/109 20230101AFI20240912BHJP
【FI】
G06Q10/109
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023034506
(22)【出願日】2023-03-07
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100087480
【弁理士】
【氏名又は名称】片山 修平
(72)【発明者】
【氏名】梅田 悠人
【テーマコード(参考)】
5L010
5L049
【Fターム(参考)】
5L010AA10
5L049AA10
(57)【要約】
【課題】作業の進捗状況を出力する。
【解決手段】進捗管理装置は、端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成する学習部と、監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、前記学習部が生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定する特定部と、前記特定部が特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する進捗推定部と、を備える。
【選択図】図2
【特許請求の範囲】
【請求項1】
端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成する学習部と、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、前記学習部が生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定する特定部と、
前記特定部が特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する進捗推定部と、
を備える進捗管理装置。
【請求項2】
前記学習部及び前記特定部は、前記操作の手順を取得する際に、利用したアプリケーションの情報と、前記アプリケーションにおいて操作した操作対象の情報と、操作内容の情報と、を取得する、ことを特徴とする請求項1に記載の進捗管理装置。
【請求項3】
前記学習部及び前記特定部は、前記操作内容の情報を取得する際に、アプリケーションを表示するウィンドウがアクティブであった時間を参照する、ことを特徴とする請求項2に記載の進捗管理装置。
【請求項4】
前記学習部は、種別が同一の作業を実施している間に得られた複数の操作の手順を比較して、前記複数の操作の手順において共通する操作と共通しない操作とに分類し、分類結果に基づいて前記作業フローを生成する、ことを特徴とする請求項1に記載の進捗管理装置。
【請求項5】
前記特定部は、前記学習部が生成した前記作業フローのうち、前記第1の人物が実行する第1の種別の作業に対応する作業フローを抽出し、抽出した前記作業フローの中から、取得した前記操作履歴と最も類似する作業フローを特定する、ことを特徴とする請求項1に記載の進捗管理装置。
【請求項6】
前記進捗推定部は、前記進捗状況として、前記特定部が特定した前記作業フロー全体における作業の進捗度合を示す値、及び/又は、前記特定部が特定した前記作業フローに含まれる操作のうち前記第1の人物が実行中の操作の進捗度合を示す値、を出力する、ことを特徴とする請求項1に記載の進捗管理装置。
【請求項7】
端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成し、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定し、
特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する、
処理をコンピュータが実行することを特徴とする進捗管理方法。
【請求項8】
端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成し、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定し、
特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する、
処理をコンピュータに実行させることを特徴とする進捗管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、進捗管理装置、進捗管理方法及び進捗管理プログラムに関する。
【背景技術】
【0002】
近年、テレワークを導入する企業が増加しており、チームメンバーと気軽に会話ができなくなっている。その影響により、管理者等は、チームメンバーの作業の進捗状況を把握することが難しくなっている。
【0003】
従来、自動的に的確な操作ガイド情報を提供したり、定型業務のワークフローを効率的に設計・修正する技術が知られている(例えば、特許文献1,2等参照)。また、操作ログ等を用いて、優良社員と一般社員の操作の違いや操作で利用したデータの違いを提示する技術が知られている(例えば、特許文献3等参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008-146455号公報
【特許文献2】特開2009-116673号公報
【特許文献3】特開2017-194808号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来は、テレワーク等で作業を行っている人物が、当該作業をどの程度進めているのかを自動的に推定することはできない。
【0006】
1つの側面では、本発明は、作業の進捗状況を出力することが可能な進捗管理装置、進捗管理方法及び進捗管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
一つの態様では、進捗管理装置は、端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成する学習部と、監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、前記学習部が生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定する特定部と、前記特定部が特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する進捗推定部と、を備える。
【発明の効果】
【0008】
作業の進捗状況を出力することができる。
【図面の簡単な説明】
【0009】
図1】一実施形態に係る進捗状況管理システムの構成を概略的に示す図である。
図2図2(a)、図2(b)は、進捗状況管理システムの処理の概要について説明するための図である。
図3図3(a)は、サーバのハードウェア構成を示す図であり、図3(b)は、管理者用端末及び作業端末のハードウェア構成を示す図である。
図4】サーバの機能ブロック図である。
図5図5(a)、図5(b)は、操作ログの一例を示す図である。
図6】操作情報の一例を示す図である。
図7】サーバが学習期間に実行する処理(その1)を示すフローチャートである。
図8図7のステップS18の処理を示すフローチャートである。
図9図9(a)~図9(f)は、図7のステップS20~S24の処理を説明するための図である。
図10】サーバが学習期間に実行する処理(その2)を示すフローチャートである。
図11図11(a)、図11(b)は、図10のステップS72の処理を説明するための図(その1)である。
図12図12(a)、図12(b)は、図10のステップS72の処理を説明するための図(その2)である。
図13図13(a)、図13(b)は、図10のステップS72の処理を説明するための図(その3)である。
図14】サーバが実行する運用期間の処理を示すフローチャートである。
図15図14のステップS114の処理を示すフローチャート(その1)である。
図16図14のステップS114の処理を示すフローチャート(その2)である。
図17】ステップS114、S116の処理について説明するための図(その1)である。
図18】ステップS114、S116の処理について説明するための図(その2)である。
図19】ステップS114、S116の処理について説明するための図(その3)である。
図20】ステップS114、S116の処理について説明するための図(その4)である。
図21図21(a)は、進捗状況の推定処理(図14のS118)について説明するための図であり、図21(b)、図21(c)は、進捗状況の出力例を示す図である。
【発明を実施するための形態】
【0010】
以下、進捗状況管理システムの一実施形態について、図1図21(c)に基づいて詳細に説明する。
【0011】
図1には、一実施形態に係る進捗状況管理システム100の構成が概略的に示されている。進捗状況管理システム100は、例えば企業において、従業員による作業の進捗状況を自動的に推定して、管理職等の管理者に対して各作業者の進捗状況を通知するシステムである。この進捗状況管理システム100を利用する企業は、一例として、テレワーク(リモートワーク)を導入している企業であるものとする。すなわち、従業員は自宅等の社外(遠隔地)において作業を行うこともあるものとする。
【0012】
進捗状況管理システム100は、図1に示すように、進捗管理装置としての管理サーバ10と、複数の作業端末70と、管理者用端末60と、を備える。管理サーバ10、作業端末70、管理者用端末60は、インターネットやLAN(Local Area Network)などのネットワーク80に接続されている。
【0013】
(進捗状況管理システム100の処理の概要について)
ここで、図2(a)、図2(b)に基づいて、進捗状況管理システム100の処理の概要について説明する。進捗状況管理システム100は、運用開始前の学習期間(図2(a))と、運用期間(図2(b))と、で処理内容が異なっている。
【0014】
(学習期間)
進捗状況管理システム100は、学習期間において、運用期間に利用する情報を収集する処理を実行する。図2(a)に示すように、学習期間が始まると、企業において、何人かの従業員(例えばベテランや模範的な従業員)に作業端末70を用いた各種作業を実施してもらう。以下、学習期間において作業を実行する従業員を、「事前作業者」と呼ぶものとする。このとき、各事前作業者は作業内容(開発作業やテスト作業など)を登録したうえで、作業を実施する。そして、管理サーバ10は、各事前作業者が作業を行っている間に、作業端末70から各事前作業者の操作ログを取得する(図2(a)の(1)参照)。また、管理サーバ10は、取得した操作ログから、作業において実行される操作の手順と各操作に要した時間とを示す作業フローを生成し、登録する(図2(a)の(2)参照)。すなわち、学習期間においては、多数の作業フローが生成され、管理サーバ10内に格納されるようになっている。
【0015】
(運用期間)
上記学習期間が終わり、運用期間に移行すると、企業内の各従業員(作業者と呼ぶ)は作業端末70を用いて通常の業務(作業)を行う。このとき、管理サーバ10は、作業端末70から作業者の操作ログを取得する(図2(b)の(3)参照)。また、管理サーバ10は、登録されている作業フローの中から、作業者の操作ログから得られる操作履歴と最も類似する作業フローを特定し、比較対象の作業フローとする(図2(b)の(4)参照)。また、管理サーバ10は、比較対象の作業フローと、作業者の操作履歴と、を用いて、作業者による作業の進捗状況を推定する(図2(b)の(5)参照)。そして、管理サーバ10は、推定した進捗状況を管理者が利用する管理者用端末60に送信し、画面表示する(図2(b)の(6)参照)。これにより、作業者がテレワーク等により管理者の近くにおらず、管理者が作業者の進捗状況を把握しにくい場合であっても、管理者は、管理者用端末60に表示される情報により作業者の進捗状況を確認することができる。
【0016】
次に、管理サーバ10、作業端末70及び管理者用端末60について、詳細に説明する。
【0017】
(管理サーバ10について)
管理サーバ10は、前述のように、学習期間において、作業端末70から操作ログを取得して、作業フローを生成する処理を実行する。また、管理サーバ10は、運用期間において、作業端末70から操作ログを取得し、当該操作ログから得られる操作履歴と学習期間に生成した作業フローとを用いて作業の進捗状況を推定し、推定した進捗状況を管理者用端末60に送信する処理を実行する。
【0018】
図3(a)には、管理サーバ10のハードウェア構成が示されている。図3(a)に示すように、管理サーバ10は、CPU(Central Processing Unit)90、ROM(Read Only Memory)92、RAM(Random Access Memory)94、ストレージ(例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)など)96、ネットワークインタフェース97、及び可搬型記憶媒体用ドライブ99等を備えている。これら管理サーバ10の構成各部は、バス98に接続されている。管理サーバ10では、ROM92或いはストレージ96に格納されているプログラム(進捗管理プログラムを含む)、或いは可搬型記憶媒体用ドライブ99が可搬型記憶媒体91から読み取ったプログラムをCPU90が実行することにより、図4に示す各部の機能が実現されている。なお、図4の機能は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
【0019】
管理サーバ10は、CPU90がプログラムを実行することにより、図4に示す、操作ログ取得部20、学習部22、特定部としての比較対象特定部24、進捗推定部26、として機能する。
【0020】
操作ログ取得部20は、作業端末70から作業者の操作ログを取得する。操作ログ取得部20は、例えば、Windows(登録商標)のAPI(Application Programming Interface)で取得することができる。操作ログは、例えば、図5(a)、図5(b)に示すようなデータであるものとする。具体的には、操作ログには、「使用したアプリケーション名」、「使用したファイル名」、「ウィンドウアクティブ時間」、「キーボード打鍵頻度」、「アプリケーション起動時間」、「クリップボード使用頻度」などの情報が含まれる。なお、図5(b)は、「使用したファイル名」が無い例を示している。また、「使用したアプリケーション名」がブラウザの名称である場合、「使用したファイル名」は、ブラウザで表示したサイトのURLとなる。図5(a)、図5(b)の情報のうち、「キーボード打鍵頻度」及び「クリップボード使用頻度」は、予め定められている閾値以上であれば「多い」、閾値未満であれば「少ない」となる。
【0021】
学習部22は、学習期間において操作ログ取得部20が作業端末70から取得した操作ログ(事前作業者の操作ログ)から、各事前作業者が作業中に実施した操作に関する情報(操作情報)を取得し、操作情報DB30に格納する。操作情報は、例えば、図6に示すように、作業中に行った複数の操作を、行った順に並べたものとなっている。各操作は、「使用したアプリケーション名,使用したファイル名,操作内容,操作時間」で表される。例えば、図6の1つ目の操作は、使用したアプリケーション名が「A1」であり、使用したファイル名が「F1」であり、操作内容が「見る」であり、操作時間が「2時間」である。「操作内容」については、学習部22が、操作ログに含まれる「ウィンドウアクティブ時間」と、「キーボード打鍵頻度」と、「アプリケーション起動時間」と、「クリップボード使用頻度」の情報に基づいて特定する。なお、学習部22による操作内容の特定方法については後述する。
【0022】
また、学習部22は、学習期間中に得られた多数の操作情報に基づいて、作業フローを生成する。作業フローは、各操作情報を利用しやすくシンプルに表現したものである。なお、作業フローの詳細については後述する。学習部22は、生成した作業フローを作業フローDB32に登録(格納)する。
【0023】
比較対象特定部24は、運用期間中に操作ログ取得部20が取得した操作ログから各作業者の操作履歴を生成する。また、比較対象特定部24は、作業フローDB32を参照して、生成した操作履歴と最も類似する作業フローを特定し、比較対象とする。
【0024】
進捗推定部26は、比較対象特定部24が特定した比較対象の作業フローと、作業者の操作履歴と、に基づいて、作業者による作業の進捗状況を推定する。また、進捗推定部26は、推定した進捗状況を、管理者用端末60に対して出力する。
【0025】
(作業端末70について)
図1に戻り、作業端末70は、事前作業者や作業者が利用する端末(PCなど)である。作業者は、作業端末70を用いて、日頃の業務を行う。作業端末70は、企業の社屋内にあってもよいし、テレワーク先(遠隔地)にあってもよい。
【0026】
図3(b)には、作業端末70のハードウェア構成が示されている。図3(b)に示すように、作業端末70は、CPU190、ROM192、RAM194、ストレージ196、ネットワークインタフェース197、表示部193、入力部195、及び可搬型記憶媒体用ドライブ199等を備えている。表示部193は液晶ディスプレイ等を含み、入力部195はキーボードやマウス、タッチパネル等を含む。これら作業端末70の構成各部は、バス198に接続されている。
【0027】
(管理者用端末60について)
管理者用端末60は、管理者が利用する端末(PCなど)であり、ハードウェア構成は、作業端末70と同様となっている(図3(b)参照)。管理者用端末60は、企業の社屋内にあってもよいし、テレワーク先にあってもよい。
【0028】
(管理サーバ10の処理の詳細について)
次に、管理サーバ10の処理の詳細について、図面を参照しつつ説明する。
【0029】
(学習期間の処理(その1))
図7は、管理サーバ10が学習期間に実行する処理(その1)を示すフローチャートである。図7の処理は、作業端末70ごと(事前作業者ごと)に実行される処理である。
【0030】
図7の処理が開始されると、まずステップS10において、学習部22は、事前作業者が作業端末70において作業内容を登録するまで待機する。作業内容は、例えば「開発作業」や「テスト作業」、「設計作業」など、事前作業者が実行する作業の種別を意味するものである。事前作業者は、この作業内容の登録を行ったうえで、学習期間の作業を開始する。
【0031】
ステップS10において、事前作業者から作業内容の登録があると、ステップS12に移行し、学習部22は、所定時間経過するまで待機する。所定時間は、例えば30分などとすることができる。所定時間が経過すると、学習部22は、ステップS14に移行する。
【0032】
ステップS14に移行すると、学習部22は、所定時間の間(例えば30分間)における事前作業者の操作ログを操作ログ取得部20を介して作業端末70から取得する。前述のように操作ログは、Windows(登録商標)のAPIで取得することができる。
【0033】
次いで、ステップS16において、学習部22は、操作ログを参照して、事前作業者が作業端末70で起動していたアプリケーションのうち、未選択のアプリケーションを1つ選択する。
【0034】
次いで、ステップS18において、学習部22は、取得した操作ログ(図5(a)や図5(b)参照)に基づいて、選択したアプリケーションにおける事前作業者の操作内容を特定する。学習部22は、このステップS18において、図8のフローチャートに沿った処理を実行する。
【0035】
図8の処理が開始されると、まずステップS40において、学習部22は、選択されているアプリケーションのウィンドウのアクティブ時間が、起動していたアプリケーションの中で最も長いか否かを判断する。このステップS40の判断が肯定されると、ステップS42に移行する。
【0036】
ステップS42に移行すると、学習部22は、選択されているアプリケーションにおけるキーボードの打鍵頻度が多いか否かを判断する。このステップS42の判断が肯定された場合には、ステップS44に移行し、学習部22は、選択されているアプリケーションに対する事前作業者の操作内容が「書く操作」であったと特定する。
【0037】
一方、ステップS42の判断が否定された場合には、ステップS46に移行し、学習部22は、選択されているアプリケーションにおけるクリップボードの使用頻度が多いか否かを判断する。このステップS46の判断が肯定された場合には、ステップS48に移行し、学習部22は、選択されているアプリケーションに対する事前作業者の操作内容が「貼付操作」であったと特定する。これに対し、ステップS46の判断が否定された場合には、ステップS50に移行し、学習部22は、選択されているアプリケーションに対する事前作業者の操作内容が「見る操作」であったと特定する。
【0038】
ステップS40において判断が否定された場合、すなわち、選択されているアプリケーションのウィンドウのアクティブ時間が起動していたアプリケーションの中で最も長くない場合には、ステップS52に移行する。ステップS52に移行すると、学習部22は、選択されているアプリケーションの起動時間が所定以上であるか否かを判断する。このステップS52の判断が肯定された場合には、ステップS54に移行し、学習部22は、「見る操作(区間あり許容操作)」と特定する。なお、「見る操作(区間あり許容操作)」の詳細については後述する。一方、ステップS52の判断が否定された場合には、ステップS56に移行し、学習部22は、選択されているアプリケーションの操作を操作と見做さない(操作がなされていないと取り扱う)こととする。
【0039】
ステップS44、S48、S50、S54、S56のいずれかが実行されると、図8の処理を終了し、図7のステップS20に移行する。
【0040】
図7のステップS20に移行すると、学習部22は、ステップS18で特定した操作内容が、直前の操作内容と一致しているか否かを判断する。このステップS20の判断が肯定されると、ステップS22に移行し、学習部22は、操作情報の末尾の操作内容の操作時間に所定時間(例えば30分)を足す。一方、ステップS20の判断が否定されると、ステップS24に移行し、学習部22は、操作情報の末尾に操作内容を登録し、操作時間を所定時間(例えば30分)とする。例えば、ステップS20の段階で、図9(a)に示すように操作情報が空であり、事前作業者が操作内容aを実施した場合には、学習部22は、図9(b)に示すように、操作情報の末尾に操作内容aの情報を追加し、操作時間を0.5Hとする。また、ステップS20の段階で、図9(b)に示すように操作情報に操作内容aが含まれており、事前作業者が操作内容aを実施した場合には、学習部22は、図9(c)に示すように、操作情報の末尾の操作内容aの操作時間を+0.5H(=1H)とする。同様に、ステップS20の段階で、操作情報が図9(d)に示すようになっており、事前作業者が操作内容dを実施した場合には、学習部22は、図9(e)に示すように、操作情報の末尾に操作内容dの情報を追加し、操作時間を0.5Hとする。また、ステップS20の段階で、操作情報が図9(d)に示すようになっており、事前作業者が操作内容cを実施した場合には、学習部22は、図9(f)に示すように、操作情報の末尾の操作内容cの操作時間を+0.5H(=4.5H)とする。なお、図8の処理において、ステップS56の処理が実行された場合には、その操作内容については、ステップS20、S22、S24の処理は行わないものとする。
【0041】
図7のステップS22又はS24の処理が行われた後は、ステップS26に移行し、学習部22は、全てのアプリケーションを選択済みであるか否かを判断する。この判断が否定された場合には、学習部22は、ステップS16に戻る。ステップS16に戻った後は、アプリケーションを新たに選択し、ステップS18~S26の処理・判断を再度実行する。一方、ステップS26の判断が肯定されると、学習部22は、ステップS28に移行する。
【0042】
ステップS28に移行すると、学習部22は、事前作業者が作業端末70に「作業終了」を入力したか否かを判断する。このステップS28の判断が否定された場合には、ステップS30において、学習部22は、所定時間(30分)が経過したか否かを判断する。このステップS30の判断が否定された場合には、ステップS28に戻る。その後、ステップS28、S30のいずれかの判断が肯定されるまで、ステップS28、S30の判断が繰り返され、ステップS30の判断が肯定されると、ステップS14に戻る。ステップS14に戻ると、学習部22は、所定時間(30分)の間に操作ログ取得部20が取得した操作ログを取得し、ステップS16~S26の処理・判断を再度実行する。
【0043】
一方、ステップS28の判断が肯定されると、ステップS32に移行し、学習部22は、事前作業者の作業中に得られた操作情報(図6参照)を操作情報DB30に登録する。
【0044】
以上により、図7の全処理が終了する。図7の処理は、学習期間の間、各事前作業者が作業を実行する度に繰り返し実行されるようになっている。したがって、学習期間中には、操作情報DB30に複数の操作情報が格納(登録)されるようになっている。
【0045】
(学習期間の処理(その2))
次に、管理サーバ10により実行される学習期間の処理(その2)について、図10のフローチャートに沿って説明する。なお、図10の処理は、前述した図7の処理と同時並行的に実行される。
【0046】
図10の処理が開始されると、ステップS70において、学習部22は、学習期間終了となるまで待機する。学習部22は、学習期間が終了したか否かを、予め定められている学習期間の終了時期が到来したか否かに基づいて判断することができる。また、学習部22は、予定していた数の操作情報が取得できたか否かに基づいて、学習期間が終了したか否かを判断してもよい。また、学習部22は、管理者が管理者用端末60に学習期間を終了する旨の情報を入力したか否かに基づいて学習期間が終了したか否かを判断してもよい。
【0047】
学習期間が終了すると、ステップS72に移行し、学習部22は、同一種別の作業内容ごとに、操作情報を比較し、必須操作、区間なし許容操作、繰り返し操作に分類し、区間あり許容操作とともに作業フローDB32に格納する。
【0048】
以下、ステップS72の処理について、具体的に説明する。
【0049】
例えば、図11(a)に示すように、同一の種別の作業内容Aについて3つの操作情報1~3が操作情報DB30に格納されていたとする。この場合、学習部22は、操作情報1~3のすべてに存在している操作内容a~dを必須操作とする。また、学習部22は、1つの操作情報に存在しているものの、その他の操作情報には存在していない操作(操作内容e,f,g)を区間なし許容操作とする。そして、学習部22は、必須操作を並べた作業フロー1~3を作成し、これらの作業フローに区間なし許容操作の情報を付記する。なお、区間なし許容操作は、作業内容Aを実施している間は、いずれのタイミングでの実施も許容される操作(減点にならない操作)を意味する。学習部22は、ステップS72において、図11(a)の操作情報から、図11(b)の作業フローを作成し、図11(b)の情報を作業フローDB32に格納する。
【0050】
また、例えば、図12(a)に示すように、同一の種別の作業内容Bについて2つの操作情報1、2が操作情報DB30に格納されていたとする。図12(a)の操作情報1は、操作内容aを行っているときに、区間あり許容操作f(図8のステップS54参照)も同時並行的に実施され、操作内容cを行っているときに、区間あり許容操作gも同時並行的に実施された例である。また、操作情報2は、操作内容aを行っているときに、区間あり許容操作fも同時並行的に実施された例である。学習部22は、図12(b)に示すように、操作情報1,2をそのまま作業フロー1,2とし、区間あり許容操作の情報を付記する。なお、区間あり許容操作は、対応する操作内容と同時に実施すれば、その実施が許容される操作(減点にならない操作)を意味する。すなわち、作業フロー1の場合、操作内容aと同時に操作内容fを実施していれば減点にならないが、操作内容bと同時に操作内容fを実施すると減点になることを意味する。学習部22は、ステップS72において、図12(a)の操作情報から、図12(b)の作業フローを作成し、図12(b)の情報を作業フローDB32に格納する。
【0051】
また、例えば、図13(a)に示すように、同一の種別の作業内容Cについて2つの操作情報1、2が操作情報DB30に格納されていたとする。図13(a)の操作情報1、2は、操作内容a、b、cを実施した後に、破線枠で囲んで示すように、操作内容a,bを再度実施した例である。この場合、学習部22は、図13(b)に示すように、作業フロー1、2を生成する。すなわち、操作内容c、dの間における操作内容a,bの実施を許容することとしている。なお、図13(b)の作業フロー1における操作内容aの時間(予定作業時間)は、図13(a)の操作情報1に含まれる操作内容a全ての時間を合計したものと一致している。また、図13(b)の作業フロー1における操作内容bの時間は、図13(a)の操作情報1に含まれる操作内容b全ての時間を合計したものと一致している。作業フロー2の操作内容a,bの時間(予定作業時間)についても同様である。学習部22は、ステップS72において、図13(a)の操作情報から、図13(b)の作業フローを作成し、図13(b)の情報を作業フローDB32に格納する。
【0052】
(運用期間の処理)
次に、管理サーバ10が運用期間に実行する処理について、図14のフローチャートに沿って詳細に説明する。図14の処理は、作業端末70ごとに(作業者一人一人に対して)実行される処理である。
【0053】
図14の処理が開始されると、まずステップS102において、比較対象特定部24は、作業者が作業端末70において「作業開始」の情報を入力するまで待機する。
【0054】
ステップS102において、作業開始の情報が入力されると、ステップS104に移行し、比較対象特定部24は、全作業フローのスコアを0、減点を0、全作業フローの全操作の実操作時間を0、検索位置を各作業フローの先頭に設定する。
【0055】
次いで、ステップS106において、比較対象特定部24は、所定時間経過するまで待機する。所定時間は、例えば30分などとすることができる。所定時間が経過すると、比較対象特定部24は、ステップS108に移行する。
【0056】
ステップS108に移行すると、比較対象特定部24は、所定時間の間(例えば30分間)における作業者の操作ログを操作ログ取得部20を介して作業端末70から取得する。
【0057】
次いで、ステップS110において、比較対象特定部24は、取得した操作ログ(図5(a)や図5(b)参照)の操作内容(見る、貼る、書くなど)を特定する。このステップS110の処理は、前述した図7のステップS18と同様である(図8参照)。
【0058】
次いで、ステップS114において、比較対象特定部24は、全作業フローのスコアリング処理を実行する。このステップS114において、比較対象特定部24は、図15図16の処理を実行する。
【0059】
図15の処理が開始されると、まず、ステップS130において、比較対象特定部24は、未選択の作業フロー(作業フローXとする)を選択する。
【0060】
次いで、ステップS132において、比較対象特定部24は、特定された操作内容(操作内容mとする)が、選択した作業フローXの検索位置の操作内容と同一であるかを判断する。このステップS132の判断が肯定された場合には、ステップS134に移行し、比較対象特定部24は、現在実行中の操作時間(realTime[m])に所定時間(0.5H)を加算する(次式(1)参照)。
realTime[m]=realTime[m]+0.5 …(1)
【0061】
これに対し、ステップS132の判断が否定された場合には、ステップS136に移行し、比較対象特定部24は、特定された操作内容mが選択した作業フローXの検索位置となっている操作内容の次の操作内容であるか否かを判断する。このステップS136の判断が肯定された場合には、ステップS138に移行し、比較対象特定部24は、検索位置を選択した作業フローXの次の操作へ移動し、ステップS134に移行する。ステップS134に移行すると、比較対象特定部24は、現在実行中の操作時間(realTime[m])に所定時間(0.5H)を加算する(上式(1)参照)。なお、この場合には、realTime[m]=0.5となる。
【0062】
上述したように、ステップS134の処理が実行されると、比較対象特定部24は、図16のステップS150に移行する。
【0063】
一方、ステップS136の判断が否定された場合には、ステップS140に移行し、比較対象特定部24は、特定された操作内容mが許容操作であるか否かを判断する。このステップS140の判断が肯定された場合には、図16のステップS150に移行する。これに対し、ステップS140の判断が否定された場合には、ステップS142に移行し、減点(minus[X])に+1を加算する。すなわち、
minus[X]=minus[X]+1 …(2)
とする。その後は、比較対象特定部24は、図16のステップS150に移行する。
【0064】
図16のステップS150に移行すると、比較対象特定部24は、暫定スコア(tempScore)の値を0とする。
【0065】
次いで、ステップS152において、比較対象特定部24は、選択されている作業フローXに含まれる未選択の操作内容の1つ(操作内容iとする)を選択する。
【0066】
次いで、ステップS154において、比較対象特定部24は、操作内容iの操作時間(realTime[i])が操作内容iの予定操作時間(expectedTime[X][i])よりも大きいか否かを判断する。
【0067】
ここで、操作内容iの予定操作時間とは、作業フローXにおいて操作内容iと対応付けられている時間(学習期間において事前作業者が操作内容iを実施した時間)を意味する。このステップS154の判断が肯定された場合には、ステップS156に移行する。
【0068】
ステップS156に移行すると、比較対象特定部24は、暫定スコアに、「操作内容iの予定操作時間(expectedTime[X][i])/操作内容iの操作時間(realTime[i])」を加算する。すなわち、
tempScore=tempScore+(expectedTime[X][i])/realTime[i]) …(3)
とする。
【0069】
一方、ステップS154の判断が否定された場合には、ステップS158に移行し、比較対象特定部24は、暫定スコアに、「操作内容iの操作時間(realTime[i])/操作内容iの予定操作時間(expectedTime[X][i])」を加算する。すなわち、
tempScore=tempScore+(realTime[i]/expectedTime[X][i]) …(4)
とする。
【0070】
なお、realTime[i]の値がexpectedTime[X][i]の値に近いほど、上式(3)の(expectedTime[X][i])/realTime[i])値が1に近づき、上式(4)の(realTime[i]/expectedTime[X][i])の値が1に近づくようになっている。
【0071】
ステップS156又はステップS158の処理が行われた後は、ステップS160に移行し、比較対象特定部24は、選択されている作業フローXに含まれる全ての操作内容を選択済みか否かを判断する。このステップS160の判断が否定された場合には、比較対象特定部24は、ステップS152に戻り、作業フローXから未選択の操作内容を選択して、ステップS154~S160の処理・判断を実行する。一方、ステップS160の判断が肯定された場合には、ステップS162に移行し、比較対象特定部24は、暫定スコア(tempScore)から減点(minus[X])を差し引いて、選択している作業フローXのスコア(score[X])とする。すなわち、
score[X]=tempScore-minus[X] …(5)
とする。なお、このスコアscore[X]は、値が大きい作業フローほど、作業者の操作履歴との類似度が高いことを意味する。
【0072】
次いで、ステップS164において、比較対象特定部24は、全作業フローを選択済みか否かを判断する。このステップS164の判断が否定された場合には、図15のステップS130に戻り、未選択の作業フローを選択して、上記処理を繰り返し実行する。
【0073】
一方、ステップS164の判断が肯定された場合には、図15,16の処理を終了し、図14のステップS116に移行する。図14のステップS116に移行すると、比較対象特定部24は、スコアが最も高い作業フロー(作業者の操作履歴と最も類似する作業フロー)を比較対象の作業フローとして特定する。
【0074】
(ステップS114、S116の処理の具体例について)
ここで、ステップS114、S116の処理の具体例について、図17図20に基づいて説明する。
【0075】
一例として、作業フローDB32には、図17に示すような作業フロー1~7が格納されているものとする。なお、作業者が作業を開始する前は、各作業フローのスコアは0となっている(図14のステップS104参照)。なお、作業フローに含まれる各操作内容の「a:2H」などの表記は、各操作内容を簡易的に表記するものであり、操作内容の識別情報(i)と、その操作の予定操作時間(expectedTime[X][i])を意味する。
【0076】
まず、ある作業者が、作業を開始してから30分(0.5H)だけ操作内容aの操作を行った場合のスコアについて、図18に基づいて説明する。この場合、作業フロー1のスコアは、減点が無い(minus[X]=0)ため、上式(4),(5)より、
score[X]=realTime[i]/expectedTime[X][i]=0.5/2=0.25
となる。
【0077】
また、作業フロー2のスコアは、0.5/3≒0.16となり、作業フロー3のスコアは、0.5/4=0.125となる。一方、作業フロー4~7については、tempScore=0であり、減点minus[X]=-1であるため、上式(5)より、score[X]=-1となる。
【0078】
したがって、図18の場合、スコアが最も高い作業フロー1が、比較対象の作業フローとして特定されることになる。
【0079】
次に、ある作業者が、作業開始から3時間(3.0H)だけ操作内容aの操作を行った場合について、図19に基づいて説明する。この場合、作業フロー1のスコアは、減点が無い(minus[X]=0)ため、上式(3),(5)より、
score[X]=expectedTime[X][i]/realTime[i]=2/3≒0.66
となる。
【0080】
また、作業フロー2のスコアは、減点が無い(minus[X]=0)ため、上式(4),(5)より、
score[X]=realTime[i]/expectedTime[X][i]=3/3=1
となる。
【0081】
更に、作業フロー3のスコアは、作業フロー2と同様の式より、3/4=0.75となる。一方、作業フロー4~7については、tempScore=0であり、減点minus[X]=-6であるため、上式(5)より、score[X]=-6となる。
【0082】
したがって、図19の場合、スコアが最も高い作業フロー2が、比較対象の作業フローとして特定される。
【0083】
次に、ある作業者が、作業開始から3時間(3.0H)だけ操作内容aの操作を行った後、8時間(8.0H)だけ操作内容bの操作を行った場合について、図20に基づいて説明する。この場合、作業フロー1のスコアは、減点が無い(minus[X]=0)ため、上式(3),(5)より、
score[X]=0.66+expectedTime[X][i]/realTime[i]
=0.66+4/8≒1.16
となる。
【0084】
また、作業フロー2のスコアは、減点が無い(minus[X]=0)ため、上式(3),(5)より、
score[X]=1+expectedTime[X][i]/realTime[i]
=1+5/8=1.625
となる。
【0085】
更に、作業フロー3のスコアは、減点が無い(minus[X]=0)ため、上式(4),(5)より、
score[X]=0.75+realTime[i]/expectedTime[X][i]
=0.75+8/8=1.75
となる。
【0086】
一方、作業フロー4~7については、tempScore=0であり、減点minus[X]=-22であるため、上式(5)より、score[X]=-22となる。
【0087】
したがって、図20の場合、スコアが最も高い作業フロー3が比較対象の作業フローとして特定される。
【0088】
なお、本実施形態においては、上記のような処理を実行していることから、複数の作業フローのうち、作業者の作業履歴と最も類似する作業フローを比較対象の作業フローとして特定していると言える。
【0089】
図14に戻り、ステップS116の処理が行われた後、ステップS118に移行すると、進捗推定部26は、比較対象の作業フローを用いて作業者の進捗状況を推定する。
【0090】
以下、作業者の進捗状況の推定処理について説明する。なお、本説明においては、一例として、図21(a)に示すような作業フローnが比較対象のフローとして特定されているものとして説明する。
【0091】
(進捗率の計算について)
まず、進捗率の計算方法について説明する。本実施形態において「進捗率」は、作業フローn全体に対する、各操作の進み具合(%)を意味するものとする。すなわち、「作業フローn全体に対する操作内容aの進捗率」は、次式(6)から求めるものとする。
作業フローn全体に対する操作内容aの進捗率(%)
=(操作内容aの実操作時間/作業フローnの予定操作時間の合計)×100
…(6)
【0092】
例えば、図21(a)の例において、ある作業者が操作内容aを0.5H実施したとする。この場合、作業フローn全体に対する操作内容aの進捗率は、上式(6)より、0.5/7×100≒7%となる。
【0093】
(進捗度の計算の例外1)
ただし、操作内容aの実操作時間が操作内容aの予定操作時間(1H)を超えている場合には、次式(7)から「作業フローn全体に対する操作内容aの進捗率」を求めることとする。
作業フローn全体に対する操作内容aの進捗率(%)
=(操作内容aの予定操作時間/作業フローnの予定操作時間の合計)×100-1
…(7)
【0094】
例えば、図21(a)の例において、ある作業者が操作内容aを2.0H実施したとする。この場合、作業フローn全体に対する操作内容aの進捗率は、上式(7)より、(1/7)×100-1≒13%となる。なお、上式(7)において、(操作内容aの予定操作時間/作業フローnの予定操作時間の合計)×100から1を引いているのは、操作内容aの実操作時間が予定操作時間を超えているものの、まだ操作内容aが終了していないことを表現するためである。
【0095】
(進捗度の計算の例外2)
なお、操作内容aから操作内容bに切り替わるとき(操作内容aの操作が完了したとき)に、操作内容aが繰り返し操作でなければ、次式(8)から「作業フローn全体に対する操作内容aの進捗率」を求めることとする。
作業フローn全体に対する操作内容aの進捗率(%)
=(操作内容aの予定操作時間/作業フローnの予定操作時間の合計)×100
…(8)
【0096】
例えば、図21(a)の例において、ある作業者が操作内容aを0.5H実施した後、操作内容bに移行したとする。この場合、作業フローn全体に対する操作内容aの進捗率は、上式(8)より、(1/7)×100≒14%となる。このようにすることで、操作内容aの実操作時間が予定操作時間より短い場合であっても、操作が完了したように進捗率で表現することができる。
【0097】
(全体進捗率の計算について)
次に、全体進捗率の計算方法について説明する。本実施形態において「全体進捗率」は、作業フローn全体における、全操作の進み具合(%)を意味する。すなわち、「作業フローnの全体進捗率」は、次式(9)から求めるものとする。
作業フローnの全体進捗率=作業フローn内の全ての操作の進捗率の合計
…(9)
【0098】
例えば、図21(a)の例において、ある作業者が操作内容aを0.5H実施した後、操作内容bを2.0H実施しているとする。この場合、上式(8)より、作業フローn全体に対する操作内容aの進捗率は、(1/7)×100≒14%であり、上式(6)より、作業フローn全体に対する操作内容bの進捗率は、(2/7)×100≒28%である。したがって、作業フローnの全体進捗率は、上式(9)より、14+28≒42(%)となる。
【0099】
(部分進捗率の計算について)
次に、部分進捗率の計算方法について説明する。本実施形態において「部分進捗率」は、1つの作業内容におけるその操作内容の進み具合(%)を意味するものとする。すなわち、「操作内容aの部分進捗率」は、次式(10)から求めるものとする。
操作内容aの部分進捗率
=(操作内容aの実操作時間/操作内容aの予定操作時間)×100(%)
…(10)
【0100】
例えば、図21(a)の例において、ある作業者が操作内容aを0.5H実施しているとする。この場合、上式(10)より、操作内容aの部分進捗率は、(0.5/1)×100=50%となる。
【0101】
(部分進捗率の計算の例外1)
ただし、操作内容aの実操作時間が操作内容aの予定操作時間を超えている場合には、「操作内容aの部分進捗率」を次式(11)のように定義する。
操作内容aの部分進捗率=100-1=99(%) …(11)
【0102】
なお、上式(11)において、操作内容aの部分進捗率を100から1を引いて値(99%)としているのは、実操作時間が予定操作時間を超えているものの、まだ操作内容aが終了していないことを表現するためである。
【0103】
(部分進捗率の計算の例外2)
なお、操作内容aから操作内容bに切り替わるとき(操作内容aの操作が完了したとき)に、操作内容aが繰り返し操作でなければ、「操作内容aの部分進捗率」は次式(12)のように定義する。
操作内容aの部分進捗率=100(%) …(12)
【0104】
このようにすることで、操作内容aの実操作時間が予定操作時間より短い場合であっても、操作内容aが完了したことを進捗率で表現することができる。
【0105】
図14に戻り、ステップS118の処理が終了し、次のステップS120に移行すると、進捗推定部26は、進捗状況を出力する。例えば、作業者一人の進捗状況を出力する場合、進捗推定部26は、一例として、図21(b)に示すような画面を生成し、管理者用端末60に出力(送信)する。図21(b)の画面には、作業者の識別情報、作業者が実施している作業内容、進捗推定部26が算出した部分進捗率、全体進捗率が表示される。また、図21(b)の画面には、作業開始からの経過時間(実作業時間)、比較対象となっている作業フロー全体の予定作業時間、現在の操作の情報が表示される。なお、例えば、現在の操作の欄にボタンを設け、ボタンが押されたときに、現在の操作の情報がポップアップ表示されるようにしてもよい。
【0106】
また、例えば、複数の作業者が同時に作業を行っている場合には、図21(c)に示すように、複数の作業者の情報を画面に表示してもよい。なお、図21(b)や図21(c)の画面は、時々刻々(例えば所定時間(0.5H)ごと)に更新されるようになっている。これにより、管理者は、ほぼリアルタイムで、各作業の進捗状況を把握することが可能となっている。
【0107】
図14のステップS120の後は、ステップS122に移行し、進捗推定部26は、作業者から「作業終了」の情報が入力されたか否かを判断する。このステップS122の判断が否定された場合には、ステップS106に戻るが、肯定された場合には、図14の全処理が終了する。
【0108】
以上、詳細に説明したように、本実施形態によると、管理サーバ10の学習部22は、学習期間において、作業端末70上で事前作業者に作業を実施させたときの操作ログから事前作業者による操作情報を取得する(図7)。また、学習部22は、操作情報に基づいて、作業フローを複数生成する(図10)。一方、管理サーバ10の比較対象特定部24は、運用期間において、作業者が作業端末70上で作業を実行している間の操作履歴と最も類似する作業フローを比較対象の作業フローとして特定する(図14のS116)。そして、管理サーバ10の進捗推定部26は、比較対象の作業フローと、作業者の操作情報とに基づいて、作業者による作業の進捗状況を推定し(S118)、出力する(S120)。これにより、本実施形態では、作業者がテレワーク等を行っており、管理者から離れた位置で作業が行われている場合であっても、管理者は、作業者の作業の進捗状況を把握することが可能である。
【0109】
また、本実施形態では、学習部22と比較対象特定部24は、操作ログから利用したアプリケーションの情報と、アプリケーションにおいて操作した操作対象の情報と、操作内容の情報と、を取得する。すなわち、学習部22は、操作内容の情報を考慮して、作業フローを生成し、比較対象特定部24は、操作内容の情報を考慮して、比較対象の作業フローを特定する。これにより、作業フローの生成や比較対象の作業フローの特定を精度よく行うことができる。
【0110】
また、本実施形態では、操作内容の情報を特定する際に、アプリケーションを表示するウィンドウがアクティブであった時間を参照するので(図8:S40)、事前作業者や作業者がどのような操作を行っているかを精度よく特定することができる。
【0111】
また、本実施形態では、学習部22は、種別が同一の作業を実施している間に得られた複数の操作情報を比較して、各操作情報に含まれる操作を、共通する操作と共通しない操作とに分類する。そして、学習部22は、分類結果に基づいて作業フローを生成する(図10のステップS72)。このように、操作情報をより簡素化した作業フローを生成し、運用期間において利用することで、運用期間における処理を簡素化することができる。
【0112】
なお、上記実施形態では、図18図20のように、運用期間において、作業者の作業内容とは関係なく、全ての作業フローについてのスコアを算出し、当該スコアに基づいて比較対象の作業フローを特定する場合について説明した。しかしながら、これに限られるものではなく、運用期間において、作業者が作業内容を入力した場合には、入力された作業内容と一致する作業内容の作業フローのみを抽出し、抽出した作業フローについてのスコアのみを算出することとしてもよい。例えば、図18図20の例において、作業者が実施する作業の情報として「作業内容A」と入力した場合には、作業フロー1~3のスコアのみを算出し、作業フロー1~3のうち最もスコアが高い作業フローを比較対象と特定してもよい。これにより、比較対象の作業フローを特定する際の処理を簡素化することができる。
【0113】
なお、上記実施形態では、進捗状況管理システム100を利用する企業が、テレワーク制度を導入している企業である場合について説明したが、これに限られるものではない。すなわち、テレワーク制度を導入していない企業でも上記実施形態の進捗状況管理システム100を利用することは可能である。
【0114】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記憶媒体(ただし、搬送波は除く)に記録しておくことができる。
【0115】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD-ROM(Compact Disc Read Only Memory)などの可搬型記憶媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0116】
プログラムを実行するコンピュータは、例えば、可搬型記憶媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記憶媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0117】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【0118】
なお、以上の実施形態の説明に関して、更に以下の付記を開示する。
(付記1) 端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成する学習部と、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、前記学習部が生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定する特定部と、
前記特定部が特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する進捗推定部と、
を備える進捗管理装置。
(付記2) 前記学習部及び前記特定部は、前記操作の手順を取得する際に、利用したアプリケーションの情報と、前記アプリケーションにおいて操作した操作対象の情報と、操作内容の情報と、を取得する、ことを特徴とする付記1に記載の進捗管理装置。
(付記3) 前記学習部及び前記特定部は、前記操作内容の情報を取得する際に、アプリケーションを表示するウィンドウがアクティブであった時間を参照する、ことを特徴とする付記2に記載の進捗管理装置。
(付記4) 前記学習部は、種別が同一の作業を実施している間に得られた複数の操作の手順を比較して、前記複数の操作の手順において共通する操作と共通しない操作とに分類し、分類結果に基づいて前記作業フローを生成する、ことを特徴とする付記1~3のいずれかに記載の進捗管理装置。
(付記5) 前記特定部は、前記学習部が生成した前記作業フローのうち、前記第1の人物が実行する第1の種別の作業に対応する作業フローを抽出し、抽出した前記作業フローの中から、取得した前記操作履歴と最も類似する作業フローを特定する、ことを特徴とする付記1~4のいずれかに記載の進捗管理装置。
(付記6) 前記進捗推定部は、前記進捗状況として、前記特定部が特定した前記作業フロー全体における作業の進捗度合を示す値、及び/又は、前記特定部が特定した前記作業フローに含まれる操作のうち前記第1の人物が実行中の操作の進捗度合を示す値、を出力する、ことを特徴とする付記1~5のいずれかに記載の進捗管理装置。
(付記7) 端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成し、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定し、
特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する、
処理をコンピュータが実行することを特徴とする進捗管理方法。
(付記8) 端末上で作業者に作業を実施させて、前記端末における操作ログを取得する処理を、作業者及び作業内容を異ならせつつ複数回実行し、前記操作ログから操作の手順と各操作に要した時間とを含む作業フローを複数生成し、
監視対象の第1の人物が端末上で作業を実行している間に、前記第1の人物による操作の手順と、各操作に費やした時間とを含む操作履歴を取得し、生成した前記作業フローのうち、取得した前記操作履歴と最も類似する作業フローを特定し、
特定した前記作業フローに含まれる操作の手順及び各操作に要した時間と、前記操作履歴に含まれる操作の手順及び各操作に費やした時間と、に基づいて、前記第1の人物による作業の進捗状況を推定し、出力する、
処理をコンピュータに実行させることを特徴とする進捗管理プログラム。
【符号の説明】
【0119】
10 管理サーバ(進捗管理装置)
70 作業端末(端末)
22 学習部
24 比較対象特定部(特定部)
26 進捗推定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21