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

仕様書はないが歴史はあるプロダクトとの付き合い方

 仕様書はないが歴史はあるプロダクトとの付き合い方

2025/06/09 の 「QA engineer at a Startup vol.13 にしぞの編」で発表。スタートアップで働くQAエンジニアに向けて、一人目QAエンジニアが10年の歴史があるプロダクトとどう向き合ってきたのかをお伝えします。

Avatar for Kazuki Nishizono

Kazuki Nishizono

June 09, 2025
Tweet

More Decks by Kazuki Nishizono

Other Decks in Technology

Transcript

  1. ©NewsPicks Inc. All Rights Reserved. 西薗 和希 (X: @yurizono) NewsPicks

    QAエンジニア STUDY: 大阪府立高専→近大→奈良先端大 WORK: 野村総合研究所 (6年半) → 開発、PjM、QA SHIFT ASIA @ベトナム (2年) → QA 無職で子育て @鹿児島 (1年) → 専業主夫 UZABASE - NewsPicks (4年) → 一人目QA 最近、Software Design に 記事を書きました。24年12月号。 ぼくらの「開発者体験」改善クエスト 【12】テスト体験の改善で,開発者体験を改善
  2. ©NewsPicks Inc. All Rights Reserved. • 会社の歴史 ◦ 2008年04月 ユーザベース創業

    ◦ 2013年10月 NewsPicks リリース(もうすぐ12年!) ◦ 2016年10月 上場 ◦ 2023年02月 非公開化(いま再上場に向けて頑張ってます) • 規模感 ◦ ニューズピックスの社員数:約300名 ◦ 内、プロダクト約70名 ▪ 開発 約50名、PdM 数名、QA 3名、デザイナー 約10名
  3. ©NewsPicks Inc. All Rights Reserved. • 2021年入社当時、NewsPicksの仕様把握に苦労する。 ◦ 仕様書がない(あってもメンテされていない) ◦

    ただのニュースアプリと思いきや意外と機能が多い ▪ 広告(仕組みから自社開発)、法人機能、課金 ▪ PICK(記事のおすすめや保存、コメントをする機能) ▪ 記事・動画の入稿、ライブ配信 ▪ 外部記事、オリジナル記事、ユーザーが投稿する記事 ◦ 誰も知らない機能、なんかも存在する ▪ 当時で丸8年の歴史がある一方、大半の社員は入社1年〜4年程度。
  4. ©NewsPicks Inc. All Rights Reserved. • リグレッションテストを引き継ぐが、抽象度が低く、何をテス トしているのかぱっと見で読み解けない。 ◦ テストしているのは外部のテストベンダー。

    ◦ これを読んでも仕様把握は難しい。 ◦ メンテも無理。 • テストしても、本番でポロポロとデカめの不具合が見つかる。 ◦ 当たり前の機能がテストされてなさそうな雰囲気。 ◦ 何が足りないのかは分からない。モグラ叩き状態。
  5. ©NewsPicks Inc. All Rights Reserved. • 仕様書を作るのは無理だと判断し、「目次だけ」でも作ろうと 思い立つ。 ◦ 目次だけなら最悪一人〜二人でもメンテできそう。

    ◦ 目次さえあればテスト設計にも使えるし、オンボーディングにも 活用できそう。 ◦ 開発者はそれでも「コードを読む」だろうが、多少は役に立つ。 ◦ テストケースと目次が紐付けば、メンテもできそうだ。
  6. ©NewsPicks Inc. All Rights Reserved. • ということで、機能の洗い出しをした。 ◦ 画面要素は極力省き、ユーザのできることにフォーカス。 ▪

    例) 「記事へのコメント」を「作る」「編集する」「削除する」 「パスワード」を「登録する」「変える」「リセットする」 ◦ 3人で毎週2時間ほど集まり、1ヶ月かけて数百機能を列挙
  7. ©NewsPicks Inc. All Rights Reserved. • 機能を洗い出せたら、次はテストケースとの紐付け。 ◦ 3人で毎週2時間ほど集まって、2ヶ月ほどかけて数百ケースの紐 付けを完了。

    • 紐付けができたので、テストケースの機能一覧に対するテスト カバレッジが計測できた。 ◦ 5割くらいでした ◦ そこからさらに2ヶ月くらいかけて地道にケースを作り、カバ レッジを9割強まで持っていきました。
  8. ©NewsPicks Inc. All Rights Reserved. 仕様書を作った結果 - そんな当たり前のテストしてなかったの!?が激減。 - 「こんなテストをしてます」が説明できるように。

    - テストケースの見通しが良くなった(書き直しもしました)。 - テスト設計をするとき、必ず横目で見てます。 「あ〜こんな機能あったなそういえば」って毎回言ってる。 - テストをお願いするときも「これ見て怪しいところは確認してね」と 渡せば、かなりの品質が担保されるように。
  9. ©NewsPicks Inc. All Rights Reserved. 課題 - 作ってかなり時間が経つのですが、いまだに認知度100%ではない。 (人も入れ替わりますから、オンボーディングに組み込むとか考えた 方が良さそうですね)

    - 目次だけとは言え、メンテナンスはやはり大変。常に機能改修や追加 は行われているわけで、油断するとすぐに置いていかれる。 - スプシ → Notion - RelationやFunctionなどをふんだんに使い、Notionが重くなる。 - テストケースの編集がスプレッドシート時代よりも大変になった。
  10. ©NewsPicks Inc. All Rights Reserved. それ以降の変化 - デザイナー体制が強化。多くのFigmaがストックされ、体験面での仕 様書が充実。 -

    PdMによる企画 → エンジニアが開発、というフローが確立されたこ とで、「人に伝えるための資料」が多く残るように(断面的である、 という課題感は変わらないが、それでも助かる) - SLOとも紐付けし、重要機能を探しやすくした。
  11. ©NewsPicks Inc. All Rights Reserved. sns • @yurizono テスト管理や、一人目QAについてよく書いてます。 •

    一人目QAとして働く、という選択 • テストカバレッジはテストの家計簿だよねって話 • Chrome for Testing で自動テストを手元で簡単に動かせるようにした • QA が Notion API を使ってちょっとしたシステムを作った話 • テストのためのNotionエンジニアリング / テストカバレッジをNotion管 理できるようにしました 素材:
  12. ©NewsPicks Inc. All Rights Reserved. • 体制 ◦ 私 ▪

    チームの方針を決める ▪ 傭兵としてテストをして回る ▪ 今日お話しした件含め、いろんな施策にトライ ◦ SET ▪ 自動テスト全般の運用・保守をお任せ ▪ 技術で課題を解決する、いろんな施策にトライ
  13. ©NewsPicks Inc. All Rights Reserved. • リリース ◦ 各開発チームでテストを実施(QAによるテストは任意) ◦

    リリース時は自動テスト実施(モバイル、WEB、API) • 企画・設計 ◦ 高リスクPJではQAが参加し、仕様レビューなど実施 • テスト ◦ 依頼ベースでQAがアドホックテストをすることが多い ◦ 大規模PJではQAがテスト計画・設計など実施
  14. ©NewsPicks Inc. All Rights Reserved. • 普段 ◦ CS(カスタマーサービス)+QA、というチームに所属 ◦

    マネジメント業はCSのリーダーにお任せ(私の上長) ◦ 問い合わせが身近にあるのはQAとして良いことだなぁと思ってい ます。 ◦ 一方、ユーザーインタビューなどにあまり参加できていないとこ ろに課題感。