Slide 1

Slide 1 text

“アジャイルテスティングあるある”と、 その中で工夫したこと
 
 かつの
 2023.07.18


Slide 2

Slide 2 text

本日の流れ
 1
  自己紹介と導入
 2
  属人化の発生源は?
 3
  どのように対処した?
 4
  まとめ


Slide 3

Slide 3 text

Hello!
 勝野 円佳 (かつの まどか)
 
 SaaS/ASP型のサイト内検索の開発経験3年を経て 
 テストの重要性を知り、第三者検証6年目に突入。 
 QA業界を盛り上げるべくQues司会を担当。 


Slide 4

Slide 4 text

こんな経験はありませんか?  ある仕様について、詳しい人が固定メンバーになってしまっている
  他のメンバーがその仕様を学ぶ時間がない
  属人化は専門性を高めるのでOKとしているが、いざとなると困ることがある


Slide 5

Slide 5 text

そこで感じた「アジャイルテスティングあるある」
 目まぐるしく過ぎていくSprintの中で
 属人化による悪影響が起きやすい


Slide 6

Slide 6 text

本日の流れ
 1
  自己紹介と導入
 2
  属人化の発生源は?
 3
  どのように対処した?
 4
  まとめ


Slide 7

Slide 7 text

2.属人化の発生源は?
 実装 機能1,2,3 Aさんの テスト対象 機能1 Bさんの テスト対象 機能2 Cさんの テスト対象 機能3 Sprint 1 ウォーターフォールだったら
 ここで終わっているかも


Slide 8

Slide 8 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 Aさんの テスト対象 機能1 機能1 Bさんの テスト対象 機能2 機能2 Cさんの テスト対象 機能3 機能4 Sprint 1 Sprint 2

Slide 9

Slide 9 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 Aさんの テスト対象 機能1 機能1 Bさんの テスト対象 機能2 機能2 Cさんの テスト対象 機能3 機能4 Sprint 1 Sprint 2 属人化

Slide 10

Slide 10 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 Aさんの テスト対象 機能1 機能1 Bさんの テスト対象 機能2 機能2 Cさんの テスト対象 機能3 機能4 Sprint 1 Sprint 2 属人化 属人化

Slide 11

Slide 11 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 Aさんの テスト対象 機能1 機能1 Bさんの テスト対象 機能2 機能2 Cさんの テスト対象 機能3 機能4 Sprint 1 Sprint 2 属人化 属人化 Sprint 3

Slide 12

Slide 12 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3

Slide 13

Slide 13 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3

Slide 14

Slide 14 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない...

Slide 15

Slide 15 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 16

Slide 16 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 17

Slide 17 text

2.属人化の発生源は?
 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 18

Slide 18 text

2.属人化の発生源は?
 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Sprint 4 この状態に何が起きる...?
 影響範囲が わからず 考慮漏れ が発生! 値2に表示する内容が変更。 D画面だけ確認したが、値2は C画面等でも表 示されることに気づかなかった。 新仕様でC画面の分岐に値1が関係。 値1ってどの画面で変更可能だっけ ...

Slide 19

Slide 19 text

本日の流れ
 1
  自己紹介と導入
 2
  属人化の発生源は?
 3
  どのように対処した?
 4
  まとめ


Slide 20

Slide 20 text

3.どのように対処した?
 1 2 3 忙しくても ナレッジ作成! 項目書レビュー! 気軽に相談しやすい 環境!

Slide 21

Slide 21 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 22

Slide 22 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 Sprint 3 1,2やったこと ない... Sprint 4 1のナレッジを 作成しておく 2のナレッジを 作成しておく

Slide 23

Slide 23 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 Sprint 3 ナレッジがあって良 かった! Sprint 4 1のナレッジを 作成しておく 2のナレッジを 作成しておく

Slide 24

Slide 24 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 設計/実施が忙しくて ナレッジを作成する 時間がない! 機能1について ~を○○する機能である。△△時に使用する。 ・初回実装時チケット  10900 ・修正/変更チケット  12001  12022 参照先を示す

Slide 25

Slide 25 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 設計/実施が忙しくて ナレッジを作成する 時間がない! 機能2について 機能2は ・Aフロー/Cフロー実施時に実行される。 機能2が実行されると、 ・D画面/F画面 の値が更新される。 影響範囲を示す

Slide 26

Slide 26 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 設計/実施が忙しくて ナレッジを作成する 時間がない! 機能1について ・初回実装時チケット  109002 ・修正/変更チケット  12001  12022 ※特に12001に添付されてい るファイルが重要。 機能2について 機能2は ・Aフロー実施時 ・Cフロー実施時 に実行される。 実行タイミングはD画面で設定 した日時。 参照先を示す 影響範囲を示す 粒度・形式は さまざま!

Slide 27

Slide 27 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 設計/実施が忙しくて ナレッジを作成する 時間がない! 機能1について ・初回実装時チケット  109002 ・修正/変更チケット  12001  12022 ※特に12001に添付されてい るファイルが重要。 機能2について 機能2は ・Aフロー実施時 ・Cフロー実施時 に実行される。 実行タイミングはD画面で設定 した日時。 参照先を示す 影響範囲を示す 粒度・形式は さまざま! アジャイルなので 仕様は変更されていくもの! 細かく書くことだけが 重要ではない!

Slide 28

Slide 28 text

3.どのように対処した?
 1.タイミングを見つけて各機能・画面のナレッジを作成した! 設計/実施が忙しくて ナレッジを作成する 時間がない! 機能1について ・初回実装時チケット  109002 ・修正/変更チケット  12001  12022 ※特に12001に添付されてい るファイルが重要。 機能2について 機能2は ・Aフロー実施時 ・Cフロー実施時 に実行される。 実行タイミングはD画面で設定 した日時。 参照先を示す 影響範囲を示す 粒度・形式は さまざま! 実際に... メンバー1名が 別案件へ異動 になった際に このナレッジを 残してくれて 助かった!

Slide 29

Slide 29 text

3.どのように対処した?
 1 2 3 忙しくても ナレッジ作成! 項目書レビュー! 気軽に相談しやすい 環境!

Slide 30

Slide 30 text

3.どのように対処した?
 2.できる範囲で項目書レビューを行った! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 31

Slide 31 text

3.どのように対処した?
 2.できる範囲で項目書レビューを行った! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 Sprint 3 1,2やったこと ない... Sprint 4 項目書レビュー済 項目書レビュー済

Slide 32

Slide 32 text

3.どのように対処した?
 2.できる範囲で項目書レビューを行った! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 Sprint 3 Sprint 4 項目書レビュー済 項目書レビュー済 1,2といえば 項目書レビューで 説明してもらった箇所だ

Slide 33

Slide 33 text

3.どのように対処した?
 2.項目書レビューを必須にした! 設計/実施が忙しくて ナレッジを作成する 時間がない! 全部レビュー しなくても いい 実際に... 「これから設計する 箇所、○○さんが以 前見せてくれた項 目書と連携できそう だな」など 複雑な仕様 なので! 部分的に レビューお願いします。 テストケース 洗い出しで 漏れがない か! レビューお願いします。

Slide 34

Slide 34 text

3.どのように対処した?
 1 2 3 忙しくても ナレッジ作成! 項目書レビュー! 気軽に相談しやすい 環境!

Slide 35

Slide 35 text

3.どのように対処した?
 1 2 3 忙しくても ナレッジ作成! 項目書レビュー! 気軽に相談しやすい 環境!

Slide 36

Slide 36 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2やったこと ない... Sprint 4

Slide 37

Slide 37 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2について 教えて! Sprint 4

Slide 38

Slide 38 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2について 教えて! Sprint 4 実は1の機能が 前から仕様調整中で 先方から返事がなく...

Slide 39

Slide 39 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! 実装 機能1,2,3 機能1,2,4 機能1,2,5 (5は1,2に関連) 機能5,6,7 (6は1,5に関連 /7は2,4に関連) Aさんの テスト対象 機能1 機能1 機能1 Bさんの テスト対象 機能2 機能2 機能2 Cさんの テスト対象 機能3 機能4 機能5 Sprint 1 Sprint 2 属人化 属人化 Sprint 3 1,2について 教えて! Sprint 4 実は1の機能が 前から仕様調整中で 先方から返事がなく... 小さなことでもいいから 情報共有し合いたい!!

Slide 40

Slide 40 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! リファインメント中に 開発側 PMなど QA    ⇔    QA こまめに連携

Slide 41

Slide 41 text

3.どのように対処した?
 3.気軽に相談しやすい環境を目指した! リファインメント中に MTGのついで or 交流会 今度LT会に出るんです。 実は経緯がありまして.. オンライン交流費を 活用! 開発側 PMなど QA    ⇔    QA こまめに連携

Slide 42

Slide 42 text

3.どのように対処した?
 1 2 3 忙しくても ナレッジ作成! 項目書レビュー! 気軽に相談しやすい 環境!

Slide 43

Slide 43 text

本日の流れ
 1
  自己紹介と導入
 2
  属人化の発生源は?
 3
  どのように対処した?
 4
  まとめ


Slide 44

Slide 44 text

4.まとめ
 目まぐるしく過ぎていくSprintの中で 属人化による悪影響が起きやすい 属人化しても良いけど、工夫して 「知らなかった」を減らしていこう!

Slide 45

Slide 45 text

“アジャイルテスティングあるある”と、 その中で工夫したこと
 
 かつの
 2023.07.18
 
 ご清聴ありがとうございました!