(57)【特許請求の範囲】
【請求項１】
システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を、記憶する作業者情報記憶手段と、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶するログ記憶手段と、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する評価手段と、を備える評価装置。
【請求項２】
前記評価手段は、ペアを構成する作業者間の関係強度を、前記複数の作業者のおのおの対応に行および列を有するマトリクスとして出力する、請求項１の評価装置。
【請求項３】
前記評価手段は、前記複数の作業者から、前記マトリクスの対角線に寄せて配置され、グループ内の作業者間の前記関係強度の総和が大きくなるようなグループを抽出し、
前記複数の作業者のおのおのをノードとし、２つの前記ノード間を前記関係強度に応じた表示の辺で結び、前記グループ内の前記ノードを互いに近傍に配置したグラフを作成して出力する、請求項２の評価装置。
【請求項４】
前記作業者情報記憶手段は、少なくとも一人の前記作業者について、時系列上、第１の前記作業属性を持つ前記期間の前後に、第２の前記作業属性をもつ前記期間が存在する前記作業表を記憶する請求項１乃至３の何れかの評価装置。
【請求項５】
前記複数の作業属性は、前記複数の作業者のおのおのが関わった、システムの開発または運用に係る複数の工程、
前記複数の作業者のおのおのが担った、システムの開発または運用に係る複数のロール、または、
前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせ、
の何れかである、請求項１乃至４の何れかの評価装置。
【請求項６】
前記複数の作業属性は、前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせであり、前記工程及びロールの、一方を第１の属性、他方を第２の属性としたときに、
前記評価手段は、前記複数の第１の属性のおのおの及び前記複数の作業者のペアのおのおのごとに、当該ペアを構成する作業者が属性として当該第１の属性を有する時に行った当該ペア内の前記インタラクションの回数から得られる関係強度を、前記ペアを構成する異なる作業者の前記第２の属性が同一である場合、異なる場合よりも高く算出する、請求項１乃至４の何れかの評価装置。
【請求項７】
前記作業ログは、前記作業者によるファイルへのアクセスログを含み、
前記評価手段は、前記作業ログから、前記ペアを構成する異なる作業者による２つの連続した同一ファイルへのアクセスを検出する度に、前記ペア間に、両アクセスの時間的近さに応じて大きくなる重みを求め、前記重みを累積して前記関係強度を求める、請求項１乃至６の何れかの評価装置。
【請求項８】
前記作業ログは、作業者間の依頼、または、応答の共働ログを含み、
前記評価手段は、前記共働ログから、前記ペアを構成する異なる作業者間の前記共働ログの個数をカウントして前記関係強度を求める、請求項１乃至７の何れかの評価装置。
【請求項９】
システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を、記憶する作業者情報記憶処理と、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶するログ記憶処理と、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する評価処理と、をコンピュータに実行させる評価プログラム。
【請求項１０】
前記コンピュータに、ペアを構成する作業者間の関係強度を、前記複数の作業者のおのおの対応に行および列を有するマトリクスとして出力する前記評価処理を実行させる、請求項９の評価プログラム。
【請求項１１】
前記コンピュータに、前記複数の作業者から、前記マトリクスの対角線に寄せて配置され、グループ内の作業者間の前記関係強度の総和が大きくなるようなグループを抽出し、前記複数の作業者のおのおのをノードとし、２つの前記ノード間を前記関係強度に応じた表示の辺で結び、前記グループ内の前記ノードを互いに近傍に配置したグラフを作成して出力する前記評価処理を実行させる、請求項１０の評価プログラム。
【請求項１２】
前記コンピュータに、少なくとも一人の前記作業者について、時系列上、第１の前記作業属性を持つ前記期間の前後に、第２の前記作業属性をもつ前記期間が存在する前記作業表を記憶する前記作業者情報記憶処理を実行させる請求項９乃至１１の何れかの評価プログラム。
【請求項１３】
前記複数の作業属性は、前記複数の作業者のおのおのが関わった、システムの開発または運用に係る複数の工程、
前記複数の作業者のおのおのが担った、システムの開発または運用に係る複数のロール、または、
前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせ、
の何れかである、請求項９乃至１２の何れかの評価プログラム。
【請求項１４】
前記複数の作業属性は、前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせであり、前記工程及びロールの、一方を第１の属性、他方を第２の属性としたときに、
前記コンピュータに、前記複数の第１の属性のおのおの及び前記複数の作業者のペアのおのおのごとに、当該ペアを構成する作業者が属性として当該第１の属性を有する時に行った当該ペア内の前記インタラクションの回数から得られる関係強度を、前記ペアを構成する異なる作業者の前記第２の属性が同一である場合、異なる場合よりも高く算出する前記評価処理を実行させる、請求項９乃至１２の何れかの評価プログラム。
【請求項１５】
前記作業ログは、前記作業者によるファイルへのアクセスログを含み、
前記コンピュータに、前記作業ログから、前記ペアを構成する異なる作業者による２つの連続した同一ファイルへのアクセスを検出する度に、前記ペア間に、両アクセスの時間的近さに応じて大きくなる重みを求め、前記重みを累積して前記関係強度を求める前記評価処理を実行させる、請求項９乃至１４の何れかの評価プログラム。
【請求項１６】
前記作業ログは、作業者間の依頼、または、応答の共働ログを含み、
前記コンピュータに、前記共働ログから、前記ペアを構成する異なる作業者間の前記共働ログの個数をカウントして前記関係強度を求める前記評価処理を実行させる、請求項９乃至１５の何れかの評価プログラム。
【請求項１７】
コンピュータが、
システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を記憶し、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶し、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する、評価方法。
【請求項１８】
コンピュータが、
ペアを構成する作業者間の関係強度を、前記複数の作業者のおのおの対応に行および列を有するマトリクスとして出力する、請求項１７の評価方法。
【請求項１９】
コンピュータが、
前記複数の作業者から、前記マトリクスの対角線に寄せて配置され、グループ内の作業者間の前記関係強度の総和が大きくなるようなグループを抽出し、前記複数の作業者のおのおのをノードとし、２つの前記ノード間を前記関係強度に応じた表示の辺で結び、前記グループ内の前記ノードを互いに近傍に配置したグラフを作成して出力する、請求項１８の評価方法。
【請求項２０】
コンピュータが、
少なくとも一人の前記作業者について、時系列上、第１の前記作業属性を持つ前記期間の前後に、第２の前記作業属性をもつ前記期間が存在する前記作業表を記憶する請求項１７乃至１９の何れかの評価方法。
【請求項２１】
前記複数の作業属性は、前記複数の作業者のおのおのが関わった、システムの開発または運用に係る複数の工程、
前記複数の作業者のおのおのが担った、システムの開発または運用に係る複数のロール、または、
前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせ、
の何れかである、請求項１７乃至２０の何れかの評価方法。
【請求項２２】
前記複数の作業属性は、前記複数の作業者のおのおのが関わったシステムの開発または運用に係る複数の工程、および、前記複数の工程のおのおのにおいて、前記複数の作業者のおのおのが担ったシステムの開発または運用に係る複数のロールの組み合わせであり、前記工程及びロールの、一方を第１の属性、他方を第２の属性としたときに、
コンピュータが、
前記複数の第１の属性のおのおの及び前記複数の作業者のペアのおのおのごとに、当該ペアを構成する作業者が属性として当該第１の属性を有する時に行った当該ペア内の前記インタラクションの回数から得られる関係強度を、前記ペアを構成する異なる作業者の前記第２の属性が同一である場合、異なる場合よりも高く算出する、請求項１７乃至２０の何れかの評価方法。
【請求項２３】
前記作業ログは、前記作業者によるファイルへのアクセスログを含み、
コンピュータが、
前記作業ログから、前記ペアを構成する異なる作業者による２つの連続した同一ファイルへのアクセスを検出する度に、前記ペア間に、両アクセスの時間的近さに応じて大きくなる重みを求め、前記重みを累積して前記関係強度を求める、請求項１７乃至２２の何れかの評価方法。
【請求項２４】
前記作業ログは、作業者間の依頼、または、応答の共働ログを含み、
コンピュータが、
前記共働ログから、前記ペアを構成する異なる作業者間の前記共働ログの個数をカウントして前記関係強度を求める、請求項１７乃至２３の何れかの評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価装置、評価方法、および、評価プログラム、特に、システムの開発や運用の組織評価の為の、評価装置、評価方法、および、評価プログラムに関する。
【背景技術】
【０００２】
ソフトウェア開発の期間が短縮するにつれ、アジャイル開発やイタレーション開発に対する期待が高まってきている。これらの開発方法は、 変化への対応を重要視することや、 顧客が開発に密接に関与することなど、 ウォーターフォール型開発では見られなかった、さまざまな新しい特徴を有している。【０００３】
アジャイル開発とウォーターフォール型開発の違いに、技術者に求められる能力が挙げられる。ウォーターフォール型開発の場合、たとえばテスト技術者はテストだけを行えばよく、コーディング担当者は仕様書の通りにコードを書けばよく、それ以外の作業に関わる必要がないことが多い。 一方、短い期間でひと通り動くソフトウェアを作り上げるには、1人でソフトウェア開発のすべての工程をこなせるスキルをもった技術者が必要である。ある程度以上のスキルをもった技術者でプロジェクトチームを構成してこそ、アジャイル開発は成り立つ。【０００４】
したがって、アジャイル開発等に於いては、チームのメンバーを束ねるプロジェクトリーダーは誰が適切であるか、ある程度以上のスキルをもった技術者を、何名位、どの工程に、どの役割で参加させるのが適切であるか、また、役割は単独の役割とするか兼務とするのかなど、人材の計画や管理方法を明らかにする必要がある。【０００５】
このためには、すでに行われたシステムの開発について、開発者のコミュニケーションに関するログを取り込み、各開発者の役割やプロジェクトリーダーのリーダーシップの程度等の開発組織評価を行うことが有効である。なお、システムの運用についても上記要請は存在する。【０００６】
特許文献１が開示する装置は、観測期間における個人間のコミュニケーションログの測定量（会合の数、合計時間、メールの数など）が所定閾値を超えている場合、当該個人間にリンクがあると判断する。当該装置は、ある個人が他の個人との間に有するリンクの数に基づいて、その個人がどの程度中心的な人物であるかを示す指標を算出して出力する。【０００７】
特許文献２は、ある組織内で発生するコミュニケーションのいかなる内容が、他の組織に於いて、どのような範囲・規模で使われているかを分析して、当該組織の価値を評価する装置を開示する。特許文献３は、様々な情報の関連付けの登録をする装置を開示する。特許文献４は、ログファイルを検索するクライアント装置を開示する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−２５７５３９号広報
【特許文献２】特開２００４−２５２９４６号広報
【特許文献３】特開２００３−１５０６４４号広報
【特許文献４】特開２００１−２２６１３号広報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
人材の計画や管理方法を明らかにする為には、工程や役割等、開発作業の属性別に、ログを分析する必要がある。作業の属性により、開発組織の人材計画や管理方法は変わることが予想されるからである。【００１０】
上述の特許文献１に開示されている技術は、その分析に於いて、工程や役割等、作業属性を考慮しない。本発明の目的は、上記課題を解決して、開発や運用作業の属性別に組織評価を行うことが出来る、評価装置、評価方法、および、評価プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の一実施の形態にかかるにかかる評価装置は、システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を、記憶する作業者情報記憶手段と、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶するログ記憶手段と、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する評価手段と、を備える。【００１２】
本発明の一実施の形態にかかるにかかる評価プログラムは、システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を、記憶する作業者情報記憶処理と、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶するログ記憶処理と、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する評価処理と、をコンピュータに実行させる。【００１３】
本発明の一実施の形態にかかるにかかる評価方法は、システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が前記作業に関する複数の作業属性の何れかを有していた期間を示す作業表を記憶し、
前記複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した前記作業者を記録した作業ログを記憶し、
前記作業ログから、前記複数の作業属性及び前記複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内の前記インタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する。
【発明の効果】
【００１４】
本発明は、作業工程や役割等、開発や運用の作業の属性別に、ログを分析して開発組織評価を行うことを可能とする。【００１５】
例えば、ウォータ−フォール型開発では、役割定義に基づく分業・縦割り体制が明確であったのに対し、アジャイル開発では、役割定義と実質的な作業分担の対応が曖昧になってきている。このため、従来の方法による管理や分析が困難になってきている。そこで、本発明は、ログを分析して作業の実態を明確化することで、開発や運用のプロジェクトの管理や分析を容易にする。
【図面の簡単な説明】
【００１６】
【図１】作業者とソフトウェアの開発・運用工程の関係を示す図である。
【図２】作業者とロールの関係を示す図である。
【図３】第１の実施の形態に係る評価システム３０の全体構成図である。
【図４】作業者情報記憶部１３に記憶される作業表４０の構成を示す図である。
【図５】ログ記憶部１２に記憶されるアクセスログ５０の構成を示す図である。
【図６】ログ記憶部１２に記憶される協働ログ６０の構成を示す図である。
【図７】評価装置１０の評価部１１の概略の動作フローチャートである。
【図８】評価部１１がアクセスログ５０を参照して関係強度を累積していく処理の動作フローチャートである。
【図９】評価部１１が協働ログ６０を参照して関係強度を累積していく処理の動作フローチャートである。
【図１０】評価部１１が関係強度のマトリクスおよびグラフを作成する処理の動作フローチャートである。
【図１１】評価部１１が作成するマトリクスを示す図である。
【図１２】評価部１１が作成するグラフを示す図である。
【図１３】第２の実施形態に於いて、評価部１１が協働ログ６０を参照して関係強度を累積していく処理の動作フローチャートである。
【図１４】第３の実施の形態に係る評価装置１０の構成図である。
【発明を実施するための形態】
【００１７】
＜第１の実施の形態＞
本発明を実施するための形態について図面を参照して詳細に説明する。
【００１８】
図１は、作業者とソフトウェアの開発・運用工程の関係を示す図である。ソフトウェアは、複数の開発工程を経て開発され、その後運用に供される。ソフトウェアは、例えば、要求分析（ＲＡ）、システム分析（ＳＡ）、アーキテクチャ設計（ＡＤ）、アプリケーション実装（ＡＩ）の各開発工程を順次経て開発され、クラウド運用管理工程（ＣＯＭ）で運用に供される。
【００１９】
ソフトウェア開発に於いては、開発したプログラムの変更や、作業のやり直しが発生することがある。すなわち、一旦或る工程を終えて次工程に進んだ開発作業が、元の工程に戻ることがある。例えば、一旦、要求分析工程、システム分析工程が完了し、アーキテクチャ設計工程にあった開発作業が、顧客の事業環境の変化などに起因して、要求分析工程、システム分析工程に戻ることがある。特に、アジャイル開発やイタレーション開発に於いては、この開発作業の戻りがしばしば発生する。
【００２０】
また、ソフトウェア開発に於いては、開発に携わる全ての作業者が、同時に、全て同じ工程に携わるとは限らない。
【００２１】
図１が示すソフトウェアの開発・運用プロジェクト例では、作業者ａが、期間Ａに於いて要求分析、期間Ｂに於いてシステム分析、期間Ｃに於いてアーキテクチャ設計に携わった後、期間Ｄに於いて要求分析に戻ったことを示している。すなわち、図１の例が示すソフトウェアの開発は、期間ＣとＤの間で、開発作業が、一旦終了した工程に戻っている。
【００２２】
作業者ａは、その後、期間Ｅに於いてシステム分析、期間Ｆに於いてアーキテクチャ設計、期間Ｇに於いてアプリケーション実装、期間Ｈに於いてクラウド運用管理に携わっている。
【００２３】
作業者ｂ１乃至ｂ５の５名は、期間ＡとＢに於いて要求分析に携わった後、期間Ｃ乃至Ｇに於いてこのプロジェクトには携わることなく、期間Ｈに於いてクラウド運用管理に携わっている。すなわち、期間Ｂに於いて、作業者ａと作業者ｂ１は異なる工程に従事している。
【００２４】
図１のプロジェクト例では、作業者ｃ１乃至ｃ１０の１０名は、期間Ｂのシステム分析からこのプロジェクトに参加し、期間Ｃに於いてアーキテクチャ設計、期間Ｄ乃至Ｇに於いてアプリケーション実装に携わって、このプロジェクトを抜けている。作業者ｄ１乃至ｄ５の５名は、期間Ａ乃至Ｇに於いて、作業者ａと同じ工程に携わり、期間Ｇの終了とともに、このプロジェクトを抜けている。
【００２５】
このように、工程と作業者の関係は、多様である。この傾向は、アジャイル開発やイタレーション開発に於いて顕著である。
【００２６】
図２は、作業者とロールの関係を示す図である。ソフトウェアの開発プロジェクトに従事する作業者は、そのプロジェクトに於いて果たすべき役割、すなわちロールを持っている。一人の作業者のロールは、工程とともに変わる場合がある。また、一人の作業者が、一つの工程で複数のロールを持っている場合がある。本実施形態では、説明を簡単にするため、一人の作業者が、ある期間で有するロールは一つとしている。
【００２７】
図２の例に於いて、作業者ａは、要求分析とシステム分析工程に於いては、サービスデザイナ（ＳＤ）のロールを有する。この作業者ａは、アーキテクチャ設計工程に於いてはサービスデザイナ、リソースプランナ（ＲＰ）とアプリケーションインプリメンタ（ＡＩ）の３つのロールを持ち、アプリケーション実装工程に於いてはリソースプランナとアプリケーションインプリメンタの２つのロールを持つ。さらに、この作業者ａは、クラウド運用管理工程に於いてはサービスアドミニストレータ（ＳＡ）とクラウドアドミニストレータ（ＣＡ）の２つのロールを持つ。
【００２８】
なお、各ロールのもつ作業者が果たすべき役割は、プロジェクトの作業標準書等で定義されている。
【００２９】
図３は、本実施の形態に係る評価システム３０の全体構成図である。評価システム３０は、評価装置１０と、評価装置１０に通信回線等を経由して接続されている開発運用支援サーバ２０を包含する。
【００３０】
評価装置１０は、論理回路、記憶装置等で構成される、評価部１１、ログ記憶部１２および作業者情報記憶部１３を備える。評価部１１は表示装置１４と接続されている。
【００３１】
評価装置１０は、プログラム制御により動作するコンピュータであってもよい。この場合、評価部１１は、コンピュータが備える処理装置が、記憶装置に格納されたプログラムを読み込んで実行することで実現してもよい。ログ記憶部１２および作業者情報記憶部１３は、コンピュータが備えるディスク装置等であってもよい。
【００３２】
開発運用支援サーバ２０は、例えば、ＣＡＳＥ（Computer-added Software Engineering）ツールを搭載したサーバコンピュータである。開発運用支援サーバ２０は、ＣＡＳＥツールを実行する支援部２１および開発に関する情報を蓄積している開発リポジトリ２２を備える。支援部２１は、開発に携わる作業者が開発作業を行う開発クライアント２３に接続されている。
【００３３】
開発リポジトリ２２は、開発対象プログラム、使用可能なプログラム部品等に加えて、開発プロセス情報、アクティビティ情報、および、作業者個人情報を記憶している。
【００３４】
開発プロセス情報は、開発プロセスを複数のアクティビティを組み合わせたフローとして定義する。アクティビティ情報は、開発プロセスを構成する各アクティビティの作業を定義する。アクティビティは、設計書登録、設計書レビュー、設計書承認、差し戻しなどである。各アクティビティは、そのアクティビティを実行する作業者のロールを属性として持つ。
【００３５】
作業者個人情報は、プロジェクトに関わる作業者のリストである。各作業者は、作業プロセスの進行に伴いロールを割り当てられる。作業者個人情報は、ある時点または工程における各作業者が持つロールを記録してもよい。なお、ここで、作業者個人情報は、プロジェクトに関わる作業者チームのリストでもよい。この場合、評価システム３０は、作業チームを一単位として扱う。
【００３６】
支援部２１は、各作業者の操作命令を開発クライアント２３から入力し、開発リポジトリ２２の情報を参照して、開発対象プログラムの作成、修正等の処理を実行する。支援部２１は、当該処理の実行過程で、評価装置１０のログ記憶部１２、作業者情報記憶部１３に格納される情報を生成する。生成された情報は、通信回線やＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）等のデータ交換用の記憶媒体を経由して、評価装置１０に入力される。
【００３７】
図４は、作業者情報記憶部１３に記憶される作業表４０の構成を示す図である。作業者情報記憶部１３は、開発対象プログラムの開発または運用の作業に従事する複数の作業者のおのおの対応に作業表４０を記憶する。
【００３８】
作業表４０は、作業者名４１、個人データ４２を包含する。作業者名４１は、作業者の名前、社員番号等の作業者を特定する識別子である。個人データ４２は、作業者の経歴、保有スキル等の作業者個人に関する情報である。
【００３９】
作業表４０は、さらに、属性４３と期間４４の対を１以上包含する。この対は、この作業表４０の作業者が、どのような属性４３をいつ持っていたかを示す情報である。期間４４は、例えば、始期と終期を含む。
【００４０】
ここで、属性４４は、例えば、作業者が参加した開発工程である。属性４４は、作業者が果たしたロールであってもよい。さらに、属性４４は、作業者が参加した開発工程と、その工程で作業者が果たしたロールの組み合わせであってもよい。図４は、属性が、工程とロールの組み合わせである場合のデータ例を示す。
【００４１】
開発運用支援サーバ２０の支援部２１、例えば、作業者の属性が変わるたびにこの対を作成する。例えば、作業者は、開発クライアント２３から開発運用支援サーバ２０にログインする際に、自分が担当する工程とロールを支援部２１に入力する。支援部２１は、入力された、工程とロールの変更を検出して、属性４３と期間４４の対を生成する。
【００４２】
図４の一行目は、作業者名４１がａである作業者（以降、作業者ａと略記する）が、ＲＡ工程（図１参照）にＳＤのロール（図２参照）で、２０１１年１月２日から２０１１年１月３０日迄、プロジェクトに参加していたことを示す。図４の２行目は、作業者ａが、ＳＡ工程にＳＤのロールで、２０１１年２月１日から２０１１年４月１５日迄、プロジェクトに参加していたことを示す。
【００４３】
図５は、ログ記憶部１２に記憶されるアクセスログ５０の構成を示す。開発運用支援サーバ２０の支援部２１は、ファイルへのアクセスを検知する都度、アクセスログ５０を生成する。アクセスログ５０は、アクセス者名５１、ファイル名５２、アクセス日時５３を包含する。クセス者名５１は、ファイルをアクセスした作業者の作業者名４１である。ファイル名５２は、アクセスされたファイルの識別子である。アクセス日時５３は、当該ファイルへのアクセスが発生した日時である。
【００４４】
図６は、ログ記憶部１２に記憶される協働ログ６０の構成を示す。開発運用支援サーバ２０の支援部２１は、作業者間の依頼および依頼に対する応答を検知する都度、協働ログ６０を生成する。
【００４５】
支援部２１は、作業者間のメールを監視して、表題などから作業者間の依頼および依頼に対する応答を検知する。支援部２１は、作業依頼・応答用のコマンド入力の検知により作業者間の依頼および依頼に対する応答を検知してもよい。
【００４６】
協働ログ６０は、送信者名６１、受信者名６２、区分６３、および、協働日時６４を含む。送信者名６１は、協働作業の依頼または応答を送った作業者の作業者名４１である。受信者名６２は、協働作業の依頼または応答を受けた作業者の作業者名４１である。
【００４７】
区分６３は、協働ログ６０が発生した契機の種別を示す。区分６３は、例えば、作業依頼、作業応答、承認依頼、承認応答を区別する情報である。区分６３は、他の付加データを包含していてもよい。協働日時６４は、作業者間で、協働作業の依頼または応答が送信または受信された日時である。
【００４８】
なお、ログ記憶部１２は、アクセスログ５０だけを記憶していても、協働ログ６０だけを記憶していても、両者を記憶していてもよい。両者を記憶している場合、ログ記憶部１２は、アクセスログ５０と協働ログ６０を別のファイルとして記憶している、または、両者の区別情報を付加して同一ファイル内に記憶している。ログ記憶部１２は、他のログを記憶していてもよい。
【００４９】
図７は、評価装置１０の評価部１１の概略の動作フローチャートである。評価部１１は、作業表４０、アクセスログ５０、および、協働ログ６０を参照して、属性ごとに、各作業者間のインタラクションの強さの指標である関係強度を算出して出力する。
【００５０】
まず、評価部１１は、作業者情報記憶部１３から全ての作業表４０を読み出して、作業者名４１の全てのペア、および、全ての属性を抽出する（S11）。次に、評価部１１は、作業者名４１のペアと属性の全ての組み合わせごとに、関係強度累積用の変数を、初期値０で作成する（S12）。
【００５１】
ついで、評価部１１は、アクセスログ５０を参照して、各変数に関係強度を累積し（S13）、さらに、協働ログ６０を参照して、各変数に関係強度を累積する（S14）。評価部１１は、S13またはS14の一方だけを実行してもよい。また、評価部１１は、ログ記憶部１２内の他のログを参照して、各変数に関係強度を累積してもよい。
【００５２】
最後に、評価部１１は、属性ごとに、各変数の関係強度を出力する（S15）。評価部１１は、関係強度を示すマトリクスまたはグラフを作成して出力してもよい。
【００５３】
図８、９、および１０は、図７のS13、S14、S15の処理の詳細を示す。
【００５４】
図８は、評価部１１がアクセスログ５０を参照して関係強度を累積していく処理の動作フローチャートである。この動作フローチャートは、図７のS13の処理の詳細を示す。
【００５５】
評価部１１は、アクセスログ５０の全てを対象に、S21乃至S24の処理を実行する。まず、評価部１１は、アクセス日時５３に基づいて、時系列順に１つのログを選択する（S21）。ここで選択されたログを、ログAとする。
【００５６】
ついで、評価部１１は、ログAの時系列上の後続ログの全てを対象に、S22乃至S24の処理を実行する。評価部１１は、アクセス日時５３に基づいて、ログAの時系列上の後続ログから、以下の３つの条件を満たす１つのログを選択する（S22）。ここで選択されたログを、ログBとする。
【００５７】
第１の条件は、ログBがログAとは別のアクセス者名５１を含むことである。すなわち、第１の条件は、ログAのアクセス者名５１とログBのアクセス者名５１の値が異なることである。
【００５８】
第２の条件は、ログAとログBの作業者の属性４３が同じであることである。評価部１１は、アクセスログ５０の作業者の属性４３を、アクセス者名５１と作業者名４１が一致する作業表４０から、アクセス日時５３を包含する期間４４を検索することにより得る。
【００５９】
第３の条件は、ログAとログBのファイル名５２が同じであることである。
【００６０】
ログBを取得できた場合（S23でY）、評価部１１は、ログAおよびログBのアクセス者名５１のペアおよび、属性４３で特定される関係強度の変数に、両アクセスログ５０のアクセス日時５３の差分に応じた値を加算する（S24）。評価部１１は、ログAのアクセス日時５３とログBのアクセス日時５３の差分が小さいほど、高い関係強度を示す値を加算する。例えば、評価部１１は、両アクセスログ５０のアクセス日時５３の差分が、所定値Tより小さければ、例えば１．５を、所定値Tより以上であれば、例えば１を加算する。
【００６１】
なお、高い関係強度を示す値は、必ずしも、大きな値である必要はない。評価部１１は、小さな値ほど、高い関係強度を示すようにしてもよい。この場合、例えば、評価部１１は、両アクセスログ５０のアクセス日時５３の差分が、所定値Tより小さければ１を、所定値T以上であれば１．５を加算する。
【００６２】
さらに、評価部１１は、所定時間以上離れて発生したアクセスの間の関係強度はゼロとしてもよい。評価部１１は、単純に、各作業者が同一ファイルにアクセスした回数をカウントし、その回数を基に、各作業者間の関係強度を求めてもよい。
【００６３】
ログBを取得できない場合（S23でN）、評価部１１は、関係強度の変数に加算しないで、S21に戻る。
【００６４】
図９は、評価部１１が協働ログ６０を参照して関係強度を累積していく処理の動作フローチャートである。この動作フローチャートは、図７のS14の処理の詳細を示す。
【００６５】
評価部１１は、協働ログ６０の全てを対象に、S31乃至S33の処理を実行する。まず、評価部１１は、１つの協働ログ６０を取得し（S31）、当該協働ログ６０についての送信者と受信者の属性４３が同一かどうかを判定する（S32）。評価部１１は、送信者の属性４３を、送信者名６１と作業者名４１が一致する作業表４０から、協働日時６４を包含する期間４４を検索することにより得る。評価部１１は、受信者の属性４３も、受信者名６２から同様に得る。
【００６６】
送信者と受信者の属性４３が同一である場合（S32でY）、評価部１１は、送信者名６１と受信者名６２のペアおよび、送信者と受信者の同一の属性４３で特定される関係強度の変数に１を加算する（S33）。  送信者と受信者の属性４３が同一でない場合（S32でN）、評価部１１は、関係強度の変数に何も加算しないで、S31に戻る。
【００６７】
図１０は、評価部１１が関係強度のマトリクスおよびグラフを作成する処理の動作フローチャートである。この動作フローチャートは、図７のS13の処理のうちマトリクスとグラフを作成する場合の詳細を示す。図１１は、評価部１１が作成するマトリクスを示す。図１２は、評価部１１が作成するグラフを示す。
【００６８】
評価部１１は、属性４３の全ての種類を対象に、S41乃至S47の処理を実行する。まず、評価部１１は、作業者対応の行および列を持つマトリクスとして、行に対応する作業者と列に対応する作業者の間の関係強度を交点に表示する（S41）。すなわち、評価部１１は、当該属性対応の各変数の関係強度を、図１１（ａ）が示すマトリクスの形で表示する。なお、評価部１１は、図１１（ａ）に於いて、関係強度を、最大値が１となるように正規化し、さらに、関係強度が０の場合、値を表示しない。
【００６９】
図１１（ａ）の１行目のデータ例に依れば、作業者ａは、作業者ｂ１との間には関係強度０．４の関係を有するが、他の作業者との間には関係が無い。ここで、二人の作業者間に関係が無いとは、当該作業者のペアに対応する関係強度累積用の変数が、初期値０のままで、図４のS12およびS13を終了したことを意味する。
【００７０】
図１１（ａ）の２行目のデータ例に依れば、作業者ｂ１は、作業者ａとの間には関係強度０．４の関係を、作業者ｂ２およびｂ３との間には関係強度１．０の関係を、作業者ｂ４およびｂ５との間には関係強度０．６の関係を、それぞれ有するが、他の作業者との間には関係が無い。
【００７１】
次に、図１０に於いて、評価部１１は作業者のクラスタ、すなわち、グループを抽出する（S42）。ここで、評価部１１は、マトリクスの行及び列の入れ替えを行いながら、作業員のクラスタを形成させる。評価部１１は、マトリクスの対角線に寄せて配置され、クラスタを構成する作業者の関係強度の和が大きくなるようにグループを抽出する。
【００７２】
評価部１１は、例えば、遺伝的アルゴリズム等を利用して、グループを構成する作業者の関係業度の総和が最大になるように、図１１（ａ）のマトリクスの行及び列を入れ替えながら、対角線に沿ってグループを抽出する。ここで、評価部１１は、ＤＳＭ（Design Structure Matrix）等で用いられる技術を用いることが出来る。図１１（ｂ）は、図１２（ａ）のマトリクスの行および列を入れ替えた後のマトリックスを示す。
【００７３】
なお、評価部１１は、図１１（ｂ）のマトリクス上で、クラスタ内の関係強度の総和に応じて、クラスタを色分けして視認性をあげてもよい。
【００７４】
次に、評価部１１は、画面バッファ上に、抽出されたグループごとのグループ領域の中心を、互いに一定以上の距離を於いて配置する（S43）。
【００７５】
評価部１１は、作業者ごとにノードを、ノード間の距離を各作業者間の関係強度の逆数に比例させて画面バッファに描画する（S44）。このとき、評価部１１は、グループ内のノードは、当該グループの領域の中心から一定の距離以内に配置する。
【００７６】
評価部１１は、関係強度が０でない作業者のノード間を変で結び（S45）、グループ内のノードを含む最小の楕円を画面バッファに描画し（S46）、画面バッファを表示装置１４に出力する（S47）。図１２は、表示装置１４に表示されたグラフを示す。
【００７７】
なお、評価部１１は、マトリックス表示またはグラフ表示の一方だけを行ってもよい。グラフ表示だけを行う場合、評価部１１は、グループの抽出をマトリクスに依存しないで行ってもよい。例えば、評価部１１は、グループを構成する作業者間の関係業度が所定値以上になるようにグループを抽出する。さらに、評価部１１は、グループの抽出・表示を行わなくてもよい。
【００７８】
本実施の形態にかかる評価装置１０は、作業工程や役割等、開発や運用の作業の属性４３別に、ログを分析して開発組織評価を行うことを可能とする。この開発組織評価は、アジャイル開発やイタレーション開発に対しても可能となる。その理由は、評価部１１が、作業表４０に基づいて属性ごとに、作業者間のインタラクションの多さ、各インタラクションの重みに基づいて、作業者間の関係強度を算出して表示するからである。
【００７９】
例えば、評価装置１０は、開発プロセスにおける作業者のロール別に、作業者間の関係強度を出力する。これにより、開発プロジェクトの管理者等は、各ロール横断的にリーダーシップのある、または、ノウハウのある作業者を把握できる。
【００８０】
また、評価装置１０は、開発プロセスにおける作業工程別に、作業者間の関係強度を出力する。これにより、開発プロジェクトの管理者等は、各作業工程横断的なキーマン（プロキシ、調停者）を把握できる。
【００８１】
また、管理者等は、作業工程またはロール別に、スキルを持つものが把握できるため、一つの開発チームに於いて、複数のスキルを持った技術者、特定のスキルを持った技術者を組み合わせて適正な人材配置が出来る。
【００８２】
さらに、評価装置１０は、関係強度をマトリクス表示（図１１）、または、グラフ表示（図１２）し、作業員のクラスタ間の関係を可視化する。このクラスタは、作業者のインストラクションを示している。これにより、開発プロジェクトの管理者等は、関係強度に基づいたグループの存在、その間の関係を把握しやすくなり、開発または運用のグループ構成の適切さの判断が可能となる。
【００８３】
すなわち、管理者等は、ノウハウの蓄積しやすいグループ構成の特定、グループの独立性の把握が出来る。さらに、管理者等は、並行開発が可能なグループ分割が出来るようになる。この結果、管理者等は、組織設計の見直しや、並列開発が可能な作業工程の見直しが出来る。
【００８４】
＜第２の実施の形態＞
本発明の第２の実施形態にかかる評価装置１０は、協働ログ６０から作業工程ごとに関係強度を累積する。そのさい、評価装置１０は、送信者と受信者のロールが同一である場合、異なる場合よりも大きな値を加算する。
【００８５】
以下、本実施の形態について図面を参照して詳細に説明する。説明は、第１の実施の形態との差分について行う。
【００８６】
本実施形態に於いて、作業表４０における属性４４は、作業者が参加した開発工程と、その工程で作業者が果たしたロールの組み合わせである。また、図７のS12に於いて、評価部１１は、作業者名４１のペアと工程の全ての組み合わせごとに、関係強度累積用の変数を、初期値０で作成する。すなわち、関係強度累積用の変数は、作業者名４１のペアと属性の全ての組み合わせごとではなく、作業者名４１のペアと工程の全ての組み合わせごとに存在する。
【００８７】
図１３は、第２の実施形態に於いて、評価部１１が協働ログ６０を参照して関係強度を累積していく処理の動作フローチャートである。図１３は、第１の実施形態に於ける図９を置換する。
【００８８】
本実施形態に於いて、評価部１１は、協働ログ６０の全てを対象に、S51乃至S55の処理を実行する。まず、評価部１１は、１つの協働ログ６０を取得し（S51）、当該協働ログ６０についての送信者と受信者の属性４３に於ける工程が同一かどうかを判定する（S52）。評価部１１は、送信者の工程を、送信者名６１と作業者名４１が一致する作業表４０から、協働日時６４を包含する期間４４を検索することにより得る。評価部１１は、受信者の属性４３も、受信者名６２から同様に得る。
【００８９】
送信者と受信者の工程が同一である場合（S52でY）、評価部１１は、当該協働ログ６０についての送信者と受信者の属性４３に於けるロールが同一かどうかを判定する（S53）。
【００９０】
送信者と受信者のロールが同一である場合（S53でY）、評価部１１は、送信者と受信者のペアおよび同一である工程で特定される関係強度の変数に１を加算する（S54）。送信者と受信者のロールが同一でない場合（S53でN）、評価部１１は、送信者と受信者のペアおよび同一である工程で特定される関係強度の変数に１より小さな値０．８を加算する（S54）。なお、加算値である１または０．８は、評価装置１０にパラメータとして設定され、評価装置１０の操作者が適宜変更してもよい。さらに、送信者と受信者のロールが同一でない場合の加算値は、送信者と受信者のロールの組み合わせに応じて変更してもよい。
【００９１】
送信者と受信者の工程が同一でない場合（S52でN）、評価部１１は、関係強度の変数に何も加算しないで、S51に戻る。
【００９２】
なお、本実施形態に於いて、評価部１１は、工程とロールの役割を逆転させてもよい。
【００９３】
本実施の形態にかかる評価装置１０は、工程（または、ロール）ごとに関係強度を算出するに当たり、インタラクションを行った両作業者のロール（または、工程）の同異を関係強度に反映させる。また、評価装置１０の操作者は、反映の程度を変更することが出来る。その理由は、評価部１１が、インタラクションを行った両作業者のロール（または工程）の同異を判断して、関係強度の変数への加算値を変更するからである。
【００９４】
この結果、開発プロジェクトの管理者等は、例えば、各工程横断的にリーダーシップのある、または、ノウハウのある作業者を把握したい場合、ロール内のインタラクションを重く評価することで、ノイズとなるようなインタラクションの影響を抑制できる。
【００９５】
＜第３の実施の形態＞  
図１４は、第３の実施の形態に係る評価装置１０の構成図である。
【００９６】
本実施の形態の評価装置１０は、評価部１１、ログ記憶部１２、作業者情報記憶部１３を備える。
【００９７】
作業者情報記憶部１３は、システムの開発または運用の作業に従事する複数の作業者のおのおのについて、当該作業者が作業に関する複数の作業の属性４３の何れかを有していた期間４４を示す作業表４０を記憶する。
【００９８】
ログ記憶部１２は、複数の作業者間の各インタラクションについて、当該インタラクションの発生時期および参加した作業者を記録した作業ログを格納する。作業ログは、例えば、アクセスログ５０または協働ログ６０である。
【００９９】
評価部１１は、作業ログから、複数の作業属性及び複数の作業者のペアのおのおのの組み合わせごとに、当該ペアを構成する作業者が当該作業属性を有する時に行った当該ペア内のインタラクションの回数を基に、当該ペアを構成する作業者間の関係の強さを示す関係強度を算出して出力する。
【０１００】
本実施の形態にかかる評価装置１０は、作業工程や役割等、開発や運用の作業の属性４３別に、ログを分析して開発組織評価を行うことを可能とする。この開発組織評価は、アジャイル開発やイタレーション開発に対しても可能となる。その理由は、評価部１１が、作業表４０に基づいて属性ごとに、作業者間のインタラクションの多さ、各インタラクションの重みに基づいて、作業者間の関係強度を算出して表示するからである。
【０１０１】
以上、実施形態（及び実施例）を参照して本願発明を説明したが、本願発明は上記実施形態（及び実施例）に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１０２】
この出願は、２０１２年１月１８日に出願された日本出願特願２０１２−００７８５５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１０３】
１０    評価装置
１１    評価部
１２    ログ記憶部
１３    作業者情報記憶部
１４    表示装置
２０    開発運用支援サーバ
２１    支援部
２２    開発リポジトリ
２３    開発クライアント
４０    作業表
４１    作業者名
４２    個人データ
４３    属性
４４    期間
５０    アクセスログ
５１    アクセス者名
５２    ファイル名
５３    アクセス日時
６０    協働ログ
６１    送信者名
６２    受信者名
６３    区分
６４    協働日時
【図１】
0005464305.tif 000002
【図２】
0005464305.tif 000003
【図３】
0005464305.tif 000004
【図４】
0005464305.tif 000005
【図５】
0005464305.tif 000006
【図６】
0005464305.tif 000007
【図７】
0005464305.tif 000008
【図８】
0005464305.tif 000009
【図９】
0005464305.tif 000010
【図１０】
0005464305.tif 000011
【図１１】
0005464305.tif 000012
【図１２】
0005464305.tif 000013
【図１３】
0005464305.tif 000014
【図１４】
0005464305.tif 000015