(57)【特許請求の範囲】
【請求項１】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する記録部と、
前記ファイル群を指定し、該ファイル群が属する工程と該工程により製造される製品に関する製番と前記ファイル群の格納場所とを示すファイル群情報を記憶装置から取得する取得部と、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群における夫々のファイルについて、該ファイルに対応するオブジェクトがアクティブである第１期間と、連続する二つの操作時刻の間の期間のうち、前記オブジェクトに対応するファイルを操作するアプリケーションに対応して、または前記ファイル群情報により示される工程に対応して設定されたしきい値以上の長さを有する第２期間とを検出し、前記第１期間から前記第２期間を除くことにより前記ファイル群における夫々のファイルの工数を算出する算出部と、
前記ファイル群情報に基づき、前記ファイル群における夫々のファイルの工数を加算することにより、工数を集計する工数集計部と、
を備える工数算出装置。
【請求項２】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定し、該ファイル群が属する工程と該工程により製造される製品に関する製番と前記ファイル群の格納場所とを示すファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群における夫々のファイルについて、該ファイルに対応するオブジェクトがアクティブである第１期間と、連続する二つの操作時刻の間の期間のうち、前記オブジェクトに対応するファイルを操作するアプリケーションに対応して、または前記ファイル群情報により示される工程に対応して設定されたしきい値以上の長さを有する第２期間とを検出し、前記第１期間から前記第２期間を除くことにより前記ファイル群における夫々のファイルの工数を算出し、
前記ファイル群情報に基づき、前記ファイル群における夫々のファイルの工数を加算することにより、工数を集計する
ことをコンピュータに実行させる工数算出プログラム。
【請求項３】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定し、該ファイル群が属する工程と該工程により製造される製品に関する製番と前記ファイル群の格納場所とを示すファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群における夫々のファイルについて、該ファイルに対応するオブジェクトがアクティブである第１期間と、連続する二つの操作時刻の間の期間のうち、前記オブジェクトに対応するファイルを操作するアプリケーションに対応して、または前記ファイル群情報により示される工程に対応して設定されたしきい値以上の長さを有する第２期間とを検出し、前記第１期間から前記第２期間を除くことにより前記ファイル群における夫々のファイルの工数を算出し、
前記ファイル群情報に基づき、前記ファイル群における夫々のファイルの工数を加算することにより、工数を集計する
工数算出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、コンピュータを用いる作業の工数を算出する技術に関する。
【背景技術】
【０００２】
コンピュータを用いる作業の工数の管理は例えば、その作業を行った作業者がコンピュータに作業内容や作業時間を入力した結果に基づいて行われている。
【０００３】
関連する技術として、以下の文献が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１２９８２５号公報
【特許文献２】特開２００６−１７２４０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
作業者が作業時間を入力する場合、作業内容や作業時間を誤って入力したり、実際の作業時間と異なる値を入力したりすることがある。このような理由により、正確な作業時間を管理することができない場合がある。また、コンピュータが作業時間を算出する場合、起動時間や終了時間を用いても正確な作業時間を算出することができない場合がある。
【０００６】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、正確な作業時間を算出する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するため、本実施形態の工数管理装置は、記録部と取得部と算出部とを備える。記録部は、ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する。取得部は、前記ファイル群を指定するためのファイル群情報を記憶装置から取得する。算出部は、前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第１期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第２期間とを検出し、前記第１期間から前記第２期間を除くことにより前記ファイル群の工数を算出する。
【図面の簡単な説明】
【０００８】
【図１】実施形態の工数算出装置のハードウェア構成を示すブロック図である。
【図２】実施形態の工数算出装置の機能構成を示すブロック図である。
【図３】工数算出部の動作を示すフローチャートである。
【図４】操作ログの内容を示す図である。
【図５】工数ポリシの内容を示す図である。
【図６】データ生成部の動作を示すフローチャートである。
【図７】空白期間ポリシの内容を示す図である。
【図８】ファイルの工数を示す模式図である。
【図９】工数データの内容を示す図である。
【図１０】第１の工数集計データの内容を示す図である。
【図１１】第２の工数集計データの内容を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照しつつ説明する。
【００１０】
まず、実施形態の工数算出装置のハードウェア構成について説明する。
【００１１】
図１は、実施形態の工数算出装置のハードウェア構成を示すブロック図である。実施形態の工数算出装置１のハードウェアはコンピュータにより実現され、プロセッサ１１と、記憶部１２と、入力デバイス１６と、出力デバイス１７とを有する。
【００１２】
プロセッサ１１は記憶部１２に格納されたプログラム及びデータに従って動作することにより工数算出装置１の機能を実現する。また、プロセッサ１１は、時刻を計測する。入力デバイス１６は、ユーザによる操作を検出してプロセッサ１１へ渡すデバイスであり、ポインティング・デバイスやキーボードなどである。出力デバイス１７は、プロセッサ１１から渡された情報を表示するデバイスであり、液晶ディスプレイや有機ＥＬディスプレイなどである。この例において記憶装置は、記憶部１２である。この例において画面は、出力デバイス１７である。
【００１３】
記憶部１２は更に、予め定義された工数ポリシ７１及び空白期間ポリシ７２を格納する。
【００１４】
次に、工数算出装置１の機能構成について説明する。
【００１５】
図２は、実施形態の工数算出装置の機能構成を示すブロック図である。実施形態の工数算出装置１の機能は、オブジェクト管理部３１と、アプリケーション３２ａ，３２ｂと、工数算出部３３とを有する。
【００１６】
オブジェクト管理部３１は、ユーザによる入力デバイス１６の操作を示す入力情報をアプリケーション３２ａ，３２ｂへ渡し、アプリケーション３２ａ，３２ｂから渡された出力情報を出力デバイス１７に表示させる。また、オブジェクト管理部３１は、工数算出装置１の起動と共に実行される。オブジェクト管理部３１は、オペレーティング・システムやウィンドウ・マネージャなどである。
【００１７】
また、オブジェクト管理部３１は、アプリケーション３２ａ，３２ｂにより開かれているファイルの夫々にオブジェクトを割り当てる。この例においてオブジェクトは、出力デバイス１７の画面に表示されるウィンドウ・オブジェクトである。また、オブジェクト管理部３１は、オブジェクトがアクティブであるか否かなど、オブジェクトの状態を管理する。また、オブジェクト管理部３１は、入力情報に基づいて入力デバイス１６が操作されたことを示す操作イベントを発生させる。また、オブジェクト管理部３１は、アプリケーション３２ａ，３２ｂによりファイルのアクセスが行われたことを示すアクセス・イベントを発生させる。また、オブジェクト管理部３１は、プロセッサ１１により計測された時刻を工数算出部３３へ渡す。
【００１８】
アプリケーション３２ａ，３２ｂは、オブジェクト管理部３１からの入力情報を用いて処理を行い、処理の結果に基づいて出力情報を生成しオブジェクト管理部３１へ渡す。アプリケーション３２ａ，３２ｂは、オブジェクト管理部３１により割り当てられたオブジェクトを用いてファイルを編集し、記憶部１２へ書き込む。また、アプリケーション３２ａ，３２ｂは、記憶部１２に格納されたファイルに対応してオブジェクト管理部３１により割り当てられたオブジェクトを用いて、そのファイルを記憶部１２から読み出す。
【００１９】
次に、工数算出部３３の動作について説明する。工数算出部３３は、記録部４０と、取得部４１と、データ生成部４２とを有する。この例において算出部は、データ生成部４２である。
【００２０】
図３は、工数算出部３３の動作を示すフローチャートである。工数算出装置１において、オブジェクト管理部３１及びアプリケーション３２ａ，３２ｂが動作しているとする。このとき記録部４０は、ファイル群へのアクセスを示すアクセス情報と、ファイル群に対応するオブジェクト群のうち出力デバイス１７の画面上のアクティブなオブジェクトを示すオブジェクト識別子と、入力デバイス１６の操作が行われた時刻である操作時刻とを操作ログ６１として記録する（Ｓ１２）。
【００２１】
Ｓ１２について以下に詳述する。記録部４０は、オブジェクト管理部３１によるイベントを監視する。オブジェクト管理部３１がイベントを発生させた場合、記録部４０は、オブジェクト管理部３１からイベントに関するイベント情報を取得し、イベント情報に基づいて操作ログ６１のエントリを生成し記憶部１２に記録する。
【００２２】
イベントがアクセス・イベントである場合、イベント情報は、アクセスを示すアクセス情報とオブジェクト識別子とを含む。アクセス情報は、アクセスされたファイルを示すファイル識別子と、アクセス内容とを含む。この例においてファイル識別子は、ファイルのパス名とファイル名とを含む。この例においてアクセス内容は、ファイルのオープン処理やクローズ処理を示す。イベントが操作イベントである場合、イベント情報は、操作イベントが発生した時刻である操作時刻とオブジェクト識別子とを含む。オブジェクト識別子は、イベントが発生したときのアクティブなオブジェクトを示す。
【００２３】
図４は、操作ログ６１の内容を示す図である。操作ログ６１は、イベント毎のエントリを有する。また操作ログ６１はフィールドとして、オブジェクト識別子とオープン時刻と操作時刻とクローズ時刻とファイル識別子とを有する。
【００２４】
オープン処理を示すアクセス・イベントが発生した場合、記録部４０はそのイベントの発生時刻であるオープン時刻とオープン処理されたファイルのファイル識別子とを、操作ログ６１のエントリに含める。クローズ処理を示すアクセス・イベントが発生した場合、記録部４０はそのイベントの発生時刻であるクローズ時刻とクローズ処理されたファイルのファイル識別子とを、操作ログ６１のエントリに含める。操作イベントが発生した場合、記録部４０はそのイベントの発生時刻である操作時刻を、操作ログ６１のエントリに含める。この例においてアクセス情報は、オープン時刻とクローズ時刻とファイル識別子である。アクセス・イベント発生時の操作ログ６１のエントリにより、オブジェクト識別子とファイル識別子が関連付けられる。
【００２５】
次に取得部４１は、ファイル群を指定するための工数ポリシ７１を記憶部１２から取得する（Ｓ１４）。この例において或るファイル群は、製品に関する或る製番（製品の管理番号）の或る工程に属する複数のファイルである。一つの製番で示された製品は、予め定義された少なくとも一つの工程（フェーズ）により製造される。この例においてファイル群情報は、工数ポリシ７１である。
【００２６】
Ｓ１４について以下に詳述する。ユーザが工数の算出の対象となる過去の期間である対象期間を、入力デバイス１６により入力すると、取得部４１は、記憶部１２に格納された工数ポリシ７１を取得する。
【００２７】
図５は、工数ポリシ７１の内容を示す図である。この例において工数ポリシ７１はファイル群毎の、製番と工程名とファイル群識別子とを有する。この例においてファイル群識別子は、そのファイル群が置かれたディレクトリを示すパス名である。この例においてユーザは予め定義された規則に従い、或る製番の或る工程に属するファイル群を同じディレクトリに置く。これにより、取得部７１は、各ファイル群内のファイルを認識する。
【００２８】
なお、ファイル群識別子は、ファイル群の各ファイルのデータに含まれた識別子であっても良い。この場合のファイル群識別子は例えば、製番及び工程を示すテキストである。この場合、取得部４１は、記憶部１２に格納された複数のファイルの夫々に含まれたファイル群識別子により、そのファイルが属するファイル群を認識する。また、ファイル群内の各ファイル名がファイル群識別子を含んでも良い。
【００２９】
また、ユーザがファイル群内の各ファイル名を工数ポリシ７１に登録しても良い。この場合、取得部７１は、工数ポリシ７１に示されたファイル名により、各ファイル群内のファイルを認識する。
【００３０】
次にデータ生成部４２は、アクセス情報とオブジェクト識別子と操作時刻と工数ポリシ７１とに基づいて、或るファイル群に対応するオブジェクトがアクティブである期間であるアクティブ期間と、操作時刻の間の期間のうちしきい値以上の長さを有する期間である空白期間とを検出し、アクティブ期間から空白期間を除くことによりそのファイル群の工数を算出し（Ｓ１６）、このフローを終了する。この例において第１期間は、ファイル群のアクティブ期間である。この例において第２期間は、空白期間である。
【００３１】
Ｓ１６について以下に詳述する。図６は、データ生成部４２の動作を示すフローチャートである。データ生成部４２は、工数データ生成部５３と、工数集計データ生成部５４とを有する。
【００３２】
まず工数データ生成部５３は、ユーザにより入力された対象期間をオブジェクト管理部３１から取得する。対象期間は例えば、開始日時と終了日時とで表される。次に工数データ生成部５３は操作ログ６１から、取得部４１に認識されたファイル群内の各ファイルのファイル識別子を含むエントリを検出し、そのエントリからファイル識別子とそれに対応するオブジェクト識別子とを取得する。次に工数データ生成部５３は取得されたオブジェクト識別子と対象期間内の操作時刻とを含むエントリを、記憶部１２から読み出して対象エントリとする（Ｓ２２）。
【００３３】
次に工数データ生成部５３は、記憶部１２に格納された空白期間ポリシ７２と対象エントリ内のファイル識別子とに基づいて、時間しきい値を決定する（Ｓ２４）。
【００３４】
図７は、空白期間ポリシ７２の内容を示す図である。空白期間ポリシ７２は、ファイル種類毎の時間しきい値［分］を定義する。この例においてファイル種類は、ファイル名に含まれる拡張子であり、そのファイルを作成するアプリケーション３２ａ，３２ｂに関連付けられている。この例において、ドキュメント作成アプリケーション（拡張子ｄｏｃ，ｘｌｓ，ｐｐｔ）の時間しきい値、およびプログラム開発アプリケーションの時間しきい値は３０分、メール編集アプリケーション（拡張子ｍｓｇ）の時間しきい値は１０分と定義されている。これにより工数データ生成部５３は、対象エントリ内の各ファイル識別子に基づいてファイル種類を認識し、そのファイル種類に対応する時間しきい値を選択する。
【００３５】
なお、空白期間ポリシ７２は、工程毎の時間しきい値を定義しても良い。この場合、工数データ生成部５３は工数ポリシ７１に基づいて、対象エントリ内のファイル識別子に対応する工程を認識し、その工程に対応する時間しきい値を選択する。
【００３６】
次に工数データ生成部５３は、対象エントリ内の操作時刻のうち連続する二つのエントリの操作時刻の差の時間を算出し、差の時間が時間しきい値以上の長さを有する期間である空白期間を検出する（Ｓ２６）。つまり空白期間は、時間しきい値以上の時間に亘って、入力デバイス１６の操作が行われなかった期間である。ここで工数データ生成部５３は、それら二つのエントリのうち前のエントリを用いて選択された時間しきい値を用いる。
【００３７】
次に工数データ生成部５３は、対象エントリ内のオブジェクト識別子とファイル識別子に基づいて、ファイル群内の夫々のファイルに対応するオブジェクトがアクティブである期間を検出し、そのファイルのアクティブ期間とする（Ｓ３２）。ここで、工数データ生成部５３は、同一のオブジェクト識別子が連続する期間をそのオブジェクト識別子に対応するファイルのアクティブ期間とする。この例において第３期間は、ファイル群の各ファイルのアクティブ期間である。
【００３８】
次に工数データ生成部５３はファイル群の各ファイルについて、アクティブ期間から空白期間を除いた実作業期間を検出し、実作業期間の長さを工数とすることにより、ファイル群の各ファイルの工数を算出する。次に工数データ生成部５３は、ファイル群の各ファイルの工数を含む工数データ８１を生成して記憶部１２へ書き込む（Ｓ３４）。
【００３９】
図８は、ファイルの工数を示す模式図である。対象とするファイルのアクティブ期間の中に空白期間が存在する場合を示す。この図は、時間軸上で、対象とするファイルのアクティブ期間と操作イベントと空白期間と実作業期間とを示す。作業開始時刻は、アクティブ期間の開始時刻である。作業終了時刻は、アクティブ期間の終了時刻である。既存ファイルの作業である場合、作業開始時刻はそのファイルのオープン時刻であり、作業終了時刻はそのファイルのクローズ時刻である。作業時間は、アクティブ期間の長さである。作業空白時間は、空白期間の長さである。工数データ生成部５３は、アクティブ期間のうち空白期間を除いた期間を実作業期間とし、その長さを対象とするファイルの工数とする。即ち、ファイルの工数は、そのファイルの作業時間−作業空白時間である。
【００４０】
図９は、工数データ８１の内容を示す図である。工数データ８１はファイル毎の、ファイル名と作業開始時刻と作業終了時刻と作業時間［時間］と作業空白時間［時間］と工数［時間］と製番と工程名とを有する。工数データ生成部５３は各ファイルについて、ファイル識別子内のファイル名と、作業開始時刻と、作業終了時刻と、作業時間と、作業空白時間とを、工数データ８１に含める。また工数データ生成部５３は各ファイルについて、工数ポリシ７１に基づき認識された製番および工程名を工数データ８１に含める。
【００４１】
次に工数集計データ生成部５４は、記憶部１２に格納されたファイル群の各ファイルの工数データ８１を取得し、ファイル群の各ファイルの工数を集計することにより、ファイル群の工数を算出し、ファイル群の工数を含む工数集計データ８２を生成して記憶部１２へ書き込み（Ｓ３６）、このフローを終了する。
【００４２】
図１０は、第１の工数集計データ８２の内容を示す図である。この工数集計データ８２はファイル群毎の、製番と工程名と工数［時間］とを有する。工数集計データ生成部５４は各ファイル群について、工数ポリシ７１に示された製番と工程名を工数集計データ８２に含める。
【００４３】
なお、工数集計データ生成部５４は対象期間内の日付毎に工数を集計しても良いし、製番毎に工数を集計しても良い。図１１は、第２の工数集計データ８２の内容を示す図である。この例において対象期間は、２０１０年９月１日から９月７日である。この工数集計データ８２は製番毎、対象期間内の日付毎の、工数とを有する。この工数集計データ８２の第１行は日付を示し、第２行は曜日を示す。また対象とする製番の右側に示された工数のうち、第１行は、対象とする製番の工数のうち対応する日付の工数を集計した値［時間］であり、第２行は、対象とする製番の工数を対象期間の開始から対応する日付まで累積した値［時間］である。
【００４４】
なお、データ生成部４２は、ファイル群内のファイルに対応する全てのオブジェクト識別子を有するエントリをファイル群のアクティブ期間としても良い。この場合、データ生成部４２は、ファイル群のアクティブ期間から空白期間を除くことによりファイル群の実作業期間を検出し、その実作業期間の長さをファイル群の工数とし、工数集計データ８２を生成しても良い。
【００４５】
この実施形態によれば、複数のファイルの操作が並行して行われた場合であっても、それら複数のファイルに対応するオブジェクトがアクティブである期間を検出することにより、正確な工数を算出することができる。また、或る時間以上に亘って操作が行われない期間を検出して工数から除くことにより正確な工数を算出することができる。また、製番や工程などで関連付けられたファイル群の工数を集計することができる。
【００４６】
プロセッサ１１に工数算出部３３の機能を実行させる工数算出プログラムは、コンピュータ読み取り可能な記録媒体に格納されていても良い。このコンピュータ読み取り可能な記録媒体は、ディスクや半導体メモリを含む。その形態は、工数算出装置１の内部に設けられた記憶部１２、工数算出装置１の外部に設けられた記憶装置、可搬型記録媒体、他の工数算出装置の記憶装置を含む。また、可搬型記録媒体が工数算出プログラムを格納し、工数算出装置１がこの可搬型記録媒体の読み取り装置を有する場合、工数算出装置１はこの記録媒体から工数算出プログラムを読み取っても良い。あるいは、他のコンピュータが工数算出プログラムを格納し、工数算出装置１が他のコンピュータに接続されている場合、工数算出装置１は他のコンピュータから工数算出プログラムを受信しても良い。
【００４７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４８】
１  工数算出装置、１１  プロセッサ、１２  記憶部、１６  入力デバイス、１７  出力デバイス、３１  オブジェクト管理部、３２ａ，３２ｂ  アプリケーション、３３  工数算出部、４０  記録部、４１  取得部、４２  データ生成部、５３  工数データ生成部、５４  集計データ生成部、６１  操作ログ、７１  工数ポリシ、７２  空白期間ポリシ、８１  工数データ、８２  工数集計データ。
【図１】
0005622604.tif 000002
【図２】
0005622604.tif 000003
【図３】
0005622604.tif 000004
【図４】
0005622604.tif 000005
【図５】
0005622604.tif 000006
【図６】
0005622604.tif 000007
【図７】
0005622604.tif 000008
【図８】
0005622604.tif 000009
【図９】
0005622604.tif 000010
【図１０】
0005622604.tif 000011
【図１１】
0005622604.tif 000012