Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ドキュメントが無いプロジェクトでどうレビューする?関係者全員でモブワークして成果物を作った実例...
Search
Jumpei Ito
January 20, 2023
Technology
0
200
ドキュメントが無いプロジェクトでどうレビューする?関係者全員でモブワークして成果物を作った実例(JaSST’23 Hokuriku版)
https://jasst.jp/symposium/jasst23hokuriku/timetable.html#A3
Jumpei Ito
January 20, 2023
Tweet
Share
More Decks by Jumpei Ito
See All by Jumpei Ito
Team Dynamicsを目指すウイングアーク1stのQAチーム
sadonosake
1
650
グイグイ系QAマネージャーの仕事
sadonosake
0
1.1k
『QAという人』が必要ではなく、『QAという技術』が必要
sadonosake
2
710
The story of how a small team gradually become a Whole Team
sadonosake
0
76
QAという人が必要ではなくQAという技術が必要
sadonosake
1
490
Reimagining Automation
sadonosake
1
190
「人材採用は現場の仕事」という話
sadonosake
0
100
War for talent 時代の、古くて新しい仲間集めの形_~weak ties と strong tiesの力~
sadonosake
0
3k
だから「スクラムフェス新潟2023」nano
sadonosake
0
200
Other Decks in Technology
See All in Technology
普通のエンジニアがLaravelコアチームメンバーになるまで
avosalmon
0
130
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
230
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
510
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
290
JVM(JavaVM)の性能分析者観点で探るInstanaの可能性
instanautsjp
0
120
Qiita埋め込み用スライド
naoki_0531
0
5.3k
コンテナセキュリティのためのLandlock入門
nullpo_head
2
330
非機能品質を作り込むための実践アーキテクチャ
knih
5
1.6k
React Routerで実現する型安全なSPAルーティング
sansantech
PRO
2
290
なぜCodeceptJSを選んだか
goataka
0
180
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
470
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
180
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
KATA
mclloyd
29
14k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.4k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
What's in a price? How to price your products and services
michaelherold
244
12k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
530
Transcript
update ドキュメントが無いプロジェクトでどうレビューする? 関係者全員でモブワークして成果物を作った実例 (JaSST’23 Hokuriku版) Copyright © 2021 WingArc1st Inc.
All Rights Reserved. 2023/1/20 JaSST’23 Hokuriku ウイングアーク1st 株式会社 伊藤 潤平
自己紹介 2 • 伊藤 潤平(@jp_110) • ウイングアーク1st株式会社 • ソフトウェアプロセス&品質改善部 マネージャー
• 社外活動 • Scrum Fest Niigata 実行委員会 代表 • JaSST Niigata 実行委員 • SigSQAメンバー • YouTube翻訳活動 • プロフィール AgileTD Zone Keynotes in Japanese https://niigatabase.shabellbase.com/engineer_01/
page No. 3 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 本日お伝えしたいこと 2021年10月22日に開催されたJaSST Review’21の再演+αです。 ラーニングアウトカム • モブワークで成果物を作る。 • モブワークでチームに一体感が生まれる。 • モブワークでテスト自動化までできる。
page No. 4 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 01 背景 02 やりたいこと 03 04 INDEX 05 06 07 まとめと今後 モブワーク 認識共有と共通理解 合意形成が早い 一体感と同時に学び 08 続き
Copyright © 2023 WingArc1st Inc. All Rights Reserved. 背景 突然のリリース承認依頼
page No. 6 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 要件定義書もない、仕様書もない、 もちろん、テスト設計書もない。 そんなプロジェクトに入って製品をリリースした経験 はありますか?
page No. 7 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 全てはこのチャットから
page No. 8 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 仕様書は? ない テストケースは? ない どこまでテストしてる? だいぶやってますよ ヒヤリング 開発チーム QAチーム
page No. 9 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. ヒヤリング 空中戦 アプリの機能、操作、 細かい仕様 リリースできる品質か わからない。 リスクは? 開発チーム QAチーム
page No. 10 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. チーム全員が気持ちよくリリースしたい 共通理解 レビュー レビュー ドキュメント 開発チーム QAチーム
Copyright © 2023 WingArc1st Inc. All Rights Reserved. 成果物を作りたい 無いなら作ろう!
page No. 12 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 品質 品質ゴール 品質 品質 品質 プロダクト バックログ マスター テストプラン ビッグピクチャー (全体像) プロダクト リリース 品質データ アジャイル開発における段階的品質の積み上げによる品質保証 Quality Assurance by Quality Stepwise Refinement in Agile Development やりたいこと Potentially Shippable Product
page No. 13 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 成果物 現状 やりたいこ 要件定義 なし リーンキャンバス 仕様 なし ユーザーストーリーマッピング テスト なし(やってるらしい) テスト観点表 成果物をモブで作ろう! 全員でモブワークして 成果物を作ろう!
Copyright © 2023 WingArc1st Inc. All Rights Reserved. モブワーク 全員でモブワークしよう!
page No. 15 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. リーンキャンバス作成 ユーザーストーリーマッピング作成 テスト観点表作成 リリースに対して必要なもの整理 計画(リリースまで1か月) 1周目 2周目 3周目 4周目
page No. 成果物 16 Copyright © 2023 WingArc1st Inc. All
Rights Reserved. モブワークにおける役割と成果物 レビュー ユーザーストーリー マッピング テスト観点表 ファシリテーター 意見者 (ナビゲーター) リーンキャンバス 作成者 (ドライバー)
page No. 17 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークに期待する効果 開発チーム QAチーム 成果物 お互いの 認識を共有 時間がない 中での リリース 共通の理解 と学び
Copyright © 2023 WingArc1st Inc. All Rights Reserved. 認識共有と共通理解 全員で理解しよう!
page No. 19 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. リーンキャンバスを使って目的を知る リーンキャンバスとは9つの項目からビジネスモデルをまとめるフレームワーク ②課題 代替品 ④ソリューション ③独自の価値提案 上位概念 ⑨圧倒的な優位性 ①顧客セグメント アーリーアダプター ⑦主要指標 ⑤チャンネル ⑧コスト構造 ⑥収益の流れ
Copyright © 2023 WingArc1st Inc. All Rights Reserved.
page No. 21 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 難しかったですね。 はい。 でも今までチームの中で 会話してた内容が、1つの キャンバスにまとめられた。 新しい発見はありましたか? 大事にしたい指標が出た。 目的の集約と新しい発見 開発チーム QAチーム
page No. ユーザーストーリー ナラティブフロー バックボーン 22 Copyright © 2023 WingArc1st
Inc. All Rights Reserved. ユーザーストーリーマッピングを使って仕様や価値を知る ユーザー アクティビティ ストーリー アクティビティ アクティビティ アクティビティ ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー 優先順位 高 低 Release1 (MVP) Release2 https://www.oreilly.co.jp/books/9784873117324/
page No. 23 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 様々な視点からの意見の取り込み ユーザー アクティビティ ストーリー アクティビティ アクティビティ アクティビティ ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー QAチーム 開発チーム どんなユーザーに 何の価値を提供したいか 知りたい アプリの機能や ユーザー操作を 説明したい システム 視点 ユーザー 視点
Copyright © 2023 WingArc1st Inc. All Rights Reserved.
page No. 25 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. お互いの認識を共有 QAチーム 開発チーム アプリのアーキテクチャと、 機能の仕様がわかってきた。 QAが気にしている、提供し たい価値と、リスクの意味 がなんとなくわかってきた。
page No. 26 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 用語集の作成からバグをその場で修正 QAチーム 開発チーム あれ? さっきも同じ 用語を聞いた もしかして、用語がバラバラ? 確かに人によって認識が違うかも 用語集を作って整理しましょう。 ということは、この辺はUIバグだ。
page No. 27 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 隠し機能の発見 QAチーム 開発チーム ユーザー操作ミスを防ぐために、 確認ダイアログがあった方が良いで すね。 実は隠し機能があって。。。 ストーリーに盛り込みましょう。 え?
page No. 28 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. テスト観点表を作ってどこまでテストしているかを知る ストーリーに AC(受け入れ条件)を設定 テスト観点表に反映
page No. 29 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. テストの範囲 QAチーム 開発チーム 実行したテストを整理すると、だい ぶ見えてきますね。 今まで自分たちが実行していたテ ストはほんの一部だった。 実行していないテスト観点も見え て、リスクがあることを知った。
Copyright © 2023 WingArc1st Inc. All Rights Reserved. 合意形成が早い リリースまでに確保すべき品質を決めよう!
page No. 31 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 優先順位を設定し、リリース計画を立てる ユーザー アクティビティ ストーリー アクティビティ アクティビティ アクティビティ ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー ストーリー 優先順位 高 低 Release1 (MVP) Release2 全体像を把握し、 優先順位を設定 する 優先順位を設定する ことによって、 リリースの計画を立 てられる
page No. 32 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 今回のリリースはここまでの 機能のテストでいいですか? はい、OKです。 利用ユーザーが増えた時の 性能面のテストはリリース後? 次回リリースまでに テストでOKです。 次回リリースはいつ頃を 予定してますか? 来月計画します。 リリースの範囲をその場で合意形成 開発チーム QAチーム
page No. 33 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 品質 品質ゴール 品質 品質 品質 品質データ リリース計画と確保すべき品質を合意する Release1 (MVP) Release2 Release3 Release4 合意 開発チーム QAチーム ユーザーストーリー マッピング テスト観点表 リリース計画
Copyright © 2023 WingArc1st Inc. All Rights Reserved. 一体感の高まり、と同時に学びになる やっときまーす!
page No. 35 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 通常のレビュープロセス 開発チーム 質問、指摘、フィードバック レビューお願いします。 QAチーム 時間ないのに… 次回までに期待する 成果物ができるか不安 これじゃテスト できないよ…
page No. 36 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークで一体感が高まる レビュー レビュー なるほど。 そうやって作るのか。 不明点をその場で 説明してくれるので、 すぐに反映できる。 開発チーム QAチーム
page No. 37 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. ドキュメントも製品の仕様も一緒に作る QAチーム 開発チーム この機能心配ですね? そうですね。 リスクの可能性があるので 書いておきましょう。 次期バージョンのエンハンスに 入れたいですね。 そうですね。 こんな仕様だとどうですか?
page No. 38 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 学びになる QAチーム 開発チーム 次回ミーティングに 持ち越しますか? だいたい分かったんで、 次回までに自分の宿題として やっときまーす。 おー。すげー。
Copyright © 2023 WingArc1st Inc. All Rights Reserved. まとめと今後 効果を認識し、継続的に改善し続けよう!
page No. 成果物 40 Copyright © 2023 WingArc1st Inc. All
Rights Reserved. 全員で成果物を作成した レビュー ユーザーストーリー マッピング テスト観点表 ファシリテーター 意見者 (ナビゲーター) リーンキャンバス 作成者 (ドライバー)
page No. 41 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークの効果 ユーザーストーリーマッピング テスト観点表 リーンキャンバス 大事にしたい指標を 共有できた それぞれの視点からの情報を 共有でき、共通の理解を得た お互いの認識の共有と、共通の理解を得た 実行したテストと、まだテス トが足りない部分が明確に なった
page No. 42 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークの効果 ユーザーストーリーマッピング テスト観点表 リーンキャンバス 時間の無い中で、リリース計 画の合意形成が即座にできた ワークの中でスピーディーに合意できた リリース計画にもとづいて、 確保すべき品質が明確になっ た
page No. 43 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークの効果 ユーザーストーリーマッピング テスト観点表 リーンキャンバス 成果物も作るし、製品も一緒 に作る感覚。 一体感が生まれ、お互いに学びになった テスト設計のやり方が分かっ てきた。次回までに作る。
page No. 44 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 次の成果物は? ユーザーストーリーマッピング テスト観点表 リーンキャンバス テスト自動化フレームワーク
Copyright © 2023 WingArc1st Inc. All Rights Reserved. つづき テストの自動化をしつつ、アーキテクチャの共通理解を得る
page No. 46 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. テストの自動化に取り組みま しょう! リリースの度に毎回同じテス トするの辛いですね。 一緒にモブで考えてみましょ う! そもそもテストの自動化って どうしていいかわからない。 リグレッションテストを自動化 開発チーム QAチーム
page No. 47 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 品質 品質ゴール 品質 品質 品質 プロダクト バックログ マスター テストプラン ビッグピクチャー (全体像) プロダクト リリース 品質データ アジャイル開発における段階的品質の積み上げによる品質保証 Quality Assurance by Quality Stepwise Refinement in Agile Development これまでやってきたこと Potentially Shippable Product
page No. テスト設計 48 Copyright © 2023 WingArc1st Inc. All
Rights Reserved. 受け入れテスト ユースケーステスト 脆弱性診断 システムテスト ◦◦機能テスト、ハッピーパス 信頼性テスト、性能テスト 統合テスト APIテスト セキュリティテスト 単体テスト Unitテスト 静的解析 テ ス ト レ ベ ル テストタイプ テスト計画 品質ゴール 機能 非機能 テスト実行&品質分析 ISO25000シリーズの品質特性を利用して第三者に品質の説明ができる状態 テストは体系的にマネジメントし始めた ユーザーストーリー マッピング テスト観点表
page No. 49 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 受け入れテスト ユースケーステスト システムテスト ◦◦機能テスト 統合テスト APIテスト 単体テスト Unitテスト テ ス ト レ ベ ル テストタイプ テスト観点表 一度テストしたものはすべて自動化したい テスト自動化フレームワーク
page No. 50 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 先ずは網羅性を考えずに進めま しょう! テストケースをすべて自動化 となると、時間と工数が… テストの網羅性 開発チーム QAチーム
page No. 51 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. Server/Core Service/Middle UI テスト自動化ピラミッド UI層 Service層 Server層 アーキテクチャイメージ 受け入れテスト ユースケーステスト システムテスト ◦◦機能テスト 統合テスト APIテスト 単体テスト Unitテスト テスト設計 テストの層をイメージしてみる テ ス ト レ ベ ル テストタイプ
page No. 52 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 目的に沿った ユースケーステスト 目的に沿った 〇〇機能テスト 目的に沿った APIテスト 目的に沿った Unitテスト × ×ユーザーに〇〇機能を提供したい ユーザーが〇〇機能を使う 利用シーン 〇〇機能の正常系動作テスト 〇〇機能に関連するAPIの 正常系テスト 〇〇機能に関連する関数や メソッドの正常系テスト 各層で正常系のテストから考える 品質ゴール
page No. Unitテスト APIテスト E2Eテスト 各層で正常系テストにフォーカスするのだったら出来そう。 53 Copyright © 2023
WingArc1st Inc. All Rights Reserved. 目的に沿った ユースケーステスト 目的に沿った 〇〇機能テスト 目的に沿った APIテスト 目的に沿った Unitテスト × ×ユーザーに〇〇機能を提供したい ユーザーが〇〇機能を使う 利用シーン 〇〇機能の正常系動作テスト 〇〇機能に関連するAPIの 正常系テスト 〇〇機能に関連する関数や メソッドの正常系テスト QAチーム 開発チーム 各層で正常系のテストから考える 品質ゴール
page No. 54 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 絶対に品質問題を起こしたく ない箇所は網羅性を確保した い。 例えば、権限やロールの箇所 はデシジョンテーブルを作っ たり、再現性の低いマルチス レッド箇所はシーケンス図を 作ったりします。 テストの網羅性 開発チーム QAチーム
page No. 55 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 目的に沿った ユースケーステスト 目的に沿った 〇〇機能テスト 目的に沿った APIテスト 目的に沿った Unitテスト 〇〇だけは絶対に守りたい品質 ユーザーが利用するうえでの 異常系パターン 〇〇機能の網羅性テスト 〇〇機能に関連するAPIの 網羅性テスト 〇〇機能に関連する関数や メソッドの網羅性テスト 網羅性が必要な個所のテストを考える 品質ゴール
page No. シーケンス図 デシジョン テーブル 56 Copyright © 2023 WingArc1st
Inc. All Rights Reserved. 目的に沿った ユースケーステスト 目的に沿った 〇〇機能テスト 目的に沿った APIテスト 目的に沿った Unitテスト 〇〇だけは絶対に守りたい品質 ユーザーが利用するうえでの 異常系パターン 〇〇機能の網羅性テスト 〇〇機能に関連するAPIの 網羅性テスト 〇〇機能に関連する関数や メソッドの網羅性テスト QAチーム 開発チーム フォーカスしたい部分のみに網羅性もつなら出来そう。 網羅性が必要な個所のテストを考える 品質ゴール
page No. 57 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. そもそも網羅性は必要ですか? 例えば、権限やロールはデー タベースでしっかりと管理で きていれば、APIやUIはシンプ ルな作りになっているはず。 アーキテクチャーを確認しま しょう。 網羅性のあるテストが必要かどうかの議論 開発チーム QAチーム 確かに。 アーキテクチャを図にしてみ ましょう。
page No. 58 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. モブワークの効果 テストの自動化を基盤として、 成果物を作成しながら、 お互いにテストしたい箇所を学んだ。 テスト自動化フレームワーク アーキテクチャ図 シーケンス図 デシジョンテーブル E2Eテストフレームワーク APIテストフレームワーク Unitテストフレームワーク
page No. 59 Copyright © 2023 WingArc1st Inc. All Rights
Reserved. 要件定義書もない、仕様書もない、 もちろん、テスト設計書もない。 そんなプロジェクトに入って製品をリリースした経験 はありますか?
Copyright © 2023 WingArc1st Inc. All Rights Reserved.