4月 4th, 2011

Redmineでアジャイルチームのスピードやパワーを見える化する

burndown chart via kakutani

アジャイルなチームを目指す。

私がチーム運営を始めたときのポリシーでした。どうやって作業をこなすだけから、アウトプットへの価値へとシフトしていくか?チームの方向を示すためにも、様々なメトリクスやKPIを見える化する必要がありました。

通常のプロジェクト管理方法だと、ガントチャートでロードマップを設定、進捗の状態を管理。WBSなどを作ってそれぞれのタスクを管理・・・といった形が一般的なのでしょうか。しかし、それではワクワクしない。

そんな中、常に改善を心がけ、私が試して行き着いた方法を紹介させていただこうとおもいます。

(続きを読む…)

3月 30th, 2011

Redmineが1000人のエンジニアに使われるまでのこと

デブサミ2011の後に、Shibuya.trac第10回勉強会で初LTをしました。テーマは「EnterpriseレベルのRedmine導入結果について」です。外の勉強会は緊張しますが、@yusuke_kokuboさんや@akipiiさん、アジャイルなゆかいな仲間たちにお会いすることができ、とても楽しい勉強会でした。また学びに行かせていただこうと思います。

上の資料はそのときのものです(Slideshareはこちら)。5分間のLTだったため、あまり詳細をお話しすることができませんでしたが、勉強会の時に知り合った方と、今度、Redmine導入&運用の情報交換会を企画しており、そこで共有するネタとして、まずは、Redmine導入時の経験をここにまとめようとおもいます。まずはその前に、私の仕事内容を少しだけ説明させてください。
(続きを読む…)

3月 28th, 2011

受託開発でTracを導入してよかったことや失敗したこと

Trac、Redmineといったチケット形式のプロジェクト管理ツールが人気となっています。

デブサミ2011では、[デブサミ]速報:2011ベストスピーカー賞(敬称略) via IWAKIRIさんのブログにもありますように、ベストスピーカー賞3つのうち、2つがチケット管理システムに関しての発表でした。「チケット管理システム大決戦」というセッションは、デブサミ史上最大の観客数となったと聞いています。

なぜ、プロジェクト管理ツールがここまで注目されているのでしょうか?

開発の現場はそれぞれ異なり、抱える課題も様々だと思います。しかし、プロジェクト管理の中でもタスク管理に関しては、「作業を適切なサイズに分割する」「優先順位をつける」「人をアサインする」という固定のパターンがあり、さらに、現在のアジャイルムーブメントにより、これらの要素がより明確化され、その重要性が認識されてきたように思います。

TracやRedmineのようなツールは、タスクをチケットという単位で簡単に管理できます。それぞれのチケットはメンバーによってトラッキングされ、様々なビューによって表示されます。ツールを導入するだけで、ある程度、プロセスが整理され、ユーザはツールによってナビゲートされます。

プロセスを柔軟に標準化するツールに、現場が期待しているのではないでしょうか?

私は、5年前にTracを使って以来、ずっと仕事でチケット管理システムを使っています。中でも、TracとRedmineの導入や運用ではいろいろ学ぶことがあったので、過去の経験などをふりかえりとしてここにまとめていきたいと思います。

(続きを読む…)

3月 20th, 2011

2011年に注目したいプラットフォーム – ThoughtWorks Technology Radar

ThougheWorksTechnology Radar2011年版の適当翻訳。今回は2011年に注目すべき言語の話。

レーダーは以下の領域に分かれる。

  • Hold:注意をしはじめるレベル。
  • Assess:将来的にどう影響をおよぼすか知るため、価値を探し始めるレベル。
  • Trial:将来性を感じるためどのように利用するかを調べることが重要で、動向を追跡べきレベル
  • Adopt:試用期間を終え、利用方法などがパターン化され、採用に至るレベル

新しく登場したものは三角。既知のものは丸で表されている。

*

Mobile Webは、前回の調査結果ではAssessカテゴリでしたが、iPhone、Android、その他タブレットデバイスの発展の功績を考えTrialカテゴリへと移動しました。ほとんどのデバイスは、デスクトップPCの使い勝手に近づきつつあります。しかし、最適な表示を行うために、デバイスごとの画面サイズやコントロールを考慮する必要があります。デスクトップでもモバイルでも同じユーザエクスペリエンスを提供できるテクニックが認められるようになりました。

(続きを読む…)

3月 20th, 2011

2011年に注目したい言語 – ThoughtWorks Technology Radar

ThougheWorksTechnology Radar2011年版の適当翻訳。今回は2011年に注目すべき言語の話。

レーダーは以下の領域に分かれる。

  • Hold:注意をしはじめるレベル。
  • Assess:将来的にどう影響をおよぼすか知るため、価値を探し始めるレベル。
  • Trial:将来性を感じるためどのように利用するかを調べることが重要で、動向を追跡べきレベル
  • Adopt:試用期間を終え、利用方法などがパターン化され、採用に至るレベル

新しく登場したものは三角。既知のものは丸で表されている。

*

OracleのSun買収によってJavaの未来が不確定になりました。しかし、今すぐJavaから他にのりかえるのではなく、もうすこし状況を見守ることを推奨します。

(続きを読む…)

3月 20th, 2011

2011年に注目したいツール – ThoughtWorks Technology Radar

ThougheWorksTechnology Radar2011年版の適当翻訳。今回は2011年に注目すべきツールの話。

レーダーは以下の領域に分かれる。

  • Hold:注意をしはじめるレベル。
  • Assess:将来的にどう影響をおよぼすか知るため、価値を探し始めるレベル。
  • Trial:将来性を感じるためどのように利用するかを調べることが重要で、動向を追跡べきレベル
  • Adopt:試用期間を終え、利用方法などがパターン化され、採用に至るレベル

新しく登場したものは三角。既知のものは丸で表されている。

*

最近のデータセンターでは、クラウドの登場と共にたくさんのサーバ機器を扱うようになり、その規模も大規模にならざるを得ない。これらを手作業で構築、設定するのは賢い選択ではなくなってきた。

Infrastructure as codeは、バージョンコントロールに登録された設定スクリプトやファイルを使って、構築や設定を自動化するツールのことを指し、これは、ソースコード(スクリプトを指す)を使ってインフラを構築していく形になる。もはや、ソースコードは、アプリケーションやシステムの一部分だけでなく、インフラ面にも進出していくことになるだろう。有名なツールとしてはChefPuppetがある。Chefは「Opscode(運用のためのコード)」Puppetは「データセンター自動化ソリューション」という位置づけになる。二つのツールは、テキストベースのDSL(ドメイン固有言語)を使って自動化を推進する。これにより、矛盾がなく、繰り返し使え、手作業を減らし、特に環境ごとの差分解消に役立てることができる。

(続きを読む…)

3月 19th, 2011

開発時のAgileなデータベース管理とは?

dahlstroms from flickr

2011年に注目したい技術 – ThoughtWorks Technology Radarにまとめた内容の中に、Automated database deploymentというものがありました。自動化されたデータベースデプロイメントとでも訳すのでしょうか。どういうものなのか気になったので調べてみました。

Richard DingwallThe road to automated database deploymentという記事がありました。今年の2/9に書かれた記事で、最近担当したプロジェクトでTryした内容がまとめられています。

アプリケーションのファイルやウェブサイトは簡単に削除したり戻したりできますが、データベースはそこまで簡単にいじることができません。いざ、失敗したらバックアップからリロードし、データの再構築をしなければならなくなってしまいます。そんな中、彼はどのようにして自動化をデータベースデプロイに取り込んでいったのでしょうか?

(続きを読む…)