工数算出装置、工数算出プログラム、及び工数算出方法
【課題】正確な作業時間を算出する技術を提供する。
【解決手段】工数管理装置は、記録部と取得部と算出部とを備える。記録部は、ファイル群へのアクセスを示すアクセス情報と、ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する。取得部は、ファイル群を指定するためのファイル群情報を記憶装置から取得する。算出部は、アクセス情報とオブジェクト識別子と操作時刻とファイル群情報とに基づいて、ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、第1期間から第2期間を除くことによりファイル群の工数を算出する。
【解決手段】工数管理装置は、記録部と取得部と算出部とを備える。記録部は、ファイル群へのアクセスを示すアクセス情報と、ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する。取得部は、ファイル群を指定するためのファイル群情報を記憶装置から取得する。算出部は、アクセス情報とオブジェクト識別子と操作時刻とファイル群情報とに基づいて、ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、第1期間から第2期間を除くことによりファイル群の工数を算出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、コンピュータを用いる作業の工数を算出する技術に関する。
【背景技術】
【0002】
コンピュータを用いる作業の工数の管理は例えば、その作業を行った作業者がコンピュータに作業内容や作業時間を入力した結果に基づいて行われている。
【0003】
関連する技術として、以下の文献が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−129825号公報
【特許文献2】特開2006−172408号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
作業者が作業時間を入力する場合、作業内容や作業時間を誤って入力したり、実際の作業時間と異なる値を入力したりすることがある。このような理由により、正確な作業時間を管理することができない場合がある。また、コンピュータが作業時間を算出する場合、起動時間や終了時間を用いても正確な作業時間を算出することができない場合がある。
【0006】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、正確な作業時間を算出する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決するため、本実施形態の工数管理装置は、記録部と取得部と算出部とを備える。記録部は、ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する。取得部は、前記ファイル群を指定するためのファイル群情報を記憶装置から取得する。算出部は、前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する。
【図面の簡単な説明】
【0008】
【図1】実施形態の工数算出装置のハードウェア構成を示すブロック図である。
【図2】実施形態の工数算出装置の機能構成を示すブロック図である。
【図3】工数算出部の動作を示すフローチャートである。
【図4】操作ログの内容を示す図である。
【図5】工数ポリシの内容を示す図である。
【図6】データ生成部の動作を示すフローチャートである。
【図7】空白期間ポリシの内容を示す図である。
【図8】ファイルの工数を示す模式図である。
【図9】工数データの内容を示す図である。
【図10】第1の工数集計データの内容を示す図である。
【図11】第2の工数集計データの内容を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図面を参照しつつ説明する。
【0010】
まず、実施形態の工数算出装置のハードウェア構成について説明する。
【0011】
図1は、実施形態の工数算出装置のハードウェア構成を示すブロック図である。実施形態の工数算出装置1のハードウェアはコンピュータにより実現され、プロセッサ11と、記憶部12と、入力デバイス16と、出力デバイス17とを有する。
【0012】
プロセッサ11は記憶部12に格納されたプログラム及びデータに従って動作することにより工数算出装置1の機能を実現する。また、プロセッサ11は、時刻を計測する。入力デバイス16は、ユーザによる操作を検出してプロセッサ11へ渡すデバイスであり、ポインティング・デバイスやキーボードなどである。出力デバイス17は、プロセッサ11から渡された情報を表示するデバイスであり、液晶ディスプレイや有機ELディスプレイなどである。この例において記憶装置は、記憶部12である。この例において画面は、出力デバイス17である。
【0013】
記憶部12は更に、予め定義された工数ポリシ71及び空白期間ポリシ72を格納する。
【0014】
次に、工数算出装置1の機能構成について説明する。
【0015】
図2は、実施形態の工数算出装置の機能構成を示すブロック図である。実施形態の工数算出装置1の機能は、オブジェクト管理部31と、アプリケーション32a,32bと、工数算出部33とを有する。
【0016】
オブジェクト管理部31は、ユーザによる入力デバイス16の操作を示す入力情報をアプリケーション32a,32bへ渡し、アプリケーション32a,32bから渡された出力情報を出力デバイス17に表示させる。また、オブジェクト管理部31は、工数算出装置1の起動と共に実行される。オブジェクト管理部31は、オペレーティング・システムやウィンドウ・マネージャなどである。
【0017】
また、オブジェクト管理部31は、アプリケーション32a,32bにより開かれているファイルの夫々にオブジェクトを割り当てる。この例においてオブジェクトは、出力デバイス17の画面に表示されるウィンドウ・オブジェクトである。また、オブジェクト管理部31は、オブジェクトがアクティブであるか否かなど、オブジェクトの状態を管理する。また、オブジェクト管理部31は、入力情報に基づいて入力デバイス16が操作されたことを示す操作イベントを発生させる。また、オブジェクト管理部31は、アプリケーション32a,32bによりファイルのアクセスが行われたことを示すアクセス・イベントを発生させる。また、オブジェクト管理部31は、プロセッサ11により計測された時刻を工数算出部33へ渡す。
【0018】
アプリケーション32a,32bは、オブジェクト管理部31からの入力情報を用いて処理を行い、処理の結果に基づいて出力情報を生成しオブジェクト管理部31へ渡す。アプリケーション32a,32bは、オブジェクト管理部31により割り当てられたオブジェクトを用いてファイルを編集し、記憶部12へ書き込む。また、アプリケーション32a,32bは、記憶部12に格納されたファイルに対応してオブジェクト管理部31により割り当てられたオブジェクトを用いて、そのファイルを記憶部12から読み出す。
【0019】
次に、工数算出部33の動作について説明する。工数算出部33は、記録部40と、取得部41と、データ生成部42とを有する。この例において算出部は、データ生成部42である。
【0020】
図3は、工数算出部33の動作を示すフローチャートである。工数算出装置1において、オブジェクト管理部31及びアプリケーション32a,32bが動作しているとする。このとき記録部40は、ファイル群へのアクセスを示すアクセス情報と、ファイル群に対応するオブジェクト群のうち出力デバイス17の画面上のアクティブなオブジェクトを示すオブジェクト識別子と、入力デバイス16の操作が行われた時刻である操作時刻とを操作ログ61として記録する(S12)。
【0021】
S12について以下に詳述する。記録部40は、オブジェクト管理部31によるイベントを監視する。オブジェクト管理部31がイベントを発生させた場合、記録部40は、オブジェクト管理部31からイベントに関するイベント情報を取得し、イベント情報に基づいて操作ログ61のエントリを生成し記憶部12に記録する。
【0022】
イベントがアクセス・イベントである場合、イベント情報は、アクセスを示すアクセス情報とオブジェクト識別子とを含む。アクセス情報は、アクセスされたファイルを示すファイル識別子と、アクセス内容とを含む。この例においてファイル識別子は、ファイルのパス名とファイル名とを含む。この例においてアクセス内容は、ファイルのオープン処理やクローズ処理を示す。イベントが操作イベントである場合、イベント情報は、操作イベントが発生した時刻である操作時刻とオブジェクト識別子とを含む。オブジェクト識別子は、イベントが発生したときのアクティブなオブジェクトを示す。
【0023】
図4は、操作ログ61の内容を示す図である。操作ログ61は、イベント毎のエントリを有する。また操作ログ61はフィールドとして、オブジェクト識別子とオープン時刻と操作時刻とクローズ時刻とファイル識別子とを有する。
【0024】
オープン処理を示すアクセス・イベントが発生した場合、記録部40はそのイベントの発生時刻であるオープン時刻とオープン処理されたファイルのファイル識別子とを、操作ログ61のエントリに含める。クローズ処理を示すアクセス・イベントが発生した場合、記録部40はそのイベントの発生時刻であるクローズ時刻とクローズ処理されたファイルのファイル識別子とを、操作ログ61のエントリに含める。操作イベントが発生した場合、記録部40はそのイベントの発生時刻である操作時刻を、操作ログ61のエントリに含める。この例においてアクセス情報は、オープン時刻とクローズ時刻とファイル識別子である。アクセス・イベント発生時の操作ログ61のエントリにより、オブジェクト識別子とファイル識別子が関連付けられる。
【0025】
次に取得部41は、ファイル群を指定するための工数ポリシ71を記憶部12から取得する(S14)。この例において或るファイル群は、製品に関する或る製番(製品の管理番号)の或る工程に属する複数のファイルである。一つの製番で示された製品は、予め定義された少なくとも一つの工程(フェーズ)により製造される。この例においてファイル群情報は、工数ポリシ71である。
【0026】
S14について以下に詳述する。ユーザが工数の算出の対象となる過去の期間である対象期間を、入力デバイス16により入力すると、取得部41は、記憶部12に格納された工数ポリシ71を取得する。
【0027】
図5は、工数ポリシ71の内容を示す図である。この例において工数ポリシ71はファイル群毎の、製番と工程名とファイル群識別子とを有する。この例においてファイル群識別子は、そのファイル群が置かれたディレクトリを示すパス名である。この例においてユーザは予め定義された規則に従い、或る製番の或る工程に属するファイル群を同じディレクトリに置く。これにより、取得部71は、各ファイル群内のファイルを認識する。
【0028】
なお、ファイル群識別子は、ファイル群の各ファイルのデータに含まれた識別子であっても良い。この場合のファイル群識別子は例えば、製番及び工程を示すテキストである。この場合、取得部41は、記憶部12に格納された複数のファイルの夫々に含まれたファイル群識別子により、そのファイルが属するファイル群を認識する。また、ファイル群内の各ファイル名がファイル群識別子を含んでも良い。
【0029】
また、ユーザがファイル群内の各ファイル名を工数ポリシ71に登録しても良い。この場合、取得部71は、工数ポリシ71に示されたファイル名により、各ファイル群内のファイルを認識する。
【0030】
次にデータ生成部42は、アクセス情報とオブジェクト識別子と操作時刻と工数ポリシ71とに基づいて、或るファイル群に対応するオブジェクトがアクティブである期間であるアクティブ期間と、操作時刻の間の期間のうちしきい値以上の長さを有する期間である空白期間とを検出し、アクティブ期間から空白期間を除くことによりそのファイル群の工数を算出し(S16)、このフローを終了する。この例において第1期間は、ファイル群のアクティブ期間である。この例において第2期間は、空白期間である。
【0031】
S16について以下に詳述する。図6は、データ生成部42の動作を示すフローチャートである。データ生成部42は、工数データ生成部53と、工数集計データ生成部54とを有する。
【0032】
まず工数データ生成部53は、ユーザにより入力された対象期間をオブジェクト管理部31から取得する。対象期間は例えば、開始日時と終了日時とで表される。次に工数データ生成部53は操作ログ61から、取得部41に認識されたファイル群内の各ファイルのファイル識別子を含むエントリを検出し、そのエントリからファイル識別子とそれに対応するオブジェクト識別子とを取得する。次に工数データ生成部53は取得されたオブジェクト識別子と対象期間内の操作時刻とを含むエントリを、記憶部12から読み出して対象エントリとする(S22)。
【0033】
次に工数データ生成部53は、記憶部12に格納された空白期間ポリシ72と対象エントリ内のファイル識別子とに基づいて、時間しきい値を決定する(S24)。
【0034】
図7は、空白期間ポリシ72の内容を示す図である。空白期間ポリシ72は、ファイル種類毎の時間しきい値[分]を定義する。この例においてファイル種類は、ファイル名に含まれる拡張子であり、そのファイルを作成するアプリケーション32a,32bに関連付けられている。この例において、ドキュメント作成アプリケーション(拡張子doc,xls,ppt)の時間しきい値、およびプログラム開発アプリケーションの時間しきい値は30分、メール編集アプリケーション(拡張子msg)の時間しきい値は10分と定義されている。これにより工数データ生成部53は、対象エントリ内の各ファイル識別子に基づいてファイル種類を認識し、そのファイル種類に対応する時間しきい値を選択する。
【0035】
なお、空白期間ポリシ72は、工程毎の時間しきい値を定義しても良い。この場合、工数データ生成部53は工数ポリシ71に基づいて、対象エントリ内のファイル識別子に対応する工程を認識し、その工程に対応する時間しきい値を選択する。
【0036】
次に工数データ生成部53は、対象エントリ内の操作時刻のうち連続する二つのエントリの操作時刻の差の時間を算出し、差の時間が時間しきい値以上の長さを有する期間である空白期間を検出する(S26)。つまり空白期間は、時間しきい値以上の時間に亘って、入力デバイス16の操作が行われなかった期間である。ここで工数データ生成部53は、それら二つのエントリのうち前のエントリを用いて選択された時間しきい値を用いる。
【0037】
次に工数データ生成部53は、対象エントリ内のオブジェクト識別子とファイル識別子に基づいて、ファイル群内の夫々のファイルに対応するオブジェクトがアクティブである期間を検出し、そのファイルのアクティブ期間とする(S32)。ここで、工数データ生成部53は、同一のオブジェクト識別子が連続する期間をそのオブジェクト識別子に対応するファイルのアクティブ期間とする。この例において第3期間は、ファイル群の各ファイルのアクティブ期間である。
【0038】
次に工数データ生成部53はファイル群の各ファイルについて、アクティブ期間から空白期間を除いた実作業期間を検出し、実作業期間の長さを工数とすることにより、ファイル群の各ファイルの工数を算出する。次に工数データ生成部53は、ファイル群の各ファイルの工数を含む工数データ81を生成して記憶部12へ書き込む(S34)。
【0039】
図8は、ファイルの工数を示す模式図である。対象とするファイルのアクティブ期間の中に空白期間が存在する場合を示す。この図は、時間軸上で、対象とするファイルのアクティブ期間と操作イベントと空白期間と実作業期間とを示す。作業開始時刻は、アクティブ期間の開始時刻である。作業終了時刻は、アクティブ期間の終了時刻である。既存ファイルの作業である場合、作業開始時刻はそのファイルのオープン時刻であり、作業終了時刻はそのファイルのクローズ時刻である。作業時間は、アクティブ期間の長さである。作業空白時間は、空白期間の長さである。工数データ生成部53は、アクティブ期間のうち空白期間を除いた期間を実作業期間とし、その長さを対象とするファイルの工数とする。即ち、ファイルの工数は、そのファイルの作業時間−作業空白時間である。
【0040】
図9は、工数データ81の内容を示す図である。工数データ81はファイル毎の、ファイル名と作業開始時刻と作業終了時刻と作業時間[時間]と作業空白時間[時間]と工数[時間]と製番と工程名とを有する。工数データ生成部53は各ファイルについて、ファイル識別子内のファイル名と、作業開始時刻と、作業終了時刻と、作業時間と、作業空白時間とを、工数データ81に含める。また工数データ生成部53は各ファイルについて、工数ポリシ71に基づき認識された製番および工程名を工数データ81に含める。
【0041】
次に工数集計データ生成部54は、記憶部12に格納されたファイル群の各ファイルの工数データ81を取得し、ファイル群の各ファイルの工数を集計することにより、ファイル群の工数を算出し、ファイル群の工数を含む工数集計データ82を生成して記憶部12へ書き込み(S36)、このフローを終了する。
【0042】
図10は、第1の工数集計データ82の内容を示す図である。この工数集計データ82はファイル群毎の、製番と工程名と工数[時間]とを有する。工数集計データ生成部54は各ファイル群について、工数ポリシ71に示された製番と工程名を工数集計データ82に含める。
【0043】
なお、工数集計データ生成部54は対象期間内の日付毎に工数を集計しても良いし、製番毎に工数を集計しても良い。図11は、第2の工数集計データ82の内容を示す図である。この例において対象期間は、2010年9月1日から9月7日である。この工数集計データ82は製番毎、対象期間内の日付毎の、工数とを有する。この工数集計データ82の第1行は日付を示し、第2行は曜日を示す。また対象とする製番の右側に示された工数のうち、第1行は、対象とする製番の工数のうち対応する日付の工数を集計した値[時間]であり、第2行は、対象とする製番の工数を対象期間の開始から対応する日付まで累積した値[時間]である。
【0044】
なお、データ生成部42は、ファイル群内のファイルに対応する全てのオブジェクト識別子を有するエントリをファイル群のアクティブ期間としても良い。この場合、データ生成部42は、ファイル群のアクティブ期間から空白期間を除くことによりファイル群の実作業期間を検出し、その実作業期間の長さをファイル群の工数とし、工数集計データ82を生成しても良い。
【0045】
この実施形態によれば、複数のファイルの操作が並行して行われた場合であっても、それら複数のファイルに対応するオブジェクトがアクティブである期間を検出することにより、正確な工数を算出することができる。また、或る時間以上に亘って操作が行われない期間を検出して工数から除くことにより正確な工数を算出することができる。また、製番や工程などで関連付けられたファイル群の工数を集計することができる。
【0046】
プロセッサ11に工数算出部33の機能を実行させる工数算出プログラムは、コンピュータ読み取り可能な記録媒体に格納されていても良い。このコンピュータ読み取り可能な記録媒体は、ディスクや半導体メモリを含む。その形態は、工数算出装置1の内部に設けられた記憶部12、工数算出装置1の外部に設けられた記憶装置、可搬型記録媒体、他の工数算出装置の記憶装置を含む。また、可搬型記録媒体が工数算出プログラムを格納し、工数算出装置1がこの可搬型記録媒体の読み取り装置を有する場合、工数算出装置1はこの記録媒体から工数算出プログラムを読み取っても良い。あるいは、他のコンピュータが工数算出プログラムを格納し、工数算出装置1が他のコンピュータに接続されている場合、工数算出装置1は他のコンピュータから工数算出プログラムを受信しても良い。
【0047】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0048】
1 工数算出装置、11 プロセッサ、12 記憶部、16 入力デバイス、17 出力デバイス、31 オブジェクト管理部、32a,32b アプリケーション、33 工数算出部、40 記録部、41 取得部、42 データ生成部、53 工数データ生成部、54 集計データ生成部、61 操作ログ、71 工数ポリシ、72 空白期間ポリシ、81 工数データ、82 工数集計データ。
【技術分野】
【0001】
本発明の実施形態は、コンピュータを用いる作業の工数を算出する技術に関する。
【背景技術】
【0002】
コンピュータを用いる作業の工数の管理は例えば、その作業を行った作業者がコンピュータに作業内容や作業時間を入力した結果に基づいて行われている。
【0003】
関連する技術として、以下の文献が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−129825号公報
【特許文献2】特開2006−172408号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
作業者が作業時間を入力する場合、作業内容や作業時間を誤って入力したり、実際の作業時間と異なる値を入力したりすることがある。このような理由により、正確な作業時間を管理することができない場合がある。また、コンピュータが作業時間を算出する場合、起動時間や終了時間を用いても正確な作業時間を算出することができない場合がある。
【0006】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、正確な作業時間を算出する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決するため、本実施形態の工数管理装置は、記録部と取得部と算出部とを備える。記録部は、ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する。取得部は、前記ファイル群を指定するためのファイル群情報を記憶装置から取得する。算出部は、前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する。
【図面の簡単な説明】
【0008】
【図1】実施形態の工数算出装置のハードウェア構成を示すブロック図である。
【図2】実施形態の工数算出装置の機能構成を示すブロック図である。
【図3】工数算出部の動作を示すフローチャートである。
【図4】操作ログの内容を示す図である。
【図5】工数ポリシの内容を示す図である。
【図6】データ生成部の動作を示すフローチャートである。
【図7】空白期間ポリシの内容を示す図である。
【図8】ファイルの工数を示す模式図である。
【図9】工数データの内容を示す図である。
【図10】第1の工数集計データの内容を示す図である。
【図11】第2の工数集計データの内容を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図面を参照しつつ説明する。
【0010】
まず、実施形態の工数算出装置のハードウェア構成について説明する。
【0011】
図1は、実施形態の工数算出装置のハードウェア構成を示すブロック図である。実施形態の工数算出装置1のハードウェアはコンピュータにより実現され、プロセッサ11と、記憶部12と、入力デバイス16と、出力デバイス17とを有する。
【0012】
プロセッサ11は記憶部12に格納されたプログラム及びデータに従って動作することにより工数算出装置1の機能を実現する。また、プロセッサ11は、時刻を計測する。入力デバイス16は、ユーザによる操作を検出してプロセッサ11へ渡すデバイスであり、ポインティング・デバイスやキーボードなどである。出力デバイス17は、プロセッサ11から渡された情報を表示するデバイスであり、液晶ディスプレイや有機ELディスプレイなどである。この例において記憶装置は、記憶部12である。この例において画面は、出力デバイス17である。
【0013】
記憶部12は更に、予め定義された工数ポリシ71及び空白期間ポリシ72を格納する。
【0014】
次に、工数算出装置1の機能構成について説明する。
【0015】
図2は、実施形態の工数算出装置の機能構成を示すブロック図である。実施形態の工数算出装置1の機能は、オブジェクト管理部31と、アプリケーション32a,32bと、工数算出部33とを有する。
【0016】
オブジェクト管理部31は、ユーザによる入力デバイス16の操作を示す入力情報をアプリケーション32a,32bへ渡し、アプリケーション32a,32bから渡された出力情報を出力デバイス17に表示させる。また、オブジェクト管理部31は、工数算出装置1の起動と共に実行される。オブジェクト管理部31は、オペレーティング・システムやウィンドウ・マネージャなどである。
【0017】
また、オブジェクト管理部31は、アプリケーション32a,32bにより開かれているファイルの夫々にオブジェクトを割り当てる。この例においてオブジェクトは、出力デバイス17の画面に表示されるウィンドウ・オブジェクトである。また、オブジェクト管理部31は、オブジェクトがアクティブであるか否かなど、オブジェクトの状態を管理する。また、オブジェクト管理部31は、入力情報に基づいて入力デバイス16が操作されたことを示す操作イベントを発生させる。また、オブジェクト管理部31は、アプリケーション32a,32bによりファイルのアクセスが行われたことを示すアクセス・イベントを発生させる。また、オブジェクト管理部31は、プロセッサ11により計測された時刻を工数算出部33へ渡す。
【0018】
アプリケーション32a,32bは、オブジェクト管理部31からの入力情報を用いて処理を行い、処理の結果に基づいて出力情報を生成しオブジェクト管理部31へ渡す。アプリケーション32a,32bは、オブジェクト管理部31により割り当てられたオブジェクトを用いてファイルを編集し、記憶部12へ書き込む。また、アプリケーション32a,32bは、記憶部12に格納されたファイルに対応してオブジェクト管理部31により割り当てられたオブジェクトを用いて、そのファイルを記憶部12から読み出す。
【0019】
次に、工数算出部33の動作について説明する。工数算出部33は、記録部40と、取得部41と、データ生成部42とを有する。この例において算出部は、データ生成部42である。
【0020】
図3は、工数算出部33の動作を示すフローチャートである。工数算出装置1において、オブジェクト管理部31及びアプリケーション32a,32bが動作しているとする。このとき記録部40は、ファイル群へのアクセスを示すアクセス情報と、ファイル群に対応するオブジェクト群のうち出力デバイス17の画面上のアクティブなオブジェクトを示すオブジェクト識別子と、入力デバイス16の操作が行われた時刻である操作時刻とを操作ログ61として記録する(S12)。
【0021】
S12について以下に詳述する。記録部40は、オブジェクト管理部31によるイベントを監視する。オブジェクト管理部31がイベントを発生させた場合、記録部40は、オブジェクト管理部31からイベントに関するイベント情報を取得し、イベント情報に基づいて操作ログ61のエントリを生成し記憶部12に記録する。
【0022】
イベントがアクセス・イベントである場合、イベント情報は、アクセスを示すアクセス情報とオブジェクト識別子とを含む。アクセス情報は、アクセスされたファイルを示すファイル識別子と、アクセス内容とを含む。この例においてファイル識別子は、ファイルのパス名とファイル名とを含む。この例においてアクセス内容は、ファイルのオープン処理やクローズ処理を示す。イベントが操作イベントである場合、イベント情報は、操作イベントが発生した時刻である操作時刻とオブジェクト識別子とを含む。オブジェクト識別子は、イベントが発生したときのアクティブなオブジェクトを示す。
【0023】
図4は、操作ログ61の内容を示す図である。操作ログ61は、イベント毎のエントリを有する。また操作ログ61はフィールドとして、オブジェクト識別子とオープン時刻と操作時刻とクローズ時刻とファイル識別子とを有する。
【0024】
オープン処理を示すアクセス・イベントが発生した場合、記録部40はそのイベントの発生時刻であるオープン時刻とオープン処理されたファイルのファイル識別子とを、操作ログ61のエントリに含める。クローズ処理を示すアクセス・イベントが発生した場合、記録部40はそのイベントの発生時刻であるクローズ時刻とクローズ処理されたファイルのファイル識別子とを、操作ログ61のエントリに含める。操作イベントが発生した場合、記録部40はそのイベントの発生時刻である操作時刻を、操作ログ61のエントリに含める。この例においてアクセス情報は、オープン時刻とクローズ時刻とファイル識別子である。アクセス・イベント発生時の操作ログ61のエントリにより、オブジェクト識別子とファイル識別子が関連付けられる。
【0025】
次に取得部41は、ファイル群を指定するための工数ポリシ71を記憶部12から取得する(S14)。この例において或るファイル群は、製品に関する或る製番(製品の管理番号)の或る工程に属する複数のファイルである。一つの製番で示された製品は、予め定義された少なくとも一つの工程(フェーズ)により製造される。この例においてファイル群情報は、工数ポリシ71である。
【0026】
S14について以下に詳述する。ユーザが工数の算出の対象となる過去の期間である対象期間を、入力デバイス16により入力すると、取得部41は、記憶部12に格納された工数ポリシ71を取得する。
【0027】
図5は、工数ポリシ71の内容を示す図である。この例において工数ポリシ71はファイル群毎の、製番と工程名とファイル群識別子とを有する。この例においてファイル群識別子は、そのファイル群が置かれたディレクトリを示すパス名である。この例においてユーザは予め定義された規則に従い、或る製番の或る工程に属するファイル群を同じディレクトリに置く。これにより、取得部71は、各ファイル群内のファイルを認識する。
【0028】
なお、ファイル群識別子は、ファイル群の各ファイルのデータに含まれた識別子であっても良い。この場合のファイル群識別子は例えば、製番及び工程を示すテキストである。この場合、取得部41は、記憶部12に格納された複数のファイルの夫々に含まれたファイル群識別子により、そのファイルが属するファイル群を認識する。また、ファイル群内の各ファイル名がファイル群識別子を含んでも良い。
【0029】
また、ユーザがファイル群内の各ファイル名を工数ポリシ71に登録しても良い。この場合、取得部71は、工数ポリシ71に示されたファイル名により、各ファイル群内のファイルを認識する。
【0030】
次にデータ生成部42は、アクセス情報とオブジェクト識別子と操作時刻と工数ポリシ71とに基づいて、或るファイル群に対応するオブジェクトがアクティブである期間であるアクティブ期間と、操作時刻の間の期間のうちしきい値以上の長さを有する期間である空白期間とを検出し、アクティブ期間から空白期間を除くことによりそのファイル群の工数を算出し(S16)、このフローを終了する。この例において第1期間は、ファイル群のアクティブ期間である。この例において第2期間は、空白期間である。
【0031】
S16について以下に詳述する。図6は、データ生成部42の動作を示すフローチャートである。データ生成部42は、工数データ生成部53と、工数集計データ生成部54とを有する。
【0032】
まず工数データ生成部53は、ユーザにより入力された対象期間をオブジェクト管理部31から取得する。対象期間は例えば、開始日時と終了日時とで表される。次に工数データ生成部53は操作ログ61から、取得部41に認識されたファイル群内の各ファイルのファイル識別子を含むエントリを検出し、そのエントリからファイル識別子とそれに対応するオブジェクト識別子とを取得する。次に工数データ生成部53は取得されたオブジェクト識別子と対象期間内の操作時刻とを含むエントリを、記憶部12から読み出して対象エントリとする(S22)。
【0033】
次に工数データ生成部53は、記憶部12に格納された空白期間ポリシ72と対象エントリ内のファイル識別子とに基づいて、時間しきい値を決定する(S24)。
【0034】
図7は、空白期間ポリシ72の内容を示す図である。空白期間ポリシ72は、ファイル種類毎の時間しきい値[分]を定義する。この例においてファイル種類は、ファイル名に含まれる拡張子であり、そのファイルを作成するアプリケーション32a,32bに関連付けられている。この例において、ドキュメント作成アプリケーション(拡張子doc,xls,ppt)の時間しきい値、およびプログラム開発アプリケーションの時間しきい値は30分、メール編集アプリケーション(拡張子msg)の時間しきい値は10分と定義されている。これにより工数データ生成部53は、対象エントリ内の各ファイル識別子に基づいてファイル種類を認識し、そのファイル種類に対応する時間しきい値を選択する。
【0035】
なお、空白期間ポリシ72は、工程毎の時間しきい値を定義しても良い。この場合、工数データ生成部53は工数ポリシ71に基づいて、対象エントリ内のファイル識別子に対応する工程を認識し、その工程に対応する時間しきい値を選択する。
【0036】
次に工数データ生成部53は、対象エントリ内の操作時刻のうち連続する二つのエントリの操作時刻の差の時間を算出し、差の時間が時間しきい値以上の長さを有する期間である空白期間を検出する(S26)。つまり空白期間は、時間しきい値以上の時間に亘って、入力デバイス16の操作が行われなかった期間である。ここで工数データ生成部53は、それら二つのエントリのうち前のエントリを用いて選択された時間しきい値を用いる。
【0037】
次に工数データ生成部53は、対象エントリ内のオブジェクト識別子とファイル識別子に基づいて、ファイル群内の夫々のファイルに対応するオブジェクトがアクティブである期間を検出し、そのファイルのアクティブ期間とする(S32)。ここで、工数データ生成部53は、同一のオブジェクト識別子が連続する期間をそのオブジェクト識別子に対応するファイルのアクティブ期間とする。この例において第3期間は、ファイル群の各ファイルのアクティブ期間である。
【0038】
次に工数データ生成部53はファイル群の各ファイルについて、アクティブ期間から空白期間を除いた実作業期間を検出し、実作業期間の長さを工数とすることにより、ファイル群の各ファイルの工数を算出する。次に工数データ生成部53は、ファイル群の各ファイルの工数を含む工数データ81を生成して記憶部12へ書き込む(S34)。
【0039】
図8は、ファイルの工数を示す模式図である。対象とするファイルのアクティブ期間の中に空白期間が存在する場合を示す。この図は、時間軸上で、対象とするファイルのアクティブ期間と操作イベントと空白期間と実作業期間とを示す。作業開始時刻は、アクティブ期間の開始時刻である。作業終了時刻は、アクティブ期間の終了時刻である。既存ファイルの作業である場合、作業開始時刻はそのファイルのオープン時刻であり、作業終了時刻はそのファイルのクローズ時刻である。作業時間は、アクティブ期間の長さである。作業空白時間は、空白期間の長さである。工数データ生成部53は、アクティブ期間のうち空白期間を除いた期間を実作業期間とし、その長さを対象とするファイルの工数とする。即ち、ファイルの工数は、そのファイルの作業時間−作業空白時間である。
【0040】
図9は、工数データ81の内容を示す図である。工数データ81はファイル毎の、ファイル名と作業開始時刻と作業終了時刻と作業時間[時間]と作業空白時間[時間]と工数[時間]と製番と工程名とを有する。工数データ生成部53は各ファイルについて、ファイル識別子内のファイル名と、作業開始時刻と、作業終了時刻と、作業時間と、作業空白時間とを、工数データ81に含める。また工数データ生成部53は各ファイルについて、工数ポリシ71に基づき認識された製番および工程名を工数データ81に含める。
【0041】
次に工数集計データ生成部54は、記憶部12に格納されたファイル群の各ファイルの工数データ81を取得し、ファイル群の各ファイルの工数を集計することにより、ファイル群の工数を算出し、ファイル群の工数を含む工数集計データ82を生成して記憶部12へ書き込み(S36)、このフローを終了する。
【0042】
図10は、第1の工数集計データ82の内容を示す図である。この工数集計データ82はファイル群毎の、製番と工程名と工数[時間]とを有する。工数集計データ生成部54は各ファイル群について、工数ポリシ71に示された製番と工程名を工数集計データ82に含める。
【0043】
なお、工数集計データ生成部54は対象期間内の日付毎に工数を集計しても良いし、製番毎に工数を集計しても良い。図11は、第2の工数集計データ82の内容を示す図である。この例において対象期間は、2010年9月1日から9月7日である。この工数集計データ82は製番毎、対象期間内の日付毎の、工数とを有する。この工数集計データ82の第1行は日付を示し、第2行は曜日を示す。また対象とする製番の右側に示された工数のうち、第1行は、対象とする製番の工数のうち対応する日付の工数を集計した値[時間]であり、第2行は、対象とする製番の工数を対象期間の開始から対応する日付まで累積した値[時間]である。
【0044】
なお、データ生成部42は、ファイル群内のファイルに対応する全てのオブジェクト識別子を有するエントリをファイル群のアクティブ期間としても良い。この場合、データ生成部42は、ファイル群のアクティブ期間から空白期間を除くことによりファイル群の実作業期間を検出し、その実作業期間の長さをファイル群の工数とし、工数集計データ82を生成しても良い。
【0045】
この実施形態によれば、複数のファイルの操作が並行して行われた場合であっても、それら複数のファイルに対応するオブジェクトがアクティブである期間を検出することにより、正確な工数を算出することができる。また、或る時間以上に亘って操作が行われない期間を検出して工数から除くことにより正確な工数を算出することができる。また、製番や工程などで関連付けられたファイル群の工数を集計することができる。
【0046】
プロセッサ11に工数算出部33の機能を実行させる工数算出プログラムは、コンピュータ読み取り可能な記録媒体に格納されていても良い。このコンピュータ読み取り可能な記録媒体は、ディスクや半導体メモリを含む。その形態は、工数算出装置1の内部に設けられた記憶部12、工数算出装置1の外部に設けられた記憶装置、可搬型記録媒体、他の工数算出装置の記憶装置を含む。また、可搬型記録媒体が工数算出プログラムを格納し、工数算出装置1がこの可搬型記録媒体の読み取り装置を有する場合、工数算出装置1はこの記録媒体から工数算出プログラムを読み取っても良い。あるいは、他のコンピュータが工数算出プログラムを格納し、工数算出装置1が他のコンピュータに接続されている場合、工数算出装置1は他のコンピュータから工数算出プログラムを受信しても良い。
【0047】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0048】
1 工数算出装置、11 プロセッサ、12 記憶部、16 入力デバイス、17 出力デバイス、31 オブジェクト管理部、32a,32b アプリケーション、33 工数算出部、40 記録部、41 取得部、42 データ生成部、53 工数データ生成部、54 集計データ生成部、61 操作ログ、71 工数ポリシ、72 空白期間ポリシ、81 工数データ、82 工数集計データ。
【特許請求の範囲】
【請求項1】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する記録部と、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得する取得部と、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する算出部と、
を備える工数算出装置。
【請求項2】
前記算出部は、前記ファイル群内の夫々のファイルについて前記ファイルに対応するオブジェクトがアクティブにされた期間である第3期間を検出し、前記第3期間から前記第2期間を除くことにより前記ファイル群内の夫々のファイルの工数を算出し、前記ファイル群内の夫々のファイルの工数を集計することにより前記ファイル群の工数を算出する、
請求項1に記載の工数算出装置。
【請求項3】
前記算出部は、前記オブジェクト識別子に対応するファイルの種類に基づいて前記しきい値を決定する、
請求項1又は請求項2に記載の工数算出装置。
【請求項4】
前記取得部は、前記ファイル群のデータから前記ファイル群情報を抽出する、
請求項1乃至請求項3のいずれかに記載の工数算出装置。
【請求項5】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する
ことをコンピュータに実行させる工数算出プログラム。
【請求項6】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する
工数算出方法。
【請求項1】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録する記録部と、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得する取得部と、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する算出部と、
を備える工数算出装置。
【請求項2】
前記算出部は、前記ファイル群内の夫々のファイルについて前記ファイルに対応するオブジェクトがアクティブにされた期間である第3期間を検出し、前記第3期間から前記第2期間を除くことにより前記ファイル群内の夫々のファイルの工数を算出し、前記ファイル群内の夫々のファイルの工数を集計することにより前記ファイル群の工数を算出する、
請求項1に記載の工数算出装置。
【請求項3】
前記算出部は、前記オブジェクト識別子に対応するファイルの種類に基づいて前記しきい値を決定する、
請求項1又は請求項2に記載の工数算出装置。
【請求項4】
前記取得部は、前記ファイル群のデータから前記ファイル群情報を抽出する、
請求項1乃至請求項3のいずれかに記載の工数算出装置。
【請求項5】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する
ことをコンピュータに実行させる工数算出プログラム。
【請求項6】
ファイル群へのアクセスを示すアクセス情報と、前記ファイル群に対応するオブジェクト群のうち画面上のアクティブなオブジェクトを示すオブジェクト識別子と、操作が行われた時刻である操作時刻とを記録し、
前記ファイル群を指定するためのファイル群情報を記憶装置から取得し、
前記アクセス情報と前記オブジェクト識別子と前記操作時刻と前記ファイル群情報とに基づいて、前記ファイル群に対応するオブジェクトがアクティブである第1期間と、連続する二つの操作時刻の間の期間のうちしきい値以上の長さを有する第2期間とを検出し、前記第1期間から前記第2期間を除くことにより前記ファイル群の工数を算出する
工数算出方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−164126(P2012−164126A)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願番号】特願2011−23898(P2011−23898)
【出願日】平成23年2月7日(2011.2.7)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【公開日】平成24年8月30日(2012.8.30)
【国際特許分類】
【出願日】平成23年2月7日(2011.2.7)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
[ Back to top ]