Backlog Progress Monitor (BPM) は、Backlogの課題データをAPI経由で取得し、プロジェクト(エンハンス案件など)の進捗状況と遅延リスクを一覧で可視化するダッシュボードツールです。
- 案件単位の進捗トラッキング: 親課題(案件)ごとに紐づく子課題(詳細設計、開発、テスト等)の状況を集約し、残工数と進捗率を自動計算します。
- 2軸での遅延リスク自動判定: テストリリース予定日までの「非営業日を除いた利用可能工数」と「現在の残工数」から、納期余裕率および進捗遅延率の2軸で遅れリスク(🟢正常 / 🟡注意 / 🔴危険 /
⚠️ 要確認)を判定します。 - 例外の検知コントロール: リリース待ち状態(ステータス59等)やテスト完了のフラグなどを検知し、適切にリスクを「正常」としてフィルタします。
- リッチなUI表示: ダークトーンで視認性の高いUI、担当者別の動的フィルタリング、タテ型の工数グリッド表示を備えたダッシュボードを提供します。
- バックエンド (Node.js/Express):
- Backlog APIとの通信およびレスポンスの合算・計算を行います。
dotenvによってAPIキーを隠蔽し、ブラウザ側に露出させない安全な仕組みです。
- フロントエンド (Vanilla JS/CSS/HTML):
- バックエンドから渡されたJSONデータを元に、DOMを生成・構築します。
詳しくは doc/BPM_詳細設計書.md を参照してください。
- Node.js (v18以降を推奨)
- Docker & Docker Compose (コンテナで動かす場合)
プロジェクトルートにある .env.example をコピーして .env ファイルを作成し、自身の環境に合わせて設定します。
# Backlog接続情報
BACKLOG_API_KEY=your_api_key_here
BACKLOG_SPACE_ID=your_space_id
PROJECT_KEY=V2A9
# 各種カスタムフィールドの固有ID
CUSTOM_FIELD_ID_STATUS=16753
CUSTOM_FIELD_ID_RELEASE_DATE=16750
CUSTOM_FIELD_ID_PROGRESS=601439
ISSUE_TYPE_ID_ANKEN=224204
# 祝日・非営業日設定ファイル
HOLIDAY_CSV_PATH=./data/holidays.csvdata/holidays.csv にシステムの非営業日(祝日や会社指定の休日)を改行区切りで登録します。土日は自動的に計算から除外されます。
自端末(ローカル環境)で起動して動作を確認するための手順です。
Node.jsがインストールされている環境であれば、以下のコマンドで起動できます。
-
リポジトリのルートディレクトリに移動
cd C:\Cos-Tanaka\BPM -
バックエンドの依存関係をインストール(初回のみ)
cd backend npm install
-
サーバーの起動
npm start
※
node src/app.jsでも起動可能です。 -
ブラウザで確認 ブラウザを開き、以下のURLにアクセスしてください。 http://localhost:3030
Dockerがインストールされている場合は、コンテナとして起動することも可能です。
-
コンテナのビルドと起動
docker-compose up -d --build
-
ブラウザで確認 http://localhost:3030 にアクセスしてください。
- .env ファイル: プロジェクトルートに
.envファイルが存在し、BACKLOG_API_KEY等が正しく設定されているか確認してください。 - ポート番号:
3030ポートが他のプロセスで使用されていないか確認してください。 - Node.js バージョン:
node -vで v18 以上であることを確認してください。