Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

WACATE2019冬 ソフトウェアテスト業界でのステップアップを考えよう #wacate

777 views

Published on

WACATE2019冬の2日目に講演した、「ソフトウェアテスト業界でのステップアップを考えよう」の公開資料です。当日実施した演習については抜いてあります。

Published in: Software
  • Be the first to comment

WACATE2019冬 ソフトウェアテスト業界でのステップアップを考えよう #wacate

  1. 1. ソフトウェアテスト業界での ステップアップを考えよう WACATE実⾏委員 朱峰 錦司
  2. 2. マイヤーズの三⾓形問題 ■ 3つの整数を⼊⼒として受け付ける。 ■ これら3値を各辺の⻑さとする三⾓形の構成を試みる。 ■ 結果、以下のいずれに該当するかを判定する。 – 正三⾓形 – ⼆等辺三⾓形 – 不等辺三⾓形 – 三⾓形を構成できない 2019/12/15 WACATE 2019 冬 2
  3. 3. マイヤーズの三⾓形問題のテストケース ■ はじめて解く⼈向け – この問題の判定関数の機能が正しく動作するかを テストするためのテストケースを10件以上 挙げてみましょう。 ■ 過去に解いたことがある⼈向け – このプログラムがユーザに配布・提供・利⽤される 形式も含め想定し、様々な観点からテストケースを 15件以上挙げてみましょう。 2019/12/15 WACATE 2019 冬 3
  4. 4. 宿題 ■ はじめて解く⼈向け – 書籍の購⼊、もしくは、グーグル検索を駆使して、 本問題の解答例(14件)を調査し、各⾃で 答え合わせをしてください。 2019/12/15 WACATE 2019 冬 4
  5. 5. その他の観点の例 ■ 機種依存⽂字の⼊⼒時の挙動 ■ 巨⼤バイナリデータ送付時の挙動 ■ ⼊⼒フォームの使いやすさ ■ ⼤⼈数での同時利⽤時のパフォーマンス …etc 2019/12/15 WACATE 2019 冬 5
  6. 6. 本⽇のゴール ■ 何事も⾔語化をしようとする意識づけをする。 ■ 現在のソフトウェアテストスキル、業務内容を 棚下ろすきっかけを作る。 ■ 今後のソフトウェアテスト領域でのスキルアップの⽅ 向性を考えるきっかけを作る。 ■ ⾃分の周りの⼈のスキルアップをサポートしようとい う気持ちになる。 2019/12/15 WACATE 2019 冬 6
  7. 7. ⾃⼰紹介 ■ 朱峰錦司(あけみねきんぢ)@kjstylepp ■ 本業@みかかデータ – 2009〜2014︓全社のソフトウェアテストプロセス策定 と実案件での効率化⽀援 – 2014〜︓アジャイル開発、デジタルトランスフォーメ ションのための⽅法論策定、実案件での実践⽀援 ■ 趣味 – WACATE実⾏委員 2019/12/15 WACATE 2019 冬 7
  8. 8. ⾃⼰紹介 ■ 2011冬、2012冬、2013夏にWACATE参加 ■ 2013冬よりWACATE実⾏委員 – 2013冬︓状態遷移テスト, 論⽂書こうぜ – 2014夏︓ゆもつよメソッド – 2014冬︓モデル検査 – 2015冬︓ISO29119 – 2016夏︓テスト分析演習お題作成 – 2016冬︓SWEBOK, SQuBOK, PMBOK – 2017夏︓ICST参加報告 – 2017冬︓論⽂書こうぜ – 2018夏︓テスト分析演習お題作成 – 2018冬︓ASTERセミナーテキスト,Agile Testing Days参加報告 – 2019夏︓テスト分析演習お題作成 2019/12/15 WACATE 2019 冬 8
  9. 9. ⾃⼰紹介 2019/12/15 WACATE 2019 冬 9
  10. 10. お品書き 1. スキルアップのためのプロセス 2. 品質とテスト 3. テストの技術領域 4. スキルアップのためのアクション まとめ 2019/12/15 WACATE 2019 冬 10
  11. 11. スキルアップ のためのプロセス 2019/12/15 WACATE 2019 冬 11 #1
  12. 12. 1.1 プロセス 2019/12/15 WACATE 2019 冬 12 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動
  13. 13. 1.2 今⽇やること 2019/12/15 WACATE 2019 冬 13 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 ①ソフトウェアテストに関する 知識領域のベースを構築する ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す ②⽬標設定の練習をする ④⾏動の具体的な例を⽰す
  14. 14. 品質とテスト 2019/12/15 WACATE 2019 冬 14 #2
  15. 15. 2.1 品質とは ■ ISO/IEC 25010:2011 / JIS X 25010:2013 における定義 ■ システムの品質は,システムが様々な利害関係者 の明⽰的ニーズ及び暗黙のニーズを満⾜している 度合いであり,それによって価値を提供する。 2019/12/15 WACATE 2019 冬 15
  16. 16. 2.2 テストとは ■ ISTQBテスト技術者資格制度 Foundation Level シラバス ⽇本語版 Version 2011.J02 における定義 ■ 全てのライフサイクルを通じて実施する静的、動 的なプロセスにおいて、成果物が特定の要件を満 ⾜するかを判定し、⽬的に合致することを実証し、 ⽋陥を⾒つけるため、ソフトウェアプロダクトや 関連成果物に対し、計画、準備、評価をすること。 2019/12/15 WACATE 2019 冬 16 古いです
  17. 17. 2.2 テストとは ■ 全てのライフサイクルを通じて実施する静的、動的なプロセスにおいて、 成果物が特定の要件を満⾜するかを判定し、⽬的に合致することを実証し、 ⽋陥を⾒つけるため、ソフトウェアプロダクトや関連成果物に対し、計画、 準備、評価をすること。 2019/12/15 WACATE 2019 冬 17 計画 準備 評価 • ソフトウェアプロダクトを • 関連成果物を • 特定の要件を満⾜するかを判定 • ⽬的に合致することを実証 • ⽋陥を⾒つける • 静的に • 動的に Why What How
  18. 18. 2.3 品質とテスト ■ テストだけで、全ての品質をカバーできない。 ■ プロジェクト計画時に、どの品質をテストで カバーするかを計画しなければならない。 – テストでカバーできないものは、設計の作り込みや レビュー等で対処しなければならない。 2019/12/15 WACATE 2019 冬 18
  19. 19. テストの技術領域 2019/12/15 WACATE 2019 冬 19 #3
  20. 20. 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 ①ソフトウェアテストに関する 知識領域のベースを構築する ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す ②⽬標設定の練習をする ④⾏動の具体的な例を⽰す 知識領域の 拡⼤ ①ソフトウェアテストに関する 知識領域のベースを構築する 2019/12/15 WACATE 2019 冬 20 ⽬標の設定 と補正 ②⽬標設定の練習をする
  21. 21. 3.1 テストの全体像 2019/12/15 WACATE 2019 冬 21 ■ テスト技術を整理するうえで有⽤な3つの軸 1. テストレベル 2. テストタイプ 3. テストプロセス
  22. 22. 3.2 テストレベル 2019/12/15 WACATE 2019 冬 22 要件定義 外部設計 内部設計 実装 コンポーネント テスト 結合テスト システムテスト 受⼊テスト
  23. 23. 3.2 テストレベル ■ テストレベルを規定する要素の例 – テスト対象は何か︖ ■ 2つのカバレッジ – コンポーネントカバレッジ – シナリオカバレッジ ■ 環境 – テストベースは何か︖ 2019/12/15 WACATE 2019 冬 23
  24. 24. 3.2 テストレベル 2019/12/15 WACATE 2019 冬 24 ■ 既成のテストレベルの名称を借りることで 思考停⽌しないように注意。 – 「E2Eテスト」って何︖問題 ■ 常に⾃分たちのテストレベルを具体的に ⾔語化しよう。
  25. 25. 3.3 テストタイプ 2019/12/15 WACATE 2019 冬 25 機能テスト ⾮機能テスト ホワイト ボックス テスト 変更部分のテスト ブラックボックステスト
  26. 26. 3.3 テストタイプ 2019/12/15 WACATE 2019 冬 26 利⽤時の品質 有効性 効率性 満⾜性 リスク 回避性 利⽤状況 網羅性 製品品質 性能 効率性 互換性 使⽤性 信頼性 機能 適合性 セキュ リティ 保守性 移植性
  27. 27. 3.3 テストタイプ ■ 規格は整理・体系⽴て⽤途としては便利。 ■ ただし、テスト実務の際は、あまり規格などに こだわりすぎないように。 – 具体的でチーム内の共通認識が 持てる⾔葉で定義しよう。 2019/12/15 WACATE 2019 冬 27
  28. 28. 3.4 テストプロセス 2019/12/15 WACATE 2019 冬 28 終 了 作 業 評 価 ・ レ ポ ト テ ス ト 実 ⾏ テ ス ト 実 装 テ ス ト 設 計 テ ス ト 分 析 テ ス ト 計 画 モニタリング・コントロール
  29. 29. 3.4 テストプロセス 2019/12/15 WACATE 2019 冬 29 テ ス ト ア キ テ ク チ 設 計 全 体 テ ス ト 計 画 全 体 終 了 作 業 全 体 評 価 ・ レ ポ ト 全体モニタリング・コントロール
  30. 30. 3.4 テストプロセス ■ 暗黙知によって省略されているプロセスが あるかどうかを意識しよう。 – 全社標準のテストアーキテクチャがある – 都度効率を考えてテストケース実⾏順を決めている 2019/12/15 WACATE 2019 冬 30
  31. 31. 3.5 様々なテスト技術に関するロール ■ テストレベルカット – そもそも開発がメインだがテストもやっている – 特定のテストレベルのみを担当 – 発注の⽴場として受⼊テストのみを担当 2019/12/15 WACATE 2019 冬 31
  32. 32. 3.5 様々なテスト技術に関するロール ■ テストタイプカット – 機能テストメイン – パフォーマンステスト専⾨ – セキュリティ専⾨ 2019/12/15 WACATE 2019 冬 32
  33. 33. 3.5 様々なテスト技術に関するロール ■ テストプロセスカット – テストマネージャー – テストアーキテクト – テスト分析〜テスト実⾏まで – テスト実⾏のみ 2019/12/15 WACATE 2019 冬 33
  34. 34. 3.5 様々なテスト技術に関するロール ■ その他 – テスト⾃動化システムを開発している。 – 会社のテストプロセス、品質保証標準プロセスを 策定している。 – テスト技術の教育をしている。 2019/12/15 WACATE 2019 冬 34
  35. 35. 3.6 テスト「エンジニア」 ■ テストコードを実装するのがテストエンジニア︖ ■ テスト設計技法を使うのがテストエンジニア︖ 2019/12/15 WACATE 2019 冬 35
  36. 36. 3.6 テスト「エンジニア」 ■ テストのエンジニアリングの要素 – ⾔語化 ■ モデリングを含む – UML : unified modeling language – 再現性 ■ みんながテストエンジニアである必要はあるか︖ – すごく腕のいいテスターの存在は超ありがたい – テスターとテストエンジニアでタッグを組めるのが 理想的な世界かもしれない 2019/12/15 WACATE 2019 冬 36
  37. 37. スキルアップのための アクション 2019/12/15 WACATE 2019 冬 37 #4
  38. 38. 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 ①ソフトウェアテストに関する 知識領域のベースを構築する ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す ②⽬標設定の練習をする ④⾏動の具体的な例を⽰す 知識領域の 拡⼤ ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す 2019/12/15 WACATE 2019 冬 38
  39. 39. 4.1 知識領域を広げる 2019/12/15 WACATE 2019 冬 39 道具や武器 業務上の 問題や課題 知識 引き出し
  40. 40. 4.2 道具や武器の⼊⼿ ■ 勉学あるのみ︕ 2019/12/15 WACATE 2019 冬 40
  41. 41. 4.2 道具や武器の⼊⼿ ■ ASTERセミナー標準テキスト – JSTQB Foundation Levelの内容 ■ 章構成もFLシラバスと同様 – ひとりで学習する分にはシラバスと同等 – みんなで学習、後進を育成する際に、 スライド教材として効⼒を発揮
  42. 42. 4.2 道具や武器の⼊⼿ ■ JSTQBシラバス – 定番中の定番 – 読んでいないやつはもぐり ■ 過激派の意⾒ – FL -> AL
  43. 43. 4.2 道具や武器の⼊⼿ ■ Amazonで「ソフトウェアテスト」で検索︕ – よほど評価の低いやつ以外はどれも良書 ■ そんなに数はないので、最終的には全て読破︕ – 過激派の意⾒ ■ そんな中から本⽇はいくつかピックアップ
  44. 44. 4.2 道具や武器の⼊⼿ ■ はじめて学ぶソフトウェアのテスト技法 – 定番中の定番 – Kindleがある
  45. 45. 4.2 道具や武器の⼊⼿ ■ ソフトウェアテスト技法ドリル – 技法といったらこれ – ⽇本発 ■ わりと簡単に著者に会える︖︕ – 定期的に勉強会も発⾜
  46. 46. 4.2 道具や武器の⼊⼿ ■ ソフトウェア品質知識体系ガイド – いわゆる辞書 – 参考⽂献の宝庫
  47. 47. 4.2 道具や武器の⼊⼿ ■ ソフトウェア教科書 JSTQB Foundation – JSTQB FL受けるならこれ – 意外と100点は難しい︖︕
  48. 48. 4.2 道具や武器の⼊⼿ ■ ひとりでの勉学はつらい… ■ そんなときは知⼈やWACATEで出会った仲間と 読書会や勉強会を企画しよう︕
  49. 49. 4.3 問題解決のヒント ■ 取り組み発表、紹介を扱うイベントに⾏こう︕ – 気軽にライトなものに⾏くもよし – 査読プロセスを通った硬派なものもよし
  50. 50. 4.3 問題解決のヒント ■ WACATE ■ connpassで「ソフトウェアテスト」で検索︕ – NaITE – Web Service QA Meeting – Ques – D3 …etc
  51. 51. 4.3 問題解決のヒント ■ JaSST – 東京 ■ レビュー – 地⽅ ■ 北海道 ■ 東北 ■ 新潟 ■ 北陸 ■ 東海 ■ 関⻄ ■ 四国 ■ 九州
  52. 52. 4.3 問題解決のヒント ■ ソフトウェア品質シンポジウム = SQiPシンポジウム ■ テスト設計コンテスト – 各地予選 – 東京本戦 ■ システムテスト⾃動化カンファレンス
  53. 53. 4.4 ⼈⽣を変える出会い ■ ふと⾜を運んだイベントに、神や化け物のような ⼈たちがいっぱいいる。 ■ ロールモデルと出会う。 ■ ロールモデルとまではいかないまでも、こういう 活動をしている⼈もいるんだ、と知⾒を広げる。 2019/12/15 WACATE 2019 冬 53
  54. 54. 4.5 バランスよく ■ 「⽬的意識も持たないで…」という⼈もいるけど、 とりあえず勉強する、も決して悪くない。 ■ ⼀⽅、勉強過多になって、問題解決と結びつける ⽅がおろそかになるのも危ない。 2019/12/15 WACATE 2019 冬 54
  55. 55. 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 ①ソフトウェアテストに関する 知識領域のベースを構築する ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す ②⽬標設定の練習をする ④⾏動の具体的な例を⽰す ⽬標への ⾏動 ④⾏動の具体的な例を⽰す 2019/12/15 WACATE 2019 冬 55
  56. 56. 4.6 よきタイミングで棚卸しをしよう ■ ⾃分のスキルや取り組みを棚下ろす・振り返る ことで、効果的に次の⼀歩につながる。 ■ 資格取得 ■ 発表 – 社内 – 対外 2019/12/15 WACATE 2019 冬 56
  57. 57. 4.7 資格をとろう ■ JSTQB – いわずもがな ■ JCSQE – 初級︓SQuBOK頭に叩き込めばいける – 中級︓わりとむずかしい 2019/12/15 WACATE 2019 冬 57
  58. 58. 4.8 発表をしよう ■ ⾃分の取り組みを体系⽴てられる – どんな問題を解決したのか︖ – 何が効いたのか、何は効かなかったのか︖ ■ 客観的なフィードバックを得られる – 参加者からのコメント – 査読コメント ■ 査読に落ちた場合は、まだまだなんだと 反省して次に繋げる。 2019/12/15 WACATE 2019 冬 58
  59. 59. 4.9 戦略的に ■ 最初から事例発表をするつもりチャレンジ – 仮説は何︖ – 効果はどうやって検証する︖ ■ アウトプットよりアウトカム ■ 発表過多にご注意 2019/12/15 WACATE 2019 冬 59
  60. 60. one more thing 2019/12/15 WACATE 2019 冬 60 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 業界貢献を通して、⾃分や他の ⼈のループを加速させる。
  61. 61. 4.10 業界貢献 ■ ⾃分や仲間でイベントを企画する。 – 次のセッションを乞うご期待 ■ 既存イベントの運営委員を担当する。 2019/12/15 WACATE 2019 冬 61
  62. 62. まとめ 2019/12/15 WACATE 2019 冬 62
  63. 63. [再掲] 本⽇のゴール ■ 何事も⾔語化をしようとする意識づけをする。 ■ 現在のソフトウェアテストスキル、業務内容を 棚下ろすきっかけを作る。 ■ 今後のソフトウェアテスト領域でのスキルアップの⽅ 向性を考えるきっかけを作る。 ■ ⾃分の周りの⼈のスキルアップをサポートしようとい う気持ちになる。 2019/12/15 WACATE 2019 冬 63
  64. 64. [再掲] 今⽇やったこと 2019/12/15 WACATE 2019 冬 64 知識領域の 拡⼤ ⽬標の設定 と補正 ⽬標への ⾏動 ①ソフトウェアテストに関する 知識領域のベースを構築する ③知識領域拡⼤のための 具体的な⼿⽴ての例を⽰す ②⽬標設定の練習をする ④⾏動の具体的な例を⽰す
  65. 65. いい修⾏場所 ありますよ :) 2019/12/15 WACATE 2019 冬 65
  66. 66. Join WACATE!

×