全般

プロジェクトマネジメント

投稿日:2021年7月4日 更新日:

プロジェクトマネジメントの原則について、解説します。

■プロジェクトとは何か

プロジェクトは、組織形態の一つであり、以下のような特徴があります。

・目的(何をやるか、やりたいか)が明確である
・目標(Q(品質)、C(予算)、D(納期))が決まっていある
・期間限定(数か月~数年)である
・ジョブ型の要員配置である

会社員であれば、所属している部や課などの組織がプロジェクトそのものという場合もあります。また、組織に属していながらスピンアウトするような形でプロジェクトが組成され、一定期間、参画するケースもあります。オンデマンドに、大小のプロジェクトを発足させ、目の前の仕事に集中できる環境をつくることで、仕事の効率を上げ、成果を上げていきます。

プロジェクトの仕事は、担当範囲と役割が明確に決められたジョブ型です。参加するメンバーは、決められた期間と予算内で、求められる品質の成果を上げることに責任を持ちます。

プロジェクトをPDCAサイクルに当てはめると、プロジェクト計画(Plan)とプロジェクトマネジメント(Do・Check・Action)となります。プロジェクトは、期間限定の小さな会社であり、それを運営することは経営と同じです。

■プロジェクト計画

プロジェクトの成否は、目標であるQCDの厳守、その結果、目的がどのレベルで達成されたのかで判断されます。

実際に遂行する前に、緻密な計画を策定することが、プロジェクトの成否を左右します。プロジェクト計画として作成すべきものは、主に以下の5つです。

1)体制

プロジェクト内の役割を決め、関係を明確化し、体制を組みます。原則、リーダが一人いて、メンバーは同列(フラット)となる2階層とします。プロジェクトのコミュニケーションパスは短くすることが鉄則です。
プロジェクトには、アウトソース先の社外の人が参加することもあります。

特に、ソフトウェア開発など労働集約型のプロジェクトでは、リーダだけが社内の人で、残りのメンバーは社外の要員ばかりで構成されることは珍しくありません。品質(Q)と納期(D)を確保するため、求めるスキルと知識を保有する外部の人材を費用(C)を使って集めます。
結論を言えば、労働集約型のプロジェクトでは、いかにして、予算にマッチしたアウトソース先を見つけて最適な人材を確保するかに、プロジェクトの成否がかかってきます。

2)スケジュール

スケジュールは、縦軸にタスク、横軸に時期を表した2次元の表で表現されます。スケジュールにはレベルがあって、最上位のスケジュールをマスタースケジュールといいます。マスタースケジュールのタスク毎のスケジュールがつくられます。さらに、そのスケジュールのタスクのスケジュールをつくり、メンバー単位のスケジュールまで落としこんでいきます。

スケジュールは、プロジェクトの終わりである納期を決めるために作成します。スケジュールを決める方法には、ボトムアップとトップダウンの2つがあります。

ボトムアップは、タスクが割り当てられたメンバーが決めた必要な期間を集めて、マスタスケジュールにすることで、納期が決まります。

トップダウンは、いわゆる「スケジュールを逆に引く」ことです。納期を先に決め、それに合わせて、タスクのスケジュールを決めて、マスタスケジュールをつくります。

納期は、顧客や経営層などによって、あらかじめ決められているケースも多く、原則、トップダウンでスケジュールが決められます。納期に合わせて、メンバーのスケジュールを調整しながら、矛盾がないよう緻密に組み合わせる必要があります。

スケジュールは、クリティカルパスメソッドの考え方が原則になります。個々のタスクの期間を明確にし、他のタスクの終了の時期と他のタスクの開始の時期が合うように、組んでいきます。
その結果、ある時期に重なるタスクの中、最長期間のタスクがつなげた全体の期間の完了時期が納期となります。このつなげた一連のタスクをクリティカルパスといいます。

納期を短縮するには、クリティカルパスを短縮しなければなりません。そのためには、前のタスクの完了を待たずに並列に次のタスクを開始することなどを検討します。それでも、要望される納期に間に合わなければ、さらに人を投入する、タスクの作業内容を削るなどを検討することになります。

また、スケジュールは、必要とされる物や情報を調達できる時期によって大きく影響されます。タスクを開始する時期に、必要とされる物や情報が揃っていないと開始できないからです。
たとえば、作業で使う機材やデータ、インプットとなる手順書や参考資料など、漏れなく揃っていなければ、無駄な待ち時間を過ごすことになります。必要な物や情報をすべてリストアップし、必要な時期と調達状況がわかるようにします。

3)予算

プロジェクトの予算を決めます。プロジェクトの予算の大半は、人件費で占められます。人件費は、プロジェクトの状況によっては、雪だるま式に膨れ上がっていきます。
このようになってしまう要因の一つには、人件費の見積もり精度にあります。人件費には、人月単価という「価格」があるにはありますが、いわゆる時給です。単純に、作業時間が増えれば、総額は増えていきます。

この作業時間が工数であり、工数を見積もることは、極論を言えば、占いのようなものです。計算式やデータなど同じ尺度のデータがあるわけではなく、見積もる人の経験と勘に従って、はじき出されます。
そうなると、過去の経験したタスクであれば、見積もりの精度を高いですが、想定外の事象が起こったり、新しい作業が入ると、とたんに作業時間が増えます。その結果、一人だけであればよいですが、それが複数のメンバーで発生すると工数が膨れ上がっていきます。

見積もりの精度を確保するには、タスクの内容を具体化すること、適度にリスク分を加味することの2つが必要です。

4)プロセス

プロジェクトのタスクを遂行するための手順、ルールを決めます。これによって、成果物の品質を確保するとともに、プロジェクトを管理しやすくします。

品質とは、プロジェクトの成果物の精度のことです。精度を確保するには、品質を測る指標が必要となります。指標には、以下の2つがあります。

 ①レビューの累積時間と指摘された件数
 ②障害の発生件数

特に、障害については、その内容と発生原因を詳細に調査・分析することで、類似の問題を含んでいないか確認します。

このような指標を「メトリクス」と呼びます。メトリクスは、成果物をつくる途中で、データを収集しておかなければ集計することができません。あらかじめタスク内で測定ポイントをプロセスとして、決めておきます。


プロジェクトは、体制がエンジンだとすれば、予算は燃料であり、スケジュールはナビゲーションシステムに相当します。予算によって体制を動かし、スケジュールで示された方向に進んでいきます。

■プロジェクトマネジメント

プロジェクトマネジメントとは、プロジェクトの目標であるQCDを確保するための活動のことを言います。つまり、以下のことを監視し、是正することです。

 ①作業に漏れ、間違いがないか
 ②費用は枯渇しないか
 ③遅延がないか

プロジェクトが自律的に回っていくのであれば、何もすることはありません。放っておけば、成果物が得られます。しかし、プロジェクトは人の集まりであり、工場のような機械の集まりではありません。放っておくと、上記がようなことが発生し、いずれプロジェクトは停止します。

プロジェクトマネジメントとは、ルーティンワークの管理、非ルーティンワークの現状分析と問題解決の3つを行うことです。

①管理
進捗管理、品質管理、原価管理を定期的に行います。たとえば、週単位の進捗会議、工程毎のレビュー、日々の工数の集計などです。これらは、あらかじめ実施するタイミングと内容を決めておき、機械的に実施していきます。

②現状分析
プロジェクトは、工程が経過すればするほど混沌としていきます。そんな状況に振り回されているだけでは、さらに混乱します。
きちんと現実を見て、事実だけを整理することに注力し、埋もれている問題を発見していきます。

③問題解決
随時発生する大小の問題を継続的に解決することです。日々発生する問題を仕分けし、一覧で管理していきます。そして、丹念に一つづつ解決していきます。

QCDに関わる問題と、技術的課題など目的の達成にかかわる本質的な問題に分かれます。特に、本質的な問題は、メンバーのスキルを使って、解決のアイデアを出し、実行します。

管理は、プロセスで決められた手順、ルールに従って、淡々と実施します。管理には、知識やスキルはいりません。
しかし、問題解決はそうはいきません。目の前の問題を無視することなく、主体的・自律的に解決に向けた行動が必要となります。そのために、問題を掘り下げられる知識、解決策を立案・実行できるスキルが必要となってきます。

したがって、プロジェクトマネジメントで最も重要な能力は、管理能力ではなく、問題解決力です。
  
  問題解決力 >> 管理能力

ちまたでは、「プロジェクトマネジメント=管理」と思い込み、ただひたすら重箱の隅をつつくような管理「マイクロマネジメント」が横行しています。その結果、プロジェクトが失敗します。

問題解決力のない凡庸な人材に、プロジェクトを任せることほど危険なことはありません。


-全般

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

プログラミングの学び方

一般教養として、英語などの語学を学ぶ感覚で、プログラミングを習得したいと考える人が増えています。将来、仕事で使えるかもしれないと考えてるビジネスマンも多いでしょう。 ■プログラミングとは何か? プログ …

ITエンジニア教育論

ITエンジニアを育成するのは、容易なことではありません。特に、ITベンダーでは、せっかく採用した人材が使い者にならないと、雇い続ける限り、コストを生み出すだけのお荷物となり下がります。ITベンダーは、 …

ITエンジニア、問題解決のセオリー

ITエンジニアとって、設計スキルやプログラミングなどのソフトウェア開発作業に直結にする「ハードスキル」だけではなく、問題解決力、思考法、コミュニケーション能力などの「ソフトスキル」も必要とされます。「 …

ITプロジェクト

ITプロジェクトは、「ソフトウェア開発」を実行するという特徴を持ったプロジェクトです。ソフトウェア開発という特殊なスキルを持った人を決まった予算内でできるだけ多く集め、納期に向かって、全速で邁進してい …

ソフトウェア開発と年齢

一般的に言えば、エンジニアは、通常、働いた年月ともに、自然と知識と知恵が積みあがっていく職業です。しかし、IT業界で働くITエンジニアに関しては、そうとは一概に言えません。個人差が極端に大きく、何年や …