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

スタートアップでQAチームを立ち上げている話

 スタートアップでQAチームを立ち上げている話

Masayuki.Y

July 18, 2023
Tweet

More Decks by Masayuki.Y

Other Decks in Technology

Transcript

  1. Copyright(c) 2023 ALL RIGHT RESERVED, HOKUTO Inc. JaSST nano val.26

    HOKUTO inc. 株式会社HOKUTO 山田 真之 1 スタートアップでQAチームを立ち上げている話
  2. HOKUTO Inc. | 自己紹介 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 2 山田真之 職種:Flutterエンジニア / エンジニアリングマネージャ 趣味:ゲーム / 筋トレ QAチームを立ち上げ中ですが、 QAエンジニアとしての経験はない ... JaSST nanoはごく最近知り、今回初参加&登壇です! 専門性が弱いのでこれから学んでいこうという気持ちです! よろしくおねがいします!!
  3. HOKUTO Inc. | 医学情報の入手と活用 すべての医学情報を保存 横断的な医学情報検索 1. 医学情報のインプットから臨床現 場での活用までを一貫してサポー トし、エビデンスに基づいた情報へ

    の素早いアクセスを可能にするス マホアプリ。 医師向けの臨床支援アプリ 「HOKUTO」 © 2023 ALL RIGHTS RESERVED, HOKUTO Inc. 3 HOKUTOの3つの機能 2. 3. HOKUTOについて - プロダクト 医師 8.8万人(4人に1人以上)が使っています
  4. HOKUTO Inc. | 今日話す内容 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 5 1. QAチーム立ち上げ前の品質担保と立ち上げのきっかけ エンジニア主体で品質を維持向上していくぞ! = | 3年後 | => QAチーム立ち上げるぞ!となった経緯 2. QAチーム立ち上げ時に気をつけていること 3. 「今やること」をどのように決めるのか 試行錯誤しながら、トライしていること
  5. HOKUTO Inc. | どんな人向けの内容? © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 6 • 品質担保の重要性を社内で更に啓蒙していきたい方/開発チームに品質をもっと意識し てほしいと思っている方 • 品質担保系の施策がなかなか進まないと悩んでいる方 NOTE: - これまでは前者に注力した取り組みを行っており、 チーム立ち上げは後者の課題解決を目的としているため もしかしたら参考になるかもしれない...と思っています! 💪
  6. HOKUTO Inc. | QAチーム立ち上げのきっかけ ~ 品質担保の取り組みの一例 ~ © 2023 ALL

    RIGHTS RESERVED, HOKUTO Inc. 9 プロダクト開発プロセス 「実装における不確実性を減らし「あとは実装するだけ」という状況を作るフェーズ」 QAチーム立ち上げのきっかけ
  7. HOKUTO Inc. | 品質担保の取り組みの一例 ~ 詳細設計ガイド ~ © 2023 ALL

    RIGHTS RESERVED, HOKUTO Inc. 10 詳細設計とはなにか 具体的にどんなメリットがあるのか 詳細設計でどうやって不確実性を減らし ていくのか QAチーム立ち上げのきっかけ
  8. HOKUTO Inc. | © 2023 ALL RIGHTS RESERVED, HOKUTO Inc.

    11 例:「Step 1. 仕様の認識ずれ、考慮漏れを潰す」 の一部 品質担保の取り組みの一例 ~ 詳細設計ガイド ~ 下記のすべてに答えられる仕様になっているのか - タスクのObjectiveはなんなのか?なぜいまやるのか? - 細かなUIや挙動はどうなるのか、 UIで考慮漏れが発生していないか? - 普通の状態だけでなく、「空の状態」「エラー時の対応」「 (コンテンツや選択肢などが )少ない状態」 「ローディング中の状態」について考慮されているのか? - 各画面やダイアログなどについて「ユーザ視点で何のための画面なのか」を説明できる状態か - 「HOKUTO視点」ではなく、「ユーザ視点」であることが大事 使うのはユーザなので、ユーザにとって必要のないものは使われない …(以下略)
  9. HOKUTO Inc. | 品質担保に関わるエンジニアの取り組み © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 12 • エンジニアMTG 隔週でエンジニア/QAが全員が集まって 今チケットとして進めることは難しいけど将来的に解決したい技術的な課題や 最近発生したインシデントの共有と振り返り(暫定対応, 恒久対応)を行うMTG • PRへのQAチェックリストの記載 • リリース前のPRリストの自動出力 →
  10. HOKUTO Inc. | 取り組みの成果 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 13 ↑ スマホアプリを毎週リリース (大きな不具合があまり起きないためスケ ジュールを守れる) ←↑ スプリント中に環境の変化がない場合、 想定Velocityと結果Velocityの差分少なめ (工数予測の精度が高い)
  11. HOKUTO Inc. | プロダクト開発から3年、発生していた問題 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 16 「ある機能が、特定の導線で遷移したときにだけXXXできてしまうみたいです」 「アプリにはあるけど、管理画面にないプロパティがあって不具合が起きます」 「前に修正した不具合が再発していませんか?」 「あれ?この機能の仕様って〇〇すれば、理論上は不正なことができません?」 不具合・インシデントの頻度が少しずつ増えてきた... 😱 QAチーム立ち上げのきっかけ
  12. HOKUTO Inc. | 何が課題が起きていたか © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 17 - 「E2Eテスト導入をする」などの工数かかりそうだけどレバレッジの効く施策やインシデ ントの恒久対応となる作業ほど機能開発に追われて着手できなかった - 不具合が出た後のことをあんまり考えておらず、「出たら解消すればOK」という意識 で、小さいものなら「今度修正すればOK」という意識だったが、小さい不具合がずっと 解消されていない などなど! QAチーム立ち上げのきっかけ
  13. HOKUTO Inc. | なぜQA専門のチームが必要なのか ~ 「チーム」として分割することの個人的なメリデメ ~ © 2023 ALL

    RIGHTS RESERVED, HOKUTO Inc. 19 メリット: - 中長期的な活動へのリソース配分のしやすさ - QA領域のプロセス構築と改善のしやすさ QAチーム立ち上げのきっかけ デメリット: - 開発⇄QAの依頼がしにくい - 開発チームの品質意識を高めずらい ちょうどプロダクトチームの再編成が行われるタイミングで、 引き続き開発チーム内でQAを行うべきか、QAも別チームに分離するかで迷った。
  14. HOKUTO Inc. | チーム立ち上げで気をつけていること © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 21 1. 「QAチームが品質管理の全ての責任を担う体制」にしない - あくまでも「会社としてプロダクトの品質担保ができる状態」を作ることが重要 2. やりたいことに片っ端から手を出さない - なにが今の課題なのかを考え、優先度をつけて取り組む 3. 開発チームに混ざる - 定例や朝会などには常に参加し、相互のコミュニケーションを常に行えるようにする
  15. HOKUTO Inc. | © 2023 ALL RIGHTS RESERVED, HOKUTO Inc.

    23 前提として、 やりたいことを散発的に羅列してもそれが「今やるべきか」なのかは見えてこないし、チームや上長, 経営 陣に説明できない => - 今やるべきこと、解決するべき課題を明らかにする工程が必要 チーム全員が同じ方向を向くための方針作成のプロセス 「今やること」をどのように決めるのか
  16. HOKUTO Inc. | © 2023 ALL RIGHTS RESERVED, HOKUTO Inc.

    24 「理想状態の設定→現状分析→課題仮説出し→方針作成→施策選定→実行」 という流れで「今やるべきこと」を決める 特に前工程の • 理想状態をどのくらい解像度高く設定できるか • どのように現状を分析するのか は成果に与える影響度が高い。 今回は、「良い現状分析」をするためにトライしていることを共有します チーム全員が同じ方向を向くための方針作成のプロセス 「今やること」をどのように決めるのか
  17. HOKUTO Inc. | © 2023 ALL RIGHTS RESERVED, HOKUTO Inc.

    25 チーム全員が同じ方向を向くための方針作成のプロセス 「良い現状分析」をするためにトライしていること 1. 現状を漠然と分析するのではなく、分析の観点を決める 分析の観点を決めないと、連想ゲーム的になって解像度を上げずらい 「リリース前QAの実施状況」「リリースサイクル」「致命的インシデントの扱い」... など「どういう観点で分析するのか」を先に決める 2. 観点ごとに更に細かく見る観点を決める 例: 「リリース前のQA実施状況」はアプリ、Web版、管理画面などで分け、 「致命的インシデントの扱い」であれば対応速度、発見までの速度、恒久対応の 実施状況などで分ける 3. 1, 2 を十分に決めてから現状を分析していく
  18. HOKUTO Inc. | 今の課題 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 26 プロダクトがスケールし、機能も複雑化していく中で、 - 手触り感のレベルでの品質も重要視される医師向けの機能 - 考慮漏れやミスが事業に大きな影響を与えるクライアント向けの機能 など、 それぞれにあった品質基準、QA方法の最適化が必要になってきた
  19. HOKUTO Inc. | 今の課題 © 2023 ALL RIGHTS RESERVED, HOKUTO

    Inc. 27 - 定量的に現状を分析したい観点は洗い出せたが、一部計測ができてない という課題がある... 😭 (チーム立ち上げ時ならあるあるかもしれない...?) - 不具合・インシデントの定量化したい数値を計測できるようにする - 定量的に計測しなくてもわかっている課題への対応 - リリース前QAのブラッシュアップ などに取り組んでいます
  20. HOKUTO Inc. | © 2023 ALL RIGHTS RESERVED, HOKUTO Inc.

    28 まとめ • これまで3年間開発チームでの品質維持向上を行うために ◦ 詳細設計へのコストをかける ◦ インシデントや不具合の振り返りなどをエンジニア主体で定期的に行う などを行ってきました • 直近では品質面で懸念があり、今回は「品質担保のための中長期的な活動」に リソースを定常的に割くためにQAチームを開発チームから独立して立ち上げました • 妥当性があり、納得感も得られるチームの方針を立てるために、 「現状分析」の「品質担保の現状をどのように分析するのか」を意識しています
  21. HOKUTO Inc. | QAエンジニア採用中! 現在、正社員1名, 業務委託1名 + EM1名の小規模チーム 下記に共感できる方はお話だけでも! 🙏

    • 開発チームと常に連携しながら業務をしたい • 業務内容に固執せずに「品質担保」という目的の達成に集中できる • 「戦略を理解し、納得して動く」ことを重要視している • お互い敬意を払いつつ、オープンに忌憚なく議論できる環境を求めてる 採用に直接関わらなくても、 カジュアルにお話しする目的でも大丈夫です! https://corp.hokuto.app/recruit