(57)【要約】【課題】ソフトウェア開発上の作業成果物から特定機能に関する作業を実施した実績のある作業者を探し出すため、作業内容と作業者を紐付けするための情報を容易に作成し、特定キーワードに関連する作業実績のある作業者情報を検索可能にするための技術を提供する。【解決手段】作業の成果物として作成・編集したファイルの変更履歴とあわせて、当該ファイルの前バージョンとの内容の差異を抽出して成果物差分情報として成果物リポジトリに格納することで、作業内容と作業者を紐付けするための情報を自動的に作成・蓄積することが可能となる。また、成果物差分情報に対してキーワード検索を実行することで、特定キーワードに関連する作業実績のある作業者情報を、従来の単純な全文検索などによる方法より高い精度で検索することが可能となる。【選択図】図１
2017084074.tif 000002
【特許請求の範囲】
【請求項１】
成果物として作成・編集したファイルの変更履歴を管理するための成果物情報と、成果物作成過程で摘出された不良情報を示す作業者品質管理情報を格納する記憶装置と、
前記記憶装置に、前記成果物情報と前記作業者品質管理情報とを登録するプロセッサと、を備え、
前記プロセッサは、前記成果物を作成・編集した作業者がシステムログイン時に入力した作業者識別情報を、前記成果物情報と前記作業者品質管理情報に関連付けて前記記憶装置に登録し、
前記成果物情報は、少なくとも、前記成果物の種類を示す情報と、前記成果物のバージョンと、前記成果物の格納先パス情報と、前記成果物がバージョン１以外の場合には以前のバージョンの成果物との内容の差分を示す成果物差分情報と、前記作業者識別情報と、を含み、
前記作業者品質管理情報は、少なくとも、前記作業者識別情報と、前記成果物の不良摘出工程を示す情報と、前記成果物の不良要因を示す情報と、を含む、データベース装置。
【請求項２】
請求項１に記載のデータベース装置を有する作業者情報検索システムであって、
前記プロセッサは、入力される検索開始の指示に応答して、検索キーワード及び検索対象の成果物の種類の情報を受け付けると共に、作業者検索プログラムをメモリから読み込んで前記成果物情報に対してキーワード検索を実行し、前記検索キーワードを含む前記成果物の作成或いは編集を行った作業者一覧の情報を作成し、出力する、作業者情報検索システム。
【請求項３】
請求項２において、
前記プロセッサは、前記成果物情報に対してキーワード検索を実行して得られた各データ行について前記検索キーワードに関連する作業実績が多い順に前記作業者一覧の情報を作成する、作業者情報検索システム。
【請求項４】
請求項２において、
前記プロセッサは、さらに、入力される検索開始の指示に応答して、検索対象の作業者の情報及び検索期間の情報を受け付けると共に、作業者詳細検索プログラムを前記メモリから読み込んで前記成果物情報及び前記作業者品質管理情報に対して作業者検索を実行し、前記検索対象の作業者が前記検索期間に作成及び／又は編集した前記成果物の情報、及び不良摘出に関する情報を出力する、作業者情報検索システム。
【請求項５】
作業者情報検索システムのプロセッサが、作業者が作成・編集した成果物の情報をデータベースに登録し、当該データベースに対する検索を実行する作業者情報検索方法であって、
前記データベースは、成果物として作成・編集したファイルの変更履歴を管理するための成果物情報と、成果物作成過程で摘出された不良情報を示す作業者品質管理情報を格納し、
前記プロセッサが、前記成果物を作成・編集した作業者がシステムログイン時に入力した作業者識別情報を、前記成果物情報と前記作業者品質管理情報に関連付けて前記データベースに登録することを含み、
前記成果物情報は、少なくとも、前記成果物の種類を示す情報と、前記成果物のバージョンと、前記成果物の格納先パス情報と、前記成果物がバージョン１以外の場合には以前のバージョンの成果物との内容の差分を示す成果物差分情報と、前記作業者識別情報と、を含み、
前記作業者品質管理情報は、少なくとも、前記作業者識別情報と、前記成果物の不良摘出工程を示す情報と、前記成果物の不良要因を示す情報と、を含む、作業者情報検索方法。
【請求項６】
請求項５において、さらに、
前記プロセッサが、入力される検索開始の指示に応答して、検索キーワード及び検索対象の成果物の種類の情報を受け付けると共に、作業者検索プログラムをメモリから読み込んで前記成果物情報に対してキーワード検索を実行し、前記検索キーワードを含む前記成果物の作成或いは編集を行った作業者一覧の情報を作成し、出力することを含む、作業者情報検索方法。
【請求項７】
請求項６において、
前記プロセッサが、前記成果物情報に対してキーワード検索を実行して得られた各データ行について前記検索キーワードに関連する作業実績が多い順に前記作業者一覧の情報を作成する、作業者情報検索方法。
【請求項８】
請求項６において、さらに、
前記プロセッサが、入力される検索開始の指示に応答して、検索対象の作業者の情報及び検索期間の情報を受け付けると共に、作業者詳細検索プログラムを前記メモリから読み込んで前記成果物情報及び前記作業者品質管理情報に対して作業者検索を実行し、前記検索対象の作業者が前記検索期間に作成及び／又は編集した前記成果物の情報、及び不良摘出に関する情報を出力することを含む、作業者情報検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース装置、作業者情報検索システム、及び作業者情報検索方法に関する。
【背景技術】
【０００２】
ソフトウェア開発においては、既存機能をエンハンス（編集・更新）することが良く行われる。この場合、既存機能を作成した作業者と当該既存機能をエンハンスする作業者とが異なる場合もある。このように作業者が異なる場合、当該機能に関する作業実績のある前作業者から情報を得ることが有効である。当該機能に関する作業実績のある作業者を知るためには、例えば、仕様書等の成果物に付随する変更履歴書や作業実施時に交わされたメールに対して当該機能に関するキーワードでの検索を実行するなどして、作業者を割り出す必要がある。
【０００３】
例えば特許文献１は、操作者（設計者）の理解度に合わせて、検索結果の上位に初心者向けの情報または、専門的な設計情報を提示して、設計文書の検索効率を向上させることができる設計作業支援装置について開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２５３３４５公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１による設計作業支援装置を用いたとしても、提示された設計情報を作成した作業者に関する情報を確実に取得できると保証することはできない。例えば、ソフトウェア開発上の作業成果物から特定機能に関する作業を実施した実績のある作業者を探し出す場合、成果物そのもの以外に、成果物に付随する変更履歴書やメールなどの、作業内容と作業者を紐付けるための外部情報が必須である。このため、作業成果物登録時に履歴書の記載漏れがあったり、担当作業者の情報を入力し忘れたりした場合には、作業者情報を確実に取得することは困難となる。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、成果物を登録する作業者が自身の情報（作業者ＩＤなどの作業者情報）の入力を意識することなく、作業内容と作業者を紐付けするための情報を容易に作成し、特定キーワードに関連する作業実績のある作業者情報を検索可能にする技術を提供するものである。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明では、データベース装置を構成する記憶装置が、成果物として作成・編集したファイルの変更履歴を管理するための成果物情報と、成果物作成過程で摘出された不良情報を示す作業者品質管理情報と、を格納している。そして、データベース装置は、当該記憶装置に、入力される指示に従って、成果物情報と作業者管理情報とを登録する。その際、成果物を作成・編集した作業者がシステムログイン時に入力した作業者識別情報が、成果物情報及び作業者品質管理情報に関連付けて記憶装置に登録される。成果物情報は、少なくとも、成果物の種類を示す情報と、成果物のバージョンと、成果物の格納先パス情報と、成果物がバージョン１以外の場合には以前のバージョンの成果物との内容の差分を示す成果物差分情報と、作業者識別情報と、を含む。また、作業者品質管理情報は、少なくとも、作業者識別情報と、成果物の不良摘出工程を示す情報と、成果物の不良要因を示す情報と、を含む。
【０００８】
本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、本発明の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。
本明細書の記述は典型的な例示に過ぎず、本発明の特許請求の範囲又は適用例を如何なる意味に於いても限定するものではないことを理解する必要がある。
【発明の効果】
【０００９】
本発明によれば、作業者が成果物に付随する変更履歴書などを作成しなくても検索に必要な情報の蓄積が可能となり、作業者の手間を軽減することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態による作業者情報検索システム１の全体機能構成を示す機能ブロック図である。
【図２】本実施形態による作業者情報検索システム１のハードウェア構成を示す図である。
【図３】登録対象の仕様書を成果物リポジトリに登録するまでの成果物／作業者品質管理情報登録部の動作の概要を説明するための概略図である。
【図４】成果物リポジトリのデータ構造例を示す図である。
【図５】本実施形態において成果物／作業者品質管理情報登録部２０４１が実行する成果物登録処理を説明するためのフローチャートである。
【図６】登録対象の摘出不良管理票を作業者品質管理情報に登録するまでの成果物／作業者品質管理情報登録部１０２の動作概要を説明するための図である。
【図７】本実施形態による作業者品質管理情報７００のテーブル構造例を示す図である。
【図８】検索操作端末１０７の画面に表示される作業者検索画面８００の構成例を示す図である。
【図９】作業者検索結果表示画面９００の構成例を示す図である。
【図１０】本実施形態において作業者検索部２０４２が実行する作業者検索処理を説明するためのフローチャートである。
【図１１】検索操作端末１０７の画面に表示される作業者詳細検索画面１１００の構成例を示す図である。
【図１２】作業者詳細検索結果表示画面１２００の構成例を示す図である。
【図１３】本実施形態において作業者詳細検索部２０４３が実行する作業者詳細検索処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
本発明は、ソフトウェア開発上の作業成果物情報を用いて、検索対象キーワードに関連する開発実績およびノウハウがある作業者を検索するシステムに関する。
【００１２】
以下、添付図面を参照して本発明の実施形態について説明する。添付図面では、機能的に同じ要素は同じ番号で表示される場合もある。なお、添付図面は本発明の原理に則った具体的な実施形態と実装例を示しているが、これらは本発明の理解のためのものであり、決して本発明を限定的に解釈するために用いられるものではない。
【００１３】
本実施形態では、当業者が本発明を実施するのに十分詳細にその説明がなされているが、他の実装・形態も可能で、本発明の技術的思想の範囲と精神を逸脱することなく構成・構造の変更や多様な要素の置き換えが可能であることを理解する必要がある。従って、以降の記述をこれに限定して解釈してはならない。
【００１４】
更に、本発明の実施形態は、後述されるように、汎用コンピュータ上で稼動するソフトウェアで実装しても良いし専用ハードウェア又はソフトウェアとハードウェアの組み合わせで実装しても良い。
【００１５】
なお、以後の説明では「テーブル」形式によって本発明の各情報について説明するが、これら情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、ＤＢ、キュー等のデータ構造やそれ以外で表現されていても良い。そのため、データ構造に依存しないことを示すために「テーブル」、「リスト」、「ＤＢ」、「キュー」等について単に「情報」と呼ぶことがある。
【００１６】
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ＩＤ」という表現を用いることが可能であり、これらについてはお互いに置換が可能である。
【００１７】
以下では、プログラムとしての各処理部（例えば、作業者検索部及び作業者詳細検索部）を主語（動作主体）として本発明の実施形態における各処理について説明を行うが、プログラムはプロセッサによって実行されることで定められた処理をメモリ及び通信ポート（通信制御装置）を用いながら行うため、プロセッサ（ＣＰＵ）を主語とした説明としてもよい。また、プログラムを主語として開示された処理は他の計算機、情報処理装置が行う処理としてもよい。プログラムの一部または全ては専用ハードウェアで実現してもよく、また、モジュール化されていても良い。
【００１８】
＜作業者情報検索システムの全体機能構成＞
図１は、本発明の実施形態による作業者情報検索システム１の全体機能構成を示す機能ブロック図である。
【００１９】
図１に示されるように、作業者情報検索システム１は、作業者情報検索装置１００と、検索操作端末１０７と、成果物登録操作端末１０８と、を有している。本実施形態では、検索操作端末１０７及び成果物登録操作端末１０８を設けているが、両者を１つの端末として提供しても良い。また、これらの端末の機能を作業者情報検索装置１００に含めるようにしても良い。
【００２０】
作業者情報検索装置１００は、作業者情報検索部１０１と、成果物／作業者品質管理情報登録部１０２と、成果物リポジトリ１１３と、作業者品質管理情報１１４と、を有する。
【００２１】
登録対象成果物１０９としては、仕様書１１０とソースファイル１１１が含まれるが、これら以外の種類の成果物を登録対象としても良い。なお、摘出不良管理票１１２は成果物という位置づけにはない。
【００２２】
ユーザ（例えば、作業者）が成果物登録操作端末１０８を用いて作業者情報検索システム１にログインすると、当該ユーザ（作業者）は、自ら作成或いは編集・更新した成果物を成果物リポジトリ１１３や作業者品質管理情報１１４に登録することができるようになる。作業者情報検索システム１にログインする際には、ユーザは例えば自身のユーザＩＤ（作業者ＩＤ）及びパスワードを入力することになり、入力された作業者ＩＤは作業者情報検索システム１内に設けられた図示しないメモリ（例えば、作業者情報検索装置１００内のメモリ（例えば、図２のメモリ２０４））内に格納される。例えば、作業者が仕様書を作成した場合、成果物登録操作端末１０８から作成した仕様書１１０の登録を指示する。作業者情報検索装置１００は、成果物登録操作端末１０８から成果物たる仕様書１１０の登録の指示を受信すると、成果物／作業者品質管理情報登録部１０２を用いて、対象の仕様書１１０を成果物リポジトリに１１３に格納（登録）する（成果物の登録１１６）。登録対象がソースファイル１１１の場合にも成果物リポジトリ１１３に登録される。一方、摘出不良管理票１１２に記載された情報を登録する場合には、成果物／作業者品質管理情報登録部１０２は、作業者品質管理情報１１４に格納（登録）する（作業者品質管理情報の登録１１７）。また、仕様書１１０及びソースファイル１１１が更新された場合には、成果物全体が登録されるのではなく、前バージョンの成果物と更新された成果物との差分のみが成果物リポジトリ１１３に登録される（成果物差分情報の登録１１５）。
【００２３】
＜作業者情報検索システムのハードウェア構成＞
図２は、本実施形態による作業者情報検索システム１のハードウェア構成を示す図である。
図１に示されるのと同様に、作業者情報検索システム１は、作業者情報検索装置１００と、検索操作端末１０７と、成果物登録操作端末１０８と、を有する。
【００２４】
作業者情報検索装置１００は、例えば一般的なコンピュータで構成され、一例として、プロセッサ（例えば、ＣＰＵ）２０１と、入力デバイス２０２と、出力デバイス２０３と、メモリ２０４と、記憶装置２０５と、通信装置２０６と、を有している。
【００２５】
メモリ２０４は、各種プログラム（成果物／作業者品質管理情報登録部２０４１、作業者検索部２０４２、及び作業者詳細検索部２０４３）や各種データを格納する。
【００２６】
プロセッサ２０１は、メモリから各種プログラム（成果物／作業者品質管理情報登録部２０４１、作業者検索部２０４２、及び作業者詳細検索部２０４３）を適宜読み込んで実行し、実行結果を例えば出力デバイス２０３に出力したり、記憶装置２０５に格納したりする。
【００２７】
入力デバイス２０２は、例えば、キーボード、マウス、タッチパネル、ＵＳＢメモリやメモリカード等の携帯型メモリからデータを読み取る読取装置等が該当する。ユーザ（作業者）は、検索操作端末１０７や成果物登録操作端末１０８を用いなくても、作業者情報検索装置１００の入力デバイス２０２を用いて成果物を登録したり、各検索を実行したりすることができるようにしても良い。
出力デバイス２０３は、例えば、ディスプレイやプリンタ等が該当する。
【００２８】
記憶装置２０５は、例えば、ＨＤＤ（ハードディスクドライブ）等が該当し、成果物リポジトリ１１３として機能する領域と、作業者品質管理情報１１４を格納する領域を有する。成果物を登録するための記憶装置（成果物リポジトリ１１３）と、作業者品質管理情報１１４を格納する記憶装置を別個に用意しても良い。
【００２９】
通信装置２０６は、例えば、遠隔的に少なくとも１つずつ設けられた検索操作端末１０７及び成果物登録操作端末１０８と、例えばネットワークを介して通信し、指示、情報やデータを受信（取得）したり、送信（提供）したりする。
【００３０】
なお、作業者情報検索装置１００は、検索機能を取り除くことにより、少なくともプロセッサ２０１及び記憶装置２０５で構成されるデータベース装置と捉えることも可能である。
【００３１】
＜成果物／作業者品質管理情報登録部の動作概要：成果物登録の場合＞
図３は、登録対象の仕様書を成果物リポジトリに登録するまでの成果物／作業者品質管理情報登録部の動作の概要を声明するための概略図である。ここでは、仕様書を例に取り上げているが、ソースファイルの場合も同様である。
【００３２】
成果物／作業者品質管理情報登録部１０２は、例えば成果物登録操作端末１０８から入力された登録対象仕様書を受け取り、成果物リポジトリ１１３に登録対象仕様書を登録する（成果物の登録１１６）。当該仕様書は、ここではバージョン１としているため、そのまま（全ての内容が）成果物リポジトリ１１３に登録される。
【００３３】
バージョン１の仕様書が更新され、当該更新される仕様書がバージョン２として登録される場合、成果物／作業者品質管理情報登録部１０２は、入力された登録対象仕様書３０１と、成果物リポジトリ内の登録対象仕様書前バージョン３０２の内容を比較し、成果物差分情報３０４を抽出する。成果物／作業者品質管理情報登録部１０２は、成果物リポジトリ１１３に成果物差分情報３０４を登録する（成果物差分情報の登録１１５）。
【００３４】
＜成果物リポジトリのデータ構造例＞
図４は、成果物リポジトリのデータ構造例を示す図である。ここではテーブル形式でデータ構造が示されているが、他の形式であっても良い。
【００３５】
成果物／作業者品質管理情報登録部１０２は、図４に示す構造に従い、登録対象仕様書３０１および成果物差分情報３０４を成果物リポジトリ１１３に登録する。
【００３６】
図４において、成果物リポジトリのテーブル４００は、成果物登録ＩＤ４０１と、成果物名４０２と、成果物バージョン４０３と、成果物格納先４０４と、差分内容４０５と、差分箇所名４０６と、差分量４０７と、登録日時４０８と、作業者ＩＤ４０９と、を構成項目として含んでいる。
【００３７】
成果物登録ＩＤ４０１は、検索時に主キーとなり、成果物を一意に識別・特定するための情報である。成果物登録ＩＤは、成果物を登録する時に順次付与される。
成果物名４０２は、例えば、成果物の種類の情報を含み、成果物のファイル名を示す情報である。
成果物バージョン４０３は、対象の成果物がオリジナルか更新版（世代を含む）かを示す情報である。
成果物格納先４０４は、対象の成果物が成果物リポジトリのどこに格納されているかを示す情報（格納先パス）である。
【００３８】
差分内容４０５は、仕様書やソースファイルの前バージョンとの差分内容を示す情報である。バージョン１の場合、例えば、仕様書やソースファイルの全文が格納される。バージョン２以降の場合、前バージョンからの差分内容を示すテキスト情報のみが格納される。なお、前バージョンからの差分でなくても良く、例えば常にバージョン１からの差分を格納するようにしても良い。また、例えば、ユーザ（作業者）が何回目かに更新した仕様書やソースファイルをベースにしたい（重要）と考える場合には、その更新仕様書／ソースファイル（例えば、成果物登録ＩＤにベースとなることを示す情報を付すようにしても良い）からの差分を登録するようにしても良い。差分箇所名４０６は、差分箇所を特定するための情報が格納される。仕様書の場合、節タイトルが記入され、ソースファイルの場合にはクラスやメソッド（特定の機能に対応するコード群（例えば、サブルーチン））が記入される。差分量４０７は、前バージョンからの変更量をデータ量や文字数で示す情報である。追加の場合には追加された文字数や情報量、変更の場合には変更前の文字列や情報と変更後の文字列や情報、削除の場合には削除された文字数や文字列、情報等が格納される。差分内容４０５、差分箇所名４０６、及び差分量４０７をまとめて成果物差分情報と呼びことが可能である。
登録日時４０８は、対象の成果物を登録した日付と時間を示す情報である。
【００３９】
作業者ＩＤ４０９の欄には、本実施形態では、対象の成果物を作成した作業者が登録作業をすることを前提とし、当該作業者がログイン時に入力した作業者ＩＤが自動的に挿入される。
【００４０】
＜成果物登録処理の詳細＞
次に、成果物／作業者品質管理情報登録部２０４１が仕様書やソースファイルを登録する際の動作について図５を用いて説明する。図５は、本実施形態において成果物／作業者品質管理情報登録部２０４１が実行する成果物登録処理を説明するためのフローチャートである。以下では、プログラムとしての成果物／作業者品質管理情報登録部２０４１を主語として説明するが、プロセッサ２０１を主語としても良い。また、ここでは、更新した成果物の登録処理についてのみ説明する。新たに作成された成果物（バージョン１の成果物）は、差分箇所は抽出されずに、そのまま成果物リポジトリ１１３に登録されるのみである。
【００４１】
（i）ステップ５０１
作業者が更新した成果物の登録を成果物登録操作端末１０８から指示した場合、成果物／作業者品質管理情報登録部２０４１は当該指示を成果物登録操作端末１０８から受信する。
【００４２】
（ii）ステップ５０２
成果物／作業者品質管理情報登録部２０４１は、まずは当該登録対象成果物（前バージョンの成果物を更新して生成された成果物）を成果物リポジトリ１１３に登録する。ただし、ステップ５０２の処理を実行せずに、ステップ５０３の処理に移行しても良い。
【００４３】
（iii）ステップ５０３
成果物／作業者品質管理情報登録部２０４１は、登録対象成果物の前バージョンを成果物リポジトリから取得する。
【００４４】
（iv）ステップ５０４
成果物／作業者品質管理情報登録部２０４１は、登録対象成果物と前バージョンの成果物との差分を抽出し、差分内容と差分量を算出する。
【００４５】
（v）ステップ５０５
成果物／作業者品質管理情報登録部２０４１は、登録対象成果物の種類を判定する。登録対象成果物が仕様書の場合、処理はステップ５０６に移行する。登録対象成果物がソースファイルの場合、処理はステップ５０８に移行する。
【００４６】
（vi）ステップ５０６
成果物／作業者品質管理情報登録部２０４１は、登録対象成果物と前バージョンの仕様書との間の差分箇所の節タイトルを抽出する。
【００４７】
（vii）ステップ５０７
成果物／作業者品質管理情報登録部２０４１は、ステップ５０６で抽出した節タイトルと共に、ステップ５０４で得られた成果物差分情報を成果物リポジトリ１１３に登録する。
【００４８】
（viii）ステップ５０８
成果物／作業者品質管理情報登録部２０４１は、登録対象成果物と前バージョンのソースファイルとの間の差分箇所のクラス名・メソッド名を抽出する。
【００４９】
（ix）ステップ５０９
成果物／作業者品質管理情報登録部２０４１は、ステップ５０８で抽出したクラス・メソッド名と共に、ステップ５０４で得られた成果物差分情報を成果物リポジトリ１１３に登録する。
【００５０】
＜成果物／作業者品質管理情報登録部の動作概要：摘出不良管理情報登録の場合＞
図６は、登録対象の摘出不良管理票を作業者品質管理情報に登録するまでの成果物／作業者品質管理情報登録部１０２の動作概要を説明するための図である。
【００５１】
成果物／作業者品質管理情報登録部１０２は、ユーザによって入力された摘出不良管理票１１２を受け取り、成果物リポジトリ１１３に作業者品質管理情報１１４を登録する（作業者品質管理情報の登録１１７）。なお、作業者ＩＤについてはこの段階でユーザが意識して入力しなくてもログインの段階で入力するので、自動的に入力されるようになっている。
【００５２】
＜作業者品質管理情報のデータ構造例＞
図７は、本実施形態による作業者品質管理情報７００のテーブル構造例を示す図である。ここではテーブル形式でデータ構造が示されているが、他の形式であっても良い。
【００５３】
成果物／作業者品質管理情報登録部１０２は、図７に示す構造に従い、摘出不良管理票１１２によって入力されたデータを作業者品質管理情報７００（図１の１１４に対応）として登録する。
【００５４】
図７において、作業者品質管理情報７００は、主キーとなり、品質管理情報を一意に識別・特定するための品質管理情報登録ＩＤ７０１と、作業者ＩＤ４０９と、登録日時７０２と、不良摘出工程７０３と、不良要因７０４と、を構成項目として含んでいる。
【００５５】
品質管理情報登録ＩＤ７０１は、登録順にシリアルに付与される情報である。
作業者ＩＤ４０９は、成果物の登録と同様に、作業者がログイン時に入力したＩＤが自動的に入力される。
登録日時７０２は、作業者品質管理情報を登録する日時が入力される。
不良摘出工程７０３及び不良要因７０４は、摘出不良管理票１１２の内容に応じて入力される情報である。
【００５６】
＜作業者検索画面の構成例＞
図８は、検索操作端末１０７の画面に表示される作業者検索画面８００の構成例を示す図である。
【００５７】
図８において、検索キーワード入力欄８０１は、検索対象となるキーワードの文字列を指定するための領域である。
検索対象成果物選択欄８０２は、検索対象とする成果物の種類を指定するための領域であり、例えば、ラジオボタンやチェックボックスで構成される。
検索開始ボタン８０３は、作業者検索の開始を指示するボタンである。
作業者検索部１０３は、検索開始ボタン８０３での開始指示に従い作業者検索を開始し、作業者検索結果を表示する。
【００５８】
＜作業者検索結果表示画面の構成例＞
図９は、作業者検索結果表示画面９００の構成例を示す図である。
【００５９】
作業者検索結果画面９００は、例えば、検索対象としたキーワードの文字列を表示するキーワード欄９０１と、検索対象とした成果物の種類を表示する検索対象欄９０２と、作業者検索結果の一覧を表示する作業者検索結果一覧表９０３と、によって構成される。
【００６０】
作業者検索結果一覧表９０３は、適合順位９０４と、作業者ＩＤ９０５と、キーワードに該当した該当仕様書名９０６と、節タイトル９０７と、登録日時９０８と、を表示するための領域を持つ。
【００６１】
適合順位９０４は、検索キーワード欄９０１に記載された検索キーワードに関連する作業実績が多い順番に、作業者ＩＤ９０５ごとに割り振る連番の値である。作業者検索結果一覧９０３は、適合順位９０４の昇順で表示される。
【００６２】
また、検索対象成果物がソースファイルの場合は、仕様書名９０６の代わりにソースファイル名、節タイトル９０７の代わりにクラス・メソッド名が表示される。
【００６３】
＜作業者検索処理の詳細＞
作業者検索部２０４２が作業者検索処理を実行する際の動作について図１０を用いて説明する。図１０は、本実施形態において作業者検索部２０４２が実行する作業者検索処理を説明するためのフローチャートである。以下では、プログラムとしての作業者検索部２０４２を主語として説明するが、プロセッサ２０１を主語としても良い。
【００６４】
（i）ステップ１００１
ユーザ（検索者）が検索対象キーワードと検索対象成果物の種類を入力すると、作業者検索部２０４２は、入力された情報を受け付ける。
【００６５】
（ii）ステップ１００２
作業者検索部２０４２は、検索実行ユーザが指定したキーワードおよび成果物の種類を対象として、成果物リポジトリ１１３に対して、成果物差分情報に当該検索対象キーワードを含むデータ行の検索を実行する。この検索の実行によって、該当する少なくとも１つのデータ行が得られる。
【００６６】
（iii）ステップ１００３
作業者検索部２０４２は、ステップ１００２で得られた検索結果に対して、ステップ１００４及び１００５の処理を繰り返す。
【００６７】
（iv）ステップ１００４
作業者検索部２０４２は、ステップ１００２で該当したデータ行毎に、作業者ＩＤ９０５の適合度に１を加算する。適合度は、高いほど作業実績の多い作業者であって、該当する作業についての情報を聞きに行くのに適すると考えられる作業者を示す情報である、
【００６８】
（v）ステップ１００５
作業者検索部２０４２は、該当成果物データ（例えば仕様書の場合、仕様書名９０６及び節タイトル９０７）の登録を実行する。
【００６９】
（vi）ステップ１００６
作業者検索部２０４２は、ステップ１００５までに得られた、適合度付きの検索結果を、作業者ＩＤ９０５を適合度の高い順にソートする。
【００７０】
（vii）ステップ１００７
作業者検索部２０４２は、作業者ＩＤ毎に該当成果物データの一覧表示を実行する。
【００７１】
作業者検索部１０３は、適合度が高い作業者ほど、検索キーワード８０１に関連する作業実績が多い作業者であると判定する。また、該当成果物データはステップ１００２の各データ行から、作業者検索結果一覧９０３に表示するための仕様書名９０６と、節タイトル９０７と、登録日時９０８を取得したものである。仕様書名９０６は成果物名４０２、節タイトル９０７は差分箇所名４０６、登録日時９０８は登録日時４０８から取得する。
【００７２】
＜作業者詳細検索画面の構成例＞
図１１は、検索操作端末１０７の画面に表示される作業者詳細検索画面１１００の構成例を示す図である。
【００７３】
作業者詳細検索画面１１００は、例えば、詳細検索対象となる作業者ＩＤを入力するための詳細検索対象作業者欄１１０１と、詳細検索対象とする期間を指定するための欄である詳細検索期間欄１１０２と、作業者詳細検索の開始を指示するための詳細検索開始ボタン１１０３と、によって構成される。
【００７４】
作業者検索部１０３は、詳細検索開始ボタン１１０３での開始指示に従い作業者詳細検索を開始し、作業者詳細検索結果を表示する。なお、詳細検索対象作業者１１０１および詳細検索期間１１０２を入力する代わりに、作業者検索結果９００の作業者検索結果一覧９０３に表示されたデータ行を指定することで、指定したデータ行の作業者ＩＤ９０５および登録日時９０８を含む一定期間（例えば、登録日時９０８の前後６ヶ月間）を対象とした作業者詳細検索を実行可能とする。これにより、図９に示される作業者検索結果９００に基づいて簡単に作業者の詳細情報を検索することが可能となる。
【００７５】
＜作業者詳細検索結果表示画面の構成例＞
図１２は、作業者詳細検索結果表示画面１２００の構成例を示す図である。
作業者詳細検索結果表示画面１２００は、例えば、検索者によって入力された作業者の情報（ＩＤや氏名）を示す詳細検索対象作業者欄１２０１と、指定された検索対象の期間を示す詳細検索期間欄１２０２と、仕様書作業実績一覧表１２０３と、ソース作業実績一覧表１２０６と、品質統計一覧表１２０９と、によって構成される。
【００７６】
仕様書作業実績一覧表１２０３は、作業対象仕様書名１２０４と、作業量実績１２０５を表示するための領域を有する。作業量実績１２０５には、詳細検索対象作業者１２０１が詳細検索期間１２０２に登録した仕様書に対する作業量の、作業対象仕様書名１２０４ごとの合計値が算出され、表示される。
【００７７】
ソース作業実績一覧表１２０６は、作業対象ソースファイル名１２０７と、作業量実績１２０８を表示するための領域を有する。作業量実績１２０８には、詳細検索対象作業者１２０１が詳細検索期間１２０２に登録したソースファイルに対する作業量の、作業対象ソースファイル名１２０７ごとの合計値が算出され、表示される。
【００７８】
品質統計一覧表１２０９は、品質統計項目１２１０と、統計値１２１１を表示するための領域を有する。統計値１２１１には、詳細検索対象作業者１２０１が詳細検索期間１２０２に登録した作業者品質管理情報から、品質統計項目１２１０ごとに算出した値が表示される。このように、作業期間内の不良の件数を分析した結果を提示することにより、当該作業について該当する作業者はどの程度のクオリティで作業を進めたかを示すことができるようになる。例えば、机上デバッグでの摘出不良が占める割合が多い場合、当該作業者は事前に不良を修正した件数が多いことになるため、当該作業者はクオリティが高いことが分かる。
【００７９】
＜作業者詳細検索処理の詳細＞
作業者詳細検索部２０４３が作業者詳細検索処理を実行する際の動作について図１３を用いて説明する。図１３は、本実施形態において作業者詳細検索部２０４３が実行する作業者検索処理を説明するためのフローチャートである。以下では、プログラムとしての作業者詳細検索部２０４３を主語として説明するが、プロセッサ２０１を主語としても良い。
【００８０】
（i）ステップ１３０１及び１３０２
作業者詳細検索部２０４３は、ユーザ（検索者）が検索操作端末１０７を用いて入力（指定）した、作業者詳細検索対象の作業者情報と検索期間の情報を受け取る。
【００８１】
（ii）ステップ１３０３
作業者詳細検索部２０４３は、検索操作端末１０７から受け取った、指定された作業者及び作業期間を対象として、成果物リポジトリ１１３に対して検索対象作業者が検索対象期間内に登録したデータ行の検索を実行する。
【００８２】
（iii）ステップ１３０４
作業者詳細検索部２０４３は、ステップ１３０３で得られた検索結果に含まれる各データ行についてステップ１３０５の処理を繰り返す。
【００８３】
（iv）ステップ１３０５
作業者詳細検索部２０４３は、検索結果で得られた各データ行について、仕様書またはソースファイル毎に差分量を加算する。
【００８４】
（v）ステップ１３０６
作業者詳細検索部２０４３は、仕様書またはソースファイルごとに算出した差分量を作業量実績１２０５および作業量実績１２０８として表示する。
【００８５】
（vi）ステップ１３０７
作業者詳細検索部２０４３は、検索実行ユーザが指定した作業者及び作業期間を対象として、作業者品質管理情報１１４に対して、検索対象作業者が検索対象期間内に登録したデータ行の検索を実行する。
【００８６】
（vii）ステップ１３０８
作業者詳細検索部２０４３は、ステップ１３０７で得られた検索結果の各データ行に対して、ステップ１３０９及び１３１０の処理を繰り返す。
【００８７】
（viii）ステップ１３０９
作業者詳細検索部２０４３は、ステップ１３０７の検索結果の各データ行について、不良要因ごとに件数を加算する。
【００８８】
（ix）ステップ１３１０
作業者詳細検索部２０４３は、ステップ１３０７の検索結果の各データ行について、不良摘出工程ごとに件数を加算する。
【００８９】
（x）ステップ１３１１
作業者詳細検索部２０４３は、不良要因・不良摘出工程件数から品質統計項目１２１０ごとに統計値１２１１を計算する。例えば、品質統計項目が「机上デバッグでの摘出不良が占める割合」である場合、作業者品質管理情報から詳細検索対象作業者１２０１が詳細検索期間１２０２に登録した全データ行を取得し、「摘出工程が机上デバッグであるデータ行÷全データ行×100」のパーセント値を算出し、統計値１２１１として表示する。
【００９０】
（xi）ステップ１３１２
作業者詳細検索部２０４３は、例えば表示装置としての出力デバイス２０３の画面上に品質統計一覧表１２０９を表示する。
【００９１】
＜実施形態のまとめ＞
（i）本実施形態では、成果物として作成・編集したファイルの変更履歴を管理するための成果物情報と、成果物作成過程で摘出された不良情報を示す作業者品質管理情報を格納する記憶装置をデータベースとして設けている。そして、このデータベースに情報を格納する際には、成果物を作成・編集した作業者がシステムログイン時に入力した作業者ＩＤ（作業者識別情報）が、成果物情報及び作業者品質管理情報に関連付けられて記憶装置に登録される。このようにすることにより、作業者ＩＤ（作業者識別情報）を登録し忘れることがなくなり、後で実行される検索処理によってコンタクトするのに適切な作業者を見つけることができるようになる。具体的には、成果物情報は、少なくとも、成果物の種類を示す情報と、成果物のバージョンと、成果物の格納先パス情報と、成果物がバージョン１以外の場合には以前のバージョンの成果物との内容の差分を示す成果物差分情報と、作業者識別情報と、を含んでいる。また、作業者品質管理情報は、少なくとも、作業者識別情報と、成果物の不良摘出工程を示す情報と、成果物の不良要因を示す情報と、を含んでいる。
【００９２】
本実施形態では、上述のデータベースを用いて作業者の情報を検索可能にしている。具体的に、作業者情報検索装置は、検索キーワード及び検索対象の成果物の種類の情報を検索キーとして受け付けると共に、成果物情報に対してキーワード検索を実行する。そして、作業者情報検索装置は、検索キーワードを含む成果物の作成或いは編集を行った作業者一覧の情報を作成し、出力する。このようにすることにより、検索実行ユーザが入力した検索対象キーワードに関連する作業に精通している可能性の高い作業者の情報を得ることが可能となる。また、作業者情報検索装置は、成果物情報に対してキーワード検索を実行して得られた各データ行について前記検索キーワードに関連する作業実績が多い順に前記作業者一覧の情報を作成するようにしても良い。このようにすることにより、既存の成果物を別の作業者が編集する際に、コンタクトすべき作業者を適切に選択することができるようになる。
【００９３】
作業者情報検索装置は、検索対象の作業者の情報及び検索期間の情報を受け付けると共に、成果物情報及び作業者品質管理情報に対して作業者検索を実行し、検索対象の作業者が検索期間に作成及び／又は編集した成果物の情報、及び不良摘出に関する情報を取得して出力する。このようにすることにより、特定の作業者が特定の期間にどの程度の精度でどの程度の仕事量をこなしたかを容易に知ることが可能となる。
【００９４】
なお、本実施形態では、検索処理を実行する際には、作業者が実際に編集等を行った内容に基づき判定するため、検索対象キーワードによる単純な全文検索と比較し高い精度での検索が可能となる。
【００９５】
（ii）本発明は、実施形態の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【００９６】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【００９７】
さらに、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ）が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【００９８】
最後に、ここで述べたプロセス及び技術は本質的に如何なる特定の装置に関連することはなく、コンポーネントの如何なる相応しい組み合わせによってでも実装できることを理解する必要がある。更に、汎用目的の多様なタイプのデバイスがここで記述した教授に従って使用可能である。ここで述べた方法のステップを実行するのに、専用の装置を構築するのが有益であることが判るかもしれない。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。本発明は、具体例に関連して記述したが、これらは、すべての観点に於いて限定の為ではなく説明の為である。本分野にスキルのある者には、本発明を実施するのに相応しいハードウェア、ソフトウェア、及びファームウエアの多数の組み合わせがあることが解るであろう。例えば、記述したソフトウェアは、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【００９９】
さらに、上述の実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
【符号の説明】
【０１００】
１  作業者情報検索システム
１００  作業者情報検索装置
１０１  作業者情報検索部
１０２  成果物／作業者品質管理情報登録部
１０３  作業者検索部
１０４  作業者詳細検索部
１０７  検索操作端末
１０８  成果物登録操作端末
１０９  登録対象成果物
１１０  仕様書
１１１  ソースファイル
１１２  摘出不良管理票
１１３  成果物リポジトリ
１１４  作業者品質管理情報
【図１】
2017084074.tif 000003
【図２】
2017084074.tif 000004
【図３】
2017084074.tif 000005
【図４】
2017084074.tif 000006
【図５】
2017084074.tif 000007
【図６】
2017084074.tif 000008
【図７】
2017084074.tif 000009
【図８】
2017084074.tif 000010
【図９】
2017084074.tif 000011
【図１０】
2017084074.tif 000012
【図１１】
2017084074.tif 000013
【図１２】
2017084074.tif 000014
【図１３】
2017084074.tif 000015