リリース品質、どうやって守っていますか?

こんにちは!

株式会社SCOUTERの鍬(@kuwausk)です

SCOUTERの開発組織について書きます。

この1年間で僕が所属するチームのエンジニアが2名→6名に増えているのですが、
その中で、「どうプロダクトの品質を守ってきたか、これから守っていくか」をまとめてみようと思います。

開発チームが10名前後の規模感の組織で、プロダクト品質に責任を持っている方が、メインターゲットです。

目次

目次は以下の通りです。よろしくお願いします!

  • これまでの属人的な守り方について
  • スクラムをやってみた
    • SCOUTERのリリース品質チェックリスト、公開します!
  • スクラムを入れてみて思うこと

これまでの属人的な守り方について

自分もエンジニアとして開発していたので、仕様設計から実装〜動作確認〜リリースまで、"センス"で品質を守っていました。
リリース直前の動作確認で細かい修正を行うこともありましたが、その度に自分自身の品質レベルが上げていきました。

自分自身が砦になることで、品質を維持して安定リリースすることは出来るようになったのですが、メンバーが4人・5人に増えてくると、

  • 同じ品質レベルを共有する手段がない(属人的なので)
  • チームメンバーの品質レベルが成長しない
  • 自分がPO/PMとして本来やるべき仕事を一層求められる

という課題が顕在化しました。

「自分が離れると問題が発生しちゃうから!」というのは、一見求められている存在なようで宜しいのですが、裏返すとスケール出来ていない証明でもあります。

そして、チームをスケール出来ない、自分が成長できていない、というのはスタートアップ的には死です。。

スクラムをやってみた

チームをスケールさせるにあたり、SCOUTERではスクラムを取り入れました。

スクラムでは、「始めにゴールを決めて、ゴールまでの完成物(インクリメント)を分割して、スプリントでDoneを満たす完成物(インクリメント)をなるべく多く出そう!」ということをやっています。

僕たちは、完成物(インクリメント)を

  • 前スプリントの完成物と、今回スプリントの完成物の差分
  • すべてが正常に動くように十分にテストされたものである
  • Doneの定義を満たすものである
  • スプリントの終了時には、新しいインクリメントが「完成」している状態である

と定義しています。

「Doneの定義」は、リリースによって事業数値が伸びるかどうかを保証するものではありません。が、「サービス提供者として提供可能な品質である」ことを保証するものです。

種明かしになりますが、本記事のタイトルである「リリース品質、どうやって守っていますか?」に対するアンサーは、「Doneの定義で守っています」ということになります。

プロダクトバックログアイテム(PBI)やインクリメントの「完成」を決めるときには、全員がその「完成(Done)」の意味を理解しておかなければいけない。スクラムチームによってその意味は大きく異なるかもしれないが、作業の完了についてメンバーが共通の理解を持ち、透明性を確保しなければいけない。これは、スクラムチームの『「完成(Done)」の定義』と呼ばれ、プロダクトインクリメントの作業が完了したかどうかの評価に使われる。開発チームは、スプリントごとにプロダクトインクリメントを届ける。インクリメントは実際に利用可能なものであり、プロダクトオーナーがすぐにリリースすることもできる。インクリメントの「完成」の定義に関して、開発組織の慣例・標準・ガイドラインが存在する場合は、スクラムチームは最低でもそれを守らなければいけない。( スクラムガイド - Scrum Guidesより抜粋)

SCOUTERのリリース品質チェックリスト、公開します!

ここで、今実際にチームで運用している「Doneの定義」を公開してみようと思います。

「こんな当たり前な内容を書かないと守れないのか」とか「1週間で満たすには結構厳しい条件だな」など色々思われるかもしれませんが、これが今の僕たちの品質そのものです。

WF

  • 必要なページが全て揃っている
  • ページ内で必要な要素が揃っている
  • ページごとに各要素の重要度を分類する

デザイン

  • ユーザーストーリーを満たすフィーチャーがデザインされている
  • 技術的な実現可能性の検討結果がesaに記録されている
  • スタイルガイドの更新について検討結果がesaに記録されている
  • 操作可能なオブジェクトの動的な挙動がある場合、それがesaに記述されている
  • 操作可能なオブジェクトに対してhover,action,focusなどのデザインが網羅されている
  • アニメーション・トランジションが発生するオブジェクトについて、挙動がesaで明確化されている
  • 書き出しが必要な素材について、2倍の解像度でzeplinからダウンロード可能になっている
  • 要素数が0件のパターンがデザインで網羅されている
  • 要素数が多い場合のパターン(スクロール・ページネーション・展開など)がデザインで網羅されている
  • 文字コンテンツの字数が多い場合の取扱がデザインで網羅されている

仕様/設計

  • ユースケースを満たすエンドポイントが全て定義されている
  • エンドポイントに対してAPISPECが作成されている
  • デザインで扱っている項目を満たすDBスキーマが定義されている
  • esaにDB仕様書が作成されている
  • 現行仕様への影響が洗い出されている(現行仕様を変更する場合)
    • 影響箇所、対応方法がesaに記載されている
    • テストのチェックリストがesaに作成されている

実装

  • APISPECとAPIのレスポンスが同じ形になっている
  • ユーザーストーリーで定義されたアクションを実行することができる
  • デザイナーのUIチェックが通っている
  • CI、レビューが通っている
  • リリース手順が用意されている

ブラウザテスト(ステージング環境)

  • ユーザーストーリーで定義されたアクションを実行できる(IEを除く)
  • 現行仕様への影響箇所のテストのチェックリストを全て満たしている

振り返り

  • ストーリーポイントについて、予定pt,完了ptが記録されている
  • ストーリーポイントについて、3週間の平均(velocity)が記録されている

スプリントプランニング

  • タスクが一覧化されている
  • インクリメントごとにタスクが分割されている
  • 分割したインクリメントを完成させる順番が決まっている
  • タスクの見積が完了している(2点見積でも可)
  • 見積結果を元にインクリメントの調整が終わっている
  • 調整後のインクリメントが定義されている
  • わかっているAPIの一覧が書き出されている
  • 影響範囲がページ単位で明確化されている

※スプリントプランニングは、スプリントの始めに行うミーティングです


(参考) 1週間のスプリントにおける開発フロー

Doneの定義についてのチームのルール

補足になりますが、Doneの定義について、チームで以下のルールを設けています。

  • Doneの定義は、スプリントの合間に更新しても良い
  • Doneの定義は、開発チーム全員で満たすように頑張る。責任者を明確に定めない
  • Doneの定義は、スプリント振り返りのmtgで発案し、合意すれば更新できる
  • Doneの定義は、チームの習熟度によって追加され、定義が厳しくなるものである

スクラムを入れてみて思うこと

エンジニアやデザイナ出身で、職能のあるPO/PMは特に、"自分が出来る仕事" "簡単にバリューを出せる仕事" で手を動かしてしまいがちです。

けれども、PO/PMには、プロダクトを成功に導くという大事な役割があります。
僕自身は最近POとして、

  • 開発ロードマップの更新(プロダクトバックログの可視化・並び替え)
  • 完成物(インクリメント)の確認、開発チームへのフィードバック
  • ユーザーインタビュー(企画した機能についてインサイトを探す)
  • ユーザビリティ検証
  • 数値分析(SQLを書く、振り返り、ログが足りないところのDB設計と実装)
  • リリース準備(マーケチームやCSチームとの連動など)
  • 大きな障害が発生した時のディレクション

などを行っていますが、"設計や実装をしている場合ではない"と、半年前の自分に教えてあげたいです。。

開発チームの人数が増えたりプロダクトがMVPリリースの時期を超えたりすると、PO/PMに求められる仕事は、実装や設計やリリース期限を守ることではなくなると思っています。開発チームと相互に助けあって、集合体としての力を最大化すれば、人間ひとりでは出来ないようなアウトプットを創造することができます。

プロダクトを成功させられるように、開発チームとPOがそれぞれの役割を最大限果たせるように、引き続き取り組んでいきたいと思います。

最後に

Doneの定義に「テストが通っていること」を追加してくれるリードエンジニア、募集しています!


フロントエンドエンジニア
最新技術で成長業界の波に乗りたいVue.jsフロントエンドエンジニア募集!
SCOUTERは「人を想い、社会に問う」というビジョンを掲げ、3つのHRTech事業を提供しているインターネット企業です。 2016年にリリースした「SCOUTER」の事業アセットをもとに、2018年より「SARDINE」をリリースしました。 また、求人企業の選考課題を解決するため2019年「back check」をβ版でリリースしました。 『SCOUTER』 審査を通過したユーザー(=スカウター)が友人知人を企業に紹介することで、報酬を受け取ることができる次世代のキャリア支援サービスです。 スカウターは転職者の良き理解者となり、納得のいくキャリアの選択を一緒に実現することを目指します。 スカウター数は3,000名を突破し、1,000社以上の求人情報から転職者の紹介先を選択することが出来ます。 コンセプトムービー https://www.youtube.com/watch?v=VzrFxKt0eFk 『SARDINE』 SARDINEは人材紹介会社向けの月額制のクラウド求人データベースです。 サービス上に掲載されている1,000社以上の求人に対して、自社で抱える転職者を掲載企業に紹介することが可能であり、 成約時の紹介料を100%受け取ることができるクラウドサービスです。 豊富な求人を用いて、集客力と決定率を最短で向上でき、報酬を全額受け取ることのできるエージェント支援サービスです。 メディア掲載事例 「副業ヘッドハンティングのSCOUTERが人材紹介会社向けサービス「SARDINE」を提供開始」 https://jp.techcrunch.com/2018/05/29/scouter-released-sardine/ 『back check』 「back check」は、書類選考や面接だけでは分からない採用候補者の経歴や実績に関する情報を、候補者の上司や同僚といった一緒に働いた経験のある第三者から取得することができる、リファレンスチェックサービスです。業界水準の1/10ほどの低コストで実施できることから、スタートアップから大手企業まで、採用人数やポジションに関わらず、幅広い企業様にご利用いただけます。 https://backcheck.jp
株式会社SCOUTER
サーバーサイドエンジニア
Laravelでマーケット成長の波に乗りたいエンジニアを募集!
SCOUTERは「人を想い、社会に問う」というビジョンを掲げ、3つのHRTech事業を提供しているインターネット企業です。 2016年にリリースした「SCOUTER」の事業アセットをもとに、2018年より「SARDINE」をリリースしました。 また、求人企業の選考課題を解決するため2019年「back check」をβ版でリリースしました。 『SCOUTER』 審査を通過したユーザー(=スカウター)が友人知人を企業に紹介することで、報酬を受け取ることができる次世代のキャリア支援サービスです。 スカウターは転職者の良き理解者となり、納得のいくキャリアの選択を一緒に実現することを目指します。 スカウター数は3,000名を突破し、1,000社以上の求人情報から転職者の紹介先を選択することが出来ます。 コンセプトムービー https://www.youtube.com/watch?v=VzrFxKt0eFk 『SARDINE』 SARDINEは人材紹介会社向けの月額制のクラウド求人データベースです。 サービス上に掲載されている1,000社以上の求人に対して、自社で抱える転職者を掲載企業に紹介することが可能であり、 成約時の紹介料を100%受け取ることができるクラウドサービスです。 豊富な求人を用いて、集客力と決定率を最短で向上でき、報酬を全額受け取ることのできるエージェント支援サービスです。 メディア掲載事例 「副業ヘッドハンティングのSCOUTERが人材紹介会社向けサービス「SARDINE」を提供開始」 https://jp.techcrunch.com/2018/05/29/scouter-released-sardine/ 『back check』 「back check」は、書類選考や面接だけでは分からない採用候補者の経歴や実績に関する情報を、候補者の上司や同僚といった一緒に働いた経験のある第三者から取得することができる、リファレンスチェックサービスです。業界水準の1/10ほどの低コストで実施できることから、スタートアップから大手企業まで、採用人数やポジションに関わらず、幅広い企業様にご利用いただけます。 https://backcheck.jp
株式会社SCOUTER

デザイナーさんも大募集中です!

UI/UX designer
ユーザーの行動設計を変えていく!話題のSaaSデザイナー募集!
SCOUTERは「人を想い、社会に問う」というビジョンを掲げ、3つのHRTech事業を提供しているインターネット企業です。 2016年にリリースした「SCOUTER」の事業アセットをもとに、2018年より「SARDINE」をリリースしました。 また、求人企業の選考課題を解決するため2019年「back check」をβ版でリリースしました。 『SCOUTER』 審査を通過したユーザー(=スカウター)が友人知人を企業に紹介することで、報酬を受け取ることができる次世代のキャリア支援サービスです。 スカウターは転職者の良き理解者となり、納得のいくキャリアの選択を一緒に実現することを目指します。 スカウター数は3,000名を突破し、1,000社以上の求人情報から転職者の紹介先を選択することが出来ます。 コンセプトムービー https://www.youtube.com/watch?v=VzrFxKt0eFk 『SARDINE』 SARDINEは人材紹介会社向けの月額制のクラウド求人データベースです。 サービス上に掲載されている1,000社以上の求人に対して、自社で抱える転職者を掲載企業に紹介することが可能であり、 成約時の紹介料を100%受け取ることができるクラウドサービスです。 豊富な求人を用いて、集客力と決定率を最短で向上でき、報酬を全額受け取ることのできるエージェント支援サービスです。 メディア掲載事例 「副業ヘッドハンティングのSCOUTERが人材紹介会社向けサービス「SARDINE」を提供開始」 https://jp.techcrunch.com/2018/05/29/scouter-released-sardine/ 『back check』 「back check」は、書類選考や面接だけでは分からない採用候補者の経歴や実績に関する情報を、候補者の上司や同僚といった一緒に働いた経験のある第三者から取得することができる、リファレンスチェックサービスです。業界水準の1/10ほどの低コストで実施できることから、スタートアップから大手企業まで、採用人数やポジションに関わらず、幅広い企業様にご利用いただけます。 https://backcheck.jp
株式会社SCOUTER
株式会社SCOUTER's job postings
Anonymous
Bb291fa4 0ab8 472f b8da f54bf3b7be7d?1542365396
1 Likes
Anonymous
Bb291fa4 0ab8 472f b8da f54bf3b7be7d?1542365396
1 Likes

Weekly ranking

Show other rankings
If this story triggered your interest, go ahead and visit them to learn more

Page top icon