Redmine, git, Jenkinsの状態を横断的かつリアルタイムに表示する『Dashbozu』をリリースしました。
Redmine, git, Jenkins などプロジェクト管理ツールの状態を横断的かつリアルタイムに表示するWebアプリ『Dashbozu』を作りました。
これを使えば、一つの画面でプロジェクトの”今”の状態を把握できます。 WebSocketを用いているので、ただ開いているだけで、次々と情報を得ることができます。
iPadで開きっぱなしにして、机の上に置いておくような使い方を想定しています。
なぜこれを作ったか
一般的なソフトウェア開発現場では
という流れで作業が進んでいきます。
これらの作業の中で、開発者は「適切な」タイミングでチェックとフィードバックをすることを求められます。
例えば、チェックのタイミングが遅すぎると、壊れたビルドが放置されたり、チケットが更新されたのにレビューされていないコードが溜ったりしてしまいます。一方、早過ぎるコードレビューは開発者がまさに修正中の内容と重複してしまうことがあり、効率的ではありません。
つまり、適切なタイミングとは、例えば以下のようなものです。
- Gitでpushしたタイミング ・・・ 開発者が仕様を勘違いしていないか
- Jenkins のビルドが完了したタイミング・・・ビルドが壊れていないか
- Redmineのチケットのステータスが変更になったタイミング ・・・ コードレビュー
これらのチェックを早すぎず遅すぎないタイミングで行うためには、リアルタイムで通知を受け取らなければなりません。しかし、メールや IRC への通知や XFD などで受け取る場合は、各アプリ毎に常にチェックしていなければいけないため、非常に面倒くさいです。
そこで、横断的かつリアルタイムなビューを提供するDashbozuを開発しました。
Dashbozuの主な機能
WebSocketを用いたリアルタイム通知
WebSocketを利用したPush通知を採用しているので、ページのリロードをすることなく最新の情報を得ることができます。