索的テスト特有の不透明さが受け入れられ難い このような探索的テストにおけるテスト管理の問題を JSTQB Foundation Level のシラバスに従い テスト管理のカテゴリごとに整理すると表 88-1 のようになる [2] 表 88-1 探索的テストにおけるテスト管理の現状テスト管理のカテゴリ

Similar documents
目次 取組み概要 取組みの背景 取組みの成果物 適用事例の特徴 適用分析の特徴 適用事例の分析結果から見えたこと JISAによる調査結果 どうやって 実践のヒント をみつけるか 書籍発行について紹介 今後に向けて 2

自己紹介 熊川一平 ( くまがわいっぺい ) 株式会社 NTTデータ技術革新統括本部システム技術本部生産技術部プロジェクトマネジメント ソリューションセンタ課長代理 テスト 品質保証に関する技術支援 研究開発テスト自動化ツールの適用検討など社内案件の支援に従事 執筆 講演歴 ITPro( 日経 BP

スキル領域 職種 : マーケティング スキル領域と MK 経済産業省, 独立行政法人情報処理推進機構

日経ビジネス Center 2

HIGIS 3/プレゼンテーション資料/J_GrayA.ppt

過去問セミナーTM

スキル領域 職種 : ソフトウェアデベロップメント スキル領域と SWD 経済産業省, 独立行政法人情報処理推進機構

どのような便益があり得るか? より重要な ( ハイリスクの ) プロセス及びそれらのアウトプットに焦点が当たる 相互に依存するプロセスについての理解 定義及び統合が改善される プロセス及びマネジメントシステム全体の計画策定 実施 確認及び改善の体系的なマネジメント 資源の有効利用及び説明責任の強化

<4D F736F F D F193B994AD955C D9E82DD835C EC091D492B28DB8816A2E646F63>

DumpsKing Latest exam dumps & reliable dumps VCE & valid certification king


セミナータイトル    ~サブタイトル~

テスト設計スキル評価方法の提案と実践事例

プロダクトオーナー研修についてのご紹介

ACR-C 保証継続報告書 独立行政法人情報処理推進機構原紙理事長藤江一正押印済変更 TOE 申請受付日 ( 受付番号 ) 平成 24 年 1 月 12 日 (IT 継続 2077) 認証番号 C0312 申請者コニカミノルタビジネステクノロジーズ株式会社 TOEの名称日本語名 :bi

PowerPoint プレゼンテーション

プロジェクトマネジメント知識体系ガイド (PMBOK ガイド ) 第 6 版 訂正表 - 第 3 刷り 注 : 次の正誤表は PMBOK ガイド第 6 版 の第 1 刷りと第 2 刷りに関するものです 本 ( または PDF) の印刷部数を確認するには 著作権ページ ( 通知ページおよび目次の前 )

JICA 事業評価ガイドライン ( 第 2 版 ) 独立行政法人国際協力機構 評価部 2014 年 5 月 1

<4D F736F F F696E74202D E291AB8E9197BF A F82CC8A A390698DF42E707074>

取組みの背景 これまでの流れ 平成 27 年 6 月 日本再興戦略 改訂 2015 の閣議決定 ( 訪日外国人からの 日本の Wi-Fi サービスは使い難い との声を受け ) 戦略市場創造プラン における新たに講ずべき具体的施策として 事業者の垣根を越えた認証手続きの簡素化 が盛り込まれる 平成 2

大規模災害等に備えたバックアップや通信回線の考慮 庁舎内への保存等の構成について示すこと 1.5. 事業継続 事業者もしくは構成企業 製品製造元等の破綻等により サービスの継続が困難となった場合において それぞれのパターン毎に 具体的な対策を示すこと 事業者の破綻時には第三者へサービスの提供を引き継

ログを活用したActive Directoryに対する攻撃の検知と対策

項目記載事項必須 1.4 非機能性 更新業務仕様書の 3-4 非機能要件 を踏まえ 提案するシステムに関して 基本的な考え方や方針 アピールポイント等を簡潔かつ明瞭に記述すること 3-4 非機能要件 の (1) から (4) に区分し すべての項目について記述すること 1.5 他システム連携 更新業

事故前提社会における           企業を支えるシステム操作統制とは

2 はじめに IPA/SEC では ソフトウェア開発における定量的管理の普及促進の一環として 国内の多様なソフトウェア開発のプロジェクトデータを整理 分析した ソフトウェア開発データ白書 を 2004 年より定期的に発行しています その最新版である ソフトウェア開発データ白書 を

はじめに 本ドキュメントは Redmine を使用して稼働する定量的プロジェクト管理ツール ( 以下 IPF と略します ) のヘルプです IPF の操作に関わる機能を解説しており Redmine 及び構成管理ツール (Subversion Git) の標準機能については 本ヘルプの記載対象外として

授業計画書

IT 産業を取り巻く環境の変化 ネットワークの普及 競争の激化ビジネスモデルの革新トラブルの多発 期待 ニーズ システムへの要求が増大 安全 安心への要請が増大 低コスト 短納期開発 多機能化 高性能化 信頼できるマネジメント トラブル未然抑止 リスクの増大 理想 不適切な見積 生産性の見誤り 人海

先進的な設計 検証技術の適用事例報告書 2015 年度版 2015 年 11 月

Test.SSF Skill Standards Version 1.0

審査の品質管理において取り組むべき事項 ( 平成 27 年度 ) 平成 27 年 4 月 28 日 特許庁 特許 Ⅰ. 質の高い審査を実現するための方針 手続 体制の整備 審査の質を向上させるためには 審査体制の充実が欠かせません そこで 審査の効率性を考慮しつつ 主要国と遜色のない審査実施体制の確

目次 1. 一般 目的 適用範囲 参照文書 用語及び定義 内部監査 一般 内部監査における観点 内部監査の機会 監査室

Microsoft Word - 【6.5.4】特許スコア情報の活用

組織内CSIRT構築の実作業

日本機械学会 生産システム部門研究発表講演会 2015 資料

プロジェクトを成功させる見積りモデルの構築と維持・改善 ~CoBRA法による見積りモデル構築とその活用方法について~

平成22年度「技報」原稿の執筆について

スライド 1

リスクテンプレート仕様書

Microsoft PowerPoint - Tsuzuki.ppt

Microsoft PowerPoint - Personal Software Process (PSP)の実施の定着化

品質マニュアル(サンプル)|株式会社ハピネックス

IT スキル標準 V3 2011_ 職種の概要と達成度指標 (7) アプリケーションスペシャリスト 職種の概要と達成度指標 APS 経済産業省, 独立行政法人情報処理推進機構

表紙1_4

Microsoft Word - ESxR_Trialreport_2007.doc

スクラムと監査についての一考 システム監査人協会近畿支部 近藤博則

Bカリキュラムモデル簡易版Ver.5.0

スライド 1

ソフトウェア開発データが語るメッセージ 2017 ~ 生産性 信頼性の経年推移の分析から ~ 2018 年 3 月 6 日 独立行政法人情報処理推進機構 (IPA) 技術本部ソフトウェア高信頼化センター (SEC)

Microsoft PowerPoint - CoBRA法の概要r1.pptx

品質 生産性目標の測定量 品質 生産性の測定量は何があるの? 点検のタイミンク 種類 要件定義 設計 製作 試験 全体 見積り 概算 正式 生産性 規模に対する工数実績 (Hr/KL) 規模に対する工期実績 ( 日 /KL) 規模に対する工数実績 (Hr/KL) 規模に対する工期実績 ( 日 /KL

SEC セミナー (2012 年 12 月 21 日 ) 定量的品質管理 実践的取組み 定量的品質管理 手法の企業での取り組み事例 1 品質 生産性目標の設定方法 2 現場で定着させるテクニック ~ 品質管理を効果的に実践するには ~ 三菱電機インフォメーションシステムズ株式会社業務プロセス改善推進

ISO 9001:2015 改定セミナー (JIS Q 9001:2015 準拠 ) 第 4.2 版 株式会社 TBC ソリューションズ プログラム 年版改定の概要 年版の6 大重点ポイントと対策 年版と2008 年版の相違 年版への移行の実務

J-SOX 自己点検評価プロセスの構築

PowerPoint プレゼンテーション

【NEM】発表資料(web掲載用).pptx

2008年6月XX日

WBS テンプレート 2009/8/4 NO 作業項目 計画分析設計開発 SA UI SS PS PG PT テスト IT ST 運用 OT 保守 OM 作業概要 成果物 計画 プロジェクト編成 * プロジェクト責任者 メンバー ( システム部門 現場部門 外

<4D F736F F D20352D318FBC8CCB8E738DC58F F5495AA90CD816A5F8F4390B38CE3816A2E646F63>

内部統制ガイドラインについて 資料

変更要求管理テンプレート仕様書

第2回中級ソフトウェア品質技術者資格試験記述式問題の解説(案)

PARTⅢ 検証事例 2. トレーサビリティ管理の自動化に踏み切った理由や経緯 (1) 国際スタンダード認証に関する課題 ISO DO-178B/C IEC などの国際スタンダードでは 開発工程全般にわたって要件が満たされていること ( システムの正しい要件が 正しい方法で

<4D F736F F D FC8E448FEE95F1837C815B835E838B C8F92E88B608F912E646F63>

医療機器開発マネジメントにおけるチェック項目

目次 リリースノートについて... 1 リリースノートの内容... 1 フィードバックについて 主な機能強化 サービス課題管理機能 スコープ管理機能 サービス課題管理機能 スコープ管理機能 プロジ

1. 本障害の概要 2011 年 3 月 11 日 ( 金 ) に発生した東日本大震災発生に伴い 14 日 ( 月 ) における A 社の義援金口座 a 及び 15 日 ( 火 ) における B 社の義援金口座 b という特定の口座にそれぞれ大量の振込が集中したことにより 夜間バッチが異常終了したこ

外部からの脅威に対し ファジング の導入を! ~ さらなる脆弱性発見のためのセキュリティテスト ~ 2017 年 5 月 10 日独立行政法人情報処理推進機構技術本部セキュリティセンター小林桂 1

02 IT 導入のメリットと手順 第 1 章で見てきたように IT 技術は進展していますが ノウハウのある人材の不足やコスト負担など IT 導入に向けたハードルは依然として高く IT 導入はなかなか進んでいないようです 2016 年版中小企業白書では IT 投資の効果を分析していますので 第 2 章

Software Engineering Center Information-technology Promotion Agency, Japan IPA 2012 年 11 月 日日 定量的プロジェクト管理ツールの概要 独立行政法人情報処理推進機構

労災レセプト電算処理システムの開発に係る

差分テストのためのイテレーションとテストケース選択 大日本スクリーン製造株式会社ソフトウエア テンナインカンパニー粕渕清孝 Agenda ツールの開発経緯 テスト計画の課題 イテレーションと差分テスト 協調開発のための工夫 まとめ 1

科学技術の状況に係る総合的意識調査(定点調査)」調査票にかかるQ&A

Agile 開発におけるプロジェクト管理の課題 リアルタイムなタスク管理 反復開発計画 ( イテレーション スプリント,..) が頻繁に変更される 機能追加やバグ修正 リファクタリングによるソースコード修正に対応したタスク管理が必要 ソースコードの二重管理 リリース済みのソースコードと 開発中のソー

Copyright IPA Copyright IPA Copyright IPA モジュール A モジュール B モジュール C モジュール D 全体規模想定到達規模 規模計画値 4W 平均生産性 ( 右目盛 ) Copyright IPA が提供する定量関連のコンテンツ ツール群 データ提供企業

(Microsoft PowerPoint - \203A\203W\203\203\203C\203\213\212J\224\255_ ppt)

日立とアシストが情報システム運用のレポーティングソフトウェアを共同開発

平成18年度標準調査票

ISO9001:2015内部監査チェックリスト

短納期開発現場への XDDP 導入手法

040402.ユニットテスト

Microsoft PowerPoint - 中学校学習評価.pptx

要求仕様管理テンプレート仕様書

目次 1. 会社紹介 2. 小規模ソフトウェア開発のプロセス改善 3. 改善後の開発現場に現れてきた気になる傾向 4. 小集団改善活動 5. 当社が考える小規模開発 1/20

大塚製薬(株)佐賀工場

[ 指針 ] 1. 組織体および組織体集団におけるガバナンス プロセスの改善に向けた評価組織体の機関設計については 株式会社にあっては株主総会の専決事項であり 業務運営組織の決定は 取締役会等の専決事項である また 組織体集団をどのように形成するかも親会社の取締役会等の専決事項である したがって こ

Copyright Compita Japan ISO33k シリーズとは? これまで使用されてきたプロセスアセスメント標準 (ISO/IEC 本稿では以降 ISO15504 と略称する ) は 2006 年に基本セットが完成し 既に 8 年以上が経過しています ISO

AAプロセスアフローチについて_ テクノファーnews

1 BCM BCM BCM BCM BCM BCMS

<4D F736F F D F815B B E96914F92B28DB8955B>

目次 1. 会社概要 2. はじめに ( アブストラクト ) 3. 事例紹介 1( 比較表作成システム再構築 ) 4. 事例紹介 2( 契約事務基幹系システム再構築 ) 5. 事例紹介 3( 経理システム再構築 ) 6. 事例紹介 4( 事故対応システム再構築 ) 2

宇宙機搭載ソフトウエア開発のアセスメント

13 ソフトウェア工学 Software Engineering ソフトウェアプロセス SOFTWARE PROCESS ソフトウェアプロセスとは ソフトウェアプロセス : ソフトウェアプロダクト ( 製品 ) を作り出すための, 互いに関連する活動 (activity) の集合 ソフトウェアプロセ

変更の影響範囲を特定するための 「標準調査プロセス」の提案 2014年ソフトウェア品質管理研究会(30SQiP-A)

説明項目 1. 審査で注目すべき要求事項の変化点 2. 変化点に対応した審査はどうあるべきか 文書化した情報 外部 内部の課題の特定 リスク 機会 関連する利害関係者の特定 プロセスの計画 実施 3. ISO 14001:2015への移行 EMS 適用範囲 リーダーシップ パフォーマンス その他 (

Microsoft PowerPoint - A3② JaSST_MISRA2004ソースコード品質診断.ppt

<4D F736F F F696E74202D E A92E897CA D E83678AC7979D B838B5F F947

JISQ 原案(本体)

<4D F736F F F696E74202D EF8B638E9197BF82CC B A6D92E894C5816A E >

Transcription:

先進的な設計 検証技術の適用事例報告書 2017 年度版 SEC-2017-88-01 88 Session Based Test Management による探索的テストの実践 1 ~ 受託開発でも探索的テストを管理し活用できる ~ 1. 概要 当社はシステム インテグレーターとして 多くの顧客に対して システムの受託開発を行っている 昨今はビジネス環境の変化に伴い システム開発に対して 開発スピードの向上とコストの低減がこれまでより強く求められるようになっている [1] 当社は顧客のニーズにこたえるため ソフトウェア開発における生産性向上を目指し 多くの取組みを実施している 特にソフトウェアテストについては バグの摘出効率が優れている探索的テストの活用を目指している 具体的には 従来から実施しているテストケース表を用いた記述式テストに対し 探索的テストを補完的に用いることで バグの摘出工程を早め 手戻りを抑止することを推進している 一般的には 探索的テストは 品質向上や生産性向上を目指す多くの組織に注目 活用されている しかし 当社のようなシステムの受託開発を行う業者における 探索的テストの採用事例は少ない 探索的テストは 記述式テストとは異なり 事前にテストケースを作成しないため テストの総量や実施範囲が不透明であり テスト管理が難しいことが原因の 1 つと考えられる 本事例では 探索的テストに管理単位を与えるため Session Based Test Management [3] と呼ばれるテスト管理の考え方を用いて 受託開発の中で 探索的テストを活用できるようにした事例を紹介する 2. 取組みの目的 2.1. 解決すべき課題と目標 記述式テストでは 多くの場合 事前に作成したテストケースの数を用いて テストの進捗や実施度合いを管理している 当社においても プロジェクトマネージャーや 開発の委託元である顧客に対して テストケース数を用いた進捗報告やテスト結果報告を行うことが多い 一方 探索的テストでは 事前にテストケースを作成しないため テストの総量や実施範囲が不透明となってしまい 前述のような報告を実施しにくい 特に受託開発においては プロジェクトマネージャーや顧客が適時にテストの進捗状況や結果を把握することで 開発しているシステムの全体計画や 開発に関与する多数のチーム メンバーと調整を行うことが多く 探 1 事例提供 : 株式会社 NTT データ熊川一平氏 1

索的テスト特有の不透明さが受け入れられ難い このような探索的テストにおけるテスト管理の問題を JSTQB Foundation Level のシラバスに従い テスト管理のカテゴリごとに整理すると表 88-1 のようになる [2] 表 88-1 探索的テストにおけるテスト管理の現状テスト管理のカテゴリ探索的テスト実施時のテスト管理上の問題点 (JSTQB Foundation Level シラバスより ) テスト計画作業と見積もり テストの内容や作業量はテスターに依存しており テストの総量がわからない テスト進捗のモニタリングとコントロール 総量が不明確なため テストの進捗状況を把握することができない テストの実施内容が テスターに依存しており不透明になっている テスト組織 明確な役割 ( ロール ) が存在せず テストの管理はテスター任せとなっている 構成管理 どのバージョンのアプリケーションに対して どの程度テストを行ったかわからない リスクとテスト テストの実施順序や優先度はテスター任せである インシデント管理 テストに関する記録がなく インシデントを引き起こした背景が伝わらない 軽微なインシデントや 改善項目の報告が乱発しており 開発者の混乱を産んでいる そこで 受託開発において プロジェクトマネージャーや顧客が 探索的テストの導入を前向きに検討できるように 記述式テストにおけるアウトプットや テスト管理の方法を参考に テスト管理のカテゴリごとに改善目標を定義し 取組みを行うこととした 具体的な改善目標は表 88-2 の通り 表 88-2 探索的テストにおけるテスト管理の改善目標テスト管理のカテゴリ改善目標 (JSTQB Foundation Level シラバスより ) テスト計画作業と見積もり 事前にリソース割り当てを計画できること 作業量の見積もりができること テストの開始 / 終了基準が明確にできること テスト進捗のモニタリングとコントロール 進捗状況をメトリクスで確認できること テストレポートが残されること テストの結果やレポートによって方向性をコントロールできること テスト組織 テストに関わる担当者の役割 ( ロール ) が明確とできること 構成管理 テスト対象アプリケーションのバージョンごとに テストを行った総量が確認できること リスクとテスト テストの優先度が設定できること リスクの再評価が可能であること インシデント管理 開発担当者や関係者に必要に応じて問題の特定 抽出 解決に向けたフィードバックができること 2

88 Session Based Test Management による探索的テストの実践 3. 取組みの対象 適用技術 手法 評価 計測 3.1. 方法論 ( どんな技術 手法を用いて実施したか ) 表 88-1 および表 88-2 を俯瞰すると テストの実行単位を持たないことが 探索的テストにおけるテスト管理の難しさであることがわかる そこで 探索的テストに管理単位を与えるため Session Based Test Management と呼ばれる手法に着目した [3] Session Based Test Management では テストをセッションと呼ばれる時間枠に分割し 管理単位としている セッションは 30 分 ~2 時間程度の時間枠であり セッションごとにテストの目的を定義する また 探索的テストでは テストチャーターと呼ばれるテストの範囲や目的 観点などを整理したドキュメントを用いることがある Session Based Test Management では セッションごとにテストチャーターを設定することで 探索的テストであっても テストを実施した範囲や総量 観点などを後から把握することができる そこで我々は Session Based Test Management の概念を取り入れ 時間枠 ( セッション ) ごとにテストチャーターとレポート様式を兼ねたセッションシートを準備することで 図 88-1 のように テストの実施前にテスト管理者がある程度テストの内容を指示することや テストの実施後に内容を振り返れる状態を目指した 図 88-1 セッションシートを用いたテスト管理 また テスター 1 人あたりの 1 日に実施するセッション数の目標値を定めることで テスト期間内に実施可能な目標セッション数を割り出すことができる 目標セッション数に対するセッションシートの消化率を管理することで テストの進み具合を把握することも目指した 具体的には 図 88-2 のように テスターが 1 日に実施する最大セッション数を 3 セッションと定め テスターの人数とテスト期間から目標セッション数を設定した 最大セッション数を 3 3

セッションとしたのは Session Based Test Management の考え方において 1 セッションの最大時間を 2 時間とおいているため 業務時間内で無理なく実施できるように考慮したことと テスターの集中力が持続できる限界値を考慮したためである 探索的テストのようにヒューリスティックなテストでは テスターは機械的な作業を行うわけではなく テストに集中し より多くのバグを見つけるために思考を巡らせる必要がある これまでに探索的テストを実施したテスターにヒヤリングを行い 集中力の持続できる限界を検討した結果 1 日 3 セッション程度までが妥当だと判断した 図 88-2 セッションによるテストの予実管理 記述式のテストでは テスト対象ごとに実施したテストケースの数や 見つかったバグの数 バグの原因分類などによる分析を行い 弱点と思われる箇所に対して 品質を強化するために追加のテストを検討することが多い 一般的には バグは偏在していると考えられるため より効率的にテストを進めるためには テストの実施状況や発見されたバグの原因の偏りを見て テストを実施する対象や テストの実行回数などを柔軟に変更できたほうが望ましい また 重大なバグが見つかった場合に 他の機能でも同様のバグがないか確認できるのも重要である 探索的テストにおいても こういった状況にあわせたテストの方向性の制御が実現できることを目指した 具体的には テスターに セッション中に見つかったバグや 思いついたバグのヒントになりそうな点を セッションシートに記入してもらうようにした テスト管理者は 図 88-3 のように 日々セッションシートのレポートを確認し テスターのレポートから気づきを得ることで 新たなセッションシートを作成し 随時テストの方向性を制御できる 例えば 類似した機能間で見つかったバグの傾向を見てセッションシートを追加することで より効率的にバグを見つけられるように方向性を制御することができる また テスト対象ごとの 4

88 Session Based Test Management による探索的テストの実践 実施セッション数の偏りや 1セッションあたりのバグ数などを確認することで バグのありそうなことを類推してテストの追加を検討できる このようなテストの実施状況の確認や バグの摘出傾向からの分析 方向性の制御は テスト管理者とテスターの間で 日次の情報共有会を行い その中で情報を収集することで実現した 図 88-3 セッションシートによるテストの方向性制御 3.2. 対象プロジェクト 3.1 で示した方法論を用いて 以下の 2 つのシステム開発プロジェクトにおいて 探索的テストの導入を試みた 我々はプロジェクトにおけるテスト方針の検討支援メンバとして参画し 探索的テストの導入を推進した 具体的には いずれのプロジェクトにおいても あらかじめテスト管理者 テスターの両者に対して探索的テスト自体の考え方の研修を開催すると共に Session Based Test Management の考え方を整理し 当社の開発標準に組み込むためのガイドラインドキュメントを作成の上 提供した (1) 金融機関向け審査システムの保守開発当社にて保守を行っている Web システムに対しての機能追加を行うプロジェクトであり リリース後のバグや仕様不備に対する品質強化施策として探索的テストを導入した (2) 教育機関向け学生管理システムのシステム更改クライアント-サーバ型の現行システムから パッケージソフトを利用した Web システムへと更改するプロジェクトであり 早期バグ摘出による後続のテスト工程の安定化を目指して探索的テストを導入した 5

3.3. 取組みの評価 取組みの評価にあたっては テスト実施期間中の日次の情報共有会や プロジェクトの進捗会議模様を確認すると共に テスト実施期間終了後にアンケートやインタビューを行うことで情報を収集した ここでは 3.2 で示したプロジェクトのうち (2) 教育機関向け学生管理システムのシステム更改での事例を取り上げる 当プロジェクトでは テスト全体の計画を行う際に 事前にアサインできるテスターの人数 テスト実施できる日数を定め 探索的テストを行う目標セッション数を導出した テストの進捗管理は目標セッション数に対しての差分を管理することで 進み具合 遅れ具合を評価した 具体的には図 88-4 のように 残存セッション数を週次単位でグラフによって図示することを試みて 進捗の遅れ具合を素早く察知できるようにした 当該プロジェクトでは テスターの繁忙により セッション数の消化に若干の遅延が見られたため プロジェクトマネージャーにより テスターの追加や期間の見直しなどの対処が指示され 進捗管理 モニタリングの観点から適切なマネジメントが行われていることが確認できた 図 88-4 試行プロジェクトでのテスト進捗管理グラフ また テストの実施状況とバグの摘出状況の確認として 1 セッションあたりの摘出バグ数を機能ごとに図 88-5 のようにグラフで整理した この結果 特定の機能でのバグが多く摘出されていることや 重大バグの発生状況の偏りを把握することができ 後続のセッションで実施するテストの内容を変更したり 前工程で実施していた記述式のテストや 設計工程の内容の見直しを行ったりと 状況に合わせた柔軟な対応を行うことができた 6

88 Session Based Test Management による探索的テストの実践 図 88-5 試行プロジェクトでのバグ摘出状況管理グラフ ( 一部情報をマスク ) このように観察されたテスト管理の改善状況に加え テスト実施後のアンケートやインタビューの結果を踏まえて 表 88-2 に示した改善目標に対しての改善状況を表 88-3 の通り整理した 表 88-3 目標に対しての改善状況 7

いずれの改善目標に対しても 本取組みの成果が発揮されていることがわかる また インタビューで得たテスト管理者 テスターの意見を下記に示す 特にセッションという管理単位が導入されたことで テスト全体に統制がもたらされたといった意見や テスト管理者 テスターだけでなく プロジェクト全体を統括するプロジェクトマネージャーなどの理解を得やすくなったという意見が目立った ここでは取り上げていないが 3.2 で示したもう1つのプロジェクトでも同様の状況が観察されており 本取組みの成果が狙い通りかつ十分に発揮できたと考えている インタビューで得た意見 テスト管理者 セッションという定量的な見方ができることで その日のノルマが見えるようになり 1 日のテスト実施量をキープできた プロジェクトマネージャーや顧客に報告する立場として セッション数という区切りがあったのがよかった 見つかったバグから記述式のテストに新たな観点を追加するなどの改善を行うことができ システムの品質向上に寄与できた テスター セッションごとに指示が明確であり 迷わずにテストを行うことができた セッションごとに報告を行うため テストの内容が多様になりがちな探索的テストであっても 報告が容易であった また テスト管理者 テスター間で行う日次の情報共有会において 各テスターが実施したテストの内容や 見つかったバグ 気になった箇所などの報告を行うことで テスター間でノウハウの共有が行われた これにより バグの摘出効率を更に引き上げるという副次的な効果が得られたと推測している 本取組みの施策を適用しなかった探索的テストに比べ 取組みを適用したいずれのプロジェクトでも時間あたりのバグ摘出数が改善されていることが確認できた 4. 取組み実施上の問題 対策 工夫 Session Based Test Management の考え方では テストの管理単位となるセッションの定義や 内容が統制された状態となることが重要である 例えば 同じ 1 時間のセッションであっても テスト実施のための準備 ( テストデータの作成や 環境の変更など ) を行う時間が長いセッションと 短いセッションでは実施できたテストの濃度が異なる また 探索的テストでは テストチャーターによる指示があるとはいえ テスターがバグを探索しているうちに 予めテストチャーターで指定されたテストのスコープをはずれてしまうことがある このようにセッションごとの内容にブレが生じてしまうと セッションあたりのバグ数などの情報が 8

88 Session Based Test Management による探索的テストの実践 実際の状況とかい離してしまう可能性がある そこで 当社では Session Based Test Management の導入時に 予め以下のようなルールを策定している (1) テスターがバグの探索を進めるうちに 1 つのセッションに 2 時間以上必要なことが分かった場合 テスターはその旨をテスト管理者に報告すること 報告を受けたテスト管理者は セッションの分割を行うこと (2) 原則として セッション中は探索的テスト以外の業務を行わないこと (3) セッション中にテスト実施にどの程度の時間をかけたか 概算で報告を行うこと テスト管理者は報告された時間を確認し 当該セッションの取り扱いの濃淡を定めること また必要に応じてテスト実施の時間ができるだけ多く確保できるように テスターの困りごとを解決すること (4) テスターは バグが見つけられそうであればテストチャーターにて指示されたスコープを外れたテストを行ってよい 但し セッションごとにテストチャーターにどの程度したがってテストを行ったかを % で示す概算で報告を行うこと テスト管理者は報告された数値を確認し 必要に応じてセッションシートの内容を テスターが実際に行ったテストに合わせるように書き換えること このようなルールを定めることで 実際に行われたテストの内容と テスト管理のために 事後に収集する情報との間でかい離が起きないように努めている 5. 今後の取組み 本取組みでは 探索的テストにおけるテスト管理の改善に着目し 受託開発において要求されるテストの客観性を担保することを試み 一定の成果を出すことができた 本書を参考に 探索的テストが管理できないテストであるという誤解が解決され システムの受託開発における受発注者間で 探索的テストの価値が認められ 探索的テストの採用が進むことを期待したい また システム開発のスタイルや方法は今後も大きく変化していくことが予想される 技術の進化に伴い システムに求める要件を記載すれば 自動で対応するソフトウェアを作成するような未来もあるかもしれない しかし どれだけ開発技術が進化しようとも システムやソフトウェアが 期待していたものと違いないことを確認するためには その要求の出元である人間に依存せざるを得ない 探索的テストのようなヒューリスティックなテストは そのような状況でも非常に有効な技術であると予想する 今後は 探索的テストの管理面だけでなく ヒューリスティックな側面に着目し その人のシステム ソフトウェアに対する潜在的なニーズや要求をより効果的に引き出す方法などの 改善を進めていくことを検討している 9

参考文献 [1] 経済産業省, 平成 22 年度企業の IT 投資動向に関する調査報告書 ( 企業 IT 動向調査 ), 経済産業省商務情報政策課, 日本,2011 年. [2] International Software Testing Qualifications Board, テスト技術者資格制度 Foundation Level シラバス日本語版 Version 2011.J02, Japan Software Testing Qualifications Board,2012 年. [3] Bach James, Session-Based Test Management, http://www.satisfice.com/articles/sbtm.pdf, 2000 掲載されている会社名 製品名などは 各社の登録商標または商標です 独立行政法人情報処理推進機構技術本部ソフトウェア高信頼化センター (IPA/SEC) 10