$30 off During Our Annual Pro Sale. View Details »

第21回Ques シフトレフトにおけるシナリオテストの適用事例

第21回Ques シフトレフトにおけるシナリオテストの適用事例

第21回Ques での登壇資料になります。
https://ques.connpass.com/event/299190/

Sammy(MoritaMasami)

November 17, 2023
Tweet

More Decks by Sammy(MoritaMasami)

Other Decks in Technology

Transcript

  1. シフトレフトにおけるシナリオテストの適用事例
    2023.Nov.17
    Sammy (Masami Morita)

    View Slide

  2. 本セッションのゴール
    品質に携わるみなさんが
    新たなアイデアを出せるようになる
    ことを目指します。
    対象者
    ● 品質に興味がある
    ● 品質を上げたい
    ● シフトレフトって何すればいい?
    得られる知識
    ● シフトレフトとは
    ● シナリオテストとは
    ● シフトレフト×シナリオテストの事例

    View Slide

  3. チャットを温めるための問い
    シナリオテストに対して、どんなイメージがありますか?
             難しそう?     よくわからない
      
                   好き! 

    View Slide

  4. 目次
    ❖ 前提合わせ(約10分)
    シフトレフトとは / シナリオテストとは
    ❖ 事例紹介(約25分)
    開発プロセス / 課題 / 思考プロセス / スクラムイベントにシナリオテストを適用 / 学び
    / 今後の展望
    ❖ まとめ(約3分)

    View Slide

  5. Sammy(森田 麻沙美)
    所属 株式会社マネーフォワード CQO室
    職種 QAエンジニア
    趣味 オーケストラ🎺、旅行󰎈
    他人のメガネ👓破壊回数 3回
    最近の目標 品質改善して開発スピードを上げる
    note  https://note.com/morita_masami
    X(旧Twitter)  @AWorkingholiday
    私はスイカ派です🍉

    View Slide

  6. 前提合わせ

    View Slide

  7. ● シフトレフト
    テストおよび品質保証の活動の実施を、ソフトウェア開発ライフサイクル内で可能
    な限り早く行うためのアプローチ。
    シフトレフトとは 〜ISTQB用語集では〜
    引用元:ISTQB glossary
     https://glossary.istqb.org/ja_JP/term/-1272 (2023/10/25アクセス)

    View Slide

  8. シフトレフトとは
    ● 開発の初期から後工程(テストなど)について考えたり
    ○ QA/テストエンジニアと開発者が一緒に考えたり
    ● 実際に作業したり
    ○ テスト設計をより上流で行って(コード無しで)要求や設計のバグを見つけた

    ● シフトレフトは本質的に開発者サイロとQAサイロを壊し、全員で品質意識を高め
    て品質文化を構築すること
    引用元:NISHI, Yasuharu “シフトレフトって何をシフトするのなの? ”(2022/3/10公開)
    https://www.slideshare.net/YasuharuNishi/what-should-you-shift-left (2023/10/08アクセス)

    View Slide

  9. シナリオテストとは 〜ISTQB用語集では〜 その1
    ● ユースケーステスト
    ブラックボックステスト技法の一つ。
    ユースケースの動作を実行するようにテストケースを設計する。
    ● 同義語
    ユーザシナリオテスト、シナリオテスト
    引用元:ISTQB glossary
     https://glossary.istqb.org/ja_JP/term/use-case-testing (2023/10/14アクセス)

    View Slide

  10. シナリオテストとは 〜ISTQB用語集では〜 その2
    シナリオベースドレビュー
    レビュー技法のひとつ。作業成果物が特定のシナリオに対処できるかを判定するため
    に作業成果物を評価する。
    引用元:ISTQB glossary
    https://glossary.istqb.org/ja_JP/term/scenario-based-reviewing-1 (2023/10/14アクセス)

    View Slide

  11. スクラムイベントに
    シナリオテストを適用した
    事例

    View Slide

  12. master
    ブランチ
    開発プロセス
    テスト
    キックオフ スプリント(2週間) 本番リリース
    要件
    定義
    update
    要件
    定義
    テスト計

    設計
    結合テスト
    設計
    シナリオ
    テスト
    単体テスト
    実装,実行
    結合テスト
    実行
    実装
    リリース
    ジャッジ
    シナリオ
    テスト

    View Slide

  13. 課題
    ● シナリオテストの作成が後回し
    ○ リリースの直前に作って実行して問題が見つかっても手戻りが大きい
    ● 受け入れ基準が不明瞭→何が実装されていればOK?
    ○ 実装がレビューPassしていること
    ○ 単体テストが実装されていること etc

    View Slide

  14. 思考プロセス
    目的の再考
    アクションの発掘
    適用方法の検討
    実施
    スプリントレビュー
    =完成したかのチェック
    PdMが意図した機能が漏れな
    く実装されていること
    ≒シナリオベースドレビュー
    スプリントレビューで
    シナリオテスト実施するには ...
    やってみよう!

    View Slide

  15. スクラムイベントにシナリオテストを適用 〜概要〜
    スプリントプランニングで
    お披露目
    スプリントレビューでデモ
    QA担当は、今スプリント実装予
    定の機能部分のシナリオを作成
    し、PdMと認識合わせる。シナリ
    オをチーム内に共有する。
    開発担当は、シナリオに沿って、
    デモを実施する。
    チーム全員で想定通りの挙動に
    なっているか確認する。

    View Slide

  16. スクラムイベントにシナリオテストを適用 〜工夫したこと〜
    期待結果 + 確認ポイント メリハリをつける
    ・議論が活発、仕様が途中で変
    わった
    ・制度やロジックが複雑
    ・その他気になるところ
    既存機能や過去のスプリントで
    確認した箇所は、さらっと確認す
    ればOKなので、グレー文字にす
    る。
    事前に書く
    QA担当は、実装予定をヒアリン
    グし、先回りしてシナリオを作成
    する。途中まででも OK。

    View Slide

  17. スクラムイベントにシナリオテストを適用 〜フォーマット〜
    ● 概要
    ● 業務内容
    ● システム上の操作
    ● 期待結果
    ● 確認ポイント
    ● テスト結果
    ● 業務の概要
    ● PBIタイトルとリンク
    ● テストの前提条件

    View Slide

  18. 学び
    ● 具体的な実装内容が明確
    ● 何を確認するのかが明確
    ● スプリントプランニングで QA観点をフィード
    バック
    ● 事前準備がそこそこ 大変
    →リリース前に一気にやるよりマシ
    ● デモの時間が長くなりがち
    →確認したい箇所に濃淡をつける
    ● 今回の取り組みでは設計や仕様のバグは 検
    出されず
    共に考える取り組み= シフトレフト

    View Slide

  19. 今後の展望
    ● 受け入れ条件が分かりづらい案件ではまたトライしたい
    ● 設計や仕様のバグを見つけるための方法を模索していきたい
    ○ スプリントプランニング中までに、いかに多くの問いを投げかけられるか

    View Slide

  20. まとめ

    View Slide

  21. まとめ
    目的の再考
    アクションの発掘
    適用方法の検討
    実施
    スプリントレビュー
    =完成したかのチェック
    PdMが意図した機能が漏れな
    く実装されていること
    ≒シナリオベースドレビュー
    スプリントレビューで
    シナリオテスト実施するには ...
    やってみよう!
    なぜそのイベント/アクションが
    在るのか?
    目的を実現するために考えうる
    アクションとは?
    今の自チームで実施するために
    は、誰を巻き込んで、何を決める
    必要がある?
    チャレンジしたいことを周りに話し
    て実践するのみ

    View Slide

  22. ご清聴ありがとうございました
    Recruit Information
    カジュアル面談受付中
    Engineer Blog
    マネーフォワードの
    技術的なチャレンジや雰囲気を知る

    View Slide