shinagawa.redmine 第6回勉強会に参加してきた

大雪に見舞われた2/15(土)に、shinagawa.redmineの第6回目となる勉強会が行われたので参加してきた。

スライド見ながらメモしたものを残しておく。 聞き間違えとかで不備があるかも。

前回アンケート紹介(内藤さん)

  • 第6回品川redmine
  • 48名分
  • Redmineの使用歴
    • 結構バラバラ
  • 使用版数
    • 2.3、2.4がほとんど
  • プラグイン導入数
    • 0から10以上まで、様々
  • バージョン管理ツール
  • よく利用しているプラグイン
    • 知識DB、ニコカレがオススメ

じゃんけん大会(1回目?)

Redmine超入門」ができるまで

  • 日経SYSTEMS 中山さん
  • 2006年創刊 2万5000部発行
  • 全体の流れ
    • 構想、企画、依頼、編集、発行

構想

  • はじまりは思いつき
  • 小川さん、阪井さんに執筆依頼
    • 意外と反応がよかった
    • 定期購読者に対して200点満点のアンケート
      • 想定していたより20ポイント以上高かった
      • Redmineに興味持たれている、ということがわかった
  • 2013年アンケート
    • 直近2年で導入したものとして、MS Projectを抜く
      • 直近2年

企画

  • 日経SYSTEMSとしては、アメリカの先進企業を見て、それから日本
    • アメリカではやったものが、半年~1年遅れて、日本に来る
  • 日本では・・・
    • エンタープライズ系は遅れている
    • が、ネット系は進んでいる
      • ツールをどんどん使っている
  • CI/CDツールを使うにしても、Redmineをポータルとすることができる
  • 本当の入門書がない
    • 当時、Xperiaの入門書がはやった
      • 画面のイメージがずらっと並んだようなもの
    • Redmineでも同じようなものを作る必要がある(ニーズがある)のでは?

依頼

  • ムック本を作ることにする
    • ページ数120ページ目標
    • 40ページまでは作ったが、残り90ページ
      • 90ページはだいたい2人月
    • 詳しい人に依頼したい

編集

  • 禁断の5人寄稿体制
  • それぞれの担当者が、それぞれに書いてしまう
    • 整合性を取るのが難しい
  • 担当者が1人なら、通常はメールを使用
    • 今回は5人だからメールじゃ無理
    • Facebookをグループを利用
      • ひとりずつにグループを作成(計5グループ)
  • SRA阪井さんに、文書標準化(ひな形:テンプレート)を作成してもらう
  • テンプレどおりに書いてくれる人もいれば、そうじゃないひとも
  • 最後はデスマw

発行

  • 出足は順調
    • 会社としての予算はクリアしたとのこと
  • Amazonのレビューが入らない
    • みんな書いて! とのことw
    • 良い評価をつけて、というお願いではなく、あくまで純粋な評価を。
  • 書籍としては、他のシステムとの連携についての記述がない(少ない)
  • Redmine超入門の2つ目、3つ目を考えている
    • ゆくゆくはイベントも。
    • その他、Jenkins超入門、Chef超入門も考えているとのこと

REDMINE超入門」を用いた Redmineインストール(Bitnami)と手動インストールの場合のはまりどころ

  • 内藤さん @naitoh

BitNamiによるインストール

  • 環境
  • インストーラを実行すると、言語を聞かれる
    • 日本語を選択するとエラーとなる
    • とりあえずEnglishを選択すること
    • デフォルト言語(?)の設定では、日本語OK
    • 細かいところは、「Redmine超入門」を参考
  • BitNamiの場合、インターネット不要
  • 手動インストールの場合、インターネット接続必要
    • 会社のネットワーク設定で、、ということでハマることがある
  • BitNamiのruby1.9.3は、OSにインストールされているRubyとは別物
    • BitNamiの専用パスに入る

手動インストール

  • SELinux無効、Firewall設定
  • rubyコンパイル:CentOS5などは厳しい
  • bundlerインストール GEMインストール時に要ネット接続

  • 余談:仮想環境のオススメ

  • 手動インストールも「Redmine超入門」に書かれている

  • makeするときはsu以外で行ったほうが良い

  • installするときに、suに戻して行う

  • BitNamiを使う場合は、専用のVMを立てて使用した方が良い

Redmineって何ができるの?

  • @tkusukawa さん

  • チケットって何?

    • 管理機能を強化したWiki
    • コメントを付けられるWiki
    • 後からでも流れが追えて便利
    • チケットはコミュニケーションツール
  • チケットはステータスを管理できるWiki
    • 物事をうやむやに終わらせるとろくなことがない
    • 案件は「残件がないこと」をもって終了となる
  • チケットは担当者をアサインできるWiki
    • 案件のボールを誰が持っているか、が明確となる
    • 誰が貢献しているのか、が明確となる
  • チケットは一覧抽出できるWiki
    • 案件を列挙できる(これで全部です、と言える)
    • CSV出力可能
  • その他
    • ワークフローが設定できる
    • カスタムフィールドが定義できる
  • リポジトリブラウザが便利
    • 各種バージョン管理ツールの内容をWebブラウザで閲覧可能
    • チェックアウト→閲覧をする必要がない
    • 任意のリビジョンを確認することが簡単
    • 差分の確認も簡単
  • コミットログにチケット番号を書くと、リビジョンとチケットが相互リンクできる
    • トレーサビリティが抜群に高まる
    • CIをしていると、トレーサビリティは重要

Redmineの概念構造

  • 複数のプロジェクト(管理単位)を作成可能
  • プロジェクトの中で、どれを使うか選択できる
  • ユーザ
    • パスワード、メール設定
    • ログインできるようになる
  • ロール
    • プロジェクトにおけるユーザの権限
    • 管理画面から新しいロールを作ることもできる
    • ユーザをプロジェクトに参加させる際に、ロールを設定
    • 特殊なロール
      • 非メンバー
        • ログインしているがプロジェクトに参加していないユーザの権限
      • 匿名
        • ログインしていない利用者の権限
        • 偉い人に、ログインがめんどうという場合に使える
  • トラッカー
    • チケットの「管理機能」を決める↑雨生
    • 各プロジェクトで利用するトラッカーを複数選択可能
  • ワークフロー
    • チケットのステータス遷移の権限を、トラッカーごとに設定できる
    • どのロールの、どのユーザが、 どのステータス(From)から、どのステータス(To)へ 遷移できるか

Redmineって何に使えるの?

  • PJ管理ツールとして
    • 課題管理:チケット
    • スケジュール管理:チケット、ガントチャート(△)
      • 細かいところまでチケットで管理しようとしない
      • 大きな枠でチケットを切っておいて、
      • やることが決まってから、細かいチケットを作成していく
    • 情報共有:Wiki
    • ソースコード、ドキュメントの管理:リポジトリ
    • 工数管理:Work Time Plugin
  • 効能
    • 最新の情報を一元管理できる
    • 自動的に履歴が残る
    • 各チケットを複数のユーザが同時に更新できる
    • 関心の高いチケットをウォッチできる
  • アラート管理ツール
    • 1アラート=1チケット
    • 対応の進捗をチケットに書く
    • 残作業がないことを確認して、チケットをクローズする
  • 効能
    • 担当者を明確にできる
    • アラートの元情報が、これまでのやりとりとして残せる
      • それまでに蓄積された情報、経緯の共有が簡単
    • 過去や進行中の対応内容が参照できる
    • 完了確認の意識を高めることができる
  • サーバ管理台帳として使える
    • 1サーバ:1チケット
    • 管理項目をカスタムフィールドへ
    • カスタムクエリでサーバの一覧を表示
    • サーバの状況(構築中、本番かどう、開発環境、etc.)をステータスで管理
  • 効能
    • ふくすのサーバ情報を同時並行して更新できる
    • 撤去したサーバ履歴が見れる
  • 議事録管理ツール
    • 議事録をチケットの本文に記述
    • 本文の最後に回覧者リストを作る
    • 回覧者をチケットの担当者にしてチェックを促す
  • 作業承認フローとして使える
  • 残業申請システムとして使える

開発基盤としてのRedmineRedmineをカスタマイズするポイント

  • あきぴーさん @akipii
  • Redmine超入門の購入者

    • 参加者の1/3くらい
  • カスタマイズするときに注意するべきポイントについて発表する

Redmineの現状

  • 日本のSIで普及している
    • Redmineのりよう率は40.4%(ITPro 2013年5月)
    • 現場向けのPJ管理ツールとして
  • 日本では、WF型>Agile開発に適用している事例が多い
    • WFの内部にある小さな開発サイクル
    • WFで管理しきれない細かな作業管理
    • アダプタブルWF(WF型開発を補完するTiDD)の適用が多い(@sakaba37さん)

Redmineの課題

  • 開発者は使いやすい
  • マネージャ視点で、進捗・コスト(工数)・リスクの観点で、もっと見える化したい
    • 上記のようなツイートが多数RTされた
    • Redmineユーザに、マネージャも多い

Redmineの2つの顔

  • OSSのプロジェクト管理ツール(表の顔)
  • 業務アプリケーションの開発基盤(プラットフォーム)(裏の顔)
    • 外部システムとの接続I/Fが豊富
    • 機能のカスタマイズが容易
    • マネージャ側から見たとき、Redmineの機能は不足している
    • Redmineをひとつのプラットフォームとして捉え、不足しているものは作る
  • 今日は裏の顔についての話

開発基板としてのRedmine

  • 1) 外部接続I/F
    • 外部接続I/Fを通じて、データ操作だけを行う
  • 2) パラメータ設定
    • パラメータの設定だけで機能拡張
  • 3) プラグイン
    • 標準のソースを修正することなく機能追加
  • 4) モディフィケーション
    • 標準機能のソースを直接修正して、機能拡張
      • EPM-X
      • Lychee
      • etc...

1) 外部接続I/F

  • REST、JSONPスマートフォンなどと連携
  • 構成管理ツールと連携
  • メールによるチケット登録
    • 管理画面え「受信メール要Webサービス」を有効に設定
    • もしくは、rakeコマンドで。
    • Jenkinsやユーザからメール発行(送信)して、Redmineにチケット登録
    • お客様からのメール送信で、Redmineにチケット作成
  • 他ITSからのデータ移行

2) パラメータ設定

  • ワークフロー機能でさまざまな運用が可能

3) プラグインで機能追加

  • Railsフレームワークは次の特徴のおかげで開発しやすい
    • CoC Convenion Over Configuration
    • DRY Dont Repeat Yourself

4) モディフィケーションで機能拡張

  • EPM-X
    • 定量的プロジェクト管理ツール(IPA
      • プロジェクト管理機能
      • データ収集・集計機能
      • 分析レポーティング機能
  • Lychee Enterpriseシリーズ
    • マネージャ観点で、SW開発のPJ管理QCDを支援
    • スケジュール(D)、品質(Q)、コスト(C)

まとめ

  • 1~4のカスタマイズ手法比較
  • プラグインを作る、本体をいじるというやり方は、 Redmineのバージョンアップに追随する必要がある
  • なるべくいじらずにできるなら、いじらないほうが良い
  • RedmineOSSのPJ管理ツールの開発基盤として使える
  • RedmineのVerUpに追随するほうが良い
    • 細かいところをどんどん改善してくれる
    • セキュリティパッチ対応も
  • 外部接続I/Fを有効活用
    • RESTやJSONP、rakeを活用する

Lychee Enterpriseのご紹介

  • 株式会社アジャイルウェア 川端さん @agilekawabata

  • 顧客からの依頼が本家のチケットに登録されている

  • 顧客に納品してしまうと、本家にパッチ提供しにくくなる
  • Redmine本家のチケット対応を行うことで、その後のVerUpでも保証してくれる
  • 顧客側の理解もあって、本家の対応を行うことができた

  • 顧客の要望

  • その対応として、同期するのではなく、MSProjectのガントチャートのように Redmineガントチャートが操作できるようにする
    • それがLychee(ライチ) Enterprise
  • 3日前(2/12?)に公開
  • 製品デモ(ガントチャート
    • ガントチャートの表示領域を広げられる(全画面モード)
    • ガントチャート内のバーをD&Dできる(移動、期間の変更)
    • ガントチャート表示中にチケット内の情報(ステータス、日付など)を変更できる
    • PDF出力機能の強化(画面で見たままのレイアウトで印刷できる)
    • 予定の線だけでなく、実際の開始・終了日の線も見れる
  • 製品でも(EVM)
    • 以前のEVM インジケータはデータ改ざんができてしまう
    • Lycheeの場合は、cronタスクでスナップショットを取って、グラフに反映している
    • スナップショットの取得タイミングは変更可能
    • EVMのグラフは、特定期間をズームアップして表示可・印刷可
  • 製品デモ(チケット関連図)
    • 関連しているチケットを図として表示できる
    • 印刷することも可能
  • 品川Redmine参加者は、Lychee Enterprise製品20%OFFw
  • Redmineの最新バージョンへは、3ヶ月以内対応
  • 価格はユーザライセンス

QA

  • Redmineを分割している場合のライセンス料は?
    • あくまでトータルのユーザ数としてのユーザライセンス
  • 工数の予実
    • EVMとして、予定がないとグラフ化できない
    • でも予定は必須化したくない
    • 登録時は予定工数を入れずに、完了時に予定工数を必須化するということにする

LT 神谷(みたに)さん

  • マネージャ、社長向けにどうアピールするか
  • お金のやりとりが発生したら領収書などがある
    • それらは電子化して管理している
  • SWでもタスクもチケットとして管理するべき
  • 以下、推奨案
  • 効果をビジュアルに訴える
    • ツールの細かいところは説明しない
  • 普及阻害要因のうりのポリティカルな側面をつく
    • 技術論はいらない
  • 普及・浸透のために、幹部に動いてもらうことの提示
  • 企業淘汰論の展開
    • ライバルはやっている
    • やらねば淘汰される

LT リックソフト株式会社 大貫さん

  • JIRAについて
  • Atlassian社が提供するツール
  • 3万の顧客
  • 海外ではJIRA:Redmineが、2:1、日本では、1:6くらい
  • ツールのプロジェクト貢献
    • ツールがプロジェクトにどのように貢献できるかを考えるので精一杯
    • ツールベンダはツールが正しく動くことを保証してほしい
  • JIRAとRedmineを比較するため、試しにRedmine使ってみた
    • Redmineも使いやすいことは使いやすい、とのこと
  • JIRA
    • 機能豊富
    • 設定項目豊富
  • SW開発に投資を
    • 1週間で1人1時間短縮できるとすると、、という計算

LT @yohwada さん

  • EPM-X紹介
  • 定量的プロジェクト管理ツール
  • IPAから他団体へ、管理が移行している
  • 品質・信頼性・生産性の継続向上をサポートするツール
  • Redmine本体には手をいれていない
  • 視覚的に訴えることに注力している
  • 一番の特徴はグラフ
    • 複数のグラフを比較しながらプロジェクトの状況を判断することができる

懇親会

会場の後片付けをお手伝いしてたら、懇親会参加組の移動に間に合わなかったので、 スタッフの方々の後ろにくっついて行きました。 (ありがとうございます。)

座敷の部屋の、入って右側のテーブルにいて、 @naitoh さんや、少し遅れて来られた @nobu_toyofuku さん、 @yowadaさん、@agilekawabata さんと話してました。

現状、Redmineを仕事でなかなか他の人に使ってもらえていないけど、なかなか仕事でみんなに使ってもらえるようにするのは大変そうだけど、 少しずつ広められたらと思います。 まずは簡単なマニュアル作成からですかね。

最後に

雪の影響で電車が遅れたりするなど、いろいろ大変な中で今回の勉強会を開催していただいたスタッフの皆さま、 ありがとうございました。 会場を提供くださったフューチャーアーキテクトさん、とてもきれいな会場をありがとうございました。

次回の勉強会は数カ月後(?)かもしれないとのことなので、そのときはまた、是非よろしくお願いします!