slackオンリーで全ての不具合報告→優先度付け→issue作成まで完結させてみた

2024/09/03に公開

who is me?🤚

今年の7月から、エイジレスという会社でテックリードっぽくやっている栗田と言います🫡
7年ほどrailsとかreactをずっと触っており、もっぱらエンジニアとして手を動かしていることが多かったです。

今のポジションになってからは、開発ツールの導入や、アサインするタスクの要件や仕様詰め、設計方法の吟味、各スプリントで他に開発しているエンジニアメンバーにタスクを割り振るなど、マネジメント業務も任せて頂いてます。

まだ、タスク管理方法が最適化されていなかった🤔

当時のタスク管理はGitHubのissueに書き出して、その後に都度優先度やスプリントを設定し、CTOが割り振りをしていく、というスタイルをとっていました。
初期段階はそれでワークしていたようなのですが、私が参画してから関わる中で、課題に感じた点として以下が挙げられました。

  • slackでメモ書き程度に残した不具合のissue化が漏れてしまう😱
  • ビジネスサイドのメンバーはGitHubを触らないので、バグ管理表みたいな形でスプレッドシートを作って、書いてもらった内容を、都度エンジニアがissue化しており、多重管理になっていた😵‍💫
  • CTOがとにかく多忙になり、issue化するリードタイムが長くなってきていた😵

いかん!
このままではエンジニアの貴重な開発時間が減ってしまう!🤮🤮

という事で、何とか改善出来ないかチャレンジした結果、こんな感じでフローを簡素化させました。

  • slackのワークフローで、不具合報告を投稿できるようにした(開発以外のビジネスメンバーも同様に投稿)
  • 投稿内容を見て、隙間でCTOが優先度付けのスタンプを押す
  • そのスタンプを見て、「issit」というアプリを使ってメッセージ内容をGitHubのissueに書き出す

以上です!
色んな画面を行き来することなく、slackだけでissue作成まで完結できました。

では、具体的にどんな設定をしたかを、以下で説明したいと思います💡

もしこのやり方が気に入って、うちでも導入してみました!っていう側がいたらぜひリアクションいただけたら嬉しいです👌

slackでの半自動化の構築をしてみよう〜!

スタンプ作成

主に上げてもらった不具合に関して、優先度や、デザイナーチェックを挟みたい旨を
ワンタップで伝達できるように、スタンプ生成ができるで以下のスタンプを作成しました😇

不具合報告用のチャンネルを作成

slackで、publicなチャンネルを作成し、他の人にも運用方法がわかるように説明書きを追加します。

slackでワークフローを構築

slackアプリの以下の画面から不具合報告フォームを作ります。

  • 自動化を選択
  • 新しいワークフローボタン> ワークフローを構築する をクリック
  • 以下のキャプチャのようなワークフローを定義します。
  • slack内のリンクから開始
  • 情報をフォームで収集する
  • チャンネルにメッセージを送信する

設定後に「完了」を押すと、ワークフローが起動できるようになります!

試しに、不具合改善報告チャンネルの中のメッセージに「/」と入力すると、サジェストされるはずです。

おすすめは、質問フォームの中にキャプチャのアップロードを入れておくことです。
こうすることで、スレッドや別メッセージを辿らずに不具合の箇所を確認できるようになります。
報告者、修正するエンジニアの認識一致が取りやすくなり、確認や手戻りの手間が減るはずです。

issitというアプリをslack、GitHubと連携

issitというなかなかクールなアプリがありました👌
これを使うと、以下の点で便利だなと思い採用しました。

  • slackのメッセージに書いた内容を、連携済みのリポジトリのissueに追加してくれる
  • issueにコメントがあった、解決してcloseされたといった際にスレッドにsyncして通知

流れは、issitのHPにある手順通りに進めれば、連携まで問題なくできるかと思います 😀

実際の運用

  • 報告者が不具合改善報告のワークフロー起動
  • CTOがチェックして、優先度スタンプをタップ
  • テックリードがissitでissue作成

ちなみにこの方法で作成すると、issue作成済みの報告にはissitからのリプが表示されるので、
作り忘れてた!みたいなことが防げる、という算段です😎

また、closeされたときにはissue作成者へのメンションでcloseの通知が行くため、
それを確認したら、報告メッセージに「DONE」のスタンプを押していくと、
チャンネル内で、対応完了済かのチェックも容易になるかと思います🎉

本当はスタンプを押したらissueを自動作成!まだやりたかったのですが、一旦すぐ導入出来るとこまでやるとなるとこれが限界でした。。。

いつかそこも自動化できるようチャレンジしたいところです。

また、自動作成されたissueを、各スプリントやエンジニアにアサインを振り分けるために、
github projectsもカスタマイズしたのですが、それはまた次回のネタということにしようかと思います。

ぜひ皆さんのタスク管理のお供に、こんな運用方法も有るんだよーということを共有できたら嬉しいです☺️👍

Discussion