その他お問い合わせ先

lodestar@truestar.co.jp

運営会社

株式会社truestar
truestar activation株式会社

JIRAのデータをTableuと連携させて時間管理したはなし

JIRA×Tableau(×Alteryx)

今回はプロジェクト管理ツールであるJIRAのデータをTableauに自動で連携させタスクにかけた時間を可視化した事例の紹介です

JIRAとは課題管理やプロジェクト管理に用いられるツールで truestarでは細かいタスクをこれで管理し作業のステータスや作業ごとのやり取りをJIRAベースで管理しています

そのJIRAにはタスクごとにどの程度時間を使ったのかを記録できる「作業ログ」という機能で 各タスクにどの程度の時間をかけているかを記録できます

今回JIRAを使って記録した作業時間のログを自動で収集加工し Tableauにそのデータを取り込む仕組みを作って日々データが自動更新されるフローを作りました。

データのETL処理には加工や分析に特化したETLツールの1つであるAlteryxというツールを使っています 大きな流れは以下です

URLからJIRAデータを自動で取得 Alteryxが自動でETL処理、Tableau Serverにパブリッシュ Tableau でJIRAのデータを可視化 1.URLからJIRAデータを自動で取得

細かなJIRAの機能は割愛しますが各タスクのデータはタスクの検索結果をCSV出力するという機能があり これにはユニークなURLが振られています、特定のURLにアクセスすればタスクの検索結果をCSVファイルとしてダウンロードすることができます

今回は「時間管理ログ出力」フィルタを作りこのURLにアクセスしてCSVを拾います URLにアクセスできればなんでもよいのですが今回はここから自動でURLを抜くのにPythonを使いました

簡単にですが以下のようなイメージです 流れは至極簡単でJIRAの認証を通してURLアクセス後 ファイルを特定のフォルダに吐き出しているだけです このプログラムWindowsのスケジュール機能で定期的に動かしています

2.Alteryxが自動でETL処理、Tableau Serverにパブリッシュ

JIRAからひっぱってきたデータはタスクに関連するあらゆるデータを含んでいます そのままではTableauに取り込みづらいためAlteryxで必要なデータに加工をしてあげます

加工の処理もそれほど複雑なことはしていませんが自動化のための肝は2つです 1つめはJIRAの作業ログデータの特徴として1つのタスクに複数の作業ログが記録されている場合

データは「作業ログ」という同名の列を複数持つことになります、その数はタスクの作業ログの数に比例するので何個あるかは不明です

CSVデータのイメージ(*あくまでイメージですので実際の中味とは異なります) タスク名称,作業ログ,作業ログ,作業ログ… tableau-idの記事を書く, ドラフト版作成:1時間, 第1項作成:2時間, 成果物チェック:2時間,…

このデータをAlteryxに読み込ませるとAlteryxが忖度してくれて 「作業ログ1,作業ログ2,作業ログ3…」と勝手に連番をつけて読み込まれます Tableauで処理する都合上、この作業ログというデータはこのように横にくっつく形ではなく 縦に積み上げてデータを持つ形が理想です (縦に持っていたほうが作業ログ時間の”集計処理”などが楽なので)

なので必要な列データを選択するタイミングで”作業ログ~”という名称を持つデータをまとめて取り込み 「REGEX_Match([Name],”作業ログ.*”)」 対象の列を絞り込んだら作業ログをまとめて縦持ちにしておきます

2つ目は単純にAlteryxで処理したデータを最後にAlteryxでTableau Serverにパブリッシュしてしまう という点 Tableau Serverへのパブリッシュは「Publish

続きを読む JIRAのデータをTableuと連携させて時間管理したはなし