#author("2024-02-02T08:14:22+00:00","","") #author("2024-02-02T08:27:28+00:00","","") [[卒論用文章メモ 中市]] \section{自主学習の予定作成におけるフロート} プロジェクトの進捗管理を行う上で,目標達成のためにタスクやプロセスを可視化する必要がある. 特定のタスクが終わらなければ,作業を開始できないタスクもあるので,タスク間の関連性を把握しておかないと,致命的な遅れが発生することがあるからである. CPMとは1950年代に開発されたプロジェクトマネジメント手法で,プロジェクト完了のために実行しなければならないクリティカルなタスクを特定する手法であり, Crithical Path(クリティカルパス)とは,プロジェクトの全工程を最短時間で完了させるために重要な作業経路のことを指し, プロジェクトの一連の工程を結んだ時,最も時間のかかる最長の経路がクリティカルパスとなる[1]. プロジェクト規模が大きくなると単純にタスクの数が増え,タスク間の依存関係も複雑化するため,遅れが生じるとプロジェクト全体の遅延に繋がるようなタスク であっても把握するのが難しくなってしまう.このような遅延が許されないタスクを把握し,遅れないように対策することができる. CPMは現代においては自動化ツールによって簡単に作成されるように進化し, プロジェクトプランニングにおいて不可欠な一部となっている[2]. クリティカルパスを導出するメリットは複数存在する. \begin{enumerate} \item スケジュールの作成に役立つ点.\\ また,プロジェクトの締め切りは,思いがけず前倒しになることがある.そのような突然のスケジュール変更に直面したときも, 前もってクリティカルパスを把握しておけば短縮できる場所を探し,柔軟に対応することができる. クリティカルパスがそのままプロジェクト全体にかかる最も時間のかかる最長の経路となるため,作業日数や必要工数も明瞭になる. プロジェクト全体の流れとクリティカルパスの把握により,クリティカルパス以外のタスクで納期あるいは工数を調整するなど, 効率的なスケジュール管理ができる. クリティカルパスから導き出せるものとして,以下タスクの開始・終了がある. \begin{itemize} \item ES(Early Start):最短でタスクを開始できる期間 \item EF(Early Finish):最短でタスクを完了できる期間 \item LS(Late Start):最遅でタスクを開始する期間 \item LF(Late Finish):最遅でタスクが終了する期間 \end{itemize} これらを使用して,スケジュールを作成していくことになる. [3] また,プロジェクトの締め切りは,思いがけず前倒しになることがある. そのような突然のスケジュール変更に直面したときも,前もってクリティカルパスを把握しておけば短縮できる場所を探し,柔軟に対応することができる. クリティカルパスがそのままプロジェクト全体にかかる最も時間のかかる最長の経路となるため,作業日数や必要工数も明瞭になる. プロジェクト全体の流れとクリティカルパスの把握により,クリティカルパス以外のタスクで納期あるいは工数を調整するなど,効率的なスケジュール管理ができる. また,プロジェクト内タスクの依存関係をネットワーク図で示せるため, 並行して行えるタスクや優先すべきタスクを視覚的に分別してスケジュールの作成が可能である クリティカルパスにおけるネットワーク図とは,作業を時系列で示すフローチャートのことで, タスクごとにボックスを作り,タスクの依存関係を矢印で図示するものである. \item タスクの優先順位をつける点. クリティカルパスと比べたフロートを求めることができる. フロートとは,後続するタスクやプロジェクトの終了日に影響が出ない,タスク遅延の許容範囲のことである. フロートを見極めておくと,プロジェクトの柔軟性を判断するのに役立つ. クリティカルなタスクではフロートはゼロになる.フロートが正の値であるタスクは非クリティカルパスに属し, フロートの期間内であれば,遅延してもプロジェクトの完了日に影響は出ない. フロートには「トータルフロート」と「フリーフロート」の2つのタイプがあり,それぞれで計算方法が異なる.\\ トータルフロートとフリーフロートの計算方法 \begin{itemize} \item トータルフロート\\ プロジェクト終了日の遅延や,スケジュール制約条件からの逸脱が出ない範囲で, ある作業の開始を最早開始日から遅らせることができる期間. トータルフロートは「LS - ES」または「LF - EF」で算出する. \item フリーフロート\\ 後続のタスクに遅延が出ない範囲で,ある作業の開始を遅らせることができる期間. フリーフロートは,2つ以上の作業に共通して1つの作業が後続する場合のみに使用される. フリーフロートは「ES (次のタスク) - EF (現在のタスク)」で算出する \end{itemize} \\[4]. プロジェクト内で優先度の高いタスクを把握することで今後のスケジュールを円滑に行うことが可能である. クリティカルパスの作業を早急に終わらせることによって,全体のスケジュールに余裕をもたせることも可能になる [5]. \item プロジェクトのボトルネックを導出できる点 ボトルネックとは,ワークフロー内で停滞や生産性低下など,良くない影響を与えている箇所を示す. プロジェクトの作業工程にボトルネックがあると,それ以外の工程が円滑に進められていたとしても, プロジェクト全体を通して多くの時間を要することになってしまう.その際,プロジェクトの全体像を把握していると, ボトルネックになり得るタスクが事前に把握できるため,トラブルが発生した場合のリカバリーやフォローのシミュレーションを高い確度で行えるようになる [4]. 学習者が学習する際,当日の体調の悪化や予期せぬトラブルの発生など,学習の進度が遅れてしまう要因は多数存在する. そのとき,CPMを使用した手法を扱うことで余裕を持った学習をすることができると考えた. \end{enumerate} [1]https://www.jooto.com/contents/critical-path/ [2]https://jp.smartsheet.com/critical-path-method [3]https://www.work-management.jp/blog/how-to-write-critical-path.html [4]https://asana.com/ja/resources/critical-path-method [5]https://lychee-redmine.jp/blogs/project/tips-criticalpath/ [6]https://chansato.com/doboku/network-schedule/ [7]https://rmc-oden.com/blog/archives/179724