ソフトウェア開発特論Ⅰ
履修していないけど、PSPの話だから出てみようと思った。 PSPはスクリプトを使ってログを記述する PSPプロセススクリプト 入力条件(問題記述、プロジェクト計画概要、以前の実績データ) 計画立案(機能記述の入手、LOCの見積、計画の作成および入力) 設計 コード コンパイル(および修正) テスト 事後分析(実績の記録) ★結局、コーディングに限らず仕事の進め方を抽象化してPSPが適用できればいいわけだ(cf.ドキュメンテーション) 製品・品質・欠陥 品質 ユーザーにとって重要な能力を提供する 欠陥 ユーザーのニーズを満足させるプログラム能力を損なう全てのもの コードレビュースクリプト インクルード(import) 変数の初期化(起動時・ループ開始・関数入力・インスタンス生成) 関数呼び出し(関数の型、引数の型) 識別しの一貫性、スコープ 行送り・間隔(インデント) 論理演算子 () ★コードレビュー(CreW Java版) ※Eclipseで何とかなるものはチェックしない 属性の初期化(宣言時・コンストラクタ・initialize()メソッド) クラス名・メソッド名・フィールド名(命名規則およびUMLを元に) 設計時にUMLで一貫性などは保障されているはず(ローカル変数は対象外) if文内の論理演算子(t/fの間違い、論理性、わかりやすいか) コメント(当たり前) シーケンス図との整合性(変更したなら何故か?を含めて) 欠陥の予測 欠陥密度(1000行辺りの欠陥数) ★PSPは古い!今でも使える部分はあるが。とはいえ、定量的にコーディングを管理しようとする姿勢は非常に評価できる