EASE創研

 ソフトウェア開発支援


 プロジェクトの見える化

■見える化のねらい
 ソフトウェア開発プロジェクトは,必ずと言っていいほど,多種多様な問題が発生します.プロジェクトの見える化の基本的な狙いは,カンと経験に頼っていたプロジェクト管理に,定量的な裏づけを与えることです.いかなる案件であれ,問題や課題の全く発生しないプロジェクトは存在しません.プロジェクトの失敗を防ぐためには,見える化によって問題の兆候を早期に発見することが重要となります.
 また,「見える」だけでなく定量的な裏づけによって問題箇所を具体的に「言える」ようになることも重要です.自己申告だけでは悪い報告が入ってこないこともあるため,問題が発覚したときには手遅れとなりかねません.きめ細かな分析に基づく定量的な裏づけによって,何が問題であるかを「言える」ことが重要です.見つかった問題は,プロジェクトの主要メンバーが,自らの開発プロセスの課題を自覚し,改善するためにも活用され,当該プロジェクトのみならず,次期開発プロジェクトにおけるプロセス改善にも役立てられます.
 定量データは,進捗会議をスピードアップさせる効果もあります.進捗会議では,現状確認のために多大な時間が費やされることが少なくありません.グラフ化された定量データによって開発の現状をすぐに確認できるようになると,進捗会議ではより重要な議題に集中できるようになります.

■見える化の効果
  • コーディングやテストの進み具合を客観的・定量的に把握できる.
    • 自己申告による進捗報告の裏づけを得ることができる.
    • コーディング/テストの遅れやテストの不足を把握できる.
      • 結合テストが不十分なまま総合テストに入っている,テスト工数の不足など
    • 管理者の認識とのずれを定量データから把握できる.
      • テスト工程での大規模な追加開発など,不自然な規模の増大を把握できる.
      • 外注管理のための基礎データの提供
  • 作業の手戻りとなる「変更」に着目した分析により,問題を小さなうちに発見できる.
    • ソースコードの変更規模や頻度を可視化することで,プロジェクトの遅延につながる不自然な手戻りを把握できる.
    • 手戻りの多いサブシステムやソースファイルを把握できる.
  • バグ票の分析により,開発プロセス改善の手掛かりを得ることができる.
    • 仕様の認識不足,修正時のチェック漏れ,ドキュメント間不整合など,開発プロセスの問題に直結するバグの発生状況を把握できる.
    • デグレードの率の算出,バグ混入工程―バグ検出工程の関係の分析によるバグ見逃し率の算出
    • フロントローディング率の分析による,上流工程でのバグ検出の実績・効果の評価
  • 開発チームごと,または,サブシステムごとの開発過程を知ることができる.
    • 開発チーム間,またはサブシステム間のデータを比較することで,問題を抱えているチームやサブシステムを把握できる.
  • 開発者に着目した分析により,作業分担状況を把握できる.
    • 負荷がかかっている開発者,多数の人間の関わるサブシステム,バグ修正の分担状況などが把握できる.
  • 進捗会議の資料として役立つようなグラフ化された定量データが得られる.
    • グラフ化された定量データにより,進捗会議での無駄な報告時間を省くことができ,重要な議題に集中できる.

 EPMツール

 EPM (Empirical Project Monitor)ツールは,平成15年度から文部科学省のリーディングプロジェクトである「e-Society基盤ソフトウェアの総合開発」の一環として,奈良先端科学技術大学院大学と大阪大学が産業界からの参画を得て実施したEASEプロジェクトで開発されたソフトウェア開発プロジェクト計測・可視化ツールです.
 EPMは,ソフトウェア開発におけるエンピリカルデータ(バグ件数,バグ内容,開発者のメール件数,仕様書,設計書,ソースコード等)の自動収集・グラフ化により,プロジェクトの見える化を行います.その結果を,開発者や管理者にフィードバックすることで,プロジェクトにおけるリスクの早期発見と対策を可能にします.また,EPMを用いて,組織内のエンピリカルデータを継続的に蓄積することで,類似プロジェクトからの設計内容やソースコードの再利用を促進でき,生産性や品質の向上が期待できます.
 平成19年度からは,オリジナルのEPMツールをより多様な環境に対応させるための開発や検証実験がIPA(独立行政法人情報処理推進機構)により進められています.現在,IPAによる機能強化版のEPMツールが利用できます.