先々週、9割方作成した某システム。先週はソフト会社側の内部テストのため小休止。そして今週の月曜日にソフト会社のスタッフが来社して外向けサーバに某アプリをインストール。
さて、結合テスト開始となり、外のサーバに設置した某ページからアクセスしてみると、あらま拍子抜けするほどあっさり動いた。「今風のWebAPIでやりましょう」と言い出したのは私ですが、ここまで簡単に扱えるようになるといろいろと使い道があるなぁ。と思ったのだが…
火曜日からデバッグ作業開始。ところがところが、「仕様」の根底に関わるところに食い違いがあることが分かりそれからが激疲れの開発再開となりました。もともと某システムで使っている仕組みをWebAPI化させることでWebページから使えるようにしたかっただけで、その仕組みそのものを作ったソフト会社がWebAPI化を担当しているわけで、細かい仕様などを決めなくても、パラメータの受け渡しに関する簡単な仕様書だけでお互いに開発できるでしょ、という雰囲気でしたが大ハマリ。
基本的な機能に新たに応用機能を追加して、Webページからはその応用機能を呼び出すことができるWebAPIですが、過去の経緯からすれば基本機能も使えるのが当然かと思い込んだのが失敗で、なんということか基本機能が動きません。呼び出してもパラメータエラーとなり、明らかに応用機能のためのパラメータを要求しているではないか。うーん、今更“根底”部分の仕様変更はできないし困ったものだ。社内の話なら「仕方ないじゃん変えてよ」で済ましますが、さすがにソフト会社相手にそれはできない。
どうやったら応用機能を使う振りをして基本機能を呼び出すのかを“もぐら叩き”のようにあれこれ細工しまくる日々。その間にもソフト会社側のバグがポロポロ出てきて、その修正依頼。
そしてようやく本日「β版」のレベルまで達して関係者一同へ連絡。
あれこれ細工しまくったことで、思いもしなかった付加価値がついてなかなか面白い仕組みになりましたが、激疲れの一週間でした。