2006-01-12 (Thu) [長年日記]
_ habtmがsaveされない
あるアプリケーションをRails 1.0.0に移行したら、 new recordのhabtmなassociationがsaveで保存されなくなっていて、 おおいにはまった。
user = User.new user.groups.push(group1) user.groups.push(group2) user.save user.reload p user.groups #=> []
といった具合。pushする前に、user.saveしとけば保存されるんだけど、 このバグはちょっといただけないなあ(他人には厳しい)。
_ 開発スケジュール管理
以前オーム社の方にいただいたJoel on Softwareで 紹介されているスケジュール管理法を試している。
図のように、
- 機能
- タスク
- 優先度
- 当初見積
- 現在見積
- 経過時間
- 残り時間(現在見積-当初見積)
という列を持つExcel(自分はOpenOffice.org Calcだけど)の表で管理す る、というシンプルなものだ(ガントチャートなどは使わない)。
ポイントは、
- タスクの粒度を小さくする(せいぜい数時間程度)。
- 開発者自身がスケジュールを立てる。
- デバッグやバッファ(予備の時間)も項目に挙げておく。
- 一日の終わりに、8時間働いたことにして(!)、おおざっぱな経過時間 を記録する。
- 現在見積をアップデートする(当初見積は変えない)。
といったところ。
表計算ソフトだと、残り時間の合計とか見積の合計などがすぐに出せる ので、スケジュールの修正がしやすいのがいい。 しかし、バッファがもう残り5時間になってしまった:(
2006-01-13 (Fri) [長年日記]
_ 開発スケジュール管理(2)
当初見積と残り時間ってどんな風に使うですか?預言が当たらなかった度合いを知るため?ゴールまでの距離は現在見積なのかしら。
[Journal InTime - habtmがsaveされない , 開発スケジュール管理より引用]
そうですね。> 当たらなかった度合を知るため
残り時間が0になったらタスクの完了とみなします(完了しなかったら現在見積を増やす)。
当初見積の合計と現在見積の合計は常に同じになるようにバッファを増減して調整します(つまりバッファが0にならないかぎり、エンドをずらしたり、機能を削減したりしなくてよい)。 現時点からゴールまでの距離は残り時間の合計になります。
最初細かい作業日が把握できないのが気になったんですが、進捗の度合やエンドは常に把握できるので、あまり問題ない気がします(マイルストーンごとにシートを作るのがいいのかもしれません)。
_ 咳 [ふむふむ。みんなちょっとずつ違いますね。うちは「預言を当てた」ことにしたかった方向に力がかかるので、当初の見積は残さ..]
2006-01-17 (Tue) [長年日記]
_ ximapd 0.2.0 リリース
Software Design 1月号が出たので、あわててリリース。 仕事の納期がいろいろ近いので、あまりいじってません:(
_ Win32OLEでExcelのテスト仕様書作成
近々納品予定のプロジェクトのテスト仕様書のフォーマットがExcel指定で、 困ったなあと思っていたのだが、Win32OLEを使ってさくっとYAMLの元デ ータから生成することができた。 Win32OLE万歳。Excel万歳。
参考サイト:
今さらという気もするが、Essential COMやEffective COMを買った方がいいかもなあ(と思うくらいCOMに触れる機会が多い)。会社で買ってもらえんかなあ。
_ 咳 [当初見積と残り時間ってどんな風に使うですか?預言が当たらなかった度合いを知るため?ゴールまでの距離は現在見積なのかし..]