関連付け情報の多様化,高精度化
PSPでは,
分析する上での指標としては以下のようなものがあります。
- ●生産性
- 時間とLOCとの関連 → LOC による単位作業時間の成果を計測する
- ●品質
- 時間と欠陥の関連 → 静的解析ツールを活用し,
欠陥を計測する - ●カバレッジ:
- 時間とテストカバー率の関連 → 自動ビルドツールなどによるテスト自動実行結果の計測
LOC による単位作業時間の成果を計測する
各自の作業時間とコード生成量(LOC)の関係は,
- 作業時間データの取得(iCal 形式データの集計)
- コード作成量の取得(構成管理ツール経由で取得)
- 上記データの関連付け
アスケイドでは,
- ※)
ちなみに, アスケイドにおけるLOC の定義ですが, コメントも実装仕様を説明する上で必要な作業であるため, プログラムと同等に扱うという考えから 「コメント行を含むプログラム全て」 を計上対象にしてます。
ツールを活用し欠陥を計測する
最近は品質向上のためのツールが多く提供されており,
- CheckStyle
- コーディング標準に従ったJavaコード記述を支援する開発ツール
- PMD
- Javaのソースコードを静的に解析して潜在的なバグを見つけるツール
- FindBugs
- Javaのクラスファイルを静的に解析して潜在的なバグを見つけるツール
- Jlint
- Javaのソースコードおよびクラスファイルを静的に解析して潜在的なバグを見つけるツール
現在アスケイドではこれらのツールを導入して欠陥そのものの検出は行っておりますが,
これら,
無理をしないPSPのススメ
PSP における欠陥の記録は,
- 計測対象とする作業の詳細化
(実装, コンパイル, 修正作業はすべて分別) - (構成管理ツール連携時には)
計測作業単位に応じたこまめなコミット
などといった事が必要となってきます。実際に,
とはいえ,
PSPからTSPへ
PSPの上位に位置するTSP
TSP(Team Software Process)とは
TSPはその名の通り,
TSP への発展的展開
PSPに習熟することで,
- 自分自身の作業の生産性を把握できる
- 作業計画をたててコミットメントできる
- 品質向上における問題点を把握し,
その改善を進めることができる
PSPを導入し,
さらに,
みなさんもぜひPSPを導入してみてはいかがでしょうか。