情 報 種 別 ： 公開会 社 名 ： (株)NTTデータ
情報所有者 ： 技術革新統括本部

JaSST’20 Hokkaido 基調講演

「なぜ大規模SIerで探索的テストを推進しているのか？
～NTTデータが目指すソフトウェアテストの世界～」
株式会社NTTデータ 技術革新統括本部 システム技術本部
生産技術部 ソフトウェア技術センタ
熊川 一平© 2020 NTT DATA Corporation

注意事項
本セッションでの発言、およびスライドの内容には発表者の主観的な理解や意見が多数含まれています。
多くの場合、それらはロクに検証もされていません。
ご利用にあたっては十分にご注意ください。
「なんか一生懸命しゃべってんなこのオッサン」ぐらいの気持ちで見ておくことをお勧めします。

© 2020 NTT DATA Corporation2

自己紹介

熊川 一平 (くまがわ いっぺい）
株式会社NTTデータ 技術革新統括本部 システム技術本部 生産技術部 ソフトウェア技術センタ
テクニカルグレード イノベータ(ソフトウェアプロセス)• ソフトウェアテスト/ソフトウェア品質保証を中心としたR&D活動と、現場適用支援に従事【主な講演歴】• JaSST’14 Tokyo ベストスピーカー賞• JaSST’19 Tokyo ベストスピーカー賞• ソフトウェア品質シンポジウム2017 SQiP Best Report Effective Award• ソフトウェア品質シンポジウム2019 SQiP Best Paper Effective Award© 2020 NTT DATA Corporation3

略歴・趣味など
略歴：• 大阪府 交野市 生まれ （関東の人はだいたい読めない）• 東海大付属 仰星高等学校 （中等部から。元MLB 上原選手の出身。ラグビーも有名）• 岡山県立大学 情報システム工学部 (ボギー＝+1で卒業）• （株）NTTデータ 入社
趣味：• 野球観戦 （目指せパ・リーグ3連覇）• 料理 （テレワークが増えて料理が楽しい。最近は子供のお弁当作りに注力。）© 2020 NTT DATA Corporation

4

NTTデータ■名 称
株式会社エヌ・ティ・ティ・データ
NTT DATA CORPORATION■ 本社所在地〒135-6033 東京都江東区豊洲3-3-3
豊洲センタービル■ 事業内容・ 電気通信事業
・ データ通信システムの開発および保守の受託、販売ならびに賃貸
・ データ通信システムに係るソフトウエアまたは装置の開発および保守の受託、販売ならびに賃貸
・ データ通信システムに係る建設工事ならびにその他の建築工事および設備工事の請負
・ インターネット、ケーブルテレビ、通信衛星等のネットワークを利用した情報処理、情報仲介および情報提供業務ならびに商取引および決済処理業務
・ マルチメディア関連の音声、映像、データ等のコンテンツの制作および販売

・ 経理事務、給与計算、各種保険手続等企業の各種事務処理の代行■交 通
東京メトロ有楽町線 豊洲駅 3番または1b出口徒歩1分 ・ 著作権、工業所有権、ノウハウその他の知的財産権の取得、利用方法の開発、使用許諾、管理および譲渡ならびにこれらの仲介■ 設立年月日1988（昭和63）年5月23日

・ 広告宣伝に係る広告媒体の開発および販売ならびに広告代理店業
・ 不動産の賃貸、仲介、保有および管理・ 労働者派遣事業
・ 損害保険代理業および生命保険の募集に関する業務■資 本 金1,425億2,000万円（2019年3月31日現在）

・ 前各号に関する企画、調査、研究、研修およびコンサルティングの受託
・ その他商業全般
・ その他前各号に関する一切の業務© 2020 NTT DATA Corporation5■事業セグメント別業績（2019年3月期）
事業の多様化を推進するビジネスポートフォリオ
売上高(外円) 営業利益(内円)

NTTデータグループ
総資産2兆4,760億円
売上高

2兆1,636億円

従業員数123,884人（連結）
連結子会社

307社

4,799億円

4.6%

4,401億円
営業利益

公共･社会基盤分野
売上高

売上高

17.3%

18.8%

1.5%

営業利益

439億円

5.0%
2.2%

79億円

27.6%
30.5%

営業利益

1,477億円

その他

EMEA・中南米分野

金融分野
22.0%

16.6%
33.2%

売上高

5,591億円
営業利益

北米分野
売上高

529億円

20.8%

4,219億円

法人･
ソリューション分野

営業利益

35億円

売上高

5,298億円
営業利益（注）中国・APAC分野はその他に含まれています。

485億円（注）2019年3月期より国際財務報告基準（IFRS）を適用しています。

© 2020 NTT DATA Corporation

6経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発© 2020 NTT DATA Corporation

7経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発↓ 社内異動制度を活用して自分で異動
2. テスト自動化を推進する全社組織© 2020 NTT DATA Corporation

8経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織↓
3. 探索的テストの推進© 2020 NTT DATA Corporation

9経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織
3. 探索的テストの推進↓ ↑4. テスト・品質に関するプロジェクト支援
北は北海道。南は福岡まで現地で支援！
札幌には1年ぐらい居ました。スープカレー食べまくってました。

© 2020 NTT DATA Corporation

10

経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織
3. 探索的テストの推進
4. テスト・品質に関するプロジェクト支援↓5. そして・・・？
© 2020 NTT DATA Corporation

11

NTTデータ
ITコンサルITノウハウの支援

発注者

要求条件

完成責任

システム・インテグレーター（ＳＩｅｒ）（全体のコーディネイト）© 2020 NTT DATA Corporation

ハードウエアパッケージ
ソフトウエアソフトウエア開発

ネットワークハードベンダー
各社

パッケージ
ソフト会社

ソフトハウス各社

通信会社

12

IT業界 ≠ SIer

IT業界

SIer

© 2020 NTT DATA Corporation

13

IT業界 ≠ SIer

© 2020 NTT DATA Corporation

利用者

責任期間

SI

他人

大きい

長い

自社開発

自分/他人

大きい

長い

日曜プログラマ

自分

小さい

短い

14

SIerのテスト

SI事業者のテストではテストに可監査性・客観性が求められる
テスト/バグ密度

信頼度成長曲線上限

下限© 2020 NTT DATA Corporation

15

テストケース表

探索的テスト

テスト結果報告書

報告
テストケース表
進捗報告資料結果や状況が監査可能 報告
な状態で残らない© 2020 NTT DATA Corporation16よく似た言葉たち◆ Ad-hoc Testing• アドホック（ad hoc）は、「特定の目的のための」「限定目的の」などといった意味のラテン語の語句である。(wikipediaより)• その場で思い付いた項目を実行するだけで、テスト計画なしに行われるソフトウェアテストのこと。
• 経験あるテスト技術者によるアドホックテストは、計画的なテストが行き詰っている場合に有益なテストとみなされることがある。これは、伝統的にはエラー推測、近年では探索的テストとも呼ばれる。
(某Webメディアより)◆ Monkey Testing• プログラムのテスト方法の一つで、猿に実機を渡して無茶苦茶にイベントを発生させ、装置が問題なく動くかどうかを確認するストレステスト。アドホックテストともいう。(某Webメディアより)◆ Exploratory Testing• テスト対象として与えられたソフトウェアにおいて起こりそうなバグを推測して、それを検出するテストケースを設計すること。経験ベースのテスト技法に分類される。(某Webメディアより）© 2020 NTT DATA Corporation17

バグを「探索」するということ

https://sites.google.com/site/exploratorytestingjapan/
出典：探索的テストのモデル（探索的テスト研究会）© 2020 NTT DATA Corporation18

バグを「探索」するということ

猿のように何も考えず打鍵するのではない。
考えて、頭の中でテストケースを設計してテストを行うのが探索的テストだ。
≠モンキーテスト

https://sites.google.com/site/exploratorytestingjapan/
出典：探索的テストのモデル（探索的テスト研究会）© 2020 NTT DATA Corporation19バグを「探索」するということその場で思いついたことをやるだけではない。実行した結果を「観察」して、さらに思考を深めてテストを実行していくのが探索的テストだ。≠アドホックテスト

https://sites.google.com/site/exploratorytestingjapan/
出典：探索的テストのモデル（探索的テスト研究会）© 2020 NTT DATA Corporation

20

「探索する」ということ＿□×

乗り換え案内
出発日時：
出発地
↓
目的地
検索

出発日時が自由入力できる…
存在しない日付を入れてみたらどうなるだろう？

© 2020 NTT DATA Corporation

21

「探索する」ということ
＿□×

＿□×

乗り換え案内乗り換え案内出発日時： 2017/13/32

システムエラーが発生しました！

出発地
↓
目的地

java.xxxx.DateFormatException
検索ボタンを押して数秒後・・・
検索TOPページに戻る

やった！
バグ発見！！

© 2020 NTT DATA Corporation

・・・・・・・・・・・：line 28
・・・・・・・・・・・：line 127

22

「探索する」ということ
＿□×

＿□×

乗り換え案内乗り換え案内出発日時： 2017/13/32

システムエラーが発生しました！

出発地
↓
目的地

java.xxxx.DateFormatException
検索ボタンを押して数秒後・・・

ここで終わるのがアドホックテスト
検索やった！
バグ発見！！

© 2020 NTT DATA Corporation

・・・・・・・・・・・：line 28
・・・・・・・・・・・：line 127

23

TOPページに戻る「探索する」ということ

他のFormatException
はないか？

他にシステムエラーを起こせないか？

妙に処理時間が長い。
無駄な処理をしている？

例外のログからセキュリティホールをつけないか？

システムエラーの後TOPページに戻ると状態が変わっていないか？

存在しない出発地や目的地だとどうなる？

© 2020 NTT DATA Corporation

24「探索する」ということテスト実行後のふるまいを観察して更なるテストにつなげバグを「探索」する
他のFormatExceptionはないか？

他にシステムエラーを起こせないか？

妙に処理時間が長い。
無駄な処理をしている？

例外のログからセキュリティホールをつけないか？

システムエラーの後TOPページに戻ると状態が変わっていないか？

存在しない出発地や目的地だとどうなる？

© 2020 NTT DATA Corporation25

観察する。
観察するのは画面だけじゃない。
••
••
•

帳票
各種ログ（デバッグログ含む）
DBレコード
出力ファイル
体感的な応答速度 ・・・たくさんあるはず！

（こんなことからバグを見つけた人もいる ※特殊な例）
もう操作は終わったのに、ルーターがやけにチカチカと光っている…

© 2020 NTT DATA Corporation

操作するとストレージが轟音を立て始める・・・

26

探索的テスト

テストケースは無形の成果物

https://sites.google.com/site/exploratorytestingjapan/
出典：探索的テストのモデル（探索的テスト研究会）© 2020 NTT DATA Corporation

27

探索的テストん？SIerのテストには客観性が求められるんじゃなかったの？
テストケースは無形の成果物
なんでそんなの推進してんの？

https://sites.google.com/site/exploratorytestingjapan/
出典：探索的テストのモデル（探索的テスト研究会）© 2020 NTT DATA Corporation28なぜ、探索的テストを始めたのか？

© 2020 NTT DATA Corporation

経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織
3. テスト・品質に関するプロジェクト支援
4. 探索的テストの推進
5. そして・・・？

© 2020 NTT DATA Corporation30

背景その１© 2020 NTT DATA Corporation

頼れる先輩たち
機能漏れがないか調べたりするんだよ

CRUDマトリクスって何につかうの？

この仕様書読むといいよ●●の仕様がよくわからない

このAPIの使い方わかんない© 2020 NTT DATA Corporation32

頼れる先輩たちがモゴモゴするとき・・・。
そ・・・そういうもんなの！
品質に問題ないって何で言えるの？

ル・・・ルールだよ！

なんでStepあたりのテスト項目数で評価するの？

たまには自分で考えたまえ！

テスト観点ってこれで十分なの？

© 2020 NTT DATA Corporation

33

長年考え続けている考え続けて、あきらめに近い感情があった。
• 品質が良い/悪い、品質に問題がないというのを断言するのは「神にも等しい行為」• テストを十分にやった。と客観的に証明することは不可能• ましてや「すべてのテスト」をやりました。と言うのは完全なウソだ© 2020 NTT DATA Corporation34

品質が良いとか、十分にテストをした。なんて誰にも証明できないことなのではないか・・・・・・・？

© 2020 NTT DATA Corporation

35

背景その２© 2020 NTT DATA Corporation

某金融機関のシステムトラブルに関する報道

XX銀行システムトラブル！！ XX万人に影響！！
こんなこともテストしてないんですか？

私だってExcelで家計簿できますよ!

許されませんね！

※実話© 2020 NTT DATA Corporation37

某金融機関のシステムトラブルに関する報道

XX銀行システムトラブル！！ XX万人に影響！！
こんなこともテストしてないんですか？
許されませんね！

© 2020 NTT DATA Corporation

※ 実話

38

私だってExcelで家計簿できますよ!

コロンブスの卵
物事が為されたあとは、誰でもその方法を知っている。

こんなこともテストしてないんですか？

バグが見つかった後は、誰でもその見つけ方を知っている。

© 2020 NTT DATA Corporation39

銀行の勘定系システムはとても難しい• 24H365D落ちることが許されない超ミッションクリティカルなシステム• ソフトウェアのバグだけでなく、ハードウェア・ネットワークの故障時も落ちることは許されない• 当然ながら個人だけでなく法人口座もあり、取り扱う口座の数分、莫大なデータ量が存在する• 個人の利用（引出、預入など）だけでなく、法人の利用（給与振り込みなど）もあり、一時的なエラーやトラフィック増があったとしても、全てのトランザクションを矛盾なく取り扱う必要がある• そのために2重・3重・4重にトランザクションを保証する仕組みを運用している。
• 「ATMで引き出しが行われている最中に、公共料金の引き落とし処理が行われていて、順序を守らないと残高がマイナスになる。しかも引出しの処理中にネットワーク故障が発生。 」• などなど私だってExcelで家計簿できますよ!

© 2020 NTT DATA Corporation

非常に難しいシステムを開発している。
が、ユーザから見ると、一見して簡単そうに見えてしまう。

40

そもそもシステム開発自体が難しすぎる
あなたはXX省〇〇システム更改PJのプロジェクトマネージャです。

〇〇システムはサービス開始から１０年が経過し、その間に実施されたバグの修正や、機能追加によって複雑な構造になっており、維持費用が高額になっていました。
本プロジェクトは、〇〇システムを更改することにより、維持費用を低減させることを目的とします。
また、ユーザに優しいインタフェースに変更し、業務効率を高めるとともに、20XX年に予定される法改正に対応することも目指します。開発期間は１年。予算はＸ億円です。

現行業務わかるのかな・・・

アーキテクチャどうしよう・・© 2020 NTT DATA Corporation

開発者はどうやって集めよう

開発者はどれぐらい必要かな？

予算足りるかな・・・

そもそも間に合うのか・・・？

41

要求あいまい過ぎない・・・？

法改正があると納期はずらせないな・・・そもそもシステム開発自体が難しすぎる
予算

・・・・

納期要求の明確さ

経験

システム開発の成否にかかわる
因子

アーキテ
クチャ

開発手
法
開発環境

© 2020 NTT DATA Corporation

非機能要求

開発者の人数42

品質

開発者のスキルそもそもシステム開発自体が難しすぎる
予算・・・・

納期要求の明確さ

経験

人間が考えるには多すぎる
システム開発の成否にかかわる因子

アーキテクチャ開発手法開発環境© 2020 NTT DATA Corporation

非機能要求

開発者の人数43

品質開発者のスキル

その割に、断言する人が多い

プロジェクトの成否を決めるのはずばり「アーキテクチャ」だね！

© 2020 NTT DATA Corporation44

勝ちに不思議の勝ちあり
負けに不思議の負けなし
By 野村克也さん
From 松浦静山の剣術書『剣談』© 2020 NTT DATA Corporation45

• みんな、自分の成功体験から簡単に結論を出しすぎている。

• 多くの場合、問題はそれほど簡単なものではない。
• 質が悪いのは、プロジェクトの成否にかかわる要因があまりに多岐にわたるため、おおよそ思いつきで言われたことであっても、大体は当てはまってしまう。
• その結果、難しい問題がまるで簡単な問題のようにとらえられてしまう。

• 事情や背景、知識や経験がない人ほど、この傾向は強い。
• 多少賢い人は、要因の重みづけを考え始め、決定因子を特定しようとする。
• が、あまりにも条件が多岐にわたるため決定因子が特定できない。

© 2020 NTT DATA Corporation46本来、とても難しい問題を簡単な問題に置き換えてしまうことで論理的に解決した気になっている。

© 2020 NTT DATA Corporation47

本来、とても難しい問題を簡単な問題に置き換えてしまうことで論理的に解決した気になっている。
論理的に解かないという選択肢はないのか？

© 2020 NTT DATA Corporation48

なぜ、探索的テストを始めたのか？

© 2020 NTT DATA Corporation

背景１＋背景２

品質が良いとか、十分にテストをした。なんて誰にも証明できないことなのではないか・・・・・・・？
論理的に解かないという選択肢はないのか？
もっと現実的な効果を積み上げていくほうがいいのでは？
© 2020 NTT DATA Corporation50

テストを現実的に考えてみるテストをすることによって得られるもっともわかりやすい効果はなんだろう？
↓品質がよくなる© 2020 NTT DATA Corporation51

テストを現実的に考えてみるテストをすることによって得られるもっともわかりやすい効果はなんだろう？
↓品質がよくなる© 2020 NTT DATA Corporation52

テストを現実的に考えてみるテストをすることによって得られるもっともわかりやすい効果はなんだろう？
↓バグが見つかること© 2020 NTT DATA Corporation53

テストを現実的に考えてみるテストをすることによって得られる仕様です
もっともわかりやすい効果はなんだろう？
↓バグが見つかること© 2020 NTT DATA Corporation54

テストを現実的に考えてみるテストをすることによって得られるもっともわかりやすい効果はなんだろう？
↓バグが見つかること悪い仕様も見つけること© 2020 NTT DATA Corporation55

探索的テストの効果
欠陥摘出能力
開発分類(件/時間)
平均値
1.214 スマホアプリ
中央値
0.925 Webシステム
組み込み機器

探索的テストスクリプトテスト(件/時間)(件/時間)
1.726
0.137
1.112
0.085
0.717
0.072

プロジェクト概要
Androidスマートフォンアプリの開発
金融機関向けスマートフォンアプリの開発
通信企業向けスマートフォンアプリの開発
音声認識ロボットのソフトウェア開発
スマートホーム機器のソフトウェア開発
公共団体向けWebシステムの開発
企業人事向けWebシステムの開発
金融機関向けWebシステムの開発

欠陥摘出能力(件/時間)
0.696
1.1293.389
0.545
1.187
1.605
0.440
0.455

分類

IDA
B
CDE
FGH

© 2020 NTT DATA Corporation56

探索的テストの効果
仕様改善提案能力 開発分類
(件/時間)
平均値
0.880 スマホアプリ
中央値
1.111 Webシステム
組み込み機器

探索的テストスクリプトテスト(件/時間)(件/時間)
1.043
0.018
0.723
0.009
1.817
0.011

プロジェクト概要
Androidスマートフォンアプリの開発
金融機関向けスマートフォンアプリの開発
通信企業向けスマートフォンアプリの開発
音声認識ロボットのソフトウェア開発
スマートホーム機器のソフトウェア開発
公共団体向けWebシステムの開発
企業人事向けWebシステムの開発
金融機関向けWebシステムの開発

仕様改善提案能力(件/時間)
0.625
1.944
0.574
1.931
1.500
0.296
1.391
0.500

分類

IDAB
CDEFGH© 2020 NTT DATA Corporation

57１０倍近いバグの摘出能力１００倍近い仕様改善提案能力↓
なんて現実的な効果© 2020 NTT DATA Corporation58

どんなテストをしたほうがいいのか。
どうやれば品質の良さ・悪さを証明できる？
解けないパズルを解こうとするよりも現実的に効果が出るソリューションを求めたい。
探索的テストを使っていこう。

© 2020 NTT DATA Corporation59

公式なテスト

非公式なテスト

システムテスト
AP結合テスト
AP単体テスト© 2020 NTT DATA Corporation• 事前にテストケースを作成し、要件を順番通りに検証する• テストケースは事前に作成せず、検証対象を特に定めない• 再現性／客観性／可監査性に優れる• 再現性／客観性／可監
査性に乏しい• テスト1回あたりに必要な工数が大きい• テスト1回あたりに必要な工数が小さい

60

探索的テストの活用ポイント
工数削減したい

商用バグのすり抜けを減らしたい

ここで実施

ここで実施

UT

探索I
TS
T

• 結合テストの前に探索的テストでバグを出すことで、後工程のテストで見つけるよりも少ない工数でバグを修正できる。
• 運用対処やUI改善が実施でき、顧客満足度が向上する。
• UT以降継続して実施しても良い。
© 2020 NTT DATA Corporation

UTI
T

S
T

探索

• STまですり抜けてしまったバグを探索的テストで抽出できる。
• 設計書からテストを実施しないため、設計書からテストケースを作成する従来のテストとは違う観点のテストができる。

61

効果的な受入テストがしたい

ここで実施
U
TI
T

探索

ST

• 受入テストの時点で、後工程で見つかるバグが摘出できる。
• 請負ベンダと違う観点で効果的な受入テストができる。
※上記はITまで委託した場合

社内での最初の評価• 本当にバグの摘出効率は高いのか？
• 結局公式なテストをすることになるのであれば、無駄な投資になるのではないか？
• 多忙なプロジェクトの中で、非公式なテストに対して投資できる工数がない。

© 2020 NTT DATA Corporation

62強い抵抗を持つ人＝論理的
ただし、その論理はその人は受けていた教育や、過去の経験に依存したものである。

受けていた
教育
その人なりの論理
過去の経験© 2020 NTT DATA Corporation

63

「論理」にどうやって立ち向かうのか？

受けていた
教育
その人なりの論理
過去の経験© 2020 NTT DATA Corporation

64新しい「論理」を作ってゲームチェンジする

新たな教育

受けていた
教育
その人なりの論理

新たな経験© 2020 NTT DATA Corporation

過去の経験

65

© 2020 NTT DATA Corporation66

知識と経験を充足するような研修を作る

キーワードは ”Knowing-Doing Gap”

知っていてもできない
The Knowing-Doing Gap: How Smart
Companies Turn Knowledge into Action
Jeffrey Pfeffer (著), Robert I. Sutton (著)© 2020 NTT DATA Corporation67

意図的にバグを混入させたアプリケーション

実際の開発を想起させるためのドキュメントや議事録なども用意。
プロジェクト計画書
レビュー記録 など…

© 2020 NTT DATA Corporation

68

知識と経験を充足するような研修を作る
知識としての学習を行う

バグの埋め込まれたアプリを使ってテストを実践する
ここはグループワーク
実践内容を振り返り誤りや改善を知る

もう一度テストを実践する

結果を確認し再度振り返りを行う© 2020 NTT DATA Corporation

69

知識と経験を充足するような研修を作る
知識としての学習を行う

バグの埋め込まれたアプリを使ってテストを実践する

振り返りの後にも実践をさせる(Gapを埋める)

1度振り返りの機会を作ってあげる(Gapに気付く)

実践内容を振り返り誤りや改善を知る

もう一度テストを実践する
答え合わせは最後に。
(極力自らの体験に)結果を確認し再度振り返りを行う© 2020 NTT DATA Corporation70論理を変えれば、反応も変わる• 本当にバグの摘出効率は高いのか？
• 結局公式なテストをすることになるのであれば、無駄な投資になるのではないか？
• 多忙なプロジェクトの中で、非公式なテストに対して投資できる工数がない。

• こんな短期間でバグが見つかるならやってみよう• 先にバグを見つけたほうが、後で見つかるよりいいよね© 2020 NTT DATA Corporation

71100 10k個のバグ

PJ© 2020 NTT DATA Corporation72

100 10k

現実的な効果個のバグ
PJ© 2020 NTT DATA Corporation73いま、進めていること
その１© 2020 NTT DATA Corporation

経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織
3. テスト・品質に関するプロジェクト支援
4. 探索的テストの推進
5. そして・・・？

© 2020 NTT DATA Corporation

75

U
T

探索

探索的テスト© 2020 NTT DATA Corporation

IT

S
T

記述式テスト76

© 2020 NTT DATA Corporation

非公式なテスト

UT

探索

IT

公式なテスト

UT

探索

ST77

ST

記述式テストと探索的テストの良いとこ取りがしたいアプローチ© 2020 NTT DATA Corporation

客観性

効率

記述式テスト〇×探索的テスト

×〇

アプローチ

客観性効率

新しい手法

〇

〇

78

記述式テスト
---

---

---

---

---~~~~~~~~~~~~~~~---~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

---

---

---

---

---~~~~~~~~~~~~~~~

---

---

---

---

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

テストベースからテスト設計する

テスト設計成果物をレビューして抜け漏れを確認する

テストする

SONAR Testing
ここ足りてないから追加ね
不足分やります

まずテストする© 2020 NTT DATA Corporation

テスト中に取得されたモデルをレビューして抜け漏れを確認する
79

抜け漏れを補うようにテストする時間があったらデモ© 2020 NTT DATA Corporation

80いま、進めていること
その２© 2020 NTT DATA Corporation

経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織
3. テスト・品質に関するプロジェクト支援
4. 探索的テストの推進
5. そして・・・？

© 2020 NTT DATA Corporation82

開発者・技術者への尊敬/敬意あらゆるモノづくりを担う人たちへの尊敬
当社は、当社とお付き合いのある技術者の皆様によって支えられている技術者の皆様が• もっとパワーを発揮できるようにする• もっと楽しく仕事ができるようにする
今は、これが自分の使命だと言い切れる。

© 2020 NTT DATA Corporation83

日本のSI業界のゲームチェンジ• 「品質に問題ない」• Excel方眼紙• PowerPoint設計書• 何図かわからない便利すぎる図• ソースコードと情報量の変わらないフローチャート• 画面キャプチャ証跡ぺたぺた© 2020 NTT DATA Corporation84

日本のSI業界のゲームチェンジ• 「品質に問題ない」• Excel方眼紙• PowerPoint設計書• 何図かわからない便利すぎる図• ソースコードと情報量の変わらないフローチャート• 画面キャプチャ証跡ぺたぺた

もっと“現実的に”変える© 2020 NTT DATA Corporation

85技術者の皆様が• もっとパワーを発揮できるようにする• もっと楽しく仕事ができるようにする
今は、これが自分の使命だと言い切れる。

テスト中に取得されたモデルをレビューして抜け漏れを確認する© 2020 NTT DATA Corporation86

技術者の皆様が• もっとパワーを発揮できるようにする• もっと楽しく仕事ができるようにする
今は、これが自分の使命だと言い切れる。

皆様や、周りの技術者にもテスト中に取得されたモデルをレビューして抜け漏れを確認する© 2020 NTT DATA Corporation87

ずっと、考えていること© 2020 NTT DATA Corporation

経歴

1. 大規模金融機関向けの勘定系/周辺系システム開発
2. テスト自動化を推進する全社組織3. テスト・品質に関するプロジェクト支援
4. 探索的テストの推進
5. そして・・・？
6. そして、そして・・・？

© 2020 NTT DATA Corporation89

本当にそうなのか？

境界値分析• 境界にはバグが潜む。
• 等符号の使い方を誤ったりするから。

© 2020 NTT DATA Corporation90

たぶんそう。でも証明できない。

境界値分析• 境界にはバグが潜む。
• 等符号の使い方を誤ったりするから。

自分の体感• 言うほど等符号まちがわないよ• そんなことよりAPIが思ってたのと違うデータ返すことのほうが多いよ（その原因は境界値なのかもしれないが・・・）© 2020 NTT DATA Corporation

91

神の視点

境界値分析で設計されるテスト© 2020 NTT DATA Corporation92

神の視点とある手法Xによって設計されるテスト
境界値分析で設計されるテスト© 2020 NTT DATA Corporation93

本来、とても難しい問題を簡単な問題に置き換えてしまうことで論理的に解決した気になっている。

© 2020 NTT DATA Corporation94

本来、とても難しい問題を簡単な問題に置き換えてしまうことで論理的に解決した気になっている。
論理的に解かないという選択肢はないのか？

© 2020 NTT DATA Corporation95

もっと大胆に視野を変える必要がある• 綺麗なテストアーキテクチャ• 高度な技術• 美しいレポート
素晴らしい。
ただ世の中を変えるためには、能力だけでなく、「普及のしやすさ」、「わかりやすさ」も重要である。

© 2020 NTT DATA Corporation96

もっと大胆に視野を変える必要がある• 綺麗なテストアーキテクチャ• 高度な技術• 美しいレポート
素晴らしい。
ただ世の中を変えるためには、能力だけでなく、「普及のしやすさ」、「わかりやすさ」も重要である。

万人に伝わらない 「論理的できれいな手法」 よりも万人に伝わる 「現実的で泥臭い手法」 のほうがいい時もある© 2020 NTT DATA Corporation97

品質が良いとか、十分にテストをした。なんて誰にも証明できないことなのではないか・・・・・・・？
論理的に解かないという選択肢はないのか？
もっと現実的な効果を積み上げていくほうがいいのでは？
© 2020 NTT DATA Corporation98© 2020 NTT DATA Corporation