SlideShare a Scribd company logo
1 of 8
Download to read offline
リアルタイム波形を用いた設計品質分析手法と総合分析環境の提案
 Proposal of design quality analysis technique that uses real time corrugate and
                           total analysis environment
             株式会社 NTT データ MSE モバイルソリューション事業本部 ネットワーク技術部
           Network Engineering Department, Mobile solution OHQ, NTT DATA MSE Corporation
                                            中島 憲一郎
                                         Kenichiro Nakajima
Abstract
 The environment that in real time totals and analyzes various metrics data is constructed between the
design process and the test process, and it proposes the technique for uniquely showing each unit of the
measurement as quantitative analysis result data in the respect graph. The respect graph where the
transition of the entire amount and the transition of the amount of the component were able to be
confirmed at the same time, and the amount of the change was emphasized was adopted. A down shot and
detailed feedback always became possible by confirming it multipronged. As a result, the case where an
early quality improvement was able to be achieved is described.

1.はじめに
 要件定義からコーディングに入る前までの設計段階におけるプロセス及び成果物の品質が,ソフトウェ
アプロジェクト全体の生産性向上と納期達成可否に,非常に大きな影響を及ぼすことは,以前より数多く
述べられてきている[1][2].
 しかし,実際にプログラムを動作させるテスト段階と比較し,設計段階では人の判断に依存する部分が
大きく,分析データの一面から品質を見極めることは,依然困難であることが多い.
 また,これらの分析は,工程終了後に行うことが多く,スケジュールが優先されコンカレントかつ複数イ
テレーションで同時並行開発が進む今の開発現場では,工程完了時点で詳細な品質分析報告を纏めて
いる時間もままならないのが実情であり,開発の早い段階で品質を見極め,前工程に戻るといった判断は
容易ではない.
 これらの課題に対し,開発者の負荷を上げること無く,設計工程からテスト工程を通じて,多様なメトリク
スデータをリアルタイムに集計・分析する環境を構築し,定量的分析結果データとして測定単位毎に面グ
ラフで一意に示す手法を提案する.全体量の推移とその構成要素の量の推移を同時に確認でき,かつ
変化量が強調される面グラフを,多面的に併せて見ていくことで,常に俯瞰的かつ細やかなフィードバッ
クが可能となり,早期の品質向上が図られた事例について述べる.

2. 背景と
   背景と課題
  これまで,筆者が関わるプロジェクトおいても,ソフトウェア品質向上には,上流での品質確保が重要と
捉え,早期品質向上の取り組みを行ってきた.その一つとして,品質管理担当者をプロジェクト専任で設
置し,開発のできるだけ早い段階で品質分析を行い,問題内容に応じて品質改善対策を打つといった管
理面の強化を試みてきた.上流工程での品質分析手法に関しては,「レビュー欠陥検出率(件/KLOC)」
「レビュー工数率(H/KLOC)」をベースとした閾値モデル,又はゾーンモデルを用い(図 1),実績値と計画
値の比較から品質の妥当性判断を行っていた.メトリクスデータは,品質管理担当者が,各開発チームか
らの報告値を集計し,週単位の進捗会の場で各開発リーダに分析結果のフィードバックを行うプロセスと
していた.

株式会社 NTT データ MSE モバイルソリューション事業部 ネットワーク技術部
Network Engineering Department, Mobile solution OHQ, NTT DATA MSE Corporation

神奈川県横浜市港北区新横浜アリーナタワー3F Tel: 050-471-8811
3-1-9, Shin-yokohama,Kouhoku-ku, Yokohama, Japan
レビュー欠陥検出率          レビュー工数率            散布図

                         図 1.分析手法

2.1.   上流工程における品質判断が
       上流工程における品質判断が困難
           における品質判断
 上記,指標値の扱い方に関しては,品質担当者,開発メンバー共に,十分に知識を有しており,妥当
性,品質判断基準等の扱い方([3],[4])もスキルを持っていた.しかし,約 100 人体制のプロジェクト規模に
なってくると,分析結果は「XX サブシステム,もしくは XX チームに問題がある」というような大括りの指導
的内容になりがちであった.さらに,完了時点における正規化された値では,作業途中で問題の変調が
あっても,その後全く何もなければ平均化されてしまう為,問題を見逃してしまう懸念もある.
 このような分析内容から更に深掘りするためには,開発現場に対して,詳細な分析「問題要因傾向に対
する分析」「レビュー内容に問題ないか」等の追加報告やヒアリングを求めることになり,すぐに分析判断
することは難しい.また開発現場にとっては,品質担当者へメトリクスデータを報告しても,再度自分達で
詳細に見直すことになり,負荷となってくる.その為,データ報告に対するモチベーションが低下し,デー
タ報告誤りや遅延,報告自体の形骸化といった悪循環を招くこともあった.
2.2.   工程完了時点の品質確認では遅
       工程完了時点の品質確認では遅い
                  では
 品質分析確認を,週単位で実施したとしても,従来の指標値では最終成果物の規模や欠陥数で決ま
る値のため,結局は工程が完了した後に,品質分析判断されていた.途中経過の変調を確認する手法と
して,レビュー済み設計書枚数を分母とした「レビュー欠陥率(件/頁)」を用い,状況を随時監視していく
管理図分析手法もある.しかし記述自体が抜けている場合,同じく正規化されたデータだけでは途中経
過の問題を捉えるのは難しい.
 前述のように工程完了時点での分析結果として,さらに詳細分析せざるを得ない場合,スケジュールが
優先される開発現場では,詳細な品質分析報告を纏めている時間もままならないのが実情である.特に,
コンカレントかつ複数イテレーションで同時並行に開発している場合,工程が完了した後では,既に次工
程に着工されており,工程完了時の分析結果を持って,再度前工程を見直すといった判断は,現実には
難しく,ほとんどがテスト工程を厚くするといった下流工程での品質確保施策に留まる傾向がみられた.

3.品質管理プロセス改善
     管理プロセス
  品質管理プロセス改善
 前述の課題に対して,従来の品質管理プロセス見直し,上流工程における品質分析判断の精度向上,
手戻り可能なタイミングで見直しを図る為の品質分析の迅速化,開発現場に分析の負荷をかけない為の
分析コストの低減化といった観点から,品質管理プロセス改善を図った.
3.1.   監視メトリクスの多角化とリアルタイム化
       監視メトリクスの多角化とリアルタイム化
         メトリクス
 工程完了後に算出可能な「レビュー欠陥検出率(件/KLOC)」「レビュー工数率(H/KLOC)」を用いた品
質分析判断だけでなく,上流工程での作業途中の品質をリアルタイムに分析していくこととし,工程途中
の測定可能な全てのメトリクスに対して,状況推移(図 2)を日々リアルタイムに見ていくトレンドモデルを検
討した.監視対象とする抽出メトリクスは図 5 内に示す.確認観点の多角化と詳細化により,その定性的傾
向から上流工程おける品質判断要素の拡充を図った.
3.2.   波形グラフを用いた分析確認の効率化
       波形グラフを いた分析確認の
         グラフ    分析確認
  分析の粒度をより細かくすると,データ確認量や確
認回数が増え,リアルタイムに品質状況をトレースして
いくには負荷となり,実用面で継続性や確認精度が低
下してしまう.そこで,傾向を大きく俯瞰的に捉えなが
ら,要所では詳細な分析を可能とするため,データの
異常兆候の検知に,心電図や地震検知でも見られる
ような変化量が強調される波形グラフとし,全体量の
推移とその構成要素の量の推移を同時に確認できる
面グラフを採用した(図 3).全てのメトリクスデータ別に
面グラフを多面的に重ねて見ることで,異常傾向を示
す波形と構成成分を瞬時に確認できるようにした(図          図 2.途中経過状況
4-1,2,3).
  今回,このようにメトリクスデータを面グラフ波形で表し,日単位でリアルタイムに波形状況を多面的に
監視していく手法を,リアルタイム波形分析手法と呼んでいる.

                                        ヒストグラム




                                         面グラフ




            図 3 構成要素が可視化され変化量が強調される波形面グラフを採用

3.3.   総合分析環境による分析確認の
       総合分析環境による分析確認の迅速化
             による分析確認
  さらに,品質分析に対する負荷低減と,工程の途中段階での迅速な分析フィードバックが行えるように
するために,日単位で,データ収集,品質分析状況を現場に通知する分析レポートシステムを構築した
(図 5).分析レ ポートは,前述の上流工程における分析手法を,同じく下流工程まで適用し,画一化
を図った.測定対象工程と測定対象メトリクスは図 5 にある通りである.メトリクスデータは,毎日夜間定時
刻に,各種記録表や成果物から自動で集計を開始し,集計分析レポートをプロジェクトメンバにフィード
バックするようにした.進捗報告書からは報告周期に合わせ,同じように集計を行うことで,現物ベースの
データ集計値と報告ベースのデータ集計値の整合性確認が取れるようにした.
  分析に用いる各種前提条件は,従来から作成している計画書等を元に自動で取得するようにした.例
えば,工程表から集計期間を,文書管理計画書からレビュー記録票等の格納場所を,構成計画書からは
測定対象バージョンと開発量集計データを読み込むといったように,そのプロジェクトで定義した固有の
情報を,プロセスに沿って可変でシステマティックに組み込むことで,計画変更,プロセス変更に対しても
自動で追随可能とした.プロジェクト管理者には,計画書類の適切な更新を依頼し,担当者には,従来プ
ロセス通り,決められた記録票,成果物,報告書類の記載と格納だけを依頼した.
  このように既存プロセスに沿って,分析レポートシステムを構築・運用することで,開発現場担当者には
集計・分析のために新たな負荷をかけることなく,計画書に従って従来どおりの開発プロセスを守ってもら
うだけで,日々,最新の分析結果レポートのフィードバックを可能とした.
前半        ①指摘が突出       後半   重要度別




                            バグ要因別




                            混入工程別




          ②特定機能に偏り
                            サブシステム別




                            レビューイ別




                            レビューア別




図 4-1 観点別レビュー指摘推移

          ③レビュー工数に偏り




     図 4-2 レビュー工数推移

                       ④レビュー枚数に偏り




     図 4-3 レビュー実施量推移
図 5 分析レポートシステム
4. 実践適用事例
   実践適用事例
     適用
 前述の手法を用いた実践適用事例を以下に述べる.適用対象プロジェクトはある民生用組込み機器
のミドルウェアに対し,新規格開発を行うプロジェクトで,数十名の開発者が約 2 年間,イテレーションを 4
つに分けて開発を進めるプロジェクトである.
4.1.   波形の傾向監視による気付き
       波形の傾向監視による気付き向上
              による気付
 日々,分析結果データから波形傾向の経過を追うことで,直近の状況との差異が顕著に見て取れるよ
うになった.図 4 は,機能設計工程のレビュー状況に対する実績データである.ここでのレビュー指摘数
には欠陥以外の誤記やコメントも含んでいる.一つの波形の色や形状の変化に着目し,プロジェクトメン
バ全員が目で見て確認していくことにより,平常時や周辺チームの状況と比べて,異なるかどうか捉え(図
4①),次の日には当該レビュー内容の状況に関して,すぐに振り返り確認することが可能となった.また
観点別に波形の構成成分を確認することで,従来,工程完了時点の纏まった分析では平均化され埋も
れてしまっていたレビュー途中経過の偏り傾向,重要度の高い指摘の偏りや,バグ要因の偏りといった兆
候(図 4②③④)を,細かく検知することが可能となった.
4.2.   波形の多面化監視による分析の
       波形の多面化監視による分析の多角化
               による分析
(1)観点別同時確認
   異常兆候に対する分析確認時,図 4 に示す面グラフ波形を重ね,多角的に見ることで,どの機能のバ
グで,誰と誰のレビューによって,いつ発生したか,どういったバグ要因で,その重要性等,時系列な傾向
分析も瞬時に併せて見て取れる.従来,工程完了時に正規化したデータで異常を確認し,その後,異常
内容の詳細を見ていくといった品質分析プロセスと比較して,即時その場で詳細確認が可能となり,迅速
な品質分析が可能となった.
(2)収束状況確認
   バグ要因別レビュー指摘数の波形(図 4-1)とレビュー実施量の波形(図 4-3)を重ねて見ることで,設計
前半の「レビュー指摘密度(件/頁)」と比較し,設計後半では低くなっている傾向が直感的に見て取れる.
もし,仮にこれが逆の傾向かつ,指摘の内容がバグ要因波形から欠陥指摘が大半であることが示された
場合,最終結果として「レビュー欠陥検出率(件/KLOC)」が計画値を満たしていたとしても,欠陥が採りき
れていない可能性があることに気付くことができる.さらに,レビュー工数(図 4-2)とレビュー枚数の波形
(図 4-3)を重ねてみることで,設計前半の「レビュー効率(頁/H)」と比較し,設計後半では,レビュー効率
が上がっている傾向が直感的に見て取れる.このように従来,関数モデルで観ていた収束予測分析に加
え,多面化監視によるトレンドモデルとして収束予測傾向も見て取ることができた.
(3)工程途中の状況分析
   前後工程や前後イテレーションの面グラフ波形の品質経過状況を併せて見ることで,あるレビュー工数
の突出状況が並行開発途中の過渡状態なのか,特定機能に偏った異常兆候なのか,見分ける視点を持
つことが出来た.図 6 は,並行で進む FD 工程と DD 工程のレビュー工数状況を重ねたものである.レビュ
ー作業のピークが FD 工程(図 6①)から DD 工程(図 6②)に移行していることが見て取れる.一方で,図 6
③の兆候から,レビュー作業の一部が DD 工程に移りきれておらず,再度 FD レビューの山が続いている
状態が確認できる.この変調に関して,仕様変更による追加レビューとなっているのか,DD レビューにお
いて FD 問題が発生した為,再度 FD をやり直しているのか,単なる入力ミスによる異常値なのか,FD レビ
ュー指摘状況,DD レビュー指摘状況のバグ要因面グラフと合わせて見ることで,問題分析対象かどうか
適切に識別できるようなった.

                           ①              FD レビュー工数状況
                                ③




                                ②         DD レビュー工数状況




                    図 6 工程毎のレビュー工数状況
4.3.   リアルタイム波形分析手法の応用事例
       リアルタイム波形分析手法の応用事例
             波形分析手法
   前章に述べた通り,品質分析に対する負荷低減化,迅速化のため下流工程を含め総合的分析環境と
して全体をシステム化した.その中で上流工程における品質分析精度向上だけでなく下流工程において
も従来とは別観点の分析確認を行うことができた事例について紹介する.
(1)上流工程でのレビュー傾向を踏まえたテスト項目内容の状況確認
   テスト項目の質と密接に関わってくるテストバグ状況においては,テスト項目レビューと設計レビューの
レビューア別波形グラフを合わせて見ることで,設計レビューを通じてスキルアップしてきているメンバー
やキーマンとなったメンバーが,テスト項目レビューでいつどれだけ指摘を行っているか等,計画値では
測りにくい因子も踏まえて,テスト項目内容の状況を見て取ることができた.
(2)テスト進捗状況とテストバグ発生傾向の妥当性判断
   試験ランク別実施状況(図 7 上図)の波形を見ることで,正常系(基本試験),異常系(バリエーション試験)
の順番で試験が進んでいることが分かる.次に試験バグ発生状況(図 7 下図)の波形を合わせてみると,
前半の正常系でバグが検出できているのに対し,後半の異常系試験ではバグがそれほど出ていないこと
が見て取れる.このことから前半のテストバグ改修において,十分な水平展開と再発防止策がされている,
または上流の設計レビューで異常系に関しては確実に考慮できていることが言える.このようにテストバグ
発生状況と正常系異常系テスト項目実施状況の波の関連性といった観点から見ることで,「試験バグ密
度(件/KLOC)」や「試験密度(項目/KLOC)」の数字だけでは判断し難かったテストの十分性や完了判
断の妥当性も見て取ることもできた.

                                       単体テスト実施状況




            (件)



                                       単体テストバグ検出状況




                  図 7 ランク別テスト実施状況と要因別バグ検出状況

5.     波形監視による品質向上効果
       波形監視による品質向上効果
           による品質向上
5.1.   欠陥除去率向上
       欠陥除去率向上
 上流工程における品質確保効果を,欠陥除去率を用いて示す.上流工程の欠陥除去率とは,機能設
計,詳細設計の作り込み工程で混入した欠陥に対して,機能設計レビュー,詳細設計レビューを通じて
検出した欠陥の割合である.

・上流工程における欠陥除去率の定義
 設計レビューによる欠陥検出数/設計工程で作り込
んだ欠陥件数×100%

 上流工程における欠陥除去率として,4 イテレーショ
ンの平均 95%という結果となった(図 8 左グラフ).同プロ
ジェクトの類似条件下の別チームの結果 62%と比較し,
上流工程での品質作り込み効果が示された.
 このように上流工程で多くの欠陥を摘出し,品質を作
りこんだ結果,その後のフェーズでは,より複雑なテスト
実施に集中することが可能となった.さらに結合テストま           図 8 レビュー欠陥除去率
での欠陥除去率を以下に示す.

・結合テストまでの欠陥状況率の定義
 結合テストまでに摘出した欠陥の総数/全工程で作り込んだ欠陥件数×100%

  結合テストまでの担当工程プロセス全体の欠陥除去率では,4 イテレーションとも平均 99%以上となった
(図 8 右グラフ).同じく別チームの結果 89%と比較し,結合テスト段階までに,ほぼ欠陥が除去された結果
となった.
5.2.   流出バグ発生率の
       流出バグ発生率の低減
         バグ発生率
 本手法の取り組み範囲である結合テスト以降流出したバグの発生率(件/KLOC)は,過去機種の経験
値をベースにしたプロジェクト計画値に対して約 1/4,同プロジェクトの類似条件下の別チームと比較して
も約 1/13 以下という結果となった.流出バグ発生率の大幅な低減が図られ,商品リリース後のバグも現段
階(リリース後 6 ヶ月)においては 0 件で推移している.
5.3.   プロセス品質向上
       プロセス品質向上
 開発メンバー各自の作業実績が反映された結果が,次の日には品質分析レポートとして,メンバー全
員に可視化フィードバックされることで,各自が日々の作業プロセス状況を定量的に認識できるようになっ
た.作業プロセス誤りや,記録表への入力ミスがあると,翌日,即座に分析レポートに変調傾向,もしくは
レポートエラーとして現れるため,日々,状況確認と是正意識が生まれ,以前のように工程完了後に集計
データの検算する必要もなく,精度の高い実績データが収集されるようになった.また,プロセスを規定す
る計画書類も,分析レポートの前提インプットデータとなっていることから計画書類も連動して常に更新さ
れるようになり,計画作業プロセスの品質向上も見られた.副次的効果ではあるが,結果として,プロセス
遵守の意識が向上し,分析プロセス品質も向上するといった好循環が生まれた.

6. 今後の
   今後の課題
 前述の結果より,上流工程において一定の品質向上効果を示すことができたと考える.しかし,本手法
においても,分析タイミングの早期化と,分析判断精度向上のための,より多くの気付きの機会を創出した
迄であり,最終的分析結果の判断においては,完全な定量的判断とは言えない.今回対象としたプロジ
ェクトにおいては,過去品質問題を経験したことのあるリーダ層,レビュースキルの高いメンバーで構成さ
れている部分もあり,上流工程での品質確保の方針に対するメンバーの理解度も高く,品質向上効果の
全てが本手法に起因するものと言うことはできない.モチベーションの異なるチームでは,同じ手法プロセ
スを履行したとしても,成果も異なるという報告もある[5].今後は,より多くのプロジェクトに適用し,測定で
得られた品質波形データをデータベース化していくことで,その波形モデルから得られる新たな知見の創
出と異常兆候の検知ノウハウの蓄積を図っていきたい.

7.まとめ
 これまで,上流工程における品質分析では分析対象データや手法が限られ,確度の高い品質分析判
断が困難であった.またコンカレント開発や複数イテレーションで短納期化が進むプロジェクトおいては,
従来の品質管理プロセスでは,分析のためのワークロードも増加しがちとなり,早期の品質分析対策がさ
らに難しくなってきている.
 本課題に対し,上流工程の品質分析において,既存運用のプロセスから得られる客観的メトリクスデー
タをベースに,面グラフ波形を用い,品質の経過状況を観点別波形データの構成要素で,リアルタイムか
つ多面的に可視化することで,早期品質判断の確度向上を図った.
 さらに,本品質分析手法を下流工程含め統一適用し,開発現場へ逐一レポートするといった集計分析
確認プロセス全体をシステム化することにより,品質分析の効率化と迅速化を実現した.開発現場として
既存プロセスを遵守するだけで,開発完了まで日々リアルタイムに分析データが可視化フィードバックさ
れることで,よりプロセス遵守の意味づけが明確になり,プロセス品質向上が見られた.
 このように品質管理手法の適用を迅速化していくことで,大規模かつ短納期のプロジェクト運営環境に
おいても,開発者,品質管理担当者に対して集計や分析ための負荷をかけることなく,早期段階での品
質確保による品質向上効果を確認することができた.

参考文献
[1] Capers Jones 著, 富野 寿 監修 ソフトウェア品質のガイドライン ISBN-10: 4320097262 1999
[2] 大島 正善 ソフトウェア・プロジェクトの上流工程における品質保証活動と定量的価値 プロジェクト
    マネジメント学会研究発表大会予稿集 2000(秋季), 62-65, 2000
[3] 独立行政法人 情報処理推進機構ソフトウェアエンジニアリングセンター IT プロジェクトの「見える
    化」 上流工程編 ISBN-10: 482226209X 2007
[4] 独立行政法人 情報処理推進機構ソフトウェアエンジニアリングセンター 定量的品質予測のススメ
    ISBN-10: 4274502066 P23 2008
[5] 誉田直美 品質という王道を行こう Jasst 2010

More Related Content

Viewers also liked

Danh gia thanh_qua_quan_ly_cao_hoc_5133
Danh gia thanh_qua_quan_ly_cao_hoc_5133Danh gia thanh_qua_quan_ly_cao_hoc_5133
Danh gia thanh_qua_quan_ly_cao_hoc_5133eminh123
 
Procesadores de texto
Procesadores de textoProcesadores de texto
Procesadores de textoMarithza Diaz
 
Selamat hari raya
Selamat hari rayaSelamat hari raya
Selamat hari rayasamokthar
 
Liga vasca master de patinaje de velocidad 2014(revisión 2)
Liga vasca master de patinaje de velocidad 2014(revisión 2)Liga vasca master de patinaje de velocidad 2014(revisión 2)
Liga vasca master de patinaje de velocidad 2014(revisión 2)julian57
 
Plan de actividades anahi
Plan de actividades anahiPlan de actividades anahi
Plan de actividades anahicamiiliita
 
Three Square Feet in Muskoka Magazine
Three Square Feet in Muskoka MagazineThree Square Feet in Muskoka Magazine
Three Square Feet in Muskoka Magazine3sqft
 
Deber ceviches unidad 3
Deber ceviches unidad 3Deber ceviches unidad 3
Deber ceviches unidad 3San De la Cruz
 
General equipos (1ª jornada)
General equipos (1ª jornada)General equipos (1ª jornada)
General equipos (1ª jornada)julian57
 
Horror spider diagram
Horror   spider diagramHorror   spider diagram
Horror spider diagramhannahlovitt
 

Viewers also liked (13)

Danh gia thanh_qua_quan_ly_cao_hoc_5133
Danh gia thanh_qua_quan_ly_cao_hoc_5133Danh gia thanh_qua_quan_ly_cao_hoc_5133
Danh gia thanh_qua_quan_ly_cao_hoc_5133
 
Procesadores de texto
Procesadores de textoProcesadores de texto
Procesadores de texto
 
Weight loss
Weight lossWeight loss
Weight loss
 
Selamat hari raya
Selamat hari rayaSelamat hari raya
Selamat hari raya
 
Liga vasca master de patinaje de velocidad 2014(revisión 2)
Liga vasca master de patinaje de velocidad 2014(revisión 2)Liga vasca master de patinaje de velocidad 2014(revisión 2)
Liga vasca master de patinaje de velocidad 2014(revisión 2)
 
Plan de actividades anahi
Plan de actividades anahiPlan de actividades anahi
Plan de actividades anahi
 
Three Square Feet in Muskoka Magazine
Three Square Feet in Muskoka MagazineThree Square Feet in Muskoka Magazine
Three Square Feet in Muskoka Magazine
 
Tema 9
Tema 9Tema 9
Tema 9
 
Deber ceviches unidad 3
Deber ceviches unidad 3Deber ceviches unidad 3
Deber ceviches unidad 3
 
tell a story
 tell a story tell a story
tell a story
 
General equipos (1ª jornada)
General equipos (1ª jornada)General equipos (1ª jornada)
General equipos (1ª jornada)
 
Link8
Link8Link8
Link8
 
Horror spider diagram
Horror   spider diagramHorror   spider diagram
Horror spider diagram
 

Similar to 20110909 品質シンポジウム2011投稿論文

Metrix team 20190524
Metrix team 20190524Metrix team 20190524
Metrix team 20190524SQiP-WEST
 
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメントISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント崇 山﨑
 
Sigir2013 勉強会資料
Sigir2013 勉強会資料Sigir2013 勉強会資料
Sigir2013 勉強会資料Mitsuo Yamamoto
 
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善Hironori Washizaki
 
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要Kurata Takeshi
 
20110909 品質シンポジウム2011発表資料
20110909 品質シンポジウム2011発表資料20110909 品質シンポジウム2011発表資料
20110909 品質シンポジウム2011発表資料Kenichiro Nakajima
 
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用Hironori Washizaki
 
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例Kurata Takeshi
 
Qs information20110615
Qs information20110615Qs information20110615
Qs information20110615Kei Nakahara
 
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011Yusuke Suzuki
 
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリー
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリーエンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリー
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリーTakashi Watanabe
 
学部卒業論文
学部卒業論文学部卒業論文
学部卒業論文n-yuki
 
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04Makoto Nonaka
 
項目反応理論による尺度運用
項目反応理論による尺度運用項目反応理論による尺度運用
項目反応理論による尺度運用Yoshitake Takebayashi
 
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOKKotaro Ogino
 
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...Hironori Washizaki
 
ゆもつよ博士論文説明資料公開
ゆもつよ博士論文説明資料公開ゆもつよ博士論文説明資料公開
ゆもつよ博士論文説明資料公開Tsuyoshi Yumoto
 

Similar to 20110909 品質シンポジウム2011投稿論文 (20)

Metrix team 20190524
Metrix team 20190524Metrix team 20190524
Metrix team 20190524
 
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメントISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント
ISO/IEC/IEEE 29119 Software Testing 勉強会第3回 テストドキュメント
 
Sigir2013 勉強会資料
Sigir2013 勉強会資料Sigir2013 勉強会資料
Sigir2013 勉強会資料
 
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善Qua s tom-メトリクスによるソフトウェアの品質把握と改善
Qua s tom-メトリクスによるソフトウェアの品質把握と改善
 
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要
屋内測位技術の応用事例とPDRベンチマーク標準化委員会の活動概要
 
20110909 品質シンポジウム2011発表資料
20110909 品質シンポジウム2011発表資料20110909 品質シンポジウム2011発表資料
20110909 品質シンポジウム2011発表資料
 
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用
測定と予測を通じたソフトウェア品質評価と改善の実践的取り組み 公開用
 
Qs info 002
Qs info 002Qs info 002
Qs info 002
 
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例
地理空間インテリジェンス:屋内測位技術を用いた現場のラボ化に基づくサービス研究事例
 
Qs information20110615
Qs information20110615Qs information20110615
Qs information20110615
 
Hazop anzen21013
Hazop anzen21013Hazop anzen21013
Hazop anzen21013
 
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
 
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリー
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリーエンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリー
エンタープライズアプリケーション品質向上のカギ -サービス仮想化と継続的デリバリー
 
学部卒業論文
学部卒業論文学部卒業論文
学部卒業論文
 
Qs info002
Qs info002Qs info002
Qs info002
 
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04
「事実にもとづく管理」によるソフトウェア品質の改善 ー ヒンシツ大学 Evening Talk #04
 
項目反応理論による尺度運用
項目反応理論による尺度運用項目反応理論による尺度運用
項目反応理論による尺度運用
 
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
 
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...
超スマート社会時代のシステム&ソフトウェア品質知識体系 - SQuBOK 2020 における AI、IoT、クラウド、オープンソース、アジャイル、DevO...
 
ゆもつよ博士論文説明資料公開
ゆもつよ博士論文説明資料公開ゆもつよ博士論文説明資料公開
ゆもつよ博士論文説明資料公開
 

20110909 品質シンポジウム2011投稿論文

  • 1. リアルタイム波形を用いた設計品質分析手法と総合分析環境の提案 Proposal of design quality analysis technique that uses real time corrugate and total analysis environment 株式会社 NTT データ MSE モバイルソリューション事業本部 ネットワーク技術部 Network Engineering Department, Mobile solution OHQ, NTT DATA MSE Corporation 中島 憲一郎 Kenichiro Nakajima Abstract The environment that in real time totals and analyzes various metrics data is constructed between the design process and the test process, and it proposes the technique for uniquely showing each unit of the measurement as quantitative analysis result data in the respect graph. The respect graph where the transition of the entire amount and the transition of the amount of the component were able to be confirmed at the same time, and the amount of the change was emphasized was adopted. A down shot and detailed feedback always became possible by confirming it multipronged. As a result, the case where an early quality improvement was able to be achieved is described. 1.はじめに 要件定義からコーディングに入る前までの設計段階におけるプロセス及び成果物の品質が,ソフトウェ アプロジェクト全体の生産性向上と納期達成可否に,非常に大きな影響を及ぼすことは,以前より数多く 述べられてきている[1][2]. しかし,実際にプログラムを動作させるテスト段階と比較し,設計段階では人の判断に依存する部分が 大きく,分析データの一面から品質を見極めることは,依然困難であることが多い. また,これらの分析は,工程終了後に行うことが多く,スケジュールが優先されコンカレントかつ複数イ テレーションで同時並行開発が進む今の開発現場では,工程完了時点で詳細な品質分析報告を纏めて いる時間もままならないのが実情であり,開発の早い段階で品質を見極め,前工程に戻るといった判断は 容易ではない. これらの課題に対し,開発者の負荷を上げること無く,設計工程からテスト工程を通じて,多様なメトリク スデータをリアルタイムに集計・分析する環境を構築し,定量的分析結果データとして測定単位毎に面グ ラフで一意に示す手法を提案する.全体量の推移とその構成要素の量の推移を同時に確認でき,かつ 変化量が強調される面グラフを,多面的に併せて見ていくことで,常に俯瞰的かつ細やかなフィードバッ クが可能となり,早期の品質向上が図られた事例について述べる. 2. 背景と 背景と課題 これまで,筆者が関わるプロジェクトおいても,ソフトウェア品質向上には,上流での品質確保が重要と 捉え,早期品質向上の取り組みを行ってきた.その一つとして,品質管理担当者をプロジェクト専任で設 置し,開発のできるだけ早い段階で品質分析を行い,問題内容に応じて品質改善対策を打つといった管 理面の強化を試みてきた.上流工程での品質分析手法に関しては,「レビュー欠陥検出率(件/KLOC)」 「レビュー工数率(H/KLOC)」をベースとした閾値モデル,又はゾーンモデルを用い(図 1),実績値と計画 値の比較から品質の妥当性判断を行っていた.メトリクスデータは,品質管理担当者が,各開発チームか らの報告値を集計し,週単位の進捗会の場で各開発リーダに分析結果のフィードバックを行うプロセスと していた. 株式会社 NTT データ MSE モバイルソリューション事業部 ネットワーク技術部 Network Engineering Department, Mobile solution OHQ, NTT DATA MSE Corporation 神奈川県横浜市港北区新横浜アリーナタワー3F Tel: 050-471-8811 3-1-9, Shin-yokohama,Kouhoku-ku, Yokohama, Japan
  • 2. レビュー欠陥検出率 レビュー工数率 散布図 図 1.分析手法 2.1. 上流工程における品質判断が 上流工程における品質判断が困難 における品質判断 上記,指標値の扱い方に関しては,品質担当者,開発メンバー共に,十分に知識を有しており,妥当 性,品質判断基準等の扱い方([3],[4])もスキルを持っていた.しかし,約 100 人体制のプロジェクト規模に なってくると,分析結果は「XX サブシステム,もしくは XX チームに問題がある」というような大括りの指導 的内容になりがちであった.さらに,完了時点における正規化された値では,作業途中で問題の変調が あっても,その後全く何もなければ平均化されてしまう為,問題を見逃してしまう懸念もある. このような分析内容から更に深掘りするためには,開発現場に対して,詳細な分析「問題要因傾向に対 する分析」「レビュー内容に問題ないか」等の追加報告やヒアリングを求めることになり,すぐに分析判断 することは難しい.また開発現場にとっては,品質担当者へメトリクスデータを報告しても,再度自分達で 詳細に見直すことになり,負荷となってくる.その為,データ報告に対するモチベーションが低下し,デー タ報告誤りや遅延,報告自体の形骸化といった悪循環を招くこともあった. 2.2. 工程完了時点の品質確認では遅 工程完了時点の品質確認では遅い では 品質分析確認を,週単位で実施したとしても,従来の指標値では最終成果物の規模や欠陥数で決ま る値のため,結局は工程が完了した後に,品質分析判断されていた.途中経過の変調を確認する手法と して,レビュー済み設計書枚数を分母とした「レビュー欠陥率(件/頁)」を用い,状況を随時監視していく 管理図分析手法もある.しかし記述自体が抜けている場合,同じく正規化されたデータだけでは途中経 過の問題を捉えるのは難しい. 前述のように工程完了時点での分析結果として,さらに詳細分析せざるを得ない場合,スケジュールが 優先される開発現場では,詳細な品質分析報告を纏めている時間もままならないのが実情である.特に, コンカレントかつ複数イテレーションで同時並行に開発している場合,工程が完了した後では,既に次工 程に着工されており,工程完了時の分析結果を持って,再度前工程を見直すといった判断は,現実には 難しく,ほとんどがテスト工程を厚くするといった下流工程での品質確保施策に留まる傾向がみられた. 3.品質管理プロセス改善 管理プロセス 品質管理プロセス改善 前述の課題に対して,従来の品質管理プロセス見直し,上流工程における品質分析判断の精度向上, 手戻り可能なタイミングで見直しを図る為の品質分析の迅速化,開発現場に分析の負荷をかけない為の 分析コストの低減化といった観点から,品質管理プロセス改善を図った. 3.1. 監視メトリクスの多角化とリアルタイム化 監視メトリクスの多角化とリアルタイム化 メトリクス 工程完了後に算出可能な「レビュー欠陥検出率(件/KLOC)」「レビュー工数率(H/KLOC)」を用いた品 質分析判断だけでなく,上流工程での作業途中の品質をリアルタイムに分析していくこととし,工程途中 の測定可能な全てのメトリクスに対して,状況推移(図 2)を日々リアルタイムに見ていくトレンドモデルを検 討した.監視対象とする抽出メトリクスは図 5 内に示す.確認観点の多角化と詳細化により,その定性的傾 向から上流工程おける品質判断要素の拡充を図った.
  • 3. 3.2. 波形グラフを用いた分析確認の効率化 波形グラフを いた分析確認の グラフ 分析確認 分析の粒度をより細かくすると,データ確認量や確 認回数が増え,リアルタイムに品質状況をトレースして いくには負荷となり,実用面で継続性や確認精度が低 下してしまう.そこで,傾向を大きく俯瞰的に捉えなが ら,要所では詳細な分析を可能とするため,データの 異常兆候の検知に,心電図や地震検知でも見られる ような変化量が強調される波形グラフとし,全体量の 推移とその構成要素の量の推移を同時に確認できる 面グラフを採用した(図 3).全てのメトリクスデータ別に 面グラフを多面的に重ねて見ることで,異常傾向を示 す波形と構成成分を瞬時に確認できるようにした(図 図 2.途中経過状況 4-1,2,3). 今回,このようにメトリクスデータを面グラフ波形で表し,日単位でリアルタイムに波形状況を多面的に 監視していく手法を,リアルタイム波形分析手法と呼んでいる. ヒストグラム 面グラフ 図 3 構成要素が可視化され変化量が強調される波形面グラフを採用 3.3. 総合分析環境による分析確認の 総合分析環境による分析確認の迅速化 による分析確認 さらに,品質分析に対する負荷低減と,工程の途中段階での迅速な分析フィードバックが行えるように するために,日単位で,データ収集,品質分析状況を現場に通知する分析レポートシステムを構築した (図 5).分析レ ポートは,前述の上流工程における分析手法を,同じく下流工程まで適用し,画一化 を図った.測定対象工程と測定対象メトリクスは図 5 にある通りである.メトリクスデータは,毎日夜間定時 刻に,各種記録表や成果物から自動で集計を開始し,集計分析レポートをプロジェクトメンバにフィード バックするようにした.進捗報告書からは報告周期に合わせ,同じように集計を行うことで,現物ベースの データ集計値と報告ベースのデータ集計値の整合性確認が取れるようにした. 分析に用いる各種前提条件は,従来から作成している計画書等を元に自動で取得するようにした.例 えば,工程表から集計期間を,文書管理計画書からレビュー記録票等の格納場所を,構成計画書からは 測定対象バージョンと開発量集計データを読み込むといったように,そのプロジェクトで定義した固有の 情報を,プロセスに沿って可変でシステマティックに組み込むことで,計画変更,プロセス変更に対しても 自動で追随可能とした.プロジェクト管理者には,計画書類の適切な更新を依頼し,担当者には,従来プ ロセス通り,決められた記録票,成果物,報告書類の記載と格納だけを依頼した. このように既存プロセスに沿って,分析レポートシステムを構築・運用することで,開発現場担当者には 集計・分析のために新たな負荷をかけることなく,計画書に従って従来どおりの開発プロセスを守ってもら うだけで,日々,最新の分析結果レポートのフィードバックを可能とした.
  • 4. 前半 ①指摘が突出 後半 重要度別 バグ要因別 混入工程別 ②特定機能に偏り サブシステム別 レビューイ別 レビューア別 図 4-1 観点別レビュー指摘推移 ③レビュー工数に偏り 図 4-2 レビュー工数推移 ④レビュー枚数に偏り 図 4-3 レビュー実施量推移
  • 5. 図 5 分析レポートシステム 4. 実践適用事例 実践適用事例 適用 前述の手法を用いた実践適用事例を以下に述べる.適用対象プロジェクトはある民生用組込み機器 のミドルウェアに対し,新規格開発を行うプロジェクトで,数十名の開発者が約 2 年間,イテレーションを 4 つに分けて開発を進めるプロジェクトである. 4.1. 波形の傾向監視による気付き 波形の傾向監視による気付き向上 による気付 日々,分析結果データから波形傾向の経過を追うことで,直近の状況との差異が顕著に見て取れるよ うになった.図 4 は,機能設計工程のレビュー状況に対する実績データである.ここでのレビュー指摘数 には欠陥以外の誤記やコメントも含んでいる.一つの波形の色や形状の変化に着目し,プロジェクトメン バ全員が目で見て確認していくことにより,平常時や周辺チームの状況と比べて,異なるかどうか捉え(図 4①),次の日には当該レビュー内容の状況に関して,すぐに振り返り確認することが可能となった.また 観点別に波形の構成成分を確認することで,従来,工程完了時点の纏まった分析では平均化され埋も れてしまっていたレビュー途中経過の偏り傾向,重要度の高い指摘の偏りや,バグ要因の偏りといった兆 候(図 4②③④)を,細かく検知することが可能となった. 4.2. 波形の多面化監視による分析の 波形の多面化監視による分析の多角化 による分析 (1)観点別同時確認 異常兆候に対する分析確認時,図 4 に示す面グラフ波形を重ね,多角的に見ることで,どの機能のバ グで,誰と誰のレビューによって,いつ発生したか,どういったバグ要因で,その重要性等,時系列な傾向 分析も瞬時に併せて見て取れる.従来,工程完了時に正規化したデータで異常を確認し,その後,異常 内容の詳細を見ていくといった品質分析プロセスと比較して,即時その場で詳細確認が可能となり,迅速 な品質分析が可能となった.
  • 6. (2)収束状況確認 バグ要因別レビュー指摘数の波形(図 4-1)とレビュー実施量の波形(図 4-3)を重ねて見ることで,設計 前半の「レビュー指摘密度(件/頁)」と比較し,設計後半では低くなっている傾向が直感的に見て取れる. もし,仮にこれが逆の傾向かつ,指摘の内容がバグ要因波形から欠陥指摘が大半であることが示された 場合,最終結果として「レビュー欠陥検出率(件/KLOC)」が計画値を満たしていたとしても,欠陥が採りき れていない可能性があることに気付くことができる.さらに,レビュー工数(図 4-2)とレビュー枚数の波形 (図 4-3)を重ねてみることで,設計前半の「レビュー効率(頁/H)」と比較し,設計後半では,レビュー効率 が上がっている傾向が直感的に見て取れる.このように従来,関数モデルで観ていた収束予測分析に加 え,多面化監視によるトレンドモデルとして収束予測傾向も見て取ることができた. (3)工程途中の状況分析 前後工程や前後イテレーションの面グラフ波形の品質経過状況を併せて見ることで,あるレビュー工数 の突出状況が並行開発途中の過渡状態なのか,特定機能に偏った異常兆候なのか,見分ける視点を持 つことが出来た.図 6 は,並行で進む FD 工程と DD 工程のレビュー工数状況を重ねたものである.レビュ ー作業のピークが FD 工程(図 6①)から DD 工程(図 6②)に移行していることが見て取れる.一方で,図 6 ③の兆候から,レビュー作業の一部が DD 工程に移りきれておらず,再度 FD レビューの山が続いている 状態が確認できる.この変調に関して,仕様変更による追加レビューとなっているのか,DD レビューにお いて FD 問題が発生した為,再度 FD をやり直しているのか,単なる入力ミスによる異常値なのか,FD レビ ュー指摘状況,DD レビュー指摘状況のバグ要因面グラフと合わせて見ることで,問題分析対象かどうか 適切に識別できるようなった. ① FD レビュー工数状況 ③ ② DD レビュー工数状況 図 6 工程毎のレビュー工数状況 4.3. リアルタイム波形分析手法の応用事例 リアルタイム波形分析手法の応用事例 波形分析手法 前章に述べた通り,品質分析に対する負荷低減化,迅速化のため下流工程を含め総合的分析環境と して全体をシステム化した.その中で上流工程における品質分析精度向上だけでなく下流工程において も従来とは別観点の分析確認を行うことができた事例について紹介する. (1)上流工程でのレビュー傾向を踏まえたテスト項目内容の状況確認 テスト項目の質と密接に関わってくるテストバグ状況においては,テスト項目レビューと設計レビューの レビューア別波形グラフを合わせて見ることで,設計レビューを通じてスキルアップしてきているメンバー やキーマンとなったメンバーが,テスト項目レビューでいつどれだけ指摘を行っているか等,計画値では 測りにくい因子も踏まえて,テスト項目内容の状況を見て取ることができた. (2)テスト進捗状況とテストバグ発生傾向の妥当性判断 試験ランク別実施状況(図 7 上図)の波形を見ることで,正常系(基本試験),異常系(バリエーション試験) の順番で試験が進んでいることが分かる.次に試験バグ発生状況(図 7 下図)の波形を合わせてみると, 前半の正常系でバグが検出できているのに対し,後半の異常系試験ではバグがそれほど出ていないこと が見て取れる.このことから前半のテストバグ改修において,十分な水平展開と再発防止策がされている, または上流の設計レビューで異常系に関しては確実に考慮できていることが言える.このようにテストバグ
  • 7. 発生状況と正常系異常系テスト項目実施状況の波の関連性といった観点から見ることで,「試験バグ密 度(件/KLOC)」や「試験密度(項目/KLOC)」の数字だけでは判断し難かったテストの十分性や完了判 断の妥当性も見て取ることもできた. 単体テスト実施状況 (件) 単体テストバグ検出状況 図 7 ランク別テスト実施状況と要因別バグ検出状況 5. 波形監視による品質向上効果 波形監視による品質向上効果 による品質向上 5.1. 欠陥除去率向上 欠陥除去率向上 上流工程における品質確保効果を,欠陥除去率を用いて示す.上流工程の欠陥除去率とは,機能設 計,詳細設計の作り込み工程で混入した欠陥に対して,機能設計レビュー,詳細設計レビューを通じて 検出した欠陥の割合である. ・上流工程における欠陥除去率の定義 設計レビューによる欠陥検出数/設計工程で作り込 んだ欠陥件数×100% 上流工程における欠陥除去率として,4 イテレーショ ンの平均 95%という結果となった(図 8 左グラフ).同プロ ジェクトの類似条件下の別チームの結果 62%と比較し, 上流工程での品質作り込み効果が示された. このように上流工程で多くの欠陥を摘出し,品質を作 りこんだ結果,その後のフェーズでは,より複雑なテスト 実施に集中することが可能となった.さらに結合テストま 図 8 レビュー欠陥除去率 での欠陥除去率を以下に示す. ・結合テストまでの欠陥状況率の定義 結合テストまでに摘出した欠陥の総数/全工程で作り込んだ欠陥件数×100% 結合テストまでの担当工程プロセス全体の欠陥除去率では,4 イテレーションとも平均 99%以上となった (図 8 右グラフ).同じく別チームの結果 89%と比較し,結合テスト段階までに,ほぼ欠陥が除去された結果 となった. 5.2. 流出バグ発生率の 流出バグ発生率の低減 バグ発生率 本手法の取り組み範囲である結合テスト以降流出したバグの発生率(件/KLOC)は,過去機種の経験 値をベースにしたプロジェクト計画値に対して約 1/4,同プロジェクトの類似条件下の別チームと比較して も約 1/13 以下という結果となった.流出バグ発生率の大幅な低減が図られ,商品リリース後のバグも現段 階(リリース後 6 ヶ月)においては 0 件で推移している.
  • 8. 5.3. プロセス品質向上 プロセス品質向上 開発メンバー各自の作業実績が反映された結果が,次の日には品質分析レポートとして,メンバー全 員に可視化フィードバックされることで,各自が日々の作業プロセス状況を定量的に認識できるようになっ た.作業プロセス誤りや,記録表への入力ミスがあると,翌日,即座に分析レポートに変調傾向,もしくは レポートエラーとして現れるため,日々,状況確認と是正意識が生まれ,以前のように工程完了後に集計 データの検算する必要もなく,精度の高い実績データが収集されるようになった.また,プロセスを規定す る計画書類も,分析レポートの前提インプットデータとなっていることから計画書類も連動して常に更新さ れるようになり,計画作業プロセスの品質向上も見られた.副次的効果ではあるが,結果として,プロセス 遵守の意識が向上し,分析プロセス品質も向上するといった好循環が生まれた. 6. 今後の 今後の課題 前述の結果より,上流工程において一定の品質向上効果を示すことができたと考える.しかし,本手法 においても,分析タイミングの早期化と,分析判断精度向上のための,より多くの気付きの機会を創出した 迄であり,最終的分析結果の判断においては,完全な定量的判断とは言えない.今回対象としたプロジ ェクトにおいては,過去品質問題を経験したことのあるリーダ層,レビュースキルの高いメンバーで構成さ れている部分もあり,上流工程での品質確保の方針に対するメンバーの理解度も高く,品質向上効果の 全てが本手法に起因するものと言うことはできない.モチベーションの異なるチームでは,同じ手法プロセ スを履行したとしても,成果も異なるという報告もある[5].今後は,より多くのプロジェクトに適用し,測定で 得られた品質波形データをデータベース化していくことで,その波形モデルから得られる新たな知見の創 出と異常兆候の検知ノウハウの蓄積を図っていきたい. 7.まとめ これまで,上流工程における品質分析では分析対象データや手法が限られ,確度の高い品質分析判 断が困難であった.またコンカレント開発や複数イテレーションで短納期化が進むプロジェクトおいては, 従来の品質管理プロセスでは,分析のためのワークロードも増加しがちとなり,早期の品質分析対策がさ らに難しくなってきている. 本課題に対し,上流工程の品質分析において,既存運用のプロセスから得られる客観的メトリクスデー タをベースに,面グラフ波形を用い,品質の経過状況を観点別波形データの構成要素で,リアルタイムか つ多面的に可視化することで,早期品質判断の確度向上を図った. さらに,本品質分析手法を下流工程含め統一適用し,開発現場へ逐一レポートするといった集計分析 確認プロセス全体をシステム化することにより,品質分析の効率化と迅速化を実現した.開発現場として 既存プロセスを遵守するだけで,開発完了まで日々リアルタイムに分析データが可視化フィードバックさ れることで,よりプロセス遵守の意味づけが明確になり,プロセス品質向上が見られた. このように品質管理手法の適用を迅速化していくことで,大規模かつ短納期のプロジェクト運営環境に おいても,開発者,品質管理担当者に対して集計や分析ための負荷をかけることなく,早期段階での品 質確保による品質向上効果を確認することができた. 参考文献 [1] Capers Jones 著, 富野 寿 監修 ソフトウェア品質のガイドライン ISBN-10: 4320097262 1999 [2] 大島 正善 ソフトウェア・プロジェクトの上流工程における品質保証活動と定量的価値 プロジェクト マネジメント学会研究発表大会予稿集 2000(秋季), 62-65, 2000 [3] 独立行政法人 情報処理推進機構ソフトウェアエンジニアリングセンター IT プロジェクトの「見える 化」 上流工程編 ISBN-10: 482226209X 2007 [4] 独立行政法人 情報処理推進機構ソフトウェアエンジニアリングセンター 定量的品質予測のススメ ISBN-10: 4274502066 P23 2008 [5] 誉田直美 品質という王道を行こう Jasst 2010