「品質保証のはじめの一歩!絵を描いてプロダクトを理解しよう!」

Wednesday, December 20, 2023

この記事はUbie Engineering Advent Calendar 2023の20日目の記事になります。


はじめに

こんにちは、ユビーでQAエンジニアをしているGakuです。
早いもので12月でUbieに入社してから2年が経ちました。
その中で、さまざまなプロジェクトでスクラムQAとして活動してきております。
前職までは、マネージメントを役割としてやってきており、この2年はQAエンジニアとして再挑戦した期間だったと思います。まだまだ、新しく学ぶ必要があることや、アンラーンすることが多いですが、今回は「品質保証のはじめの一歩!絵を描いてプロダクトを理解しよう!」のタイトルで、基本に立ち戻りQAについて考えていこうと思います。来年から新しいプロジェクトでQA活動を始める方や、何のためにQA活動をやっているか分からなくなってきている方に読んで頂けると幸いです。

絵を描こう

いきなりですが、

「新しいプロジェクトに入ったら何から始めますか?」

そうです!当たり前のことですが、プロジェクトに参加したら、企画書や仕様書などのさまざまなドキュメントを読んでサービスの内容を理解することから始めると思います。ただし、ドキュメントの量が多い場合や、ほとんどドキュメントが存在しないプロジェクトも少なくありません。またサービスが複雑過ぎて人間が文章を読んで理解できるレベルを超えてたり…

そんなときには、サービス全体を把握するために「絵を描く」という方法がおすすめです。

私は、10月中旬からUbie Globalチームに入りQA活動をしています。そこでも、サービス全体の概要を知るために可視化を目的として「絵を描く」ことから始めました。一人で理解するためには手書きでも良いのですが、Miro、Figma、Google Presentation、drawioなどのツールを利用すると便利です。Ubieでは特にMiroがよく使われています。


[実際に描いた絵]

絵を描く目的によって描き方は変わると思いますが、まずはサービス全体を理解するために、簡単なペルソナを設定し、カスタマージャーニーを基に描いていくと分かりやすいと思います。その後、必要に応じて機能を分解して、詳細部分も絵に描くことで理解が深まっていきます。


[最低限考えていること]

すべてのサービスには目的とユーザーが存在するため、これらを最低限考えると良いと思います。

  • サービスの目的 (入力とアウトカム)
  • 簡単なペルソナ(例:喘息の症状がある43歳の男性)
  • 簡単なカスタマージャーニー

※専門的には、モデルやモデリングと呼ばれ、その記述方法も定義されています。この記事では絵を描くことに焦点を当てていますが、モデリングに関する優れた記事がありますので紹介します。


絵を共有しよう

描いた絵を共有しましょう!

自分が考えているサービス全体像と現実が異なることはよくあります。

例えば、既に存在しない機能が含まれていたり、別の機能が追加されたりすることや、把握できていない他のサービスと連携して動いている場合も想定されます。こうした情報を収集するためにも、絵を共有すると、さまざまな視点からフィードバックを受けることができます。

私も、サービス全体の絵を描いた後に、認識合わせをするミーティングを設定しました。このミーティングでは、プロジェクトオーナー(PO)及び開発者と、絵をカスタマージャーニーを基に確認しサービスの目的やユーザー体験、重要な機能についてディスカッションし、事業フェーズやサービスに対する理解を深めることができました。(フィードバックも色々と得ることができた。)また、POと開発者間でも認識を合わせることができ、コミュニケーションのツールとしても有効であることが分かりました。


[共有した事により気づけたこと]

  • 把握してなかった機能や仕様
  • サービスに連携している他のサービスの存在
  • 今後リファクタする機能
  • サービスを運営する中で重要な機能
  • その他、今後QAに必要な機能や環境の認識合わせ
  • 現在の開発状況
※赤枠の箇所はディスカッションしなが追記した部分になります。

絵をテストに活用しよう

描いた絵をテストに活用しましょう!

絵をテスト活用することにより、開発する機能や、変更される機能に対して仕様の認識合わせや影響範囲の検討をスムーズに行うことができます。また、カスタマージャーニーに対してユーザー体験が変更された箇所を確認し、探索的テストのポイントを決めることにも活用できます。

Globalチームでは、絵を基にして、サービス全体としてのテスト方針やゴールを策定し、テスト観点の洗い出しやビジネス観点で注力する部分の認識合わせを行いました。また、絵をベースに機能一覧を作成し、開発者と各機能に対するテスト優先度を決めていきました。この段階でも、以前との変更点を絵を参考に話し合うことができ、差分が見えやすく、作業を効率的に進めることがきる効果がありました。

[テスト方針]
テスト方針はNotionで作成

[機能一覧]
機能一覧はスプレットシートで作成


このプロセスで注意しながら進めていることは、はじめにテスト目的を明確にすることです。もくもくと作業をしていると機能の一覧を作成後に因子を洗い出し、テストケース作成までいっきに進めてしまうことがあります。問題ないように感じますが、テスト目的を明確にしてない状態(文書化してない)で、作業を進めてしまうと目的が間違っているテストケースを作成してしまう可能性もあります。また、トレーサビリティが確保できず第三者によるレビューも難しい状況になり戻り作業も発生してしまいます。(ベテランの方は頭の中ではあるけど文章化してないってことも多そう。)

Ubieでは、上記を防止するために簡易版のテスト計画書(10 minute test plan)を作成してテスト目的の明確化や関連情報のトレーサビリティを確保しています。Notionにてテンプレートで管理されており、作成や更新も簡単で、後から見返す時にもすぐに検索し情報を得ることができます。テンプレート自体も日々改善されており組織やプロジェクトの変化に対応できる状態になっています。今後、Globalチームでも既存のテンプレートにGlobalチームとして必要な情報を追加して運用を開始する予定です。

The 10 Minute Test Plan / One page test plan
参考までにリンクを載せておきます。
テスト計画書も目的が重要で、その目的に合わせたものに変化させる必要があると考えます。


Globalチームでは、来年から海外のQAエンジニアと協力しQA活動を進める予定になっております。その際も、絵を活用してサービス全体のイメージや、ビジネスにとって重要なポイントを伝えて機能だけでなく、サービス全体を通じたQA活動を行なっていこうと考えています。言葉も文化も異なるエンジニアどうしで認識を合わせていくツールとして絵を更に有効に活用できそうです。
Ubie Globalチームについて気になる方は、Ubie Advent Calendar 2023 9日目のShokoの記事を読んでみて下さい。


まとめ

サービスの品質保証をするための第一歩は、「サービスの全体像を可視化してまずは知ること!そして、重要な機能を分解して理解していくこと!」が大切だと思います。そこに絵を活用すると、サービス全体の理解以外にも、チームメンバーとのコミュニケーションを有効に行うことができ多くの情報を得ることができます。Ubieでは、フェーズの異なる多くのプロジェクトで絵が描かれており、さまざまなディスカッションが行われています。

年末年始の休みに時間があれば是非、あなたが関わっているサービスを絵に描いてみて下さい。
サービスを俯瞰してみることができ、新しい発見があるかもしれませんよ。

基本に立ち戻り目的を明確にして来年からQA活動していきましょう!

おわりに

Ubieでは、「クオリティカルチャーの醸成」を目指して動き出しています。
事業フェーズやプロダクトの種類により求められる品質は常に変化しQCDFの判断が重要になっています。このような変化が激しい状況の中で最適なQA活動を行うためには、その組織に適したクオリティカルチャーを創り浸透させ育てていく必要があります。サービスに関わる全ての役割のメンバーと品質について考えていきたい!詳しくは、Ubie Engineering Advent Calendar 2023 4日目のMayさんの記事をご覧ください。


また、Ubieでは、ミッションである 「テクノロジーで人々を適切な医療に案内する」 を実現するための仲間を引き続き募集しております。もし興味があって話を聞いてみたい方がいましたら、私の方にDMを送ってもらうか、採用サイトからご連絡ください。まずはカジュアルにお話ししましょう!




#Ubie

2023年まとめ

Ubieに入社して1年経ちました!