Upgrade to Pro — share decks privately, control downloads, hide ads and more …

開発を加速させるためのQA活動 / Accelerating Development With...

ropQa
January 31, 2024

開発を加速させるためのQA活動 / Accelerating Development With Agile QA

ropQa

January 31, 2024
Tweet

More Decks by ropQa

Other Decks in Technology

Transcript

  1.   2 経歴 • オプティムに新卒⼊社 ◦ Android開発を経験した後、2年⽬から QAに転⾝ • freeeに中途⼊社

    ◦ 同期マイクロサービスのQAを担当し、同 期ジョブのintegration testを導⼊ ◦ 現在は決済プロダクトのQAを担当し、 Agile QAに挑戦中 好きな⾷べ物 • カレー 苅⽥蓮(ren) QAエンジニア Ren Karita プロフィール画像の トリミング⽅法
  2.   5 決済プロダクトの開発はスクラムで⾏なっており、QAを含むOneTeam(※)で⾏っている。 そのため、QAエンジニアもスクラムイベントに出ており、開発と併⾛できるQA活動を⽬指して ⽇々仕事に取り組んでいる。 決済プロダクトの開発の⾵景 • 開発のリズム ◦ スクラムで開発しており、2週間スプリントで回している。(スク

    ラムイベントの⽇が2週間に1回あり、その⽇に振り返りやプラン ニングを⾏っている) ◦ タスク管理は、粒度が⼤きい順にエピック > ストーリー > タスク チケットを切っており、どのストーリーを扱うか?という⽬線で プランニングしている。 ※品質のアジャイルなあり⽅:「QAを含むOneチーム」「品質スプリント」「プロダクト品質チャンピオン」 (https://codezine.jp/article/detail/12200)
  3.   6 決済プロダクトの開発の⾵景 • QAの特徴 ◦ 「バックエンドQA」と標榜しているスタイルでQAを⾏っている ◦ UIの完成を待たずにAPIが実装された段階からテスト実⾏を⾏ なっていたり、UIを⽤いたテストでもDBを⾒に⾏ったりしている

    ※品質のアジャイルなあり⽅:「QAを含むOneチーム」「品質スプリント」「プロダクト品質チャンピオン」 (https://codezine.jp/article/detail/12200) 決済プロダクトの開発はスクラムで⾏なっており、QAを含むOneTeam(※)で⾏っている。 そのため、QAエンジニアもスクラムイベントに出ており、開発と併⾛できるQA活動を⽬指して ⽇々仕事に取り組んでいる。
  4.   10 • 決済系のプロダクトはソフトウェアのバグがユーザーの⾦銭的損失に直結するため、確実な 品質保証が求められる • ⼀⽅で、新規プロダクトにおいて、開発スピードはPMF達成のために重要である ◦ →クリティカルなバグを防ぎつつ、開発を加速させるためのQA活動を⾏う必要がある ◦

    →AQUAフレームワークにおける、Accelerating projectの実践 開発スピードとQA活動 - AQUAフレームワーク - Accelerating project - とにかく速く何度もリリースを⾏って市場で存在感を⽰したり、市場で学ぶべき時期に⾏う品質保証活動 - Qualifying value - プロダクトのポジションやミッションが分かってきた段階で、製品の価値を最⼤化するQA活動 - Unveiling weakness - 多くのユーザを獲得し、市場で存在感を確⽴した時期に⾏うQA活動 - Accumulating knowledge - 次世代、発展型、ファミル的なプロダクトの開発を検討すべき∕始めている時期に⾏うQA活動 イマドキのソフトウェアのテストやQAの考え⽅ (https://www.slideshare.net/YasuharuNishi/line-developer-meetup-in-tokyo-39-presentation)
  5.   11 • 決済系のプロダクトはソフトウェアのバグがユーザーの⾦銭的損失に直結するため、確実な 品質保証が求められる • ⼀⽅で、新規プロダクトにおいて、開発スピードはPMF達成のために重要である ◦ →クリティカルなバグを防ぎつつ、開発を加速させるためのQA活動を⾏う必要がある ◦

    →AQUAフレームワークにおける、Accelerating projectの実践 開発スピードとQA活動 - Accelerating project - コンテキストとフォーカス - とにかく速く何度もリリースを⾏って市場で存在感を⽰したり、市場で学ぶべき時期に⾏う品質保証活動 - >> プロダクトサイズは⼩さく、信頼性や安全性はそれほど要求されない時期 - 主要な価値やUXが損なわれないことと、開発スピードが上がること、成⻑できるチームになっていること、などに品質保証 をフォーカスさせる イマドキのソフトウェアのテストやQAの考え⽅ (https://www.slideshare.net/YasuharuNishi/line-developer-meetup-in-tokyo-39-presentation)
  6.   18 ここまでのまとめ • 受⼊基準をテスト実装の観点からSWEと⾒直し、テストコードのガイドにできる ◦ →テスタビリティを確保した設計/実装を⽀援する • PRレビューに⼊り、必要なテストケースを共に考えることができる ◦

    →SWEのテスト実装を⽀援する • PR単位でテスト実⾏し、早期にバグを検出できる ◦ →記憶に新しいうちに発⾒できるため原因もすぐ特定できる ▪ →バグから得た知⾒を、次の実装にすぐ活かせる ◦ →プロダクトの品質状況をリアルタイムでつぶさに伝えることで、リリース計画やスコープ調整の判断材料 を提供できる ◦ ★PR単位でテスト実⾏するために、「バックエンドQA」と標榜しているスタイルでQAを⾏っている 開発を加速させるためにQAができること
  7.   19 確実な品質保証との両⽴ • freee QAはプロジェクトに依らず⼀貫してリスクベースドテストの考え⽅を取り⼊れており、想定されるプロダ クトリスクに基づいたテストの注⼒箇所選定や優先度判断を⾏なっている • 代表的な活動として「リスク洗い出し会」がある freeeが扱うお客様のデータはクリティカルなものが多いため、品質を疎かにできません。

    しかしながら品質を上 げる、保つ活動をDevOpsの中でスピード感を持ちながら実施することが要求されるためにシフトレフトな活動を しています。 その中で代表的な活動が「リスク洗い出し会」(そのまんま)です。 freeeの品質トゥギャザー:リスク洗い出し編 (https://developers.freee.co.jp/entry/risk-together) 開発を加速させるためにQAができること