redmine.tokyoの第10回勉強会へ行ってきた
redmine.tokyoの第10回勉強会へ行ってきたので、その際のメモを載せておきます。 聞き間違えや誤植があるかもです。。
View customize plugin、Pivot Tableは試してみたいです。
みんなでRedmineをより良くしよう
@g_maeda さん
Redmineと貢献
- 貢献のチャンス
- 前から気になってるバグがある
- 追加して欲しい機能がある
- など
- 貢献のチャンス
貢献の例
- バグをツイートする
- 誰かが動いてくれる
- 情報を出すことが重要
- チケットでバグを報告する
- 関係者が問題や要求をお認識できる
- 再現手順が記載されていると対応しやすい
- チケット作成は重要な貢献
- パッチを投稿する
- チケットにコメントする
- 賛同
- 変更に対する懸念
- 提案者のモチベーションにつながらう
- パッチの評価・動作確認
- 情報発信(ブログ、Qiitaなど)
- プラグインやテーマの開発
- バグをツイートする
パッチなどの取り込み方針としては、リグレッションは積極的に行っているとのこと。
パッチは大歓迎だが、テストコードもできれば一緒にあげてもらいたい、とのこと。
前田さんがやっていること
- Redmine.JPの運営
- パッチの送付
- 日本語訳、小さな改善のパッチ
- お客様が踏んだバグの修正
貢献することによるメリット
Redmineのコミッタ
- 4人(現状、実際にコミットしているのは2人。内、日本人1人)
- 意外と手薄w
こういう人が増えるとうれしい
- パッチ、テスト、コメントを書く人
公式サイトでの動き方
QA
- チケット書くとき、英語に自信がない場合は日本語も書いてよいか?
- 日本人が英語苦手ということはみんな知っているのでいらないw
- ついーとの内容がチケットにされた件数は?
- ここ数ヶ月で数チケット
- チケット書くとき、英語に自信がない場合は日本語も書いてよいか?
Redmine最新動向〜3.3の変更点について〜
@naitohさん さん
主な変更点(気になったもの)
- admin初期パスワードが強制される
Attachment
- 添付ファイルは今までダウンロードのみだったがプレビューできるリンクが追加される
- Email notifications
- チケット登録のメール返信時、To, Ccのメールアドレスをウォッチャーに追加
- Issues
- チケット一覧を右クリックしたときのサブメニューにウォッチャーを追加
- UI
- 新規チケット作成時は、タブではなく、ボタンからとなる。
- 管理>設定>表示から、タブ表示の復活が可能
- 新規チケット作成時は、タブではなく、ボタンからとなる。
View customize pluginを使いこなす
@onozaty さん
- Redmineの画面をカスタマイズするためのPlugin
Javascript CSSを埋め込むためのPlugin
できること
- プロジェクトごとにヘッダの色を変える
- 注意点
- 画面上でできることに限られる
プラグインはインストールしただけでは何も変わらない
- 管理 > View customizeから設定する
View customizeを触る上でキーとなる技術
- JS or CSSで設定するので、それらの知識が必要
-
- クロスブラウザの違いを吸収
- CSSセレクタ
ソフトウェアメトリクス概要〜メトリクスがいようとよく使われるメトリクス〜
@yohwada さん
メトリクス分類表 IPA/SEC Report
- ダウンロードできる?
ソフトウェアメトリクスとは
- 活動を定量化し
- 定量化したデータを管理(マネジメント)に使えるように加工した指標
余談:管理とマネジメント
- 管理:維持・籐製(上から下への統制)
- マネジメント:組織や団体、人が存続・発展するためのすべての活動。成果を出せるような環境を作り出す。
- マネジメントには"管理"という意味合いのほか、あらゆる意味を含んでいる。
メトリクスに関わる企画
- JIS、ISO、IEC
- JIS X 0141 : 2009
- JIS X 0160 : 2012
- などなど
- JIS、ISO、IEC
メトリクスの目的
- いいものを効率的に、低コストで、楽に作りたい
- 「測定できないものは制御できない」(Tom Demarco)
メトリクス・タイプ
- 数値 Number
- ソースコード行数、ファンクションポイント数、バグ数
- 属性 Attribute
- 計測対象の特性
- XX度、XX性
- モデル Model
- 理論やデータに基づくもの
- ソフトウェア信頼度成長モデル、など
- 尺度 Scale
- 対象を分類するための枠組み
- 比例尺度:数値の差とともに数値の比にも意味がある
- 身長、体重、金額
- 間隔尺度
- 数値の差のみに意味がある
- 摂氏温度、速度、バグ数
- 順序尺度
- 値の大小関係だけに意味がある
- 階級(ヘビー、ウェルター、ライト)、故障の重要度(軽微、普通、重要)
- それぞれに1・2・3などの数値を対応させる
- 名義尺度
- 観察される変数と数値を対応させる
- 分類として記号の意味を持つ
- 血液型、発生工程にもとづくバグ分類、故障重大度の5段階評価基準
- 血液型O, A, B, ABに、0・1・2・3などを対応させたもの
- 数値 Number
メトリクスの分類の違いにより、分析方法を変えることが重要
メトリクスの分類
メトリクス管理サイクル
- PDCA(計画、実施、対策、診断)
- 期待効果
- 可視化
- 作業や数字を見えるようにする
- 予測
- 見えるようになると予測できるようになる
- 計画
- 過去の実績及び予測に基づいた計画を立案できる
- 改善対象の特定
- 可視化
メトリクス(分析)の種類
- リアルタイムメトリクス
- ある時点で得られるメトリクスから、計算で得られるデータを分析する
- ヒストリカルメトリクス
- 時系列にメトリクスを蓄積し、推移を分析する
- 予測メトリクス
- 上記2つから予測するもの
- リアルタイムメトリクス
よく使われるメトリクス(分析)
- 後日、公開されるスライドにて
メトリクス管理の留意点
- 目的と整合性の撮れたメトリクスを用いること
- データ提供する側にたいして、情報を公開すること
- メトリクス情報は、測定したい概念のいち部分であることを意識する
- メトリクスは手段であって目的でない
- 集めることを目的としない
- 標準化することが目的ではない
- メトリクスを人の評価に使ってはいけない
- 正しい情報が取得できなくなる
- 目的と整合性の撮れたメトリクスを用いること
Redmineでメトリクスを見える化する方法
@mattani さん
Perlでデータ取得用のスクリプトを作成 →REST APIでデータ取得(テキスト) →Gnuplotでグラフを描画 →Wikiへ貼り付け
以上をJenkinsでCI
工数把握のすすめ〜WorkTimeプラグインの使い方〜
@tkusukawa さん
工数を取得する目的
- 原価管理
- 見積もり精度の向上
共通テーマ:成果の最大化
- 躊躇せずに手を動かせるようにすること
- 躊躇してしまう仕事?
- 無駄に感じること
- リーダとメンバで、費用対効果の認識にギャップがあること
メンバの手間は報われるようにしたい
- 手間の見える化
- 想定外の工数(認識ギャップ)には手を打つべき
- 工数(業務)の責任をリーダが負えるようにする
No Ticket, No Work
- すべての業務について必ずチケットがあり、状況共有できるようにする
- 内部監査や籐製という大義名分で導入することも
運用について
- 工数集計専用のPJとチケットを作成する
参加者アンケート
グループディスカッション
LT: ある向上のRedmine画面カスタマイズ
@netazone さん
- View Costumize Plugin
- 説明の枠の幅を変更
- 更新して欲しい項目の背景色を黄色にする、など
- カスタムフィールドにPJごとのデフォルト値設定
LT: Redmineカスタムフィールド表示改善
@y503unavailable さん
- カスタムフィールドのセクション区切りを変更できる
- ソースファイル、CSSを編集する
Redmineの初期設定
新規でRedmineを立てた際、インストール直後に実施する設定についてまとめておく。
環境は次のとおり。
Environment: Redmine version 3.2.1.stable Ruby version 2.1.8-p440 (2015-12-16) [x86_64-darwin10.0] Rails version 4.2.5.2 Environment production Database adapter Mysql2 SCM: Subversion 1.8.13 Git 2.6.1 Filesystem Redmine plugins: no plugin installed
設定は次のメニューから。
管理 > 設定
全般
- テキストの書式:
Markdown
表示
- 週の開始曜日:
月曜日
- 日付の形式:
yyyy-mm-dd
- 時刻の形式:
12:34 (24h)
- ユーザー名の表示書式:
Last First
(日本語名で氏名の順で表示されるように)
チケットトラッキング
- チケットの一覧で表示する項目:
期日
を追加
メール通知
- メールのフッタ
-- Redmine http://your_url/Redmine
仕事中に調べたことを個人的なメモとしてWikiに残す
仕事中に分からないことに遭遇することがあります。
大抵、Google先生に質問して解決するのですが、たまに
「前にも同じようなこと調べたな」
というようなことになります。
そんなとき、
「前はどのページを参考にさせてもらったっけ?」
とか、
「どんな検索ワードで調べたっけ?」
とか、考え始めてしまい、
余計なことに時間や労力をかけてしまいます。
そこで、数年前からやっていることが、調べた内容を個人用のWikiにメモしておき、 まずはその中から探す、というやり方。
ここで探してなければきちんと調べた上でまとめ、個人用Wikiにメモしておきます。
(ちなみに、月5件~10件くらいのペースで増えてます。。)
これをやるのに便利なのが、TiddlyWiki。
(これを執筆時点でのバージョンは、5.0.13-beta
)
TiddlyWikiは、1ファイルのWikiで、「サーバを立てて、、」などの作業が不要です。
TiddlyWikiのベースとなるHTMLファイルをダウンロードしてくれば、 ChromeなりFirefoxなりで閲覧、編集、保存ができます。
数年前にTiddlyWikiに辿り着いたときは、TiddlyWikiClassicと呼ばれるものでしたが、 最近のものはHTML5を使っているとかで、見た目が結構きれいになりました。
何より、Markdownが使えるのが大きいです。
言葉では表現しにくいところでも、画像ファイルとして用意すれば さっと貼り付けることができますから。
TiddlyWikiに関する記事はあまりない(TiddlyWikiClassicの記事はそこそこある?) 気がしたので、書いてみました。
小さいグループで情報共有を目的にするのであれば、 十分使えるのではないかと思います。
Windowsでインターネットエクスプローラとかエディタなどのフォントを変更する
VirtualBoxでCentOSのターミナルをいじるようになってから、 Windowsのフォントが気になり始めました。
では、ということで、フォント変更をしようと探してみました。
「メイリオ」とか「Meiryo UI」がよさ気でしたが、 次のページ
を見ると、英字フォントは「Inconsolata」にしたいなーと思いました。
ところが、Inconsolataは半角文字しか持っていないので、 日本語を表示する場合はフォントリンクを行わなければならないようです。
いろいろ試してみて、次のような感じで落ち着いたので、 メモしておきます。
使用するフォント
主に指定するフォントは次のとおり。
- 「メイリオ」または「Meiryo UI」
- (Windows 7では標準で入っているようでした)
- 「Inconsolata」
- Google Fonts で「Inconsolata」を検索
- 画面右上の「↓」アイコンから、ZIPをダウンロード
- ZIP展開後、
.ttf
ファイルを右クリック→インストール
- 「MigMix」
- M+ と IPA の合成フォントから、「MigMix 1M」をダウンロード
- 今回は
migmix-1m-20130617.zip
をダウンロードしました。
- 今回は
- Inconsolataと同様、展開後、
.ttf
ファイルをインストール
- M+ と IPA の合成フォントから、「MigMix 1M」をダウンロード
Inconsolataは半角英数字と半角記号しかないので、日本語が表示できません。
そこで、Inconsolataで日本語を表示するときは、フォントリンクして、MigMix 1Mを 表示させます。
- レジストリエディタ(regedit)で、次の階層をたどる
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
- 画面右側で、右クリック→「新規」→「複数行文字列値」
- 「新しい値 #1」を「Inconsolata」に変更
- 上記で作成したキーを開き、「値のデータ」に
migmix-1m-regular.ttf,Migu 1M,130,91
を指定130,91
の値は適当です。。- ここの値の詳細については、よくわかりませんでした。
ここまでやったら、PCを再起動します。
各アプリケーションごとのフォント指定
Windowsのメニュー表示など
- デスクトップ右クリック→個人設定→ウィンドウの色→デザインの詳細設定
- 次のものを、「メイリオ」または「Meiryo UI」に設定する
- 非アクティブタイトルバー
- アクティブタイトルバー
- 選択項目
- メッセージボックス
インターネットエクスプローラ、メーラ
Google Chrome、Firefox、Thunderbirdは、次のような設定にしました。
- 標準フォント
- 「メイリオ」または「Meiryo UI」
- Serifフォント
- 「MS P明朝」(変更なし)
- Sans Serifフォント
- 「メイリオ」または「Meiryo UI」
- 固定幅フォント
- 「Inconsolata」
Sakuraエディタ
- 設定→フォント設定
- 「Inconsolata」を指定
コマンドプロンプト
ここまで設定した上でコマンドプロンプトを見ると、 とても読めた文字ではないことに気づきました。。
ここもInonsolataにしたいと思ったのですが、どうもフォント指定できなかったので、 とりあえずMigMix 1Mを指定しておくことにしました。
- レジストリエディタ(regedit)で、次の階層をたどる
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
- 画面右側で、右クリック→「新規」→「文字列値」
- 「新しい値 #1」を「
932.
」に変更 - 上記で作成したキーを開き、「値のデータ」に
MigMix 1M
を指定 - 再起動する
- 「新しい値 #1」を「
- 再起動後、コマンドプロンプトのタイトルバーを右クリック→既定値
- 「フォント」タブのフォントで、「MigMix 1M」を選択→「OK」ボタン
フォントサイズは好みですが、20ポイントくらいあったほうが良さそうです。
一応これで、MSゴシックよりは読みやすくなりました。
変更前(MSゴシック、16ポイント)
変更後(MigMix 1M、20ポイント)
ホストOS上のファイルを見るために、VirtualBoxの共有フォルダーの機能を使いたい
タイトルのとおり。 これには、Guest Additions(VBoxLinuxAdditions?)という機能をインストール(?)しなくてはいないらしい。
いろいろググってみたけど、どれもVirtualBoxメニューの「デバイス」→「Guest Additionsのインストール」
VirtualBoxメニューの「デバイス」→「Guest Additionsのインストール」
みたいになってるけど、実際のところ、
VirtualBoxメニューの「デバイス」→「Guest AdditionsのCDイメージを挿入」
というものしかなくて、お話にならない。
Guest Additionsのインストール
というわけで、辿り着いたページがここ。
Qiita:MacBook AirにVirtualBoxを入れ仮想マシンにCentOS6.5(64)をインストールしRails環境を構築してHerokuにサンプルをデプロイするまでの手順
タイトル長いです!
でも、かなり詳しく解説しているみたいなので分かりやすかったです。
参考にしたのは、サブタイトルの
- シンボリックリンクを設定します。
- VBoxAdditionsをインストールする
- 共有フォルダをマウントする
の以上3つ。
mountコマンド
共有設定したフォルダは、次のコマンドでマウントできる。
mount -t vboxsf [共有フォルダー名] [mount先のPATH(/mnt/dirなど)]
ゲストOSのネットワーク設定してみた
ホストOSであるWindows 7に、仮想環境をVirtualBoxで作成し、ゲストOSであるCentOS 6.5をインストールした。 その続きで、ゲストOSから外のネットワークに繋がるように設定してみる。
手順をメモしそこねたので、最終形のみ。
一番つまったのは、ifconfig
したときにeth1
しかないんだけど!ってところ。
一度設定してしまえばそれまでとなってしまうけど、一応まとめておく。
下の方のまとめに、ネットワーク図(もどき)を置いといたので、視覚的に理解したいときに役立つかも。
IPアドレス
ホスト側(Windows 7)
- VirtualBox Host-Only Network
- IPアドレス
192.168.56.1
- サブネットマスク
255.255.255.0
- デフォルトゲートウェイ(
NULL
:指定なし)
- IPアドレス
- VirtualBox Host-Only Network
ゲスト側(CentOS 6.5)
上記状態で、ゲスト→ホストへのping
は通ってた。
ホスト→ゲストが通ってなかったので、通してみる。
routing
- ホスト側
- コマンド実行
route add 10.0.2.0 mask 255.255.255.0 192.168.56.101
この設定でホスト→ゲストへping
が通るようになった。
ちなみに、ゲストOS内で、ping www.google.co.jp
でも結果が返ってくるようになったので、
パッケージのアップデートyum update
なんかもできるように。
まとめ
ネットワークのイメージがつきにくいので、簡単にまとめておく。
ネットワーク図(もどき)
Internet Windows 7(Host) CentOS(Guest) | === Newwork Address === -------------------------------------------------------------------+------------------------ ) <--> [Network Adaptor 1] | 192.168.1.0/24 + | + | [VirtualBox Host-Only Network] <--> [eth1] | 192.168.56.0/24 + | + | [eth0] | 10.0.2.0/24
IPアドレスメモ
- [Network Adaptor 1]
- IP Address : 192.168.1.11/24
- Gateway : 192.168.1.1
- [VirtualBox Host-Only Network]
- IP Address : 192.168.56.1/24
- Gateway : (NULL)
- [eth1]
- IP Address : 192.168.56.101/24
- [eth0]
- IP Address : 10.0.2.15/24
ルーティングメモ
- ホストOS側
C:\>route print 10.0.2.* IPv4 ルート テーブル =========================================================================== アクティブ ルート: ネットワーク宛先 ネットマスク ゲートウェイ インターフェイス メトリック 10.0.2.0 255.255.255.0 192.168.56.101 192.168.56.1 21 ===========================================================================
- ゲストOS側
VirtualBoxをインストールしてみた
仮想環境を整えるのに、Oracle VM VirtualBoxがオススメだと聞いたので、早速インストール。
インストーラのダウンロード
Oracleのページからダウンロード可能。
ただし、実際のダウンロードはUSサイトから。
現時点の最新版、バージョン4.3.6
をダウンロード。
VirtualBoxのインストール
ダウンロードしたexeファイルを実行。
次へ。
次へ。
特にオプションも変更せずに次へ。
何か注意を促される。
特別なネットワーク設定はしていないので、次に進む。
インストールしたいので、Install。
インストールが進みます。
ところどころ、デバイスソフトウェアのインストール確認が表示されたので、 インストールしておく。
インストール終了。
VirtualBoxを開始してみる。
ようこそVirtualBoxへ!
というわけでインストール終わり。
@ITが参考になりそうなので、次以降参考にさせていただく。
第9回 Oracle VM VirtualBoxを使う(前) (1/3)