金曜夕方の「間に合わない」を防ぎたい
金曜の夕方、椅子にもたれてノートPCの画面を見つめる。タスク一覧の合計工数が目に入るたびに指先が止まり、肩の力が抜ける。LINEのグループに「今週中に終わる?」と打とうとして、送信ボタンの上で指が5秒止まる。コーヒーを一口飲んだ瞬間、冷や汗が背中を伝う。
複数案件を抱えた週の中盤、残り工数だけを見て安心してしまう瞬間が繰り返される。頭の中で「まだ余裕がある」と言い聞かせる一方で、稼働時間の減少が見落とされ、金曜夕方に初めて危機感が湧く。早期に「時間的余裕」を可視化できれば、計画の修正や優先度の入れ替えが可能になるという焦りと合理的判断の狭間が常に存在する。
この記事では、週単位の逼迫度指標の発案理由、既存ツールの限界、試行錯誤した設計判断、そしてWeekloadがなぜ半円ゲージとMarkdownエクスポートを採用したかがわかる。
既存ツールの限界と欠点
残り工数だけを表示するExcelガントの限界
Excelのガントや単純なタスク一覧は「残り工数の合計」を示すのみで、たとえば案件A: 残り工数16時間、案件B: 残り工数8時間、合計24時間という表示に終始する。だが週の残り稼働時間が20時間なら、合計24時間は明確に逼迫しているにもかかわらず、視覚的に即座に危険と判断できない。数値を見比べて頭の中で割り算する手間が発生する。
タスク管理アプリの粒度と更新頻度の問題
一般的なタスク管理アプリはタスク単位の進捗を扱うが、週単位で「残り稼働時間」を自動で反映する仕組みが乏しい。たとえば5案件を抱え、各案件の担当が異なる場合、各担当の稼働予定を手動で集約して週の残り稼働時間を算出する必要がある。手動更新の遅延があると、リアルタイム性が失われる。
視認性と直感性の欠如
数値だけの表示は瞬時の判断を阻害する。視覚的な閾値(余裕・注意・危険)を色や形で示すことが重要だが、多くのツールは棒グラフやリストで終わる。Core Web Vitalsの解説 — web.devで示されるように、ユーザー体験においてリアルタイム性と直感的な読み取りは重要な指標だ。
試行錯誤:設計判断の裏側
ボツ案:残り工数の絶対値を色分けする方式
最初に試したのは「残り工数の絶対値を色分けする」方式。残り工数が20時間以上は緑、10〜20時間は黄、10時間未満は赤という単純閾値を設定したが、稼働時間の違いを無視するため誤判定が頻発した。たとえば残り工数12時間でも週の残り稼働時間が40時間なら余裕がある一方、残り稼働時間が8時間なら即危険だ。絶対値のみでは時間的余裕を表現できないためボツにした。
単純指標 vs 比率指標
| 案 | 長所 | 短所 | |----|------|------| | 残り工数(絶対値) | 実装が簡単 | 稼働時間を無視し誤判定 | | 残り工数 ÷ 総予定稼働時間 | 稼働計画に依存 | 計画が古いと誤差発生 | | 残り工数 ÷ 残り稼働時間(採用) | 時間的余裕を直接表現 | 残り稼働時間の推定が必要 |
採用したのは「残り工数 ÷ 残り稼働時間」。理由は単純明快で、時間的余裕を直接示すため判断が速い点にある。トレードオフとして、残り稼働時間の算出方法(個人の稼働予定、祝日、休暇の反映)をどう扱うかが課題になった。
設計思想:即時性・透明性・最小の入力負担
設計思想は「即時性」「透明性」「最小の入力負担」。即時性のためにブラウザ内でのリアルタイム計算を優先し、入力は週ごとの稼働時間と案件ごとの残り工数だけに絞った。透明性のために計算式を明示し、ユーザーがどの数値を変えれば逼迫度が下がるかを理解できるようにした。
技術的にはISO 8601の週番号で週を管理することで週境界のずれを防いだ。SVGで半円ゲージを描画する際はブラウザの描画負荷を抑えるために最小限のアニメーションに留め、アクセシビリティを考慮して色だけでなく数値ラベルも表示する。逼迫度は80%未満を余裕、80〜100%を注意、100%超を危険とし、色と点滅で視覚化した。Markdownエクスポート機能を付けた理由は、スプレッドシートに貼って編集できることと、Gitで差分管理して週ごとの変化を追える点にある。
完成したWeekload 週間工数管理
この問題を解決するために作ったのがWeekload 週間工数管理。半円ゲージはメーターとしての直感性が高く、数値と色の両方で即時に判断できるツールだ。
- 週を選択し、各案件の残り工数を入力する
- 週ごとの残り稼働時間(例: 週40時間、残り稼働時間24時間)を入力する
- SVG半円ゲージで逼迫度を確認し、必要なら案件の優先度を調整する
半円ゲージの直感性とMarkdownエクスポートの運用性を両立できるためこの形に落ち着いた。
よくある質問(FAQ)
Q: 残り稼働時間の見積もりで気をつけることは?
週の初めに「残り稼働時間」を現実的に見積もることが重要だ。予定外の会議や休暇を見落とすと逼迫度が過小評価されるため、週の予定を反映してから入力すると精度が上がる。
Q: 逼迫度の閾値はどう決めた?
逼迫度は「残り工数 ÷ 残り稼働時間」で算出される。80%未満を余裕、80〜100%を注意、100%超を危険とし、色と点滅で視覚化することで即時の判断を促す仕組みにした。
Q: データはサーバーに送信される?
すべてブラウザ内で処理される。サーバーにデータは送信されないし、ブラウザを閉じれば入力内容は消える。
Q: チームで運用するときのコツは?
毎週月曜の朝にWeekloadを更新しておく運用が効果的だ。週中に予定が変わったら都度更新することで、金曜の「気づき遅れ」を防げる。チームで使う場合はMarkdownエクスポートを共有して差分をレビューすると全体の状況が把握しやすくなる。
まとめ
週単位の「残り工数 ÷ 残り稼働時間」という逼迫度指標は、時間的余裕を直感的に示すために有効だ。半円ゲージはメーターとしての読みやすさを優先し、MarkdownエクスポートはスプレッドシートやGitでの運用を容易にする。
週の工数管理を可視化したいときはWeekload 週間工数管理を試してみて。チーム分けや順番決めの場面では公平な配置係も便利。
不具合や要望があれば、お問い合わせページから気軽に教えてほしい。