はじめに
VSTSやTFSで作業管理する場合、ちょっと悩ましいのが定期的に発生するような「長期間にわたる定常業務」をどうやって管理するか、という話があります。私も部門で入れようとして、この辺どうしようかなぁと試行錯誤しました。Epicを作るとかでもいいのですが、それも何か違う。
ある人から聞いた話では「1時間絵の練習をする」とか「チュートリアルをやる」などをタスクにしているそうです。具体的に「xxまで完成させる」ではなく、あくまでもタイムボックスでタスクにする。
こうすると、進捗のいかんではなく、やったかやってないかだけですが、比較的心理的に軽くなります。またバーンダウンもやればいい感じで出るので、モチベーションにもつながりますね。
具体例
- 計画されたタスクはFeatureやSprint backlogとして作る
- 計画されてないタスクをまとめるSprint backlogを作り、Sprint毎の日付で一つのタスクにする。完全に異なるタスクであれば、別のタスクにする
doingとdoneに分割して、WIPを制限しています。
定期的に発生するとわかっている作業はそれだけでバックログにします。このバックログはスプリント期間が終了すればcloseします。複数の担当者がそれぞれ定期的な作業を持っている場合は個人単位でバックログにすればいいでしょう。
このような保守業務のバックログはSwimlanesで分割してしまえば計画された作業と区別できるので便利です。
バックログ内の作業は日単位でタスクにしてしまいます。あらかじめわかっているので、最初に全部作っておけばいいでしょう。ちゃんと時間を登録しておけば作業時間としても可視化できますね。
プロセステンプレートで対応する
余裕があればプロセステンプレートを修正して、Taskに「保守作業」というフィールドを追加して、Booleanを設定します。
こうすると、タスク画面に保守作業かどうかのフラグが表示されます。こういうフラグを用意しておけばクエリエディタで、残っている保守作業や、保守作業の作業量を集計することもできるので、便利です。
ここまでやりたくない、という場合、Taskのタグで「保守作業」とか設定しておけばいいでしょう。タグもクエリで検索できますので。ただし、みんなにいちいち作ってもらう運用だと絶対忘れるので、REST APIでスプリントの最初に作っておくとか、毎日バッチなどで自動的に作るといいですね。
関連拡張機能
定期的な保守ではないですが、拡張機能のTeam Calendarでチーム内のイベントをカレンダー形式で管理できます。特定のイベントがあるとかの管理に便利そうですね。