今週も土日は休めたものの、平日の多忙と暑さでグッタリ。
仕事のほうはまた炎上しかかって来ていてまずい。メンバーが作ったものを実際のデバイスに組み込んで動かすと全然動かない。
今、チームのメンバーは刈谷と福岡に地理的に別れていて、福岡側にはデバッグするためのデバイスが無いのでどうしても実装して単体テストやモジュール内の結合テストをするところまでしか作業が出来ない。
エミュレータ環境が特にあるわけでもなく、相手モジュールに対して正しいと思っているパラメータを渡せているというテストまでしかできないので、実際にデバイスに乗せて動かしたときに相手モジュールがどういう動きになるかはやってみないと分からない、ということはあるのだろうが…。
相手モジュールの仕様書に一応沿ってAPIを呼び出したりしているつもりでも、本当はパラメータの指定に条件があったり、ある値の範囲の中でも特定の値しか受け付けないとかあるのかもしれない。仕様書に載ってないと文句を言っても始まらないし、上流工程でその辺を確認していない側にも問題はあるだろうし。ただ何の値を渡せば相手側が正常に動いてくれるのかが手探りで、時間だけが過ぎていっている感じなので何か打開策を考えないといけないな…。
こういう感じでまだまだ、実際のデバイスに載せてテストするのを待っている開発アイテムがたくさんあるのだが、出だしからこうも躓くと先が思いやられる。スケジュールはすでに遅延してきているので、あれもこれも動かない、みたいなことになったりすると阿鼻叫喚になるだろう。
夏休み前の今週1週間での進捗が勝負になりそう。下手をすると本当に夏休みが無くなる可能性も出てきた…。
開発スケジュールの遅れから、ウチ以外のモジュールもほぼ平行で開発をしている状況でスタブやドライバを作っている余裕が無いと、いちばんやってはいけない「ビッグバンテスト」をしているので正常系のルートを通すだけでもとても時間がかかっている。デバッグもリアルタイムにできればいいのだろうが、ゆっくりデバッグに使えるほどデバイスを使える時間が無いので(1台のデバイスをいろんなチームが時間割で使っている)、もっぱらログをベースにした解析になる。だから余計に効率が良くない。
組み込みではある程度は仕方のないことではあるのだけど、デバイスが不足しているのでデバイスに載せてテストするまでに、いかに事前にテストできるかが大事なのは理解しているのだけども…。
メンバーのスキルとかモチベーションとか(前機種の開発の過酷さからモチベーションは下がりきってる)、スケジュール逼迫とか、ただでさえ遅れているのにそこに割り込みで入ってくる依頼事項などの多さでさらに予定の作業が遅れるとか、何度スケジュールを引き直しても割り込みの多さですぐにスケジュールが破綻するという具合。
…今回も典型的な炎上プロジェクトのパターンをなぞってる気がしますね。
前機種の開発プロジェクトも炎上し、その中で体や心を壊してここ数ヶ月で立て続けにメンバーが離脱していったのが大きな痛手。ボロボロになって急に去っていく形が多かったので、彼らが知っているノウハウがきちんと引き継げてないだろうし、残していった途中の作業のクオリティも良くなく後釜のメンバーが懸命にやっているけど、チーム入ってきたばかりで穴を埋められるほどの知見も無いし、と前々からの問題も含めて、今回の炎上もなるべくしてなったものなんだろう。
頭の痛い問題だ。自分自身も疲弊とモチベーションはもう無い中でなんとかやってる感じだし…。
コメント