Hack(コツ)今日もまたコーディング。Codingが大好きだから。顧客の要望をシステム改修に実装する、という事をしていたんだけど、回を重ねるうちに管理が煩雑になってきた。顧客の要望は変化する要望がもれなく実装されたか、確認する必要がある実装スケジュールや実装順に紐づけて管理したい私が普段から使っているタスク管理アプリ「Clickup」で運用を考えてみた。Enterprise(オンプレミス版)には非対応。弊社ではGithubEnterpriseを使用しているので、連携は手動になる。以下の要件は記事には登場しないのであしからず。顧客の要望は割とカオスな感じで出現する。機能単位になっていない。時間差で発生するし、前後の要望に影響する可能性もある。ソースコードのあちこちに影響範囲が散らばっている。完了したら消し込みをする必要がある。一覧で管理する必要がある。実装作業の方も管理する。ガントチャートでスケジュール管理するこれらの要望を満たしたい。顧客の要望をRequestに入れる保全の意味もあるのでできるだけそのまま入れたい。長文の場合はタイトルを「2020年1月20日要望」にしてDescriptionに入れてチェックボックス付き箇条書きにする短いものならそのままタイトルに入れるタスクに落とし込む要望を機能単位のタスクに分解する。Enterpriseでissueを作成し、そのIDまたはURLをタスクのdescriptionにペーストする。機能のLinkで要望へ紐付ける。行番号」で修正すべき箇所を特定する。工数計算が必要ならEstimatedTimeで所要時間をつけておく。」のアノテーションコメントをつけて、必要になる修正事項をメモしておく。Enterpriseでbranchを作成する。ブランチ名は「update7_」のように、update+issueID|_で始める。サブタスクを開いて一つずつ実装する。実装が終わったらアノテーションコメントを削除する(私は//DONEに変えている)。アノテーションコメントを削除したら、サブタスクをcloseする。すべてのサブタスクがcloseできたら、タスクをcloseする前にリンク先の要望を確認して、要望の達成状況を確認する。タスクをcloseするタスクをcloseしたら、masterへプルリクを出す。マージされたらブランチを削除。すべての関連タスクをcloseしたら、要望をcloseする。効用こうすると、以下の効用が得られる。顧客要望を一覧できる顧客要望を開くと、リンクされたタスクを一覧できる。クリックしてタスクに移動することができる。機能単位でタスクを一覧できる。修正箇所をサブタスクとして一覧できる。サブタスクに書いた行数アノテーションコメントとの対比でコードとの対応がわかりやすい。タスク完了時に要望との関連がわかりやすい。進捗もわかるタスクとissue、ブランチが1:1:1対応になるため、管理しやすい。できるGithubEnterpriseでなければissueを直接Clickupと連携できて、もっと簡単になるはずだが、まあ現状はこれでいけそう。テストはどうする?テストについては、顧客要望からdependenciesをつけておくのがいいのではないかと思っているけれど、まだ試していない。顧客要望closeしてからテストなのか、テストが終わってから顧客要望closeなのか、その辺の思想によってBlockingかWaitingか変わりそう。#phpconPHPカンファレンス2019に行ってきました。エンジニア文章、写真、デザイン、コーディングまで一通りこなす自走式フルスタックブロガー。読者になる@mogami74をフォローはてなブログをはじめよう!mogami74さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。