7.5~7.6 章末演習
担当:なの
章末演習7.5
いま手がけているシステムは、規模が2倍である ことを除いては、昨年構築したシステムととても よく似ている。昨年のシステムでは、出荷後1年 間に50個の欠陥が見つかった。いまのシステム を昨年のシステムよりも2倍速くリリースしたい と思っている。さて、出荷後1年間にどのくらい の数の欠陥が見つかると予測できるだろうか?現 在までのテスト工程の状況からすると、システム テストで発見される欠陥密度は50%までに改善 できている。どのような考え方ができるか、議論 しなさい。
内容を整理
時刻 欠
陥 数
システムテスト開始 出荷
50 個
50 個 昨年構築したシステムの の欠陥発見数(予測)
出荷
いま手がけているシステムの の欠陥発見数(予測)
システムテスト開始
規模が2倍 規模が2倍
2倍早くリリースしたい 2倍早くリリースしたい 発見された
欠陥密度50% 発見された
欠陥密度50%
? ?
1年 1年
回答(自分の考え)
昨年のレイリー曲線の式を考える
欠陥発見数は? 欠陥発見数は?
下記3つのデータがあれば手法2
を用いて式が算出できる 何週目?何週目?何週目?何週目?
・欠陥発見数が最も多かった週
・上記の欠陥発見数
・出荷日
今回のレイリー曲線の式を考える 昨年のレイリー曲線の式に下記要 素を加味して、今回のレイリー曲 線の式を予測できたら良い
なぁ・・・
・規模が2倍
・システムテストで発見される欠陥密度は50%
・リリース日を2倍に早めたい
Kが増大? Kが増大?
ギブアップ _|  ̄ |○ ギブアップ _|  ̄ |○
ジョーンズのグラフ から求める?
cが改善? cが改善?
tが変更tが変更
章末演習7.6
各モジュールの規模が小さく(100 LOC 未
満)なるようにアーキテクチャ設計をすることは
、システム内に含まれる欠陥を減らす良い方法で ある。○か × か?
回答7.6
× ツ! バ
むしろ欠陥が増えるかも?
理由
モジュール=いくつかの部分的機能を集め、まとま りのある機能を持った部品
(例: C 言語の関数郡)
モジュールA 100
LOC モジュール B 80
LOC
モジュール C 90
LOC モジュール
モジュール多数 多数
100LOC 未満 メンテナンス性ダウンメンテナンス性ダウン
平均的なモジュール複雑度
KLOC
あ たり の 欠 陥 数
欠陥密度高 欠陥密度高
バスタブ曲線
200~750LOCが適当 200~750LOCが適当
レビュー効率ダウン レビュー効率ダウン
ユニットテスト効率ダウン ユニットテスト効率ダウン
時刻 欠
陥 発 見 数
システムテスト開始 出荷
50 個 50 個
1年
時刻 欠
陥 発 見 率
出荷
いま手がけているシステムの 欠陥発見率(予測)
システムテスト開始
? ?
1年