2011/07/23

にっきききき

四日分だから、にっきききき。

火曜。
曖昧だった API の仕様がある程度 fix される。何故か API の仕様に、アプリケーションの振る舞いに関する記述があったりして戸惑う。悲劇の始まり。あとテスト用に提供され続けると思っていた API が何故か本番用の実装(幸い production 設定ではない)になってて焦る。これも悲劇の始まりか。
チケットのやり取りぼーと見て、お客さん機嫌悪そうだなあと思う。フラグ。悲劇の始まり。悲劇全部この日に始まってる…
色々決まってないために、進めたい部分が進まない一日だった。

水曜。
android に入っている apache commons の httpclient は 3.x 系で、4.x 系とちがって multipart entity のサポートはない…ので自分で entity を実装していたのだけれど、boundary の長さを決める関数が typo によって、たまに 0 を返す、その結果 boundary が空文字列になるという、バギーな動作をしていた。
rails によって誤ったパースが行われたあとのログを貰う。一人うんうんうなっていたのだけれど、同僚がチラッとログを見て "----" という文字列が含まれていることから boundary が空になっていることに一発で気づいた。スゴイ。ボクはというと、一所懸命にパースがどう行われたのかをエスパーして、元のリクエストを復元しようとしていた。今思えば、rails のバージョンも分からない状態で(分からないという自覚はあったので教えろーといったりしたけど)誤ってパースされたものを復元するのは、かなり難しいはずだし、筋が悪かったなあ…同僚に感謝しなければならない。同僚っていうか、一般的には先輩に値するのでアレなんだけれど、しかし先輩後輩みたいなの別にないから、まあ同僚でいいか…
あとは API 仕様に書かれていたアプリケーションの振る舞いの扱いについて、お客さんとやり取り。結果、不十分なものが出てくるが、ボクがそれじゃ全然ダメだよ、と突っ込む前に他の人が OK ですと返してしまう。アイヤー。終電寸前までこれについて話し合い。
あと前のプロジェクトのバグ対応とかもしていた。今思うと忙しい一日だったなあ。

木曜。
終電寸前まで話しあった問題は、お客さんの返事待ってられないので、結局こちらで決めて進めることにボクが帰ったあと決まったらしい。実装面倒になるしいやだなあと思っていた案になってしまって実際面倒だった。アーキテクチャに一定の理解のない人間が選択することことごとく外れるということでしかないけれど、コレに限らずボクの同意なしに物事が進むことが多くて兎角苦労した。
異常系のテストのための API 一式を自分で実装する。
手動テスト開始。洗い出してもらったテスト項目が、テスト手順が無い上に、項目も不十分なものでがっかりするが、バイトの子の仕事だったので、まあ仕方ないかと思う。結局テストしながら手順も書き出していく形に。人間は三人いるのに端末が二台しかなくて悲しかった。
あと有事。火曜のフラグが消化されたらしく、お客さんキレる。イライラするしげんなりもしたが、まあボクは大人なのだから、ペースを崩さず仕事しよう…と仕事した。その後マネージャーが謝りに行ったりして解決したらしい。大人は大変ですね。
まあ忙しかった。手が痛かった。

金曜。
引き続きテスト。テストし記録し、バグを見つけては直す、見つけては直す、見つけては直す。
本番用 API の実装が、完全に本番用なので、お客さんのコードマージしないと動かせないという事態に。この辺のやりとりは本当にぐだぐだであまりに酷い。普通はレスポンスだけ正常に返すものを用意してそれで確認だと思うんだけれど…結局 API まで含めてテスト、デバッグみたいな形に。夕方にお客さんのコードマージ。
その後一旦 RC 提出。提出何時にするんですか、と聞いたのに、ちゃんと返事もらえずにそのまま提出された。以前のプロジェクトでも同じことがあったのでげんなり。
その後 API 仕様に一部変更が加わることになった…はいいが、来週、API とアプリケーションの実装を修正しましょうという話だったのが、夜に何故か API の実装が修正された状態に。デバッガで無理やり値書き換えてテスト続行。正常系、異常系全てのテストを終え、確認された問題を全て修正。RC には間に合わなかったけれど。
忙しかった。手が痛くて痛くて辛かった…


なんでこんなこと書いたのかというと、書きながら、思い出したり確認したりすることで、やり残したことはないかなあ、というのを確認するためなのでした。いくつか見つかったのでまあよし。
そんなわけで一段落。

profile


niha

http://niha28.sakura.ne.jp/