760 likes | 1.17k Views
ソフトウェア開発及びソフトウェア プロジェクトマネジメント ( VIII ). 北航软件学院 马平 博士 副教授 maping@ buaa.edu.cn. レビュー. 1.タイム・マネジメントには、(? )のプロセスがある。 各プロセスの主なアウトプットは? 2. WBS でスケジュールを作る流れ 3. アクティビティ順序設定の技法?区別? 4.作業間の依存関係は? 5. CPM? PERT? 6.スケジュールの表現形式? 7.所要期間の短縮技法は?例を挙げて. クリティカルパスの例. PMBOK プロセス群と知識エリアのマップ.
E N D
ソフトウェア開発及びソフトウェアプロジェクトマネジメント(VIII)ソフトウェア開発及びソフトウェアプロジェクトマネジメント(VIII) 北航软件学院 马平 博士 副教授 maping@buaa.edu.cn
レビュー 1.タイム・マネジメントには、(? )のプロセスがある。 各プロセスの主なアウトプットは? 2.WBSでスケジュールを作る流れ 3. アクティビティ順序設定の技法?区別? 4.作業間の依存関係は? 5.CPM?PERT? 6.スケジュールの表現形式? 7.所要期間の短縮技法は?例を挙げて
補充内容 ソフトウェア開発の見積り ソフトウェア開発の見積もりを困難にしている要因 • 複雑であること。 • 試行錯誤が必要なこと。 • 仕様が不明確であること。
補充内容 ソフトウェア開発のコスト ソフトウェア開発のコストを工程別に分けていくと、次のようになる。 • 機能設計 • 内部設計 • プログラミング • 単体テスト • 結合テスト • その他、環境設定など
補充内容 見積もり技法 見積もり技法としては 下記のものが知られている。 • 類推法 • 積算法 • COCOMO • FP法 • COCOMO II
補充内容 見積もり技法 • 類推法 過去の類似の開発事例から開発規模を類推する手法。 問題点:過去のプロジェクトのデータを役に立つほど蓄積できるのは、大手の開発業者に限られる。しかも現在は開発手法がかなり変化してきているので、過去のデータは役に立たない場合が多い。 • 積算法 必要な作業項目を細分化していって、それらの工数を見積もり合成する手法。ソフトウェア開発においては、開発工程と機能分類のマトリックスで作業項目を細分化する。その細分化された作業項目をどのように見積もるかと言うことについては、この手法では関知していない。
補充内容 見積もり技法 • COCOMO 開発するソフトウェアの行数を把握し、その行数を開発工数に換算する手法。 問題点:まだ開発していないソフトウェアに行数をどのように把握するのかという問題がある。これははっきり言って勘で行うしかない。また同じ行数でも難易度が高いものと低いものがある。つまり換算率が異なる。COCOMOとは、Constructive Cost Modelの略。1981年にベームが開発した手法。 • FP法 Function Pointの略。システムの画面や帳票、データべースのレコードなどを洗い出し、それぞれの複雑さを点数化して、その値から開発の工数を算出するもの。 問題点:大部分の見積もり作業は、これらの要素が確定する以前に行わなければならないという根本的な問題がある。 • COCOMO II 簡単に言えばCOCOMOにFP法の要素を取り入れたもの。
補充内容 EVMSで進捗を管理する • 全体価値、達成価値、実経費を求める • スケジュール差異とコスト差異を求める • スケジュール効率とコスト効率を求める • スケジュールとコストを予想する
アーンド・バリュー・マネジメント アーンド・バリュー・マネジメントとは、 予算および予定の観点からプロジェクトがどのように遂行されつつあるかを定量的に評価するプロジェクト管理の技法である。1967年に米国防総省の調達規則の一部として制定された C/SCSC(Cost/Schedule Control System Criteria)が元となっている。1990年代、クリントン大統領政権下における国家的プロジェクトのパフォーマンス改善を通じて見直され、発展してきた。プロジェクトマネジメント知識体系ガイド (PMBOK) の2000年版では、コスト・マネジメントの技法として言及されて (7.4.2.3) いる。進捗の進み/遅れのような指標(スケジュール差異)も日数/時間という単位ではなくコストを単位として求められる点に特色がある。
補充内容 EVMSで進捗を管理する アーンド・バリュー・マネジメントをプロジェクトに適用しようとするプロジェクト・ マネジャーには 以下に挙げる基本情報が必要である。 • ワーク・ブレークダウン・ストラクチャー(WBS, Work Breakdown Structure) 階層化され詳細化された、全てのプロジェクト構成要素のリスト • プロジェクトのマスター・スケジュール(PMS, Project Master Schedule) 各タスクの納期と担当者が示されたガントチャート • 計画価値(PV, Planned Value) 当該期間末までに完了しているものとして計画された作業の予算 • アーンド・バリュー(EV, Earned Value) 当該期間末までに進捗した作業を、その作業の計画価値に対する比から評価した価値 • 実コスト(AC, Actual Cost) 当該期間末までに実際に投入した総コスト • 完成時総予算(BAC, Budget at Completion) プロジェクトの完了時点におけるPV
補充内容 EVMSで進捗を管理する 次のような評価値を算定することができる • コスト差異(CV, Cost Variance) EV - AC(0以上であれば良好) • スケジュール差異(SV, Schedule Variance) EV - PV (0以上であれば良好) • コスト効率指数 (CPI, Cost Performance Index) EV÷AC(1以上であれば良好) • スケジュール効率指数 (SPI, Schedule Performance Index) EV÷PV(1以上であれば良好) • 完成時総コスト見積り(EAC, Estimate At Completion) AC + (BAC - EV)÷CPI
EAC 完了予測コスト PV ベースライン VAC:完成時での差異 AC 実コスト EV アーンドバリュー コスト BAC 完了予算コスト PV ベースライン AC EV CV:コスト差異 予測のプロジェクトの時間遅れ SV:スケジュール差異 コスト表示 EV SV:スケジュール差異 期間表示 計画完了時点 現時点 時間 EVMS (Earned Value Management System)
EVMS:Erned Value Management SystemEVMS:Erned Value Management System ・BCWS Budgeted Cost of Work Scheduled =>PV 計画された作業に対する予算化されたコストのこと。一般にS字カーブを描く。 計画された価値 PV Planed Value という。 これが 進捗測定用 ベースラインとなる。 ・BCWP Budgeted Cost of Work Performed =>EV 指定された段階で完了した作業に対する計画上の予算化されたコストのこと。完了したWPの予算化されたコストの累積で計算する。 獲得EV Earned Value という。 ・ACWP Actual Cost of Work Performed =>AC 指定された段階で完了した作業に対する実際に費やされたコストのこと。間接費も含まれる。 実コスト AC Actual Cost という。 ・CV Cost Variance CV=EV-AC 実際に処理した作業にかかったコストの計画値からの差異 ・SV Schedule Variance SV=EV-PV 実際に処理した作業の計画からの遅れまたは進みの絶対値 ・EAC Estimate At Completion EAC=AC+(BAC-EV)/PF 完成時予測総コスト PF Performance Factor(CPIor SPI or CPI×SPI) ・VAC Variance At Completion VAC=EAC-BAC 完成時予測総コストと計画時総コストの差異 ・CPI Cost Performance Index CPI=EV/AC 実施した作業の計画のコストの実質コストに対する比率の指標 ・SPI Scheduled Performance Index SPI=EV/PV実施した作業の計画のコストの計画コストに対する比率の指標 ・TCPI To Complete Performance Index (BAC-EV)/(EAC-AC) 現時点以降のCPIを表す。
EVMSによる進捗管理手法 1.CV、SVが10%の閾値を越えると異常と言う判断を下す。 2.CPI、SPIが0.9を下回る場合を異常と判断する。 異常を発見一時は、何らかの対応策をとる。 また、CV、SV、CPI、SPIが7回連続して悪化の傾向を示したら、 そのプロジェクトまたはWPを重点管理する。 ☆ VAC<CV 最終結果が現在地よりもよくなるという報告が上がったらおかしいと判断できる。 ☆ TCPI>CPI 現時点以降のCPIが過去のCPIより改善される報告が上がったらおかしい。 ☆ 算出したEAC>>報告された完成時総コスト 完成時総コストがEACよりも大幅に改善された報告書はおかしい。 ★ 変更管理 CCB Change Control Board の判断を仰ぐ EVMSの基盤となるベースラインはスコープ(マネジメントまたは成果物)の変更が 行われたときのみ変更となる。つまり予算の見直し。 ・プロジェクト全体の変更管理 スコープ、スケジュール、コスト、品質、契約・・・の変更管理 EVMS:Erned Value Management System
PV(BCWS) <計画予算コスト>その時点までにどれだけの仕事が終わっていなければならないか EAC EV(BCWP) <出来高>実際にはどれだけの仕事が終わっているのか コスト(円) AC VAC AC(ACWP) <実際発生コスト>終わった仕事にいくら費用がかかったのか PV BAC CV CV (PV-AC) <コスト差異> CV=正:予算以内 CV=負:予算超過 SV SV (PV-EV) <スケジュール差異> SV=正:計画より早い SV=負:計画より遅れ EV CPI (EV/AC) <コスト効率指標>CPI>1:コストが計画より少ない CPI<1:コストが計画より多い SPI (EV/PV) <スケジュール効率指標>SPI>1:作業が計画より早い SPI<1:作業が計画より遅い 現在 納期 日 BAC(Total budget) <完成時総予算> EAC <完成時総コスト見積り> VAC (BAC-EAC) 完成時での差異 ⑧進捗を管理する <EVMS(アーンドバリュー分析> (アーンドバリューとは、出来高のこと)
今日の内容 コスト・マネジメント
第8回. コスト・マネジメント 8.1 資源計画 8.2 コスト見積り 8.3 コストの予算化 8.4 コスト・コントロール 8.5 システム開発における考慮点
コスト・マネジメント 資源計画 コスト見積り コストの予算化 コスト・コントロール コスト・マネジメントのプロセス • コスト・マネジメントは次の図に示す 4つのプロセスがある。 計画のプロセス 計画のプロセス 計画のプロセス コントロールのプロセス
インプット ツールと技法 アウトプット 1.ワーク・ブレークダウン ・ストラクチャー(WBS) 2. 過去の情報 3.スコープ記述書 4.資源プール記述書 5.組織の方針 6.アクティビティ所要期間 見積り 1. 専門家の判断 2.代替案の識別 3.プロジェクトマネジ メント・ソフトウェア 1.資源に対する 要求事項 8.1 資源計画 資源計画
インプット ツールと技法 アウトプット 1.ワーク・ブレークダウン ・ストラクチャー(WBS) 2. 資源に対する要求事項 3.資源レート 4.アクティビティ所要期間 見積り 5.見積り関連刊行物 6.過去の情報 7.勘定科目表 8.リスク 1.類推見積り 2.係数モデル見積り 3. ボトムアップ見積り 4.コンピュータ・ツール 5.他のコスト見積り手法 1.コスト見積り 2. 詳細資料 3.コスト・マネジメント 計画書 8.2 コスト見積り コスト見積り
定義 機能設計(分析) システム設計 開発 導入 適用 システムの 目的を定める 機能設計 プロジェクト計画 機能設計レビュー システム基本設計 システム詳細設計 設計レビュー プログラム設計 プログラム製作 システムテスト システムテストレビュー 納入/設置 システム 導入支援 システム 適用支援 保証サポート 8.2 見積り段階と見積り方法の適用例 フェーズ タスク 初期見積り 概算見積り 詳細見積り ・ 類推見積り ・ 係数モデル見積り ・ 係数モデル見積り 例: (画面数+帳票数) 例: SPR法 例: IFPUG法 X定数 ・ 係数モデル見積り ・ ボトムアップ見積り ・ ボトムアップ見積り 例: Early FP法 ・ ボトムアップ見積り
インプット ツールと技法 アウトプット 1.コスト見積り 2. ワーク・ブレークダウン ・ストラクチャー(WBS) 3.プロジェクト・スケジュール 4.リスク・マネジメント 計画書 • 1.コストを予算化する • ツールと技法 1.コスト・ベースライン 8.3 コストの予算化 コストの予算化
コストの見積りと予算の配賦の方法 • 実績ベースの見積り • 分析ベースの見積り • 統計的総和による見積り • 予算の配賦
インプット ツールと技法 アウトプット 1.コスト・ベースライン 2.実績報告書 3.変更要求 4.コスト・マネジメント 計画書 1.コスト変更管理システム 2.実績測定 3.アーンド・バリュー ・マネジメント(EVM) 4.追加の計画 5.コンピューター・ツール 1.コスト見積り改訂版 2.予算更新版 3.是正処置 4.完成時総コスト見積り 5.プロジェクト終結 6.教訓 8.4 コスト・コントロール コスト・コントロール
8.5 システム開発における考慮点 • 資源計画では、契約書、プロジェクト計画書、WBSに基づいて明確にする項目. • コスト見積りでは、プロジェクト予算として含める項目. • コストの予算化では、システム開発における予算を、通常は3種類で算定する。 • コスト・コントロールはアーンド・バリュー・マネジメント(EVM)を使用して行う。
8.5.1 システム開発における考慮点① • 資源計画では、契約書、プロジェクト計画書、WBSに基づいて明確にする項目. ① 所要スキルと所要人数 ② 設備 ③ 購入ソフトウェア、開発ツール、検査ツールなどのソフトウェア、及び購入データや購入する知的財産権 ④ サービス ⑤ プロジェクト作業場所、備品、消耗品
8.5.2 システム開発における考慮点② • コスト見積りでは、プロジェクト予算として以下の項目を含める。 ① 労務費(クラス別単価を使用) ② 調達費(請負外注費) ③ 設備費(ハードウェア機器) ④ ソフトウェア費(購入ソフト・開発ツール・検査ツール等) ⑤ サービス費(保守費、教育費、セットアップ費) ⑥ 経費(フロア費、用力費、設備・消耗品など)
8.5.3 システム開発における考慮点③ • コストの予算化では、システム開発における予算を、通常は以下の3種類で算定する。 ① プロジェクト見積り原価 (システム開発のための希望単価をベースに算定) ② プロジェクト受注金額 (受注競争のために出した戦略的金額であり、適正マージンを含む) ③ プロジェクト予定原価 (リスクや値引き交渉などの原価削減努力を考慮した原価であり、 ベースラインとする)
8.5.4 システム開発における考慮点④ • コスト・コントロールはアーンド・バリュー・マネジメント(EVM)を使用して 次のように行う。 ① 作業の出来高は成果物ベースで評価する。 ② 費用は期間に運動した費用のみ抽出する。 ③ 作業に要した費用は実績作業期間と作業者の単金を掛け合わせて 算出する。 ④ 出来高グラフで表示する。 ⑤ 予実対比でプロジェクト完了時のコストを予測 ⑥ コストが超過しそうであれば是正処置を考える。
復習とまとめ • ケーススタディ
プロジェクト マネジメントの 主要要件 立ち上げ 計画 実施 コントロール 完了 コアプロセス 促進プロセス 1. プロジェクト 統合マネジメント 全体の変更管理 プロジェクト 開発計画 プロジェクト 実行計画 開始 範囲の計画 範囲の確定 範囲の変更管理 2. プロジェクト 範囲のマネジメント 範囲の定義 活動の定義 3. プロジェクト 時間マネジメント スケジュール 変更管理 活動の一連性 活動期間の見積 スケジュール開発 リソース計画 コスト変更管理 4. プロジェクト コストマネジメント コスト見積 コスト予算策定 クオリティ計画 クオリティ保証 5. プロジェクト クオリティ マネジメント クオリティ コントロール 6. プロジェクト 人材マネジメント 組織計画 チーム開発 メンバーの確保 情報提供 成果報告 完了管理 7. プロジェクト コミュニケーション マネジメント コミュニケーション 計画 リスクの明確化 8. プロジェクト リスクマネジメント リスクマネジ メント計画 リスクの モニタリングと コントロール リスクアセスメント リスク量の算出 リスク対応計画 PMの枠組み
2000年度版 計画のプロセス コアプロセス 作業順序設定 スコープ計画 立上げのプロセス 作業定義 スケジュール作成 所要期間見積り スコープ定義 予算設定 プロジェクトの立上げ 資源計画 コスト積算 プロジェクト計画策定 リスク管理計画 補助的プロセス 品質計画 プロジェクト組織計画 要員の調達 コミュニケーション計画 リスクの定性分析 リスクの定量化 対応策の策定 リスクの特定 調達計画 引合計画 コントロールのプロセス 遂行のプロセス 進捗管理 プロジェクト計画の実施 変更管理 補助的プロセス 補助的プロセス スコープの照合 スコープ変更管理 情報の配布 プロジェクトチームの育成 成果物の検収 コスト管理 スケジュール管理 リスク管理 品質管理 契約管理 品質保証 発注先選定 引合 終結のプロセス 契約の完了 プロジェクトの完了手続き 出典:「PMBOK」をもとに作成
WBS(Work Breakdown Structure)の作成 スコープ定義書はプロジェクトのWBSを作成すること。 WBS-OBSマトリックス 作業1 作業3 作業2 WP WP WP 作業4 作業5 作業6 作業7 WP WP WBS CA 組織4 CA 組織2 CA 組織5 OBS 組織1 組織6 CA CA 組織3 組織7 CA スコープの定義と責任分担 WP:Work Package CA:Cost Account
RAM:responsibility assignment matrix : 責任分担表 S:承認、A:審査、P:支援 担当 アクティヴィティ
PDM法 PDM : Precedence Diagramming Method ADM法 仕事B 仕事C 仕事D 仕事A 終了 開始 仕事E 仕事G ADM : Arrow Diagramming Method 仕事B 仕事C 仕事A 仕事D 開始 終了 仕事E 仕事F 仕事G ネットワークロジック図(スケジュール作成) 仕事F
ガントチャート PERT 仕 事 期 間 A B C D 高 最可能値(m) PERT加重平均=期待値 =(a+4×m+b)/6 ベータ分布 悲観値(b) 楽観値(a) 低 短 長 所要期間予測 ガントチャートとPERT
Project Budget プロジェクト予算 MR 実績測定ベースラインPMB(performance measurement baseline) UB 割り当てされた予算 PMに与えられた予備費 コストアカウント部分 未確定部分 PP WPに割り当て 今割り当てられない予算 直接 AE 間接 計画中のパッケージ 部門間接 MR:management reserve UB:undistributed budget PP:planning package AE:apportioned effort WP:work package PMB:performance measurement baseline 予算の配賦方法
作 業 内 容 リスト ①プロダクツと明確な目標を設定する ②プロダクツを管理可能なところまで分解する ③作業の相互関係を考える ④作業の所要期間を見積もる ⑤スケジュールを作成する ⑥コストを積算する ⑦予算のベースラインを設定する ⑧進捗を管理する
①プロダクツと明確な目標を設定する ・プロジェクトが成功裡に完成したかどうか判断できる定量的な基準を示す。 ・定量的でない目標の設定(「顧客満足」など)は大きなリスクを伴う。 主要なプロダクツ プロジェクト 成果物・サービス コスト プロジェクトの 定量的な達成目標 品質 スケジュール <プロジェクトのメンバーとその顧客は、良く話し合い両者の合意を得る> <合意事項を文書化する>
レベル2 レベル1 レベル2 レベル3 プロダクツ レベル2 レベル3 レベル1 レベル3 ②プロダクツを管理可能なところまで分解する プロダクツを管理可能なところまで分解する手法 <WBS(Work Breakdown Structure)>
WBSの目的は、プロダクツを 管理可能なコンポーネントに分けること レベル2 管理可能なコンポーネントとは、 ①コスト、作業所要期間、資源所要量の正確な見積りが可能であること ②当該作業の責任と権限を明確化できること である レベル1 レベル2 レベル3 プロダクツ レベル2 レベル3 レベル1 レベル3 すなわち、PMは、プロダクツをWBSを用いて ①コスト、作業所要期間、資源所要量の正確な見積りが可能なところ ②当該作業の責任と権限を明確化できるところ まで分解する必要がある。 出典:「PMBOK」をもとに作成 どこまで分解するの? ②プロダクツを管理可能なところまで分解する
②プロダクツを管理可能なところまで分解する②プロダクツを管理可能なところまで分解する WBS作成の留意点 <MECEに分ける> MECEとは、 Mutually =要素が互いに Exclusive =重複がなく(原意:排除しあっていて) Collectively =集めると Exhaustive =全体を尽くす