従来のプロジェクト管理
近年、システム開発は、様々な開発手法やCI/CDによる自動化により、生産性が大幅に向上しています。一方でプロジェクト管理は、旧態依然のままで、人手で加工・投入した二次情報に基づく管理が中心となり、煩雑な管理に手間を取られているケースも見受けられます。一般的なプロジェクトではメンバーやサブチームなど下位の組織から報告を順番に受けていき、やっと全体を把握することができます。そのため時間がかかってしまい、後手になる対応が多く、課題となる場合があります。
また、プロセス・技術・環境のどの領域の生産技術についても常に新しいものが出てきており、多様化しています。デジタル対応やアジャイル開発、クラウド・SaaSなどがありますが、例えばLow-Code Platformを利用した開発では、ソースコードや設計書を明示的に作成しません。これらをユーザーは意識せず、ツールが暗黙的に対応し、完結しています。そのため、プロジェクト管理のやり方を変える必要があります。
さらに、従来の課題に加え、新型コロナウイルスの影響でリモートワークが増加しており、より一層プロジェクトの状況を把握するのが困難になっています。プロジェクトのメンバーの様子を知ることができず、悩んでいるのか順調なのか、なかなか把握しづらいといったコミュニケーション課題も発生しています。
今後のプロジェクト管理とは
メンバーに負担をかけず、「確認したい人が、確認したいものを、自分で知ることができる」管理が求められています。そこで、我々は一次情報を分析・活用することで本課題の解決に取り組んでいます。
一次情報の例としては以下のようなものがあげられます。
- 設計書
- ソースコード
- 静的解析の結果
- 単体テストの結果
- 結合テストの結果
- 作業時間
- Issue/チケット
- 課題管理簿
- QA票
- コミュニケーションで利用されるツール(Teams・Slack・Mattermostなど)
設計書の枚数やソースコードの行数、作業時間などの定量的なデータを分析し、リアルタイムな生産性・品質の指標値がダッシュボードに公開されることにより、プロジェクトの課題を即時に把握することが可能になります。
高度なプロジェクト分析
一次情報の中でも、特にリモートワーク増加で分析・活用の需要が高まってきているのが、チャットなどのコミュニケーションで用いられるデータです。コミュニケーションツールのログからメンバー間のコミュニケーション状況やチームの活性状況を知ることができます。(図の通り)
図:コミュニケーションの可視化の流れ
NTTデータでは、コミュニケーションを取っていればいいのではなく、頻度や期間・役割に応じた状況、コミュニケーションの内容など、可視化できる情報を増やし情報の価値を高める研究をしています。また、どのメトリクスが生産性に寄与するのか、どの数値が変われば生産性が高まるのかなどを調査しています。さらに、AIを組み合わせることでプロジェクトの状況診断を行い、生産性・品質の悪化につながる兆候を検知して、プロジェクト管理者に通知してくれる仕組みなども研究開発を進めています。
一次情報のみでのプロジェクト管理の注意点
従来のプロジェクト管理における報告では、定性的な情報が付与されているため、一次情報と二次情報で情報量が異なります。そのため品質の高いプロジェクト管理を行うためには、従来通りの二次情報も併せて活用したプロジェクト管理が必要です。知りたい情報や管理したい品質レベルに合わせ情報を活用することで、プロジェクト管理者だけでなく、開発者の負担も軽減することが可能となります。
多様化するプロジェクトに対応する最初の一歩
プロジェクト全体を、すぐに新しい管理に変えていくことは困難です。プロジェクトの中で、領域ごとに開発の期間や品質を戦略的に計画し、注力したい領域から変えていくのが定石となります。そのためには、アセスメントにより、プロジェクトの現状を把握することが最初の一歩となるでしょう。