(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024031501
(43)【公開日】2024-03-07
(54)【発明の名称】タスク管理方法、プログラム、およびタスク管理装置
(51)【国際特許分類】
G06Q 10/0631 20230101AFI20240229BHJP
【FI】
G06Q10/06 302
【審査請求】未請求
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2022135081
(22)【出願日】2022-08-26
(71)【出願人】
【識別番号】000233055
【氏名又は名称】株式会社日立ソリューションズ
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】大藪 翔太
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA09
(57)【要約】
【課題】タスク間の依存関係が明確な状態でなくても間違った依存関係を視覚化してしまうという事態を回避する。
【解決手段】本開示は、所定の最終ゴールを達成するための複数のタスクをマップで視覚化して管理するタスク管理方法であって、コンピュータが、ユーザによる入力指示に応答して、所定の最終ゴールを達成するために必要なタスクに関連する複数の箱を画面上に描画することと、コンピュータが、ユーザによる入力指示に応答して、複数の箱における第1の箱と、当該第1の箱に関連する第1タスクを達成するために必要な第2タスクに関連する第2の箱とを接続線で連結する際に、第1の箱が前記第2の箱を経由して第1の箱を循環参照しているか否か判断することと、コンピュータが、第1の箱の循環参照がない場合に、第1の箱と第2の箱とを接続線で連結することと、を含む、タスク管理方法を提案する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
所定の最終ゴールを達成するための複数のタスクをマップで視覚化して管理するタスク管理方法であって、
コンピュータが、ユーザによる入力指示に応答して、前記所定の最終ゴールを達成するために必要なタスクに関連する複数の箱を画面上に描画することと、
前記コンピュータが、前記ユーザによる入力指示に応答して、前記複数の箱における第1の箱と、当該第1の箱に関連する第1タスクを達成するために必要な第2タスクに関連する第2の箱とを接続線で連結する際に、前記第1の箱が前記第2の箱を経由して前記第1の箱を循環参照しているか否か判断することと、
前記コンピュータが、前記第1の箱の循環参照がない場合に、前記第1の箱と前記第2の箱とを前記接続線で連結することと、
を含む、タスク管理方法。
【請求項2】
請求項1において、
前記複数の箱を画面上に描画することは、
前記コンピュータが、前記最終ゴールを達成するための最終タスクを構成要素として含む箱を画面上に描画することと、
前記コンピュータが、前記最終タスクを遂行するための少なくとも1つの細分化タスクを構成要素として含む箱を前記画面上に描画すること、
を含む、タスク管理方法。
【請求項3】
請求項2において、
前記第2の箱の前記第2タスクは、前記細分化タスクを構成要素に含み、
前記第1の箱の前記第1タスクは、前記第2の箱の前記細分化タスクを達成することにより完了となるタスクである、タスク管理方法。
【請求項4】
請求項1において、
前記複数の箱のそれぞれは、構成要素自身単独のタスク完了で達成される事実タイプの構成要素、あるいは、他の箱を参照し、当該他の箱に含まれる全ての構成要素のタスク完了で達成される参照タイプの構成要素の少なくとも何れか一方を含む、タスク管理方法。
【請求項5】
請求項4において、
前記コンピュータは、前記第1の箱を前記第2の箱に前記接続線で連結させる前記入力指示があったとき、前記第1の箱に、前記第2の箱の名称と同一のタスク名を有する、前記参照タイプの構成要素を生成する、タスク管理方法。
【請求項6】
請求項4において、
前記コンピュータは、前記第1の箱の前記事実タイプの構成要素を前記第2の箱に前記接続線で連結される前記入力指示があったとき、前記事実タイプの構成要素を前記参照タイプの構成要素に変更する、タスク管理方法。
【請求項7】
請求項4において、さらに、
前記コンピュータが、前記ユーザによる前記接続線の削除の入力指示に応答して、削除対象の前記接続線を削除するとともに、前記第1の箱に含まれる前記参照タイプの構成要素を削除することを含む、タスク管理方法。
【請求項8】
請求項4において、さらに、
前記コンピュータが、前記ユーザによる前記接続線の削除の入力指示に応答して、削除対象の前記接続線を削除するとともに、前記第1の箱に含まれる前記参照タイプの構成要素を前記事実タイプの構成要素に変更することを含む、タスク管理方法。
【請求項9】
請求項4において、さらに、
前記コンピュータが、複数の構成要素の情報を保持する記憶デバイスから、前記マップにおける前記複数の箱に含まれる前記事実タイプの構成要素の情報を全て取得し、当該取得した全ての前記事実タイプの構成要素の名称と各構成要素が示すタスク完了をユーザが入力する入力欄とを含む事実状況一覧表示を前記画面上に描画することを含む、タスク管理方法。
【請求項10】
請求項9において、さらに、
前記コンピュータが、前記事実状況一覧表示における前記入力欄への入力を、前記複数の箱における前記構成要素の表示に反映させることを含む、タスク管理方法。
【請求項11】
請求項9において、さらに、
前記コンピュータが、前記入力欄への入力があると、対応する構成要素が属する箱の達成率を計算し、当該達成率の情報を前記マップにおける前記複数の箱に反映させることを含む、タスク管理方法。
【請求項12】
請求項11において、
前記構成要素のタスク完了によって当該タスク完了の構成要素が属する箱の全ての構成要素がタスク完了となる場合、前記コンピュータは、前記タスク完了の構成要素が属する箱の達成率を100%とし、当該達成率100%の箱の参照元の箱の構成要素を完了済とし、当該参照元の箱の達成率に反映させる、タスク管理方法。
【請求項13】
コンピュータに、請求項1から12の何れか1項に記載のタスク管理方法を実行させるためのプログラム。
【請求項14】
所定の最終ゴールを達成するための複数のタスクをマップで視覚化して管理するタスク管理装置であって、
前記複数のタスクをマップで視覚化するための各種プログラムを保持する記憶デバイスと、
前記記憶デバイスから前記各種プログラムを読み込んで実行するプロセッサと、を備え、
前記プロセッサは、
ユーザによる入力指示に応答して、前記所定の最終ゴールを達成するために必要なタスクに関連する複数の箱を画面上に描画する処理と、
前記ユーザによる入力指示に応答して、前記複数の箱における第1の箱と、当該第1の箱に関連する第1タスクを達成するために必要な第2タスクに関連する第2の箱とを接続線で連結する際に、前記第1の箱が前記第2の箱を経由して前記第1の箱を循環参照しているか否か判断する処理と、
前記第1の箱の循環参照がない場合に、前記第1の箱と前記第2の箱とを前記接続線で連結する処理と、
を実行する、タスク管理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、タスク管理方法、プログラム、およびタスク管理装置に関する。
【背景技術】
【0002】
以前からタスクを管理するツールとしてガントチャートが用いられる場合がある。ガントチャートでは、上位タスクと下位タスクとの依存関係を明示することができ、これにより利用者は下位タスクと上位タスクとの関係を認識することができるようになっている。このようなガントチャートに関し、例えば、特許文献1は、実行順序の依存関係にあるタスクに作業担当者間のコミュニケーションコストを示すバーチャートの重なり箇所を設け、併せてその関連を示す矢印を示すとともに、その重なりをタスクの工数として集計可能にすることについて開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ガントチャートは、タスク間の依存関係が当初から明らかな場合には有効なツールとして機能するが、業務の場面において前例のないことが求められ、達成すべきゴールは認識できるものの達成条件が直ぐには明らかにはならず暗中模索の状態でタスク遂行をしなければならない場面では必ずしも有効なツールとは言えない。また、このような達成条件が明らかではない場合、タスク間の依存関係が必ずしも明確ではないことも多く、上位タスクと下位タスクを仕分ける際に、誤った依存関係を視覚化してしまうという可能性もある。
本開示は、このような状況に鑑み、タスク間の依存関係が明確な状態でなくても間違った依存関係を視覚化してしまうという事態を回避する技術を提案する。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本開示は、一例として、所定の最終ゴールを達成するための複数のタスクをマップで視覚化して管理するタスク管理方法であって、コンピュータが、ユーザによる入力指示に応答して、所定の最終ゴールを達成するために必要なタスクに関連する複数の箱を画面上に描画することと、コンピュータが、ユーザによる入力指示に応答して、複数の箱における第1の箱と、当該第1の箱に関連する第1タスクを達成するために必要な第2タスクに関連する第2の箱とを接続線で連結する際に、第1の箱が前記第2の箱を経由して第1の箱を循環参照しているか否か判断することと、コンピュータが、第1の箱の循環参照がない場合に、第1の箱と第2の箱とを接続線で連結することと、を含む、タスク管理方法を提案する。
【0006】
本開示に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、本開示の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。本明細書の記述は典型的な例示に過ぎず、本開示の特許請求の範囲又は適用例を如何なる意味においても限定するものではないことを理解する必要がある。
【発明の効果】
【0007】
本開示の技術によれば、タスク間の依存関係が明確な状態でなくても間違った依存関係を視覚化してしまうという事態を回避することが可能となる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態によるタスク管理装置(目標達成条件管理ツール)100の構成例を示す図である。
【
図2】本実施形態によるタスク管理技術を前例のない業務のプロセス整理に利用した場合の画面表示(視覚化)例200を示す図である。
【
図3】本実施形態によるタスク管理技術を複雑なタスクの達成状況の視覚化に利用した場合の画面表示例300を示す図である。
【
図4】本実施形態によるタスク管理技術を、知識や技能を備えていることの要件の明確化に利用した場合の画面表示例400を示す図である。
【
図5】本実施形態によるタスク管理技術を、仕事の意義の明確化に利用した場合の画面表示例500を示す図である。
【
図6】箱を作成する際にユーザが行う操作を説明するための図である。
【
図7】ソケットを作成(箱602内に構成要素を追加)する際にユーザが行う操作を説明するための図である。
【
図8】上位層の箱の中に作成されたソケットと下位層の箱とを線でつなげる際にユーザが行う操作を説明するための図である。
【
図9】既に作成されている箱を移動(箱の表示位置を変更)させる際の操作を説明するための図である。
【
図10A】箱の情報を管理するためのテーブル(箱情報管理テーブル1001)である。
【
図10B】箱の中に作成されるソケットの情報を管理するためのテーブル(ソケット情報管理テーブル1002)である。
【
図11】完了したタスクにチェックを入れる事実記録の操作例を示す図である。
【
図12】本実施形態による箱作成処理の詳細を説明するためのフローチャートである。
【
図13】本実施形態による箱移動処理の詳細を説明するためのフローチャートである。
【
図14】本実施形態による箱削除処理の詳細を説明するためのフローチャートである。
【
図15】ポップアップされた箱およびソケットの削除ウインドウの構成例を示す図である。
【
図16】本実施形態による事実タイプのソケット作成処理の詳細を説明するためのフローチャートである。
【
図17】本実施形態によるソケット削除処理の詳細を説明するためのフローチャートである。
【
図18】本実施形態による接続線作成処理(参照タイプのソケット作成処理)の詳細を説明するためのフローチャートである。
【
図19】
図18のS1804の詳細を説明するためのサブルーチンフローチャートである。
【
図20】本実施形態による接続線削除処理(参照タイプのソケット削除処理)の詳細を説明するためのフローチャートである。
【
図21】事実状況一覧表示(達成状況一覧11011(
図11参照)の表示)を生成する処理を説明するためのフローチャートである。
【
図22】事実記録処理を説明するためのフローチャートである。
【
図23】達成率計算の際に実行される箱(ボックス)のループ処理を説明するためのフローチャートである。
【
図24】達成率計算(
図23のS2302)の詳細を説明するためのサブルーチンフローチャートである。
【
図25】計算準備確認処理(
図24のS2402)の詳細を説明するためのサブルーチンフローチャートである。
【発明を実施するための形態】
【0009】
現在、手順・手続きが明確なタスク(達成条件)の処理は機械によって行われ、人間よりも早く正確に処理できるようになっている。その結果、人間の活躍できる領域は、より抽象化した概念を扱う分野に寄ってきている。また、手順・手続き自体も曖昧で、頭脳を使って考えなければならないことが多くなってきている。それに伴い、主に業務の場面において前例のない事が求められるようになり、ゴール(目標)は分かるが達成条件が分からず暗中模索の中でタスクを処理しなければならないという状況が増えてきている。
しかしながら、現状においては、暗中模索の中でタスクを処理しつつ分かったことを記述して視覚化するツールが存在しない。
【0010】
そこで、本実施形態は、暗中模索の中で進めるにしたがって具体的・明確になったタスク(要素)を視覚化するツールについて開示するとともに、併せて、暗中模索の中、タスク間の依存関係が明確な状態でなくても間違った依存関係を視覚化してしまうという事態を回避する工夫について開示する。
【0011】
以下、本実施形態について、図面を参照して説明する。同一の構成については、同じ符号を付して説明する。尚、以下の実施形態は本開示の技術を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが上記課題の解決手段に必須のものとは限らない。
【0012】
<タスク管理装置の構成例>
図1は、本実施形態によるタスク管理装置(目標達成条件管理ツール)100の構成例を示す図である。
【0013】
タスク管理装置100は、例えば、コンピュータで構成され、プロセッサ(CPU)101と、記憶デバイス(データベース)102と、入力デバイス103と、出力デバイス104と、を備える。なお、タスク管理装置100は、さらに、ネットワークを介して他のコンピュータやデバイスと通信することができる通信デバイスを備えていてもよい。
【0014】
プロセッサ101は、記憶デバイス(データベースを含む)102に保持されている各種プログラムを読み込み、プロセッサ101の内部メモリ(図示せず)にそれらを展開し、データ登録部1011、データ取得部1012、描画部1013、および達成率計算部1014を生成する。
【0015】
記憶デバイス102は、データ登録部1011が取得する各種情報を格納してデータベースとして機能するとともに、上述のようにタスク管理装置100で実行される各種プログラムも保持する。
【0016】
入力デバイス103は、例えば、キーボード、マウス、タッチパネルなどで構成され、ユーザが所定の指示やデータをタスク管理装置100に入力する際に用いられる。
出力デバイス104は、例えば、表示装置やプリンタなどで構成され、当該タスク管理装置100による処理結果を出力する。
【0017】
プロセッサ101の内部に生成されるデータ登録部1011は、入力デバイス103から入力された各種指示(箱作成指示、構成要素(ソケット)作成指示、接続線作成指示)や事実記録を受け付ける。箱作成指示を受けた場合、データ登録部1011は、作成される箱に付与する識別子、ユーザによって入力された箱のタイトル、および箱が描画された座標値などを記憶デバイス(データベース)102に登録し、描画部1013に箱を画面上に描画するように指示する。また、箱の中に構成要素(ソケット)を作成する指示を受けた場合、データ登録部1011は、作成されるソケットに付与する識別子、ユーザによって入力されたソケットのタイトル、およびソケットのタイプなどを箱の識別子に紐づけて記憶デバイス(データベース)102に登録し、当該箱の中に構成要素を描画するように描画部1013に指示する。描画部1013は、例えば、データ登録部1011からの上記描画指令に応答し、データベース102から取得したデータを用いて箱、ソケット、線を表示画面上に描画する。なお、データ登録部1011の他の処理内容については後に詳述する。
【0018】
データ取得部1012は、例えば、データベース102から事実タイプのソケット(構成要素)の情報(タスクの達成情報の情報を含む)を取得し、描画部1013に受け渡す。描画部1013は、データ取得部1012から取得した情報に基づいて事実状況一覧表示(達成状況一覧11011:
図11参照)を生成する。また、データ取得部1012は、例えば、データ登録部1011からの達成率計算のためのデータ取得指令に応答して、記憶デバイス(データベース)102から各タスクの完了の有無の情報を取得し、達成率計算部1014に受け渡す。
【0019】
達成率計算部1014は、上記事実記録があった場合に、各タスクの達成率を計算し直す。再計算によって得られた達成率の値は、描画部1013に受け渡され、対応する箱の達成率の値が更新される。
【0020】
<使用例>
図2から
図5を参照して、本実施形態によるタスク管理技術の使用例について説明する。
【0021】
(i)前例のない業務のプロセス整理
図2は、本実施形態によるタスク管理技術を前例のない業務のプロセス整理に利用した場合の画面表示(視覚化)例200を示す図である。
【0022】
例えば、ある業務を遂行するにあたり、当該業務遂行のゴール(目標)は明確になっているがそれを達成するために何をすべきか明確になっていない場合がある。つまり、実行すべき項目および手続きなどが整っていない中で業務を進めなければいけない場合がある。このような場合に、本タスク管理技術を利用すれば、達成条件を視覚化する段階(準備段階)では、目標達成のために何をすれば良いのか(達成条件)が分かり次第、項目(構成要素)を追加して視覚化することができる。
【0023】
ここで、例えば、オンライン懇親会の準備というゴールが設定されたとする。このとき、ユーザは、最初にゴールの箱(オンライン懇親会の準備201)を作成し、画面上に表示する。そして、ユーザは、このゴールを達成するために必要な項目(構成要素)として「オンライン集金」と「プログラム」を思いついた段階で、オンライン懇親会の準備201に構成要素としてオンライン集金2011とプログラム2012を入力する。また、ユーザは、オンライン集金2011とプログラム2012を達成するために下位の構成要素(具体化/細分化された構成要素)があると分かった段階で、箱:オンライン集金202、および箱:プログラム203を新たに作成し、これらの構成要素(オンライン集金202について出欠確認から集金確認、プログラム203について企画の決定からスライド作成)を追記する。さらに下位の細分化した構成要素がある場合、ユーザは順次箱と構成要素を作成(追加)していくことになる。このように箱(Box)および構成要素(ソケット)を順次追記していくことにより、上位から下位に向けて従属関係を明示する表示(視覚化するためのマップ(タスク管理マップ))が完成する。これにより、ユーザは最終ゴールを達成するためにどの業務をどのような順番で実行していくべきかを認識することができる。
【0024】
また、例えば、ゴールと各構成要素(各階層の項目)の関係を明示する表示(タスク管理マップ)を作成した後は、ユーザがチェックボックスにチェックマークを入力することにより、下位及び上位の各構成要素の完成状態を示すことができ、ゴールの達成率を例えば各箱の左上のスペースに表示することができる。
【0025】
以上のような前例のない業務のプロセス整理のために本タスク管理技術を利用する場合、最上位のゴールから箱を作成し、徐々に構成要素を細分化して
図2のようなマップ(樹形タスク管理マップ図)が作成される。
【0026】
(ii)複雑なタスクの達成状況の視覚化
図3は、本実施形態によるタスク管理技術を複雑なタスクの達成状況の視覚化に利用した場合の画面表示例300を示す図である。
【0027】
例えば、ある業務を遂行するにあたり、依存関係が複雑に絡み合った各タスク(構成要素)の進捗状況が明確でない場合がある。つまり、全ての構成要素が直列につながって順次遂行されてゴールが達成されることはない。多くは複数の構成要素の遂行が並列に進行し、これらが下位から順次達成されることにより、最終的にゴールが達成されることになる。このような状況では、下位の構成要素が複数の上位の構成要素の遂行に関連する場合がある。例えば、
図3において、下位の構成要素「出欠確認305」はオンライン集金303および賞品の決定304の両方のタスク遂行に関与している。このように依存関係が1対1ではなく1対多となっている場合に、下位タスク(構成要素)が完了したときには複数の上位タスク(構成要素)に含まれる下位タスク(構成要素)の進捗(完了)を反映させる。このようにすることにより、上位タスク(オンライン集金303および賞品の決定304)のそれぞれにおいて、下位タスク(出欠確認305)の進捗(完了)を二重管理する必要がなくなり、タスクの依存関係をシンプルにすることが可能となる。
【0028】
なお、以上のような複雑なタスクの達成状況の視覚化のために本タスク管理技術を利用する場合でも、最上位のゴールから箱を作成し、徐々に構成要素を細分化して
図2のような樹形図が作成される。
【0029】
(iii)知識や技能を備えていることを要件の明確化
図4は、本実施形態によるタスク管理技術を、知識や技能を備えていることの要件の明確化に利用した場合の画面表示例400を示す図である。
【0030】
ある知識や技能は、何をもって習得していると言えるのか分からない場合が多い。例えば、
図4に示されるように、小学校算数のマスター401をゴール(命題)とする場合、構成要素(ソケット)として、小学1年生から小学6年生までの算数学習分を習得していることが作成される。この中で構成要素「小学6年生算数学習分」の習得の有無を管理するために、箱:6年生学習分402が作成され、その構成要素として「分数の計算」「比例・反比例」「立体図形」が作成される。「分数の計算」「比例・反比例」「立体図形」のそれぞれには細分化された下位の構成要素がある。このため、箱:分数の計算403、箱:比例・反比例404、および箱:立体図形405が作成され、それぞれの構成要素が追記される。以上のようにして、小学6年生算数学習分の習得マップが完成する。他の学年の算数学習分の習得マップも同様に、上位から下位に向かって細分化しながら作成される。
【0031】
小学6年生算数学習分の習得マップが完成すると、最下位の構成要素のそれぞれについて習得できているか逐次チェックされ(習得の有無は別途実施される効果測定テストなどによって判断される)、習得率(達成率)が算出され、それぞれの箱に表示される。例えば、
図4おいては、6年生学習分の「分数の掛け算」「分数の割り算」「比例」「反比例」「立方体の体積」「直方体の体積」「角柱の体積」「円柱の体積」のうち、習得できた項目についてはチェックマークが付与される。
図4で示される状況の場合、分数の計算403および比例・反比例404は100%の習得率、立体図形405は50%の習得率となっているため、6年生学習分402は67%の習得率と算出される。そして、1年生学習分から5年生学習分までは習得率100%、6年生学習分は習得率100%に未達なので、小学校算数マスター401は、83%となる。当該マップを見たユーザは、残りの立体図形の「角柱の体積」「円柱の体積」を習得すれば、小学校算数をマスターしたと認識することができるようになる。
【0032】
このように、所定の分野の知識や技能を習得しているかを明確化する際には、当該知識や技能を習得するための構成要素(タスク、項目)のマップを作成し、最下位の構成要素から順次習得しているかチェックすることにより、全体としてどの程度の習得率を有しているか判断することができる。
【0033】
(iv)仕事の意義の明確化
図5は、本実施形態によるタスク管理技術を、仕事の意義の明確化に利用した場合の画面表示例500を示す図である。
【0034】
例えば、ある工場の作業員にとって、自分が作っている部品(製品)の用途が不明で、自分の仕事が社会の何に役に立つのか分からず、モチベーションが上がらないような場合がある。このような場合に、最終的に誰が喜ぶのかを筋道をたてて見える化することで、自身の仕事がどのように社会に貢献しているか示し、仕事の意義を見出すための表現ツールとして本タスク管理技術を利用することができる。
【0035】
図5では、地図アプリ利便性向上という最終ゴールを達成するために必要な構成要素(タスク、項目)を階層構造で有するマップが示されている。例えば、下位の人物(例えば、工場Aの工員やこの工員の上司)は、工場Aで作製する金属部品(工場A506)が装置製作会社Aの装置の部品となること(装置製作会社A504)→装置製作会社Aの装置がロケット開発会社のロケット製造に使われること(ロケット開発会社503)→ロケット開発会社のロケットが新規衛星の稼働に必要であること(新規衛星の稼働502)→新規衛星の稼働が地図アプリ利便性向上に必要であること(地図アプリ利便性向上501)、を明らかにすることにより、
図5のマップを下位の階層から作成することができる。このようにすることに、自身が作製する部品の最終的な製品やサービスにおける用途や貢献を示すことにより、自身の仕事の意義を見出したり(工場Aの工員が自身で見出す)、示したり(工場Aの工員の上司が工員に示す)することができる。
【0036】
また、例えば、地図アプリ利便性向上のプロジェクトリーダが、最上位のゴール(地図アプリ利便性向上)を達成すると、世の中にどのような波及効果・経済的効果があるかを示すこともできる。このような場合、地図アプリ利便性向上501を出発点として、新規衛星の稼働502→ロケット開発会社503→装置製作会社A504→工場A506と上位層から下位層に順次細分化された構成要素(項目、タスク)をつなげて行くことにより、当該プロジェクトの波及効果等を視覚化(マップ化)することができる。
【0037】
以上のように、仕事の意義の明確化のための、本実施形態によるタスク管理技術は、下位から上位に向かってタスクを視覚化(マップ化)する場合にも上位から下位に向かってタスクを視覚化(マップ化)する場合にも用いることができる。
【0038】
<操作方法>
図6から
図9を参照して、画面上に上記マップを作成する際にユーザが行う操作について説明する。
【0039】
(i)箱(Box)を作成する際の操作
図6は、箱を作成する際にユーザが行う操作を説明するための図である。
【0040】
ユーザがタスク視覚化ツール(マップ作成ツール)を立ち上げると、マップ作成画面上に「new」ボタンが表示される(
図11参照)。ユーザがマウスなどの入力デバイス103を用いてnewボタン601を押下すると、空の箱602が画面上の所定の位置(デフォルトの座標位置)に生成(描画)される。そして、生成された箱602のテキスト入力欄にユーザによって箱602のタイトル603が入力される。当該タイトル603は、当該層よりも上位の層の箱(図示せず)の構成要素に相当し、かつ当該層のゴール(目標)に相当する。
【0041】
(ii)ソケットを作成する際の操作
図7は、ソケットを作成(箱602内に構成要素を追加)する際にユーザが行う操作を説明するための図である。
【0042】
例えば、箱602の中に、箱のタイトル603(当該箱のゴール)を達成するために必要な構成要素(ソケット)を追加する場合、ユーザによってソケット作成ボタン701が押下される。ソケット作成ボタン701が押下されると、箱602のタイトル603の下に新しい行(空のソケット)が追加され、ユーザによってソケット名(構成要素名)が追記されるとソケットの作成が完了する。
図7の場合、出欠ファイル作成702というソケットが追加されている。
【0043】
(iii)上位層の箱の中のソケットと下位層の箱を線でつなげる際の操作
図8は、上位層の箱の中に作成されたソケットと下位層の箱とを線でつなげる際にユーザが行う操作を説明するための図である。
【0044】
例えば、上位層の箱であるオンライン集金801に下位層の箱である出欠確認602を線でつなげる場合、オンライン集金801のタイトルの下にある接続線作成ボタン802を押下しながらドラッグして下位層の出欠確認602の接続線連結ボタン803につなげると上位層の箱:オンライン集金801と下位層の箱602とが接続線805でつながれる。また、上位層のオンライン集金801に対応するソケット(構成要素:出欠確認)が含まれていない場合には、接続線連結完了と同時に自動的にソケット:出欠確認804が追記される。
【0045】
図8では、オンライン集金801に出欠確認804が作成されていない場合の接続線連結操作が示されているが、上位層のオンライン集金801の中に既にソケット出欠確認804が作成されている場合には、ドラッグ操作により当該ソケットと下位層の箱:出欠確認602が接続線805でつながれることになる。
【0046】
(iv)箱を移動させる際の操作
図9は、既に作成されている箱を移動(箱の表示位置を変更)させる際の操作を説明するための図である。
【0047】
箱を移動する場合、移動対象の箱を押下し、そのまま移動先の位置までドラッグすればよい。
図9に示されるように、例えば、箱:出欠確認602が他の箱と重なっているため箱:出欠確認602を別の場所に移動させたい場合、箱:出欠確認602の所定の場所(例えば、箱の縁部)を押下し、それを移動させたい場所までドラッグする。このとき、他の箱との接続線がある場合(例えば、上位層の箱:オンライン集金801との接続線805)には、この接続線もドラッグ動作に連動して移動することになる。
【0048】
<データベースについて>
図10は、記憶デバイス102上のデータベースの構成例を示す図である。
図10Aは、箱の情報を管理するためのテーブル(箱情報管理テーブル1001)である。
図10Bは、箱の中に作成されるソケットの情報を管理するためのテーブル(ソケット情報管理テーブル1002)である。
箱情報管理テーブル1001は、箱を一意に特定・識別するための箱ID10011と、箱のタイトル(達成すべきゴール)を示すタイトル10012と、箱が描画される画面上の座標位置(X座標)を示すX座標10013と、箱が描画される画面上の座標位置(Y座標)を示すY座標10014と、を構成項目として含む。箱ID10011は、ユーザが上記newボタン601を押下したときにランダム番号あるいは連番として割り当てられる。タイトル10012は、箱が生成され、ユーザによって記入されることによりデータベースにも登録される。XおよびY座標10013および10014は、箱作成時はデフォルトの座標値が登録されるが、箱移動操作(
図9参照)が実行されると、移動先の座標値に変更されることになる。例えば、箱:企画決定は、箱ID=d27bcaafが付与され、座標(-210,8)に描画される。
【0049】
ソケット情報管理テーブル1002は、箱ID10021と、ソケットを一意に特定・識別するためのソケットID10022と、ソケットの種別を示すソケットタイプ10023と、ソケットのタイトルを示すタイトル10024と、を構成項目として含む。箱ID10021は、管理対象のソケットが属する箱の識別子を示す情報である。ソケットタイプ10023は、ソケットが事実タイプか参照タイプかを示す情報である。事実タイプは、当該ソケット単独で完結しているソケット(他の箱を参照しないソケット)であり、達成状況一覧(
図11参照)に表示され、ユーザによってタスク完了後にチェックされるソケットである。参照タイプは、他の箱を参照するソケットであり、参照先の箱の全ソケットに示されるタスク完了後に自動的にチェックされるソケットである。例えば、ソケット:企画の選定は、ソケットID=adfag45dが付与され、箱ID=d27bcaafの箱に事実タイプとして属するソケットである。また、ソケット:企画の承認は、ソケットID=x23bcmmsが付与され、箱ID=fb3d8351の箱に参照タイプとして属するソケットである。また、ソケット情報管理テーブル1002からは、ソケット:企画の選定が箱:企画の決定に構成要素として属し、ソケット:企画の承認、ソケット:プログラムの順序決定、ソケット:スライド作成は、同一の箱:プログラムに創生要素として属することが分かる。
【0050】
<事実記録>
図11は、完了したタスクにチェックを入れる事実記録の操作例を示す図である。
図11では、1つのタスク(テーマの決定)にチェックを入れる前のマップ作成画面1101とチェックを入れた後のマップ作成画面1102が示されている。
【0051】
マップ作成画面1101(1102)は、マップ作成領域11012(11022)と、箱を新たに作成する際に押下されるnewボタン601と、達成状況一覧11011(11021)と、を含む。
【0052】
newボタン601が1回押下されると、マップ作成領域11012内のデフォルト座標位置に新しい箱が生成される。
図11のマップ作成領域11012(および11022)には、newボタン601を押下することによって作成され、上記移動動作によって整列された箱301から306が表示されている。
【0053】
達成状況一覧11011(および11021)は、箱301から306に作成された事実タイプの構成要素(ソケット)の全てを一覧表示する領域であり、各ソケットタイトルと対応するチェックボックスを含んでいる。ユーザが入力デバイス103を用いて完了したタスクにチェックを入れると、当該チェックボックスにチェックが入るとともに、マップ作成領域11012(および11022)の対応するソケットのチェックボックスにもチェックが自動的に反映される。例えば、ユーザが達成状況一覧11011の「テーマの決定」のチェックボックスにチェックを入れると(チェックボックス110111→チェックボックス110211)、マップ作成領域11012の「テーマの決定」のチェックボックスにも自動的にチェックが反映される(チェックボックス110121→チェックボックス110221)。また、タスク「テーマの決定」が完了したことにより、このソケットが属する箱:企画の決定306の達成率が50%から100%になる。さらに、企画の決定306がソケットとして属する箱:賞品の決定304における「企画の決定」に自動的にチェックマークが反映され(チェックボックス110122→チェックボックス110222)、箱:賞品の決定304の達成率33%から50%に変更される。
【0054】
<箱作成処理>
図12は、本実施形態による箱作成処理の詳細を説明するためのフローチャートである。
【0055】
(i)S1201
データ登録部1011は、ユーザのnewボタン601押下による箱作成の指示の入力を待つ。
【0056】
(ii)S1202
newボタン601が押下されると、データ登録部1011は、箱作成の指示入力を受け付ける。
【0057】
(iii)S1203
データ登録部1011は、デフォルト座標位置(例えば、箱の左上端の位置)における箱描画を描画部1013に指示する。また、データ登録部1011は、データベース(記憶デバイス)102に、新たに作成される箱の情報(箱ID、箱の座標値)を登録する。なお、デフォルト座標位置は、固定の座標値を設定してもよいし、一度使った座標位置は二度と使わず、所定値分ずらしながら設定するようにしてもよい。デフォルト座標値として固定値を用いる場合には、箱が重なって描画されることを回避するため、
図13で説明する箱移動処理を実行する必要がある。
【0058】
(iv)S1204
描画部1013は、データ登録部1011からの箱作成指示に応答し、デフォルト座標位置に箱を描画する。なお、描画すべき箱のサイズは予め決められている(ユーザによって描画時および描画後にサイズ変更も可能)。
【0059】
また、箱が描画された後、ユーザによって箱のタイトルが入力されると、データ登録部1011は、対応する箱の情報として、箱のタイトルをデータベース102に登録する。
【0060】
<箱移動処理>
図13は、本実施形態による箱移動処理の詳細を説明するためのフローチャートである。
【0061】
(i)S1301
データ登録部1011は、ユーザによる箱のドラッグ入力を待つ。
【0062】
(ii)S1302
データ登録部1011は、マップ作成領域11012に描画されている箱のドラッグ入力を受け付ける。
【0063】
(iii)S1303
データ登録部1011は、ドラッグ先(移動先)の座標値を取得し、描画部1013に箱の再描画を指示するとともに、データベース102における対象の箱の座標値を移動先の座標値に書き換える。
【0064】
(iv)S1304
描画部1013は、移動先の座標値に箱を再描画する。また、移動対象の箱に接続線(上位層および/あるいは下位層の箱との接続線)がある場合には、描画部1013は、当該接続線も再描画する。なお、箱および接続線の再描画は、ドラッグによって座標値が1ピクセルずれる度に行われ、ドラッグが終わった時点の最終的座標値がデータベース102に登録されるようにすることができる。
【0065】
<箱削除処理>
図14は、本実施形態による箱削除処理の詳細を説明するためのフローチャートである。
【0066】
(i)S1401
データ登録部1011は、ユーザによる箱の削除ボタン押下による箱削除指示の入力を待つ。
【0067】
(ii)S1402
データ登録部1011は、箱の削除ボタン押下による箱削除指示を受け付ける。例えば、ユーザが削除したい箱の上で所定の操作(例えば、マウスの右クリック、タッチパネルにおけるダブルクリックなど)を行うと削除ウインドウがポップアップする。そして、ポップアップした削除ウインドウから削除を指示することにより、所望の箱を画面上から削除することができる。
図15は、ポップアップされた箱およびソケットの削除ウインドウの構成例を示す図である。例えば、箱:オンライン集金901を削除する際に、箱:オンライン集金901にカーソルを合わせ、右クリックすると、削除ウインドウ1501がポップアップする。この場合、箱:オンライン集金901の削除15011、参照ソケット:出欠確認の削除15012、および事実ソケット:参加費の確認の削除15013が可能となっている。
【0068】
(iii)S1403
データ登録部1011は、データベース102から削除対象の箱の情報(箱ID、箱のタイトル、箱の座標値)を削除するとともに、画面上(マップ作成領域11012)から対象の箱と接続線(接続線がある場合)を削除するように描画部1013に指示する。
【0069】
(iv)S1404
描画部1013は、削除指示に応答して、画面上(マップ作成領域11012)から対象の箱と接続線(接続線がある場合)を削除する。
【0070】
<事実タイプのソケット作成処理>
図16は、本実施形態による事実タイプのソケット作成処理の詳細を説明するためのフローチャートである。
【0071】
(i)S1601
データ登録部1011は、ユーザのソケット作成ボタン701押下によるソケット作成の指示の入力を待つ。
【0072】
(ii)S1602
ソケット作成ボタン701が押下されると、データ登録部1011は、ソケット作成の指示入力を受け付ける。
【0073】
(iii)S1603
データ登録部1011は、データベース102(
図10B参照)に作成されるソケットの情報(ソケット情報:当該ソケットが属する箱の箱ID、割り当てられるソケットID、ソケットタイプ)を登録し、描画部1013に新しいソケットの作成(ソケットを作成する箱における行の追加)を指示する。
【0074】
(iv)S1604
描画部1013は、データ登録部1011からのソケット作成指示に応答し、対象の箱に行を追加する。また、ソケットが作成(箱に行が追加)された後、ユーザによってソケットのタイトルが入力されると、データ登録部1011は、対応するソケットの情報として、ソケットタイトルをデータベース102に登録する。
【0075】
<ソケット削除処理>
図17は、本実施形態によるソケット削除処理の詳細を説明するためのフローチャートである。
【0076】
(i)S1701
データ登録部1011は、ユーザによるソケットの削除ボタン押下によるソケット削除指示の入力を待つ。
【0077】
(ii)S1702
データ登録部1011は、ソケットの削除ボタン押下によるソケット削除指示を受け付ける。例えば、箱削除処理と同様に、
図15に示すポップアップした削除ウインドウからソケット削除を指示することにより、所望のソケットを対象の箱から削除することができる。
図15に示すように、ポップアップした削除ウインドウ1501において、参照ソケット:出欠確認の削除15012、および事実ソケット:参加費の確認の削除15013が可能となっている。
【0078】
(iii)S1703
データ登録部1011は、データベース102から削除対象のソケット情報(箱ID、ソケットID、ソケットタイトル、ソケットタイプ)を削除するとともに、画面上(マップ作成領域11012)から対象のソケットと接続線(接続線がある場合)を削除するように描画部1013に指示する。
【0079】
(iv)S1704
描画部1013は、削除指示に応答して、画面上(マップ作成領域11012)から対象のソケットと接続線(接続線がある場合)を削除する。
【0080】
<接続線作成処理:参照タイプのソケット作成処理>
図18は、本実施形態による接続線作成処理(参照タイプのソケット作成処理)の詳細を説明するためのフローチャートである。なお、以下では、上位層の箱内に接続先の下位層の箱のタイトルに相当するソケットを作成していない状態で、上位層の接続線作成ボタンをドラッグして下位層の箱との接続線を作成し、当該下位層のタイトルを有するソケット(参照タイプのソケット)を上位層の箱に自動的作成する処理について説明する。
【0081】
(i)S1801
データ登録部1011は、ユーザの接続線作成ボタン802のドラッグによる接続線作成指示の入力を待つ。
【0082】
(ii)S1802
接続線作成ボタン802がドラッグされると、データ登録部1011は、接続線作成指示入力を受け付ける。
【0083】
(iii)S1803
データ登録部1011は、ドラック元の箱ID(例えば、上位層の箱の箱ID)をプロセッサ101の内部メモリ(図示せず)に保管する。
【0084】
(iv)S1804
データ登録部1011は、当該ドラッグによる接続線による連結の矛盾の有無をチェックする。矛盾の有無は、当該ドラッグが循環参照エラー(参照先を辿っていくと最終的に自身のソケットを参照している状態)に相当するか否かで判断される。当該ステップの詳細については、
図19を参照して説明する。
【0085】
(v)S1805
データ登録部1011は、S1804で矛盾(循環参照エラー)を発見したか判断する。循環参照エラーがある場合(S1805でYesの場合)、当該接続線作成処理は終了する。つまり、接続線による箱の連結を完了させることはできない。一方、循環参照エラーがない場合(S1805でNoの場合)、処理はS1806に移行する。
【0086】
(vi)S1806
データ登録部1011は、ドラッグ元の箱とドラッグ先の箱との間の接続線の描画を描画部に指示する。
【0087】
(vii)S1807
描画部1013は、データ登録部1011からの接続線描画指示に応答し、ドラッグ元の箱にソケットを作成し(箱に行を追加)、当該ソケットとドラッグ先の箱との間に線を描画する。また、描画部1013は、追加したソケットに、ドラッグ先の箱のタイトルを記入(コピー)する。
【0088】
<S1804(矛盾をチェックする)の詳細>
図19は、
図18のS1804の詳細を説明するためのサブルーチンフローチャートである。
【0089】
(i)S1901
S1902からS1905までの処理が接続元の箱の構成要素(ソケット)の数だけ繰り返し実行される。
【0090】
(ii)S1902
データ登録部1011は、データベース102のソケット情報管理テーブル1002(
図10B参照)を確認し、チェック対象の構成要素(接続元の箱のソケット)が参照タイプであるか判断する。チェック対象の構成要素が参照タイプである場合(S1902でYesの場合)、処理はS1903に移行する。チェック対象の構成要素が事実タイプである場合(S1902でNoの場合)、当該構成要素に対する処理は終了する。事実タイプのソケットは他の箱を参照することはなく、循環参照は発生しないためである。そして、処理は次のチェック対象の構成要素の矛盾チェック処理に移行する。
【0091】
(iii)S1903
データ登録部1011は、チェック対象の構成要素が循環参照しているか、つまり、当該構成要素が属する箱を巡り巡って参照先としているか(自分自身を参照しているか)チェックする。より具体的には、データ登録部1011は、S1803で保管したドラッグ元の箱IDと一致する箱IDを参照先としているかチェックする。
【0092】
(iv)S1904
S1803で保管したドラッグ元の箱IDと一致する箱IDを参照先としている場合(S1904でYesの場合:循環参照がある場合)、処理はS1905に移行する。S1803で保管したドラッグ元の箱IDと一致する箱IDを参照先としていない場合(S1904でNoの場合:循環参照がない場合)、当該チェック対象に対する矛盾チェック処理は終了し、次のチェック対象の構成要素に対して矛盾チェック処理が行われる(処理がS1901に戻る)。
【0093】
(v)S1905
データ登録部1011は、当該ドラッグ操作は循環参照を起こすため、エラー操作であると判定する。このため、ユーザがドラッグ操作しても接続線が作成されない(接続が完成されない)。なお、出力デバイス(ディスプレイデバイス)に当該ドラッグ操作がエラーであることを表示するようにしてもよい(循環参照を起こさせるという理由を提示してもよい)。
【0094】
<ゴールから達成すべき項目を細分化していく場合の参照タイプのソケット作成について>
ゴールが初めに決まり、当該ゴールを達成すべき項目が後から明らかにされていく場合(上位層の項目から達成すべき下位層のタスクが細分化されていく場合)、あるタスク(上位層)の構成要素(ソケット)が作成されるとき、最初は全てのソケットは事実タイプとして作成される。そして、上位層にある事実タイプのソケット(構成要素)を下位層の箱に紐づける場合(上位層のソケットの名称と階層の箱の名称が同一)、上位層の箱の接続線作成ボタン802がユーザによってドラッグされ、下位層の箱の接続線連結ボタン803と結びつけられると、詳細化する(接続線でつなぐ)前の事実タイプのソケットと接続線でつないだ後の参照タイプのソケットが並列して同一の上位層の箱に存在することになる。このため、ユーザの指示により、あるいはドラッグ操作による接続線で連結(結線完了)後に自動的に、事実タイプのソケットが削除されることになる。
【0095】
また、ゴールを決めてから下位層の項目を段々と掘り下げていく場合、上位層のソケット(構成要素)は、最初は全て事実タイプで生成し、詳細(下位層のタスク項目)が判明した際に該当の事実タイプソケットを起点に「詳細化する」などのボタン(図示せず)からアクションを実行し、下位層の箱を作成するようにしてもよい。このとき接続対象のソケットは事実タイプから参照タイプに変更され、新規に用意された下位層の箱と接続線で連結(結線)されることになる。
【0096】
<接続線削除処理:ソケットの属性変更(参照タイプ→事実タイプ)>
図20は、本実施形態による接続線削除処理(参照タイプのソケット削除処理)の詳細を説明するためのフローチャートである。
【0097】
(i)S2001
データ登録部1011は、接続線削除ボタン押下による削除指示の入力を待つ。
【0098】
(ii)S2002
ユーザが削除したい接続線の出発点となっているソケット(構成要素)が含まれる箱をクリックすると、当該箱に関する削除ウインドウがポップアップする(
図15参照)。
図15では、接続線を有するソケットはソケット:出欠確認であるので、削除ウインドウ1501のソケット:出欠確認の削除15012が押下されると、データ登録部1011は、当該削除指示入力を受け付ける。
【0099】
(iii)S2003
データ登録部1011は、データベース102に登録されている接続線の情報を削除し、描画部1013に対して、画面上に表示されている接続線の削除を指示する。
【0100】
(iv)S2004
描画部1013は、データ登録部1011による接続線削除指示に応答して、対象の接続線を削除する。接続線が削除されると、データ登録部1011は、当該接続線の出発点となっていたソケット(構成要素)の属性を、参照タイプから事実タイプに変更する(データベース102(
図10B参照)のソケットタイプ10023の情報が書き換えられる)。
【0101】
あるいは、描画部1013は、接続線削除とともに、当該接続線の出発点(参照元)となっていたソケットを削除するようにしてもよい。このとき、データ登録部1011は、当該接続線の出発点となっていたソケット(構成要素)の情報をデータベース102(
図10B参照)から削除する。
【0102】
<事実状況一覧表示処理>
図21は、事実状況一覧表示(達成状況一覧11011(
図11参照)の表示)を生成する処理を説明するためのフローチャートである。
【0103】
(i)S2101
データ取得部1012は、ソケット情報管理テーブル1002(
図10B)から事実タイプのソケット(構成要素)の情報を取得する。
【0104】
(ii)S2102
データ取得部1012は、S2101で取得した事実タイプのソケットに対応するタスクの達成状況(チェックの有無)の情報を取得する。なお、タスクを実行する前のタスク管理マップ(作成直後のタスク管理マップ)では達成状況はゼロであるため、全ソケットに関してチェックマークは無しとなる。
【0105】
(iii)S2103
データ登録部1011は、データ取得部1012による必要な情報取得の通知に応答して、データ取得部1012に対して取得したデータを描画部1013に提供する旨の指示を出し、併せて描画部1013に対してデータ取得部1012から取得した情報に基づいて事実状況一覧表示(達成状況一覧11011)を生成するように指示する。
【0106】
(iv)S2104
描画部1013は、画面上に(マップ作成領域11012のマップに重ならないように)事実状況一覧表示(達成状況一覧11011(チェックボックス付き))を描画する。
【0107】
<事実記録処理:チェックボックスの入力→達成率算出>
図22は、事実記録処理を説明するためのフローチャートである。ここで、事実記録処理は、事実状況一覧表示(達成状況一覧11011)のチェックボックスの入力と算出した達成率をマップに反映させる処理である。
【0108】
(i)S2201
データ登録部1011は、事実状況一覧表示に対するユーザによるチェックボックスの入力を待つ。
【0109】
(ii)S2202
データ登録部1011は、ユーザによるチェックボックスに対するチェック入力を受け付ける。
【0110】
(iii)S2203
データ登録部1011は、チェック入力によって更新されるタスクの達成率を算出する。なお、達成率算出処理の詳細は、
図23から
図25を参照して説明する。
【0111】
(iv)S2204
データ登録部1011は、事実状況一覧表示に対するユーザのアクション(チェックボックスのチェック入力)を、タスク管理マップ(
図11参照)における各ソケットのチェックボックスに反映し、併せて達成率を表示させるように、描画部1013に指示する。描画部1013は、当該指示に応答して、チェックボックスに対するチェック表示および対応する箱に対する達成率表示を行う。
【0112】
<達成率算出処理(S2203)の詳細>
タスクの達成率は、箱(ボックス)ごとに計算される。計算対象の箱に参照タイプの構成要素(ソケット)が含まれている場合には、参照先の箱の達成率が先に計算される。なお、達成率は、(当該箱で達成した構成要素数÷当該箱の全構成要素数)×100で求めることができる。
【0113】
(1)達成率計算における箱(ボックス)のループ処理
図23は、達成率計算の際に実行される箱(ボックス)のループ処理を説明するためのフローチャートである。
【0114】
(i)S2301
データ登録部1011は、タスク管理マップ上の全ての箱(ボックス)について達成率が計算済になるまでS2302を繰り返す。
【0115】
(ii)S2302
データ登録部1011は、対象の箱について達成率を計算する。当該ステップの詳細については、
図24および
図25を参照して説明する。
【0116】
(2)達成率計算
図24は、達成率計算(
図23のS2302)の詳細を説明するためのサブルーチンフローチャートである。
【0117】
(i)S2401
データ登録部1011は、達成率計算対象の箱に対応する、箱情報管理テーブル1001(
図10A参照)の計算フラグ記述欄(
図10Aには図示せず)に、計算フラグを立てる(計算フラグをONする)。
【0118】
なお、対象の箱に他の箱を参照している構成要素(ソケット)がある場合には、参照先の箱の達成率を計算しなければ当該対象の箱の達成率は計算できない。そのため、まずは達成率計算対象の箱に計算フラグを立て(計算フラグをON)、その箱に他の箱が参照先として関連付けられているときには、参照先の箱(下位層の箱)についての達成率計算を優先するために、次ステップ(S2402)の中で当該計算フラグをOFFにし、参照先の箱の処理を実現できるようにしている。また、参照先の箱にも他の箱を参照している構成要素がある場合には、さらに参照先の箱の達成率計算が優先される。つまり、最初に達成率計算処理が行われるのは、事実タイプのソケット(構成要素)のみ含まれる箱であり、この箱の達成率の計算が完了してから順次上位の箱(参照先を有する箱)について達成率が計算されることになる。
【0119】
(ii)S2402
データ登録部1011は、達成率計算部1014を呼び出し、計算準備確認処理を実行させる。なお、計算準備確認処理の詳細については、
図25を参照して説明する。
【0120】
(iii)S2403
データ登録部1011は、当該達成率計算対象の箱に計算フラグが立っているか箱情報管理テーブル1001を確認する。計算準備確認処理において、当該達成率計算対象の箱に参照先の箱であって達成率が見算出の箱がある場合には当該計算フラグがOFFとなるため、計算フラグがONのままか確認する処理が実行される。
【0121】
当該達成率計算対象の箱について計算フラグがONの場合(S2403でYesの場合)、処理はS2404に移行する。当該達成率計算対象の箱について計算フラグが立っていない場合、つまり、計算準備確認処理で計算フラグがOFFにされている場合(S2403でNoの場合)、処理は次の計算対象の箱(例えば、参照先の箱)に移行する。
【0122】
(iv)S2404
データ登録部1011は、達成率計算部1014に達成率計算を指示する。当該指示に応答して、達成率計算部1014は、当該達成率計算対象の箱について達成率を計算する。
【0123】
(v)S2405
データ登録部1011は、達成率計算部1014から達成率計算終了の通知を受け取ると、箱情報管理テーブル1001(
図10A参照)の計算済フラグ記述欄(
図10Aには図示せず)に、計算済フラグを立てる(計算済フラグをONする)。
【0124】
(3)計算準備確認処理
図25は、計算準備確認処理(
図24のS2402)の詳細を説明するためのサブルーチンフローチャートである。
【0125】
(i)S2501
達成率計算部1014は、達成率計算対象の箱の構成要素の中から確認対象の構成要素を選択する。そして、達成率計算部1014は、当該箱の全構成要素について、S2502からS2504までの処理を繰り返す。
【0126】
(ii)S2502
達成率計算部1014は、ソケット情報管理テーブル1002(
図10B参照)を参照して、確認対象の構成要素が参照タイプか判断する。構成要素が参照タイプである場合(S2502でYesの場合)、処理はS2503に移行する。構成要素が事実タイプである場合(S2502でNoの場合)、当該確認対象の構成要素に対する計算準備確認処理は終了し、次の構成要素に処理は移行する。
【0127】
(iii)S2503
達成率計算部1014は、確認対象の構成要素が参照する箱(参照先の箱)について達成率が計算済か判断する。参照先の箱の達成率計算が完了している場合(S2503でYesの場合)当該確認対象の構成要素に対する計算準備確認処理は終了し、次の構成要素に処理は移行する。参照先の箱の達成率計算が未完了の場合(S2503でNoの場合)、処理はS2504に移行する。
【0128】
(iv)S2504
データ登録部1011は、達成率計算部1014からの通知(達成率計算対象(呼び出し元)の箱に参照先があり、当該参照先の達成率計算が未了であることの通知)に応答して、箱情報管理テーブル1001に立てた計算フラグをOFFする。つまり、当該箱について一旦は達成率計算の対象としたが、参照先の別の箱があるため、現時点では達成率が計算できない。このため、一旦立てた計算フラグをOFFにして参照先の箱を先に達成率の計算対象とするようにしている。
【0129】
<まとめ>
(i)本実施形態によるタスク管理装置100は、コンピュータで実現することができ、所定の最終ゴールを達成するための複数のタスクをマップで視覚化して管理する。タスク管理装置100は、ユーザによる入力指示(newボタン601の押下)に応答して、最終ゴールを達成するために必要なタスクに関連する複数の箱(上位層の箱および下位層の箱)を画面上に描画する処理と、ユーザによる入力指示(接続線作成ボタン802のドラッグ入力)に応答して、複数の箱における第1の箱(上位層の箱)と、当該第1の箱に関連する第1タスクを達成するために必要な第2タスクに関連する第2の箱(下位層の箱)とを接続線で連結する際に、第1の箱が第2の箱を経由して第1の箱を循環参照しているか否か判断する処理と、第1の箱の循環参照がない場合に、第1の箱と第2の箱とを接続線で連結する処理と、を実行する。このようにすることにより、自身の箱のタスクを達成するために自身のタスクを完了する必要があるという自己矛盾が発生することを回避することができる。
【0130】
最上位層の箱は、最終ゴールを達成するための最終タスクを構成要素として含む箱として画面上に描画され、最上位層よりも下位層の箱は、最終タスクを遂行するための少なくとも1つの細分化タスクを構成要素として含む箱として画面上に描画される。例えば、上位層の箱に含まれる複数の構成要素(ソケット)の少なくとも1つ(参照元ソケット)が下位層の箱を参照している場合、当該下位層の箱には上位層の参照元ソケットを達成するための細分化された具体的タスクが含まれる。この下位層の箱に含まれる具体的タスクを完了させると、上位層の一部のタスク(構成要素)を完了させることができる。このようにすることにより、抽象的な最終ゴールの具体的な達成手段を視覚化することができ、ユーザにとってすべきタスクを明確化することができるようになる。
【0131】
タスク管理マップ上に描画される複数の箱のそれぞれは、構成要素自身単独のタスク完了で達成される事実タイプの構成要素、あるいは、他の箱を参照し、当該他の箱に含まれる全ての構成要素のタスク完了で達成される参照タイプの構成要素の少なくとも何れか一方を含んでいる。事実タイプの構成要素(タスク)は、例えば、これ以上細分化(具体化)できないか、あるいは細分化しても意味のない、それ自身が明確なタスクを示している。一方、参照タイプの構成要素(タスクは)は、例えば、当該タスクを完成させるには達成すべきタスクが複数あり、それ自身が比較的上位概念(抽象的概念)で表されるタスクを示している(タスク完成をイメージするにはより具体化された細分化タスクを達成する必要があると想定される場合)。なお、第1の箱を第2の箱に接続線で連結させる入力指示があったとき(上位層の箱に参照タイプの構成要素(ソケット)を生成するとき)、参照元の第1の箱の参照タイプの構成要素は、第2の箱(参照先の箱)の名称(箱の名称:賞品の決定)と同一のタスク名(例えば、賞品の決定)を有することになる。これにより、上位層に参照タイプの構成要素を追加する際のユーザの名称入力の手間を省くことができる。あるいは、第1の箱(上位層の箱)の事実タイプの構成要素を、第2の箱(下位層の箱)に接続線で連結される入力指示があったとき、第1の箱の事実タイプの構成要素は参照タイプの構成要素に変更される。また、参照元の箱(第1の箱)の事実タイプの構成要素の名称と参照先の箱の名称とが異なる場合には、参照先の箱の名称を参照元の構成要素に自動的に変更するか、あるいは参照元の構成要素の名称を参照先の箱の名称に自動的に変更するようにしてもよい。このようにすることにより、下位層の箱の名称あるいは上位層の箱の構成要素の名称を変更するユーザの手間は省くことができる。
【0132】
一方、箱同士をつなぐ接続線はユーザの指示(削除指示)によって削除することができる。接続線の削除指示が入力されたときには、削除対象の接続線が削除されるとともに、第1の箱(上位層の箱)に含まれる参照タイプの構成要素も削除される。あるいは、削除対象の接続線が削除されるとともに、第1の箱に含まれる参照タイプの構成要素が事実タイプの構成要素に変更されるようにしてもよい。
【0133】
(ii)タスク管理装置100は、複数の構成要素の情報を保持する記憶デバイス(データベース)102から、タスク管理マップ1101における複数の箱に含まれる事実タイプの構成要素の情報を全て取得し、当該取得した全ての事実タイプの構成要素の名称と各構成要素が示すタスク完了をユーザが入力する入力欄(チェックボックス)とを含む事実状況一覧表示(達成状況一覧11011)を画面上に描画する(
図11参照)。ユーザが該当するタスクを完了させると、対応する入力欄(チェックボックス)にチェック(タスク完了を示すマーク)を入れる。このようにすることにより、全体として、完了しているタスクおよび完了していないタスクが一目瞭然となる。また、事実状況一覧表示における入力欄への入力(チェック入力)がなされると、複数の箱における、対応する構成要素(タスク)の表示に反映される(箱の構成要素のチェックボックスにも連動してチェック入力がなされる)。これにより、ユーザは、タスク管理マップにおいて、下位層のタスクの完了状況、および上位層のタスクの完了状況を感覚的に把握することができるようになる。さらに、タスク管理装置100は、入力欄(チェックボックス)への入力があると、対応する構成要素が属する箱の達成率を計算し、当該達成率の情報をマップにおける複数の箱に反映させる。このとき、構成要素のタスク完了によって当該タスク完了の構成要素が属する箱の全ての構成要素がタスク完了となる場合、タスク完了の構成要素が属する箱の達成率は100%とされ、当該達成率100%の箱の参照元の箱の構成要素が完了済となり、参照元の箱の達成率に反映され。これにより、ユーザは、各箱のタスクの完了状況を定量的に把握することができるようになる。
【0134】
(iii)本実施形態の機能は、ソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本開示を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0135】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【0136】
さらに、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【0137】
最後に、ここで述べたプロセス及び技術は本質的に如何なる特定の装置に関連することはなく、コンポーネントの如何なる相応しい組み合わせによっても実装することができる。さらに、本実施形態では、汎用目的の多様なタイプのデバイスが使用可能である。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の技術を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよいし、異なる構成要素を適宜組み合わせてもよい。本開示は、具体例に関連して記述したが、これらは、すべての観点において限定のためではなく単に本開示の技術を説明するためである。本技術分野における当業者であれば、本開示を実施するのに相応しいハードウェア、ソフトウェア、及びファームウエアの多数の組み合わせを特定することができると考えられる。例えば、記述したソフトウェアは、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
【0138】
さらに、上述の実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
【符号の説明】
【0139】
100 タスク管理装置
101 プロセッサ
102 記憶デバイス(データベース)
103 入力デバイス
104 出力デバイス
1011 データ登録部
1012 データ取得部
1013 描画部
1014 達成率計算部