| ドキュメント名 | 解説 | 様式番号 |
|---|---|---|
| バグシート | バグが発生したときに記述する | 7-01 |
再利用コンポーネントのテスト
| クラスレベルテスト | コンポーネント実装者(担当者) |
| パッケージレベルテスト | コンポーネント分析者(テスト管理者) |
パッケージの評価
コンポーネント要求の評価
システム要求の評価と同様に、コンポーネント分析フェーズにて定義されるコンポーネント要求自身の要求に対する評価を行う。
- 本当にコンポーネントユーザ要求を組み入れることが可能なコンポーネントであったか?
もし、そうでないとすれば、コンポーネントユーザの要求が組み入れにくかった原因はどこにあったのだろうか?
- 開発期間、開発工数を考慮されたコンポーネント要求であったか?
結果として、要求に基づいたスケジュールであったかどうかを判断する?
- コンポーネントユーザ満足度はどの程度か。
これは、ユーザに利用アンケートを取り、その集計結果によって判断しなければならないため評価フェーズの期間を越えて長期に調査を行うことが必要とされる。
- 柔軟にコンポーネント仕様の変更に応じたか?
システム開発からでたコンポーネント開発に対する要求の変更について柔軟に対応し、かつ、コンポーネントしてのコンセプトが崩れないよう配慮がなされただろうか?もし、コンポーネントユーザからの要求変更が相次ぎコンポーネントとしてのコンセプトが保てなかった場合、コンポーネントとして作り直す必要性を議論する。
コンポーネント要求に基づく評価
コンポーネント開発の中で作成されるパッケージ利用解説書は、開発するコンポーネントにおいて「何を作るべきか」という指標として開発中・開発後に使われるものでなければならない。つまり、パッケージ利用解説書は、開発中のコンポーネント設計の基本指針として、開発後の利用ドキュメントとして、有効に活かされなければならない。このようなパッケージ利用解説書に対する大前提を基にして下記の評価を行う。
- コンポーネントは要求を満たしているか?
パッケージ仕様書の要求条件に書かれている以下の要求項目について、要求を満たしているかどうか判断する。
- 機能面に対する要求
- 性能面に対する要求
- 信頼性に対する要求
- ユーザインタフェースに対する要求
- システム構造に対する要求
- 期間・工数に対する要求
- 拡張性に対する要求
- 要求に曖昧性がなかったか?
パッケージ仕様書の要求条件により、システム開発時にADG開発者と問題を引き起こした部分について、なぜADGと意志疎通ができなかったのか?また、もっと詳細に書くべきことであったのかということについて議論する。
- コンポーネント要求モデルは妥当なものであったか?
- 要求を理解する上で有効なモデルであったか?
- どの程度、次フェーズの設計指針に役だったか?
- 複雑なばかりで、設計フェーズに役立っていなかったのではないか?
- 単純なばかりで、設計フェーズに役立つ情報が欠落してはいなかったか?
- モデルに存在するオブジェクトは、コンポーネント要求に本質的に必要なオブジェクトであったか?
- アーキテクチャモデルがコンポーネント要求モデルをベースとして作成されたか?
開発されたコンポーネントの評価
開発されたコンポーネントを以下の項目により評価する。
- パッケージ開発環境標準の妥当性
コンポーネント分析フェーズで決められているパッケージ開発環境標準を使うことでどのようなメリットがあったか?また、デメリットがあったとすれば、それはどのような理由か?
- アーキテクチャモデルの妥当性
システム共通設計で使われるアーキテクチャモデルを前提としたコンポーネント設計として充分機能する構造であっただろうか。何か他に優れたアーキテクチャがなかっただろうか?
- ソースの品質
とりあえず動いてしまったと感ずる部分はないか?もしあれば潜在バグを疑うべきでありシステム設計者の責任においてコードインスペクションを行う。
- テストフェーズの評価
時間をかけたテストがなされたか。バグを修正したことで新たにバグを作ってしまうようなディグレードをテストによって発見できたか。また、ディグレードが頻発してしまった場合は、どこに問題があったのか議論する。
開発プロセスの評価
コンポーネント開発の開発プロセスについて、以下の項目により評価する。
- スケジュール
計画されたスケジュールと実際に実施されたスケジュールの食い違いはなかったか?もしあったとすれば、その原因はどこにあるか?
- ADGとの連携による開発
コンポーネント開発を依頼された際に早期にコンポーネント開発計画を立てたか?また、それに応じてコンポーネントを計画通り開発したか?
- ワークショップの有効利用
コンポーネント管理者は、決めるべき事を早期に決断するために再利用基盤ワークショップを有効に利用したか?
- 教育面
ODG開発チームに必要とされるシステム問題領域の教育が事前になされたか?また、その教育は有効であったか?ADGの開発者に対してオブジェクト指向に関する教育を積極的に行うことができたか?
- 開発スケジュールの変更と調整
開発内容の変更に伴う開発スケジュールの調整が円滑になされただろうか?もし、なされなかった場合は、その原因を追求する。
ドキュメントの品質
作成されたドキュメントに対して、下記の評価を行う。
評価項目 評価の方法 ドキュメントの必要性 コンポーネントドキュメントとして本当に必要だったのか? 使われなかったドキュメント なぜ使われなかったか?どうすれば使えたか、または、不必要なものか? 書くべきドキュメント なぜ書かなかったのか?その影響はどうだったか? 分厚いドキュメント なぜ分厚くなったか?意味のある情報か?改善策は? 適切な情報 ドキュメント利用者にとって適切な内容か?たとえば、保守と利用を混同して書いていないか? 古くなった情報 新しくする必要があるか?するとすれば何時やるか?
手順通りテストを行ったか?
パッケージの評価が客観的かつ、有意義な形でなされたか?