JP6333160B2 - プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム - Google Patents

プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム Download PDF

Info

Publication number
JP6333160B2
JP6333160B2 JP2014244396A JP2014244396A JP6333160B2 JP 6333160 B2 JP6333160 B2 JP 6333160B2 JP 2014244396 A JP2014244396 A JP 2014244396A JP 2014244396 A JP2014244396 A JP 2014244396A JP 6333160 B2 JP6333160 B2 JP 6333160B2
Authority
JP
Japan
Prior art keywords
project
simulator
projects
evaluation
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014244396A
Other languages
English (en)
Other versions
JP2016110231A (ja
Inventor
修一 徳本
修一 徳本
政徳 秋吉
政徳 秋吉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2014244396A priority Critical patent/JP6333160B2/ja
Publication of JP2016110231A publication Critical patent/JP2016110231A/ja
Application granted granted Critical
Publication of JP6333160B2 publication Critical patent/JP6333160B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラムに関するものである。
ソフトウェア開発プロジェクトには、高品質、低コスト、短納期が求められる。しかし、ソフトウェア開発プロジェクトは、近年、大規模化、複雑化している。ソフトウェア開発では、最終製品が開発の途中段階では見えにくく、多くが人のスキルに依存した作業になる。設計レビューの強化、試験項目数の増加により品質が向上することが期待できるが、作業量の増加が必要になり、その結果、担当者の作業時間が増加して担当者雇用のコストが増加したり、開発期間が長期化したりする。コストを抑えるため、設計の検討時間の短縮化、レビューや試験項目数の削減を安易に行えば、設計検討不足やコーディングミスによる障害が多くなり、品質が低下する。また、試験時の障害検出により修正時間が増加するか、又は、障害を残したまま製品が市場に出てリコールが発生し、リコールの対処に多大な費用が必要になると、結果的にコストが高くなる。したがって、ソフトウェア開発プロジェクトでは、QCD(品質、コスト、納期)のバランスをとることが重要である。ソフトウェア開発プロジェクト以外のプロジェクトについても同様である。
従来、QCDのうち、コストに着目してプロジェクトの生産性を評価する技術がある(例えば、特許文献1参照)。この従来の技術では、プロジェクトで生成された成果物の規模と、プロジェクトに投入されたリソースから、オペレーションズリサーチ技術の1つである包絡分析法(DEA)による効率値をプロジェクトごとに算出することで、プロジェクトの生産性を評価する。ここで、成果物とは、設計書の頁数やソースコードのライン数等のことである。リソースとは、担当者の作業時間のことである。
特開2011−215927号公報
ソフトウェア開発プロジェクトのように、大部分の作業がコーディング等の手作業であり、人の思考に大きく依存するプロジェクトでは、どのような状況で、どのような作業をしたかを考慮して評価を行わなければ、QCDが悪かった場合の原因を特定したり、問題となる作業を改善したりすることができない。しかし、従来の技術では、どのような状況で、どのような作業をしたかを考慮していない。即ち、従来の技術では、プロジェクトに従事する者の行動を考慮した評価を行っていない。また、従来の技術では、QCDのバランスを考慮した評価も行っていない。
本発明は、プロジェクトに従事する者の行動を考慮した評価結果を得ることを目的とする。
本発明の一の態様に係るプロジェクト評価装置は、
ソフトウェアを開発する複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の情報である従事者情報を記憶するデータベースと、
前記複数のプロジェクトのそれぞれについて、前記データベースに記憶された従事者情報に基づき、プロジェクトに従事する者の行動を模擬するシミュレータと、
前記シミュレータによる模擬の結果から、前記複数のプロジェクトを評価する評価部とを備える。
本発明では、シミュレータが、複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の行動を模擬し、評価部が、その模擬の結果から、複数のプロジェクトを評価する。このため、本発明によれば、プロジェクトに従事する者の行動を考慮した評価結果を得ることができる。
実施の形態1に係るプロジェクト評価装置の構成を示すブロック図。 実施の形態1に係るシミュレータの構成を示すブロック図。 実施の形態1に係るプロジェクト評価装置の動作を示すフローチャート。 実施の形態1に係るシミュレータの設定値の例を示す表。 実施の形態1に係る模擬結果のデータ形式の例を示す表。 1入力2出力の場合のDEAの効率値のプロット例を示すグラフ。 実施の形態1に係る模擬結果と効率値とのデータ形式の例を示す表。 実施の形態1に係る模擬結果に対する分析結果の例を示す表。 実施の形態1に係る修正処理の手順を示すフローチャート。 実施の形態1に係るパラメータ修正表の例。 実施の形態1に係るQCDに対応する予測値とDEAの効率値とをグラフィカルに表示する例を示す図。 実施の形態2に係るプロジェクト評価装置の動作を示すフローチャート。 本発明の実施の形態に係るプロジェクト評価装置のハードウェア構成の例を示す図。
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一又は相当する部分には、同一符号を付している。実施の形態の説明において、同一又は相当する部分については、説明を適宜省略又は簡略化する。
実施の形態1.
まず、本実施の形態の概要を説明する。
(1)本実施の形態では、複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の行動を模擬し、その模擬の結果から、複数のプロジェクトを評価する。即ち、プロジェクトに従事する者の行動を考慮した評価を行う。
(2)本実施の形態では、プロジェクト計画について、シミュレーションによりQCD(品質、コスト、納期)を統合して定量的に評価を行う。即ち、QCDのバランスを考慮した評価を行う。
(3)本実施の形態では、プロジェクト計画の評価結果を用いて、シミュレーションの設定内容を修正し、実績データに基づいた模擬結果の評価を行う。
(4)本実施の形態では、プロジェクト計画に基づき、複数の模擬結果を包絡分析法(DEA)により評価し、傾向をQCDと効率値との4次元で表示する。
次に、本実施の形態の詳細として、本実施の形態に係る装置の構成、本実施の形態に係る装置の動作、本実施の形態の効果を順番に説明する。
***構成の説明***
以下では、図1を用いて、本実施の形態に係る装置であるプロジェクト評価装置100の構成を説明する。
図1に示すように、プロジェクト評価装置100は、データベース110、シミュレータ120、評価部130、分析部140、修正部150、出力部160を備える。
データベース110は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトに従事する者の情報である従事者情報を記憶する。nは、本実施の形態で評価の対象となるプロジェクトの数を表し、n≧2となる任意の整数である。複数のプロジェクトP1〜Pnは、それぞれ何らかの目標を達成するために複数の人間が行動する計画であれば、どのようなプロジェクトであってもよい。本実施の形態では、複数のプロジェクトP1〜Pnは、それぞれソフトウェアを開発するプロジェクトである。
シミュレータ120は、複数のプロジェクトP1〜Pnのそれぞれについて、データベース110に記憶された従事者情報に基づき、プロジェクトに従事する者の行動を模擬する。ここで、プロジェクトに従事する者には、プロジェクトの管理者と作業者とが含まれる。本実施の形態では、シミュレータ120は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトに従事する者の行動として、特に、プロジェクトの管理者が作業者に出す指示を模擬する。
シミュレータ120は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトに従事する者の行動を模擬することで、プロジェクトで開発されるソフトウェアの障害数と、プロジェクトでソフトウェアの開発にかかる工数と、プロジェクトでソフトウェアの開発が遅延する日数との複数種類の予測値のうち、少なくとも1種類の予測値を算出する。本実施の形態では、シミュレータ120は、複数のプロジェクトP1〜Pnのそれぞれについて、上記複数種類の予測値を全て算出する。上記複数種類の予測値は、それぞれQCDに対応する。具体的には、障害数は、品質に対応する。障害数が少ないほど、品質が高いことになる。開発にかかる工数は、コストに対応する。工数が少ないほど、コストが低いことになる。開発が遅延する日数は、納期に対応する。日数が少ないほど、納期が短いことになる。納期とは、開発が完了する時期のことである。開発の途中段階で評価を行う場合は、進捗を納期として扱う。即ち、開発が遅延する日数は、進捗にも対応する。日数が少ないほど、進捗が早いことになる。
評価部130は、シミュレータ120による模擬の結果から、複数のプロジェクトP1〜Pnを評価する。具体的には、評価部130は、シミュレータ120により模擬された行動の回数と、シミュレータ120により算出された予測値とから、複数のプロジェクトP1〜Pnの効率値を算出することで、複数のプロジェクトP1〜Pnを評価する。効率値を算出する方法としては、任意の方法を用いることができる。本実施の形態では、評価部130は、シミュレータ120により模擬された行動の回数を入力値とし、上記複数種類の予測値を出力値とし、包絡分析法を用いて複数のプロジェクトP1〜Pnの効率値を算出する。
分析部140は、複数のプロジェクトP1〜Pnのそれぞれについて、上記複数種類の予測値と、評価部130により算出された効率値との関係を分析する。
修正部150は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトの実績に応じて、データベース110に記憶された従事者情報を修正する。
出力部160は、分析部140による分析の結果を出力する。
プロジェクト評価装置100は、データベース110として、プロジェクト計画データベース111、実績データベース112、模擬結果データベース113、分析結果データベース114を備える。
プロジェクト計画データベース111は、ソフトウェア開発における開発対象、障害検出率、工程、コスト、開発人員等のプロジェクトを実施するために決定した開発計画の情報を保存する。この情報には、前述した従事者情報も含まれる。プロジェクト計画データベース111は、プロジェクトの模擬をする際のパラメータや、シミュレータ120の初期値設定のデータを提供する。
実績データベース112は、ソフトウェアの開発プロジェクトの実行により定期的に収集した実績データを保存する。実績データベース112は、模擬やパラメータ修正時に実績データを提供する。実績データベース112は、実績データとして、作業者ごとに、ソースコードの作成量や作業時間、レビューや試験で検出された障害数や誤り数等のQCDに関連するデータを保存する。
シミュレータ120は、プロジェクト計画データベース111に保存された開発計画の情報、実績データベース112に保存された実績データの入力を受けて、プロジェクト完了までの状況、完了した状況を模擬し、完了時のプロジェクトの状態を出力する。本実施の形態では、シミュレータ120は、プロジェクトの管理者と作業者とをエージェントとして動作させる。シミュレータ120は、開発計画の情報から各エージェントの個人設定を行い、各エージェントの動作結果を集計して、プロジェクト完了までの進捗状況、完了時の状態を模擬結果として出力する。
模擬結果データベース113は、シミュレータ120の模擬結果のデータを保存する。模擬結果データベース113は、プロジェクトの評価時、シミュレータ120のパラメータ変更処理時にデータを提供する。
評価部130は、実績データベース112に保存された実績データ又は模擬結果データベース113に保存されたシミュレータ120の模擬結果についてプロジェクトの評価を行う。本実施の形態では、評価部130は、評価対象のマネジメントの効率性を算出することが可能な包絡分析法を用いてプロジェクトの効率値を算出する。それぞれのプロジェクトは、包絡分析法の意思決定主体(Decision・Making・Unit:DMU)として捉えられる。評価部130は、それぞれのプロジェクトについて、包絡分析法の入力である管理者の指示回数と包絡分析法の出力である障害数、工数、遅延の日数、及び、プロジェクトの外乱因子を用いて効率値を算出する。
分析部140は、評価部130による効率値の算出結果を統計処理により分析し、分析結果のデータを出力する。本実施の形態では、包絡分析法が利用されるため、入力値と出力値と効率値との組み合わせでデータが作成される。分析部140は、入力値と出力値と効率値との関係やシミュレータ120の入力値と出力値との関連等の分析を行う。
分析結果データベース114は、分析部140から出力された分析結果を保存する。分析結果データベース114は、シミュレータ120のパラメータの修正や結果表示のため、必要なデータを出力する。
修正部150は、プロジェクト計画データベース111に保存された開発計画の情報、実績データベース112に保存された実績データ、分析結果データベース114に保存された分析結果を用いて、シミュレータ120に設定されたパラメータを評価し、評価結果からパラメータを修正する。修正部150は、修正後のパラメータをシミュレータ120に入力する。
出力部160は、分析結果データベース114に保存された分析結果を表示する。同時に、出力部160は、プロジェクト計画データベース111に保存された開発計画の情報が示す計画値、実績データベース112に保存された実績データが示す実績値、模擬結果データベース113に保存されたシミュレータ120の模擬結果を表示する。
以下では、図2を用いて、シミュレータ120の構成を説明する。
本実施の形態では、ソフトウェア開発プロジェクトのプログラム作成工程の模擬を実行するシミュレータ120を用いて、プロジェクトの評価を行う。シミュレータ120は、プロジェクトの管理者と開発を担当する作業者との模擬を行う。
図2に示すように、シミュレータ120は、模擬実行部121、プロジェクト状況データベース122、イベントルール群データベース123、イベント発火制御部124、管理者模擬エージェント部125、データ入出力部126を備える。
模擬実行部121は、模擬を実行する。模擬実行部121は、模擬において、定義された作業者エージェントが日々作成するプログラムのライン数と障害数とを算出する。模擬実行部121は、計画された総ライン数まで模擬を実施する。
プロジェクト状況データベース122は、プロジェクトの進捗状況として、模擬実行部121が算出したライン数と障害数とを記憶する。
イベントルール群データベース123は、実際のプロジェクトと同様に発生する外乱として、障害発生数増減イベント、作業効率低下イベント、仕様変更イベントの定義情報を記憶する。障害発生数増減イベントは、エージェントとして動作する作業者が作成するプログラムに発生する障害の数が増加又は減少するイベントである。作業効率低下イベントは、エージェントとして動作する作業者の作業効率が低下し、作業者が作成するプログラムのライン数が減少するイベントである。仕様変更イベントは、エージェントとして動作する作業者が作成するプログラムの仕様が変更になり、総ライン数が増加又は減少するイベントである。
イベント発火制御部124は、イベントルール群データベース123に定義情報が記憶されたイベントを選択し、選択したイベントを模擬実行部121に通知する。
管理者模擬エージェント部125は、作業者エージェントへ指示を行う管理者エージェントを動作させる。管理者模擬エージェント部125は、プロジェクト状況データベース122に記憶されているプロジェクトの進捗状況から、作業が遅れていると判断すると、残業指示を行う。残業指示とは、計画された工数よりも多い工数の作業を行うように指示することである。管理者模擬エージェント部125は、残業指示の実際の処理としては、模擬実行部121内の作業者エージェントの作業効率を、より低い値に変更する。
データ入出力部126は、プロジェクト状況データベース122に記憶されたプロジェクトの最終的な進捗状況を、模擬結果のデータとして模擬結果データベース113に送信し、登録する。また、データ入出力部126は、プロジェクト計画データベース111に保存された開発計画の情報、実績データベース112に保存された実績データの入力を受ける。入力値には、イベント発火や管理者指示を決定するための設定値が含まれている。データ入出力部126は、その設定値を用いて、模擬実行部121、イベント発火制御部124、管理者模擬エージェント部125のパラメータを設定したり、変更したりする。
***動作の説明***
以下では、図3〜11を用いて、プロジェクト評価装置100の動作を説明する。プロジェクト評価装置100の動作は、本実施の形態に係るプロジェクト評価方法に相当する。プロジェクト評価装置100の動作は、本実施の形態に係るプロジェクト評価プログラムの処理手順に相当する。
図3のS001が実行される前に、プロジェクト計画が立案され、プロジェクト計画のデータがプロジェクト計画データベース111に記憶されているものとする。
図3のS001〜S004は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトに従事する者の情報である従事者情報をデータベース110から取得し、取得した従事者情報に基づき、プロジェクトに従事する者の行動を模擬するシミュレーションである。
S001において、プロジェクト計画データベース111に記憶されている計画値がシミュレータ120に設定される。シミュレータ120には、プログラム作成工程に必要なデータが設定される。
図4に、シミュレータ120の設定値の例を示す。
図4の例では、シミュレータ120の設定値の項目として、「開発ライン数」のように数値で明確に示される計画値と、「要員スキル」や「管理者特性」のように模擬でのエージェントの動作特性を決定する定性的、主観的で定量値として定義できない模擬パラメータとが定義される。
シミュレータ120に用いる計画値としては、「要員数」、「管理者経験回数」、「開発ライン数」、「開発工数」、「期間」、「障害予定数」が定義される。「要員数」は、プロジェクトに従事する作業者の数である。「管理者経験回数」は、プロジェクトに従事する管理者の過去のプロジェクト経験回数である。「開発ライン数」は、プロジェクトで作成されるプログラムのライン数である。「開発工数」は、プロジェクトでプログラムの作成にかかる工数である。「期間」は、プロジェクトでプログラムの作成に要する日数である。「障害予定数」は、プロジェクトで作成されるプログラムから検出される障害の数である。「要員数」、「管理者経験回数」は、従事者情報の例である。
シミュレータ120に用いる模擬パラメータとしては、「開発方式」、「要員スキル」、「管理者特性」、「プログラム難易度」が定義される。「開発方式」としては、流用開発と新規開発とが想定され、新規開発は1、流用開発は2で示される。「要員スキル」は、作業員のプログラミング経験、開発工事の経験を考慮し、5段階として、最も低いスキルが1、最も高いスキルが5で示される。「管理者特性」は、シミュレータ120内で指示の回数及びタイミングを模擬するためのパラメータであり、規範型、オペレーション遅れ型、場当たり型とし、順に1、2、3で示される。それぞれの型について管理者エージェントが指示を出す基準等がシミュレータ120内のイベントルール群データベース123に定義され、イベント発火制御部124により参照される。「プログラム難易度」は、計画時に開発対象や機能等から3段階で設定され、1が平易、2が標準、3が難を示す。「要員スキル」、「管理者特性」は、従事者情報の例である。
S002において、シミュレータ120は、計画値に基づき、模擬を実行する。シミュレータ120は、設定された模擬パラメータに従い、計画された開発ライン数を達成するまでの作業時間から作業工数、作り込んだプログラムの障害数を算出する。作業工数は、コスト(C)に対応する。障害数は、品質(Q)に対応する。シミュレータ120は、各エージェントの1日の作業時間から作業完了までの日数を計算し、納期遅れの日数を算出する。日数は、進捗(D)に対応する。シミュレータ120内では、進捗に応じて管理者エージェントが残業指示を行う。シミュレータ120には、プロジェクトの進捗を妨げる外乱因子がイベントとして設定され、確率的に発生させられる。イベントルール群データベース123には、イベントとして、障害発生数増減イベント、残業指示により作業員の作業効率が低下する作業効率低下イベント、仕様変更によりプログラムのライン数が増減する仕様変更イベントが用意される。イベント発火制御部124は、プロジェクト状況データベース122に記憶された進捗状況に基づき、確率的にイベントを発生させ、プロジェクトの進捗に影響を与える。
S003において、シミュレータ120は、模擬結果を模擬結果データベース113に保存する。結果は、入力値と出力値とのペアで保存される。
図5に、模擬結果のデータ形式の例を示す。
図5の例において、「入力値」は、管理者エージェントの残業指示回数である。「出力値1」は、計画ライン数作成完了時の障害数である。「出力値2」は、計画ライン数作成完了までの全作業員の作業時間、即ち、作業工数である。「出力値3」は、計画ライン数作成完了時の計画日数から超過した日数である。「出力値4」は、外乱イベントの発生回数である。
S004において、シミュレータ120は、1度の模擬結果を保存した後、模擬を継続するかを判断する。継続する場合、フローはS002に戻る。そして、シミュレータ120が、模擬を初期状態から実行する。シミュレータ120による模擬は、確率的に管理者の指示や外乱を発生させる。そのため、傾向を分析するためにも、模擬を複数回実施し、模擬結果のデータを作成及び保存することが望ましい。模擬を実施する回数は、予め任意の数に指定されているものとする。指定回数の模擬が実行された場合、フローはS005に進む。
図3のS005は、S001〜S004のシミュレーションによる模擬の結果から、複数のプロジェクトP1〜Pnを評価する評価処理である。
S005において、評価部130は、模擬結果データベース113から入力値と出力値とからなるデータセット単位で評価を行う。評価部130は、DEAを用いて評価処理を行い、各データセットについて効率値を算出する。具体的には、評価部130は、模擬結果の逆数をDEAの評価式に入力し、DEAでの効率値を算出する。ここで、DEAは、複数のDMUの効率性を相対的に比較する分析方法である。DEAは、DMUの多入力多出力に対応し、入力値に対する出力値の割合を効率値として表現する。DEAで得られた効率値を比較することで複数のDMUの評価を行うことができる。
DEAの評価式としては、任意の数式を用いることができる。本実施の形態では、以下のCCR(チャーンズ・クーパー・ローズ)モデルの評価式を用いる。
Figure 0006333160
n:DMUの個数
s:DEAの出力項目数
m:DEAの入力項目数
rj:j番目のDMUにより使用されるr番目の出力値
ij:j番目のDMUにより使用されるi番目の入力値
:特定DMUに対するr番目の出力値への重み付けベクトル
:特定DMUに対するi番目の入力値への重み付けベクトル
:j番目のDMUの効率値
上記の評価式において、シミュレータ120により模擬されたプロジェクトPjの管理者の指示の回数が入力値x1jとなる。シミュレータ120により算出された、プロジェクトPjで開発されるソフトウェアの障害数の予測値、プロジェクトPjでソフトウェアの開発にかかる工数の予測値、プロジェクトPjでソフトウェアの開発が遅延する日数の予測値、及び、シミュレータ120によりイベントが発生させられた回数が出力値y1j〜y4jとなる。そして、プロジェクトPjの出力値y1j〜y4jのそれぞれに可変の係数である重み付けベクトルを掛けて、総和の最大値である効率値zが求められる。それぞれの係数の値は、DMUごとに、効率値zが最大となるように決定される。効率値zが1の場合、j番目のDMUであるプロジェクトPjは効率的フロンティアということになり、効率値zが1未満の場合、プロジェクトPjは非効率的フロンティアということになる。
図6に、入力値が1つ、出力値が2つの場合のDEAの効率値をグラフにプロットした例を示す。このグラフは、2次元のグラフとなる。
図6の例において、A〜Gの円は、DMUを示している。グラフの外側の実線上にあるDMUは、入力値、出力値1,2のバランスの取り方によって効率値が最大になるDMUであり、効率的フロンティアと定義される。例えば、Aで示されるDMUは、出力値1に対して出力値2の比率が高く、その比率において最も効率の良い効率的フロンティアのDMUである。破線の矢印上にあるDMUは、矢印の方向について効率的フロンティアより効率が悪いDMUであり、非効率フロンティアと定義される。例えば、Eで示されるDMUは、破線の矢印の方向について効率値が効率的フロンティアの70%である非効率フロンティアのDMUである。入力値、出力値の数に応じた次元数のベクトルとして効率値という同一尺度でDMUを相対的に評価することが可能である。本実施の形態では、評価部130が、模擬結果データベース113から得られる模擬結果についてDEAの効率値を前述した評価式を用いて算出し、プロジェクトを相対的に評価する。評価部130は、算出した効率値を模擬結果データベース113に追加保存する。図7には、図5の例と同じ模擬結果と、その模擬結果に対する効率値とのデータ形式の例を示している。
図3のS006及びS007は、複数のプロジェクトP1〜Pnのそれぞれについて、S001〜S004のシミュレーションにより算出された複数種類の予測値と、S005の評価処理により算出された効率値との関係を分析する分析処理である。
S006において、分析部140は、各模擬結果の効率値を用いて、プロジェクトの分析を行う。本実施の形態では、分析部140は、重回帰分析を実施し、効率値算出モデルを作成する。外乱となるイベントの発生、管理者の指示のタイミングは、シミュレータ120内のパラメータにより確率的に算出される。模擬を複数回実施し、それら複数回の模擬結果から重回帰分析を行うことで、プロジェクトのプログラム作成工程の計画値に対する評価を的確に行うことができる。図8には、図7の例における4回の模擬結果に対する重回帰分析の結果を示している。
S007において、分析部140は、複数回の模擬結果に対する分析結果を複数回の模擬結果の分析データとして分析結果データベース114に保存する。
図3のS008は、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトの実績に応じて、データベース110に記憶された従事者情報等を修正する修正処理である。
S008において、修正部150は、シミュレータ120のパラメータの修正を行う。
図9に、具体的な修正処理の手順を示す。
図9のS010において、修正部150は、模擬結果と、模擬結果に対応した効率値とを模擬結果データベース113から取得する。S011において、修正部150は、S010で取得した模擬結果に対応した分析結果を分析結果データベース114から取得する。S012において、修正部150は、シミュレータ120のパラメータに適用されている計画値と、パラメータ修正表とをプロジェクト計画データベース111から取得する。S013において、修正部150は、プロジェクトのプログラム作成工程の実績データを実績データベース112から取得する。S014において、修正部150は、実績データが存在する工程に関連したパラメータの評価を、主にS010で取得した効率値とS012で取得したパラメータ修正表とを参照して実施する。修正対象パラメータ及び修正タイミングの条件は、プロジェクト及びシミュレータ120に応じて定義され、修正部150のパラメータとして設定される。S015において、条件が一致すれば、S016において、修正部150は、シミュレータ120内の該当するパラメータを修正する。
ここで、「要員スキル」のパラメータ修正表を例に挙げて、S014〜S016の具体的な処理を説明する。図10には、パラメータ修正表の例を示している。プログラム作成工程の実績データが実績データベース112に登録されている場合、修正部150は、分析結果のうち効率値の最頻値を求める。修正部150は、算出した効率値の最頻値と各作業員の実績データとを参照してパラメータ修正表に一致する条件を調査する。条件に一致した場合には、修正部150は、シミュレータ120内の作業者エージェントの登録されている「要員スキル」に関するパラメータを修正する。例えば、あるプロジェクトにおいて、「進捗」が計画より2日以上進んでおり、「残業時間」が1週間で1人当たり0時間であり、「検出誤り」が1ページ当たり2件以下であり、かつ、「効率値」が0.95以上であるとき、現在シミュレータ120で用いられている「要員スキル」の値に1が加算される。なお、「検出誤り」は、作成されている設計書等の成果物のレビュー結果から判断される。「検出誤り」には、記述ミス、抜け等がある。「要員スキル」の値に1が加算されるということは、作業能力を良くすると同意することである。
図3のS009は、S006及びS007の分析処理による分析の結果を出力する出力処理である。
S009において、出力部160は、ユーザの要求に応じて、分析結果データベース114に保存された分析結果を出力する。本実施の形態では、出力部160は、プロジェクトの計画値や特性、効率値の最頻値に近い模擬結果であるQCDの各値を出力する。
図11に、QCDに対応する予測値とDEAの効率値とをグラフィカルに表示する例を示す。
図11の例では、QCDの各値を3つの軸とした3次元グラフ上に、効率値に対応する球が表示されている。球の位置がQCDの各値、球の大きさが効率値を示す。
***効果の説明***
本実施の形態では、シミュレータ120が、複数のプロジェクトP1〜Pnのそれぞれについて、プロジェクトに従事する者の行動を模擬し、評価部130が、その模擬の結果から、複数のプロジェクトP1〜Pnを評価する。このため、本実施の形態によれば、プロジェクトに従事する者の行動を考慮した評価結果を得ることができる。
本実施の形態では、ソフトウェア開発プロジェクトの計画値からプロジェクトの模擬を行い、包絡分析法等の手法でQCDの3項目のデータ分析をすることで、属人的なプロジェクトを客観的に評価することができる。よって、プロジェクトの管理者の経験や技能に頼らず、定量的な評価を行うことができる。即ち、従来は主観的、経験則的であったプロジェクトの評価を、シミュレータ120とDEAに代表されるような多入力多出力の分析が可能な評価方法を組み合わせることで、品質、コスト、進捗の3つの視点を統合してかつ定量的に行うことが可能になる。
本実施の形態では、シミュレータ120が、プロジェクトの計画や実績データを基に、プロジェクトの進捗や障害発生等の品質を模擬し、その模擬の結果が、評価部130に入力され、評価部130が、模擬の結果や実績データを評価する。そして、修正部150が、プロジェクトの実績データからシミュレータ120内の処理で用いられるパラメータの設定値を修正する。このため、本実施の形態によれば、シミュレータ120の模擬結果を、より現実に即したものに改善することができる。
実施の形態2.
本実施の形態について、主に実施の形態1との差異を説明する。
ソフトウェア開発のプロジェクトでは、計画時の評価と同様に、プロジェクト実行中に実行結果を基にしたプロジェクトの完了時の予測と評価が重要である。本実施の形態では、プロジェクトの実績データをシミュレータ120に取り込み、プロジェクトの進捗状況に応じた模擬結果の評価を行う。
以下では、図12を用いて、本実施の形態に係るプロジェクト評価装置100の動作を説明する。プロジェクト評価装置100の動作は、本実施の形態に係るプロジェクト評価方法に相当する。プロジェクト評価装置100の動作は、本実施の形態に係るプロジェクト評価プログラムの処理手順に相当する。
図12のS001〜S009については、図3のS001〜S009と同様である。
S001で計画値がシミュレータ120に設定された後、図12のS017において、シミュレータ120は、実績データベース112に設定されたプロジェクトの模擬対象工程の実績データが存在するかを確認する。本実施の形態では、プログラム作成工程が模擬対象工程である。確認の結果、該当する実績データがない場合、実施の形態1と同様に、S002以降でシミュレータ120が模擬を実施する。該当する実績データがある場合、フローはS018に進む。
図12のS018において、修正部150は、図9に示した修正処理の手順と同様の手順で、実績データによるシミュレータ120のパラメータの修正を実施する。
図12のS019において、修正部150は、実績データをシミュレータ120に設定する。具体的には、修正部150は、プログラム作成工程でこれまでに作成したプログラムのライン数、これまでに作り込んだプログラムの障害数、作業工数、作業日時をシミュレータ120の開始初期値として、シミュレータ120内のデータ入出力部126を通して、プロジェクト状況データベース122に設定する。
図12のS020において、修正部150は、シミュレータ120の開始日時を実績データで記録された日時の直後から開始できるように設定する。この設定は、のちに繰り返し模擬を実行する際の開始日時として評価が完了するまで維持する。開始日時の設定後は、実施の形態1と同様に、S002以降でシミュレータ120が模擬を指定回数実施する。
以上のように、本実施の形態では、シミュレータ120の模擬結果のみの評価だけではなく、プロジェクトの進捗に応じて、実績データを加味した模擬と評価とを実施することが可能となる。
以下では、図13を用いて、本発明の実施の形態に係るプロジェクト評価装置100のハードウェア構成の例を説明する。
図13の例において、プロジェクト評価装置100は、コンピュータであり、出力装置910、入力装置920、記憶装置930、処理装置940といったハードウェアを備える。ハードウェアは、本発明の実施の形態の説明において「部」として説明するものによって利用される。
出力装置910は、例えば、LCD(Liquid・Crystal・Display)等の表示装置、プリンタ、通信モジュールである。出力装置910は、本発明の実施の形態の説明において「部」として説明するものによってデータ、情報、信号の出力又は送信のために利用される。
入力装置920は、例えば、キーボード、マウス、タッチパネル、通信モジュールである。入力装置920は、本発明の実施の形態の説明において「部」として説明するものによってデータ、情報、信号の入力又は受信のために利用される。
記憶装置930は、例えば、ROM(Read・Only・Memory)、RAM(Random・Access・Memory)、HDD(Hard・Disk・Drive)、SSD(Solid・State・Drive)である。記憶装置930には、プログラム931、ファイル932が記憶される。プログラム931には、本発明の実施の形態の説明において「部」として説明するものの処理を実行するプログラムが含まれる。ファイル932には、本発明の実施の形態の説明において「部」として説明するものによって演算、加工、読み取り、書き込み、利用、入力、出力等が行われるデータ、情報、信号等が含まれる。
処理装置940は、例えば、CPU(Central・Processing・Unit)である。処理装置940は、バス等を介して他のハードウェアデバイスと接続され、それらのハードウェアデバイスを制御する。処理装置940は、記憶装置930からプログラム931を読み出し、プログラム931を実行する。処理装置940は、本発明の実施の形態の説明において「部」として説明するものによって演算、加工、読み取り、書き込み、利用、入力、出力等を行うために利用される。
本発明の実施の形態の説明において「部」として説明するものは、「部」を「回路」、「装置」、「機器」に読み替えたものであってもよい。また、本発明の実施の形態の説明において「部」として説明するものは、「部」を「工程」、「手順」、「処理」に読み替えたものであってもよい。即ち、本発明の実施の形態の説明において「部」として説明するものは、ソフトウェアのみ、ハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせで実現される。ソフトウェアは、プログラム931として、記憶装置930に記憶される。プログラム931は、本発明の実施の形態の説明において「部」として説明するものとしてコンピュータを機能させるものである。或いは、プログラム931は、本発明の実施の形態の説明において「部」として説明するものの処理をコンピュータに実行させるものである。
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、いくつかを組み合わせて実施しても構わない。或いは、これらの実施の形態のうち、いずれか1つ又はいくつかを部分的に実施しても構わない。例えば、これらの実施の形態の説明において「部」として説明するもののうち、いずれか1つのみを採用してもよいし、いくつかの任意の組み合わせを採用してもよい。なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
100 プロジェクト評価装置、110 データベース、111 プロジェクト計画データベース、112 実績データベース、113 模擬結果データベース、114 分析結果データベース、120 シミュレータ、121 模擬実行部、122 プロジェクト状況データベース、123 イベントルール群データベース、124 イベント発火制御部、125 管理者模擬エージェント部、126 データ入出力部、130 評価部、140 分析部、150 修正部、160 出力部、910 出力装置、920 入力装置、930 記憶装置、931 プログラム、932 ファイル、940 処理装置。

Claims (7)

  1. ソフトウェアを開発する複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の情報である従事者情報を記憶するデータベースと、
    前記複数のプロジェクトのそれぞれについて、前記データベースに記憶された従事者情報に基づき、プロジェクトに従事する者の行動を模擬することで、プロジェクトで開発されるソフトウェアの障害数と、プロジェクトでソフトウェアの開発にかかる工数と、プロジェクトでソフトウェアの開発が遅延する日数との複数種類の予測値のうち、少なくとも1種類の予測値を算出するシミュレータと、
    前記シミュレータによ模擬された行動の回数を入力値とし、前記シミュレータにより算出された予測値を出力値とし、包絡分析法を用いて前記複数のプロジェクトの効率値を算出することで、前記複数のプロジェクトを評価する評価部とを備えるプロジェクト評価装置。
  2. 前記シミュレータは、前記複数のプロジェクトのそれぞれについて、前記複数種類の予測値を算出し、
    前記評価部は、前記シミュレータにより模擬された行動の回数を入力値とし、前記複数種類の予測値を出力値とし、包絡分析法を用いて前記複数のプロジェクトの効率値を算出する、請求項に記載のプロジェクト評価装置。
  3. 前記複数のプロジェクトのそれぞれについて、前記複数種類の予測値と、前記評価部により算出された効率値との関係を分析する分析部と、
    前記分析部による分析の結果を出力する出力部と
    をさらに備える、請求項に記載のプロジェクト評価装置。
  4. 前記シミュレータは、前記複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の行動として、プロジェクトの管理者が作業者に出す指示を模擬する、請求項1からのいずれか1項に記載のプロジェクト評価装置。
  5. 前記複数のプロジェクトのそれぞれについて、プロジェクトの実績に応じて、前記データベースに記憶された従事者情報を修正する修正部をさらに備える、請求項1からのいずれか1項に記載のプロジェクト評価装置。
  6. シミュレータが、ソフトウェアを開発する複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の情報である従事者情報をデータベースから取得し、取得した従事者情報に基づき、プロジェクトに従事する者の行動を模擬することで、プロジェクトで開発されるソフトウェアの障害数と、プロジェクトでソフトウェアの開発にかかる工数と、プロジェクトでソフトウェアの開発が遅延する日数との複数種類の予測値のうち、少なくとも1種類の予測値を算出し、
    評価部が、前記シミュレータによ模擬された行動の回数を入力値とし、前記シミュレータにより算出された予測値を出力値とし、包絡分析法を用いて前記複数のプロジェクトの効率値を算出することで、前記複数のプロジェクトを評価するプロジェクト評価方法。
  7. コンピュータに、
    ソフトウェアを開発する複数のプロジェクトのそれぞれについて、プロジェクトに従事する者の情報である従事者情報をデータベースから取得し、取得した従事者情報に基づき、プロジェクトに従事する者の行動を模擬することで、プロジェクトで開発されるソフトウェアの障害数と、プロジェクトでソフトウェアの開発にかかる工数と、プロジェクトでソフトウェアの開発が遅延する日数との複数種類の予測値のうち、少なくとも1種類の予測値を算出するシミュレーションと、
    前記シミュレーションによ模擬された行動の回数を入力値とし、前記シミュレーションにより算出された予測値を出力値とし、包絡分析法を用いて前記複数のプロジェクトの効率値を算出することで、前記複数のプロジェクトを評価する評価処理と
    を実行させるプロジェクト評価プログラム。
JP2014244396A 2014-12-02 2014-12-02 プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム Active JP6333160B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014244396A JP6333160B2 (ja) 2014-12-02 2014-12-02 プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014244396A JP6333160B2 (ja) 2014-12-02 2014-12-02 プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム

Publications (2)

Publication Number Publication Date
JP2016110231A JP2016110231A (ja) 2016-06-20
JP6333160B2 true JP6333160B2 (ja) 2018-05-30

Family

ID=56124253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014244396A Active JP6333160B2 (ja) 2014-12-02 2014-12-02 プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム

Country Status (1)

Country Link
JP (1) JP6333160B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019086951A (ja) * 2017-11-06 2019-06-06 日本電気株式会社 サプライチェーン管理システムおよびその制御方法
JP2019148874A (ja) * 2018-02-26 2019-09-05 日本電信電話株式会社 プロジェクト分析装置及びプログラム
JP7096983B1 (ja) 2020-12-30 2022-07-07 ファインディ株式会社 プログラム、情報処理装置および方法
JP7168966B2 (ja) * 2020-12-30 2022-11-10 ファインディ株式会社 プログラム、情報処理装置および方法
JP2023131694A (ja) * 2022-03-09 2023-09-22 株式会社日立製作所 タスクスケジューリング管理システム、タスクスケジューリング管理方法およびコンピュータプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124285A (ja) * 1992-08-06 1994-05-06 Nec Corp イベント駆動型プロジェクト管理シミュレータ
JP4467880B2 (ja) * 2002-12-09 2010-05-26 株式会社日立製作所 プロジェクトの評価システムおよび方法
JP2010211364A (ja) * 2009-03-09 2010-09-24 Hitachi Ltd プロジェクトのシミュレーション方法及びシミュレーションシステム
JP5460426B2 (ja) * 2010-03-31 2014-04-02 株式会社エヌ・ティ・ティ・データ 生産性評価装置、生産性評価方法およびプログラム
JP2013257821A (ja) * 2012-06-14 2013-12-26 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム

Also Published As

Publication number Publication date
JP2016110231A (ja) 2016-06-20

Similar Documents

Publication Publication Date Title
US11755319B2 (en) Code development management system
Kelly et al. Bayesian inference for probabilistic risk assessment: A practitioner's guidebook
JP6333160B2 (ja) プロジェクト評価装置及びプロジェクト評価方法及びプロジェクト評価プログラム
Borade et al. Software project effort and cost estimation techniques
Boring et al. Issues in benchmarking human reliability analysis methods: A literature review
Suri et al. Comparative analysis of software effort estimation techniques
US11579322B2 (en) System and method for earthquake risk mitigation in building structures
JP7341073B2 (ja) 工場管理装置、工場管理方法、及び工場管理プログラム
US20120179512A1 (en) Change management system
Sergis et al. Towards a teaching analytics tool for supporting reflective educational (re) design in inquiry-based STEM education
Lopez-Martin et al. Applying expert judgment to improve an individual's ability to predict software development effort
CN112561227A (zh) 一种基于递归神经网络的多机器人协同方法及系统
Chou et al. Estimating software project effort for manufacturing firms
Angelopoulou A simulation-based task analysis using agent-based, discrete event and system dynamics simulation
KR20180127253A (ko) 위험시설 안전문화 진단 장치 및 방법
KR102294948B1 (ko) 통합 위험 관리 방법 및 시스템
Angelopoulou et al. A framework for simulation-based task analysis-The development of a universal task analysis simulation model
CN114329938A (zh) 系统可靠性分析方法、装置、计算机设备和存储介质
Zawedde et al. Understanding the dynamics of requirements process improvement: a new approach
Angelopoulou et al. The system dynamics architecture of UTASiMo: a simulation-based task analysis tool to predict human error probability
Concha et al. Reference virtual design team (vdt) probabilities to design construction project organizations
Mykoniatis et al. The system dynamics architecture of UTASiMo: A simulation-based task analysis tool to predict human error probability
Lee et al. A human reliability evaluation tool for main control rooms in nuclear power plants
RU2710914C1 (ru) Автоматизированный способ пространственных экономических исследований
Di Thommazo et al. Using the Dependence Level Among Requirements to Priorize the Regression Testing Set and Characterize the Complexity of Requirements Change.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180308

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180327

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180424

R150 Certificate of patent or registration of utility model

Ref document number: 6333160

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250