GreenSnap TECH BLOG

GreenSnapのエンジニアチームの取り組みや使っている技術を紹介します

Notionを導入してスクラムを始めました

はじめに

こんにちは、GreenSnapのCTOの高畑です。弊社ではエンジニアチームのWikiとしてNotionを導入しました。始めはタスク管理はClickUpでドキュメントはNotionと分けていたのですがNotionの使い方を調べていくうちにJira Alternative | Notion template こちらのテンプレートを発見しました。 これを元に自分たちが使いやすいようにカスタマイズして、ClickUpのSprintテンプレートと同じような使い方ができるテンプレートをNotionにも用意できたので紹介します。 公開リンクを置いておくので見てもらえれば早いのですが簡単に使い方と実際の弊社の1週間の開発の流れを説明します。

こちらが実際に使ってるテンプレートのサンプルです スクラムTemplate

下準備

とりあえずSprintsの作成

Sprints に期間を入力していくつか未来の分まで用意します。 SprintのDateは1週間ごとか2週間ごとかはプロジェクトに合わせてください。

プロダクトバックログを作る

プロダクトバックログの作り方はAsanaを参考にしています。 https://asana.com/ja/resources/product-backlog

プロダクトバックログには、一般的にフィーチャー、バグ修正、技術的負債、知識獲得などが含まれます。このようなプロダクトバックログの項目とは、製品に対してまだ割り当てられていない明確に分割された作業内容のことです

Roadmap のページからEpicを作成します。 Epicは大きめの機能単位で追加していきます数週間のものから1,2ヶ月かかるもの入れています。開発予定の機能のほかにICEBOXなどもEpicとして登録しておきその中にその機能を実現するための細かいチケットを登録していきます。

f:id:masahide318:20211207014100p:plain

Ticketsの作成

Roadmapを作成したら、Sprintバックログに紐付ける用の作業単位のチケットを作成していきます。理想を言えば作業単位が2時間程度に細かく切れればいいですが弊社ではiOS,Androidともに専任がひとりなのでざっくり4時間程度で完了する粒度にしています。 Sprintの動きです。

スプリントプランニング

Sprintを開始する

Sprints のページから対象の日付のStatusを「In Progress」にします。 終了したSprintは「Close」に、次のSprintは「Pending」にします。 Pendingにしておくと将来のSprintに紐付けたチケットをフィルターするときに少し便利です。

f:id:masahide318:20211207013810p:plain

Sprintバックログを作る

Roadmap、もしくはTicketsのページからSprintでやるタスクを紐付けます。 Taskに日付も入れておくと1週間でどのタスクをどのタイミングで完了させるか可視化できるのでデイリースクラムで進捗を把握しやすくなります。 以上でCurrentSprintを見るとSprintバックログが出来上がります。 CurrentSprint配下に、Assign単位でFilterしたページを用意しておくと、各自のやることがわかるので便利です。

f:id:masahide318:20211207013954p:plain

デイリースクラム

CurrentSprint

CurrentSprintのページを見て各自進捗を確認します。 ここは見慣れたカンバン表示なのでチケットの進行に応じてチケットを移動させればOKです。

バックログリファインメント

Roadmapを見直して未来の予定を確認します。またICEBOXに追加されたタスクや緊急度の高い追加タスクなどを次回のSprintに紐付けます。

スプリントレトロスペクティブ

Notionのカンバンでやっていましたが、現在はmiroやFigjamなど別のツールを検討中

実際数ヶ月運用してみての感想

長所

  • TicketのPropertiesのFomula、Rollup、Relationを駆使して、カレンダーやFilterなどのViewを使えば他のチケット管理ツールと遜色ないレベルのものが作成できる。
  • Figmaなどの埋め込みが地味に便利

短所

  • 過去のSprintも多くなってくると見づらくなってくるので適度にアーカイブする必要がありそう。
  • 振り返りでホワイトボードがほしいがさすがにホワイトボード的な使い方は難しい。
  • 振り返りはmiroなどと併用したほうがよさそう。

現在の運用の流れをまとめると

  1. Sprints に期間を入力していくつか未来の分まで用意します
  2. Roadmap に開発ロードマップも作成します。ざっくり大きな機能や実現したいことを追加します
  3. Tickets にRoadmapに追加した機能を見積もり可能なレベルで分解します。ついでにStoryPointの見積もりも入れておくとEpicの合計StoryPointが見れます
  4. 分解TicketsをSprintの紐付けて、Sprint毎のタスクを作成します
  5. 現在のSprintのStatusを「In Progress」にします
  6. CurrentSprint を見ると、In ProgressのSprintに紐付けられたタスクがボードで見れます
  7. 毎日朝会でCurrentSprint のチケットを確認します
  8. バックログリファインメントでRoadmapやICEBOXに追加されたタスクを確認して次のSprintに紐付けます

以上となります。

今の所この運用で回っています。カスタマイズ性が高いのでチームの運用に合わせて柔軟に組み替えられそうです。 Notionが多機能すぎて使いこなすが難しいですが、使い方が無限大過ぎて「こういうことできるかな?」と考えるのも楽しいです。 おすすめのテンプレートや使い方があればぜひ教えて下さい。

最後に

弊社では絶賛エンジニア募集中です。toCのサービス開発をしてみたい方や、植物に興味のある方は是非応募してください。 カジュアルに話だけでも聞きたいという方もお待ちしてます。 www.wantedly.com