1
/
5

Go-Tech事業「ヘドロ自動計測センサーボート」開発舞台裏

タビアンは株式会社人材開発支援機構さまの「ヘドロ自動計測センサーボート」への開発協力を行いました。ヘドロ自動計測センサーボートは経済産業省のGo-Tech事業(成長型中小企業等研究開発支援事業)の一環で、経済産業省の補助金を活用し、企業と大学が新技術を開発する産学連携の取り組みの一つとしてプロジェクトがスタートしました。今回の研究開発の目的は、池や河川、ダムの底に堆積しているヘドロの厚さを超音波センサーを使って測定する技術・装置の開発をすること。

タビアンは池や河川、ダムの底に堆積しているヘドロの厚さを超音波センサーで測定する技術・装置の開発における解析用アプリの開発を担当しました。本記事では開発に携わったプロジェクトマネージャーの島野、エンジニアの梶原に実際のプロジェクトについて舞台裏を伺いました。

登場人物

島野拓也 プロジェクトマネージャーとしてプロジェクト全体の進行管理、マネジメントに従事。

梶原飛鳥 エンジニアとしてサーバー構築や納品物作成、アルゴリズム実装に従事。

ーまずはプロジェクトの背景やタビアンの役割を簡単にお伺いできますか。

島野 今回のプロジェクトは経済産業省のGo-Tech事業の一環で、産学連携の研究開発の取り組みの一つでした。プロジェクトの目的は、池や河川、ダムの底に溜まっているヘドロの厚さを超音波センサーを使って測定するための技術・装置の開発をすること。もともとは手作業で竹竿を水中に差し込んで行っていた測定を、超音波センサーを載せた自動航行ボートを池や河川、ダムの水面を走らせることで、ヘドロの厚さを測ろうとする研究です。この研究には、自動航行ボートと超音波センサーのような物理的な開発と、計測した数値を解析するためのシステム開発の、大きく2つの開発が進行していました。研究開発計画の立案、実施、成果管理の統括を今回のクライアントである株式会社人材開発支援機構が行い、タビアンはセンサーで取得した数値情報を計算し、ヘドロの厚さを推定して、グラフ化するシステムの開発に携わりました。

プロジェクトは3ヵ年計画で、2022年からスタートしました。1年目はセンサーで取得した数値を業務アプリ画面上に表示させる機能の開発、2年目はセンサーで取得した数値から水底とヘドロの深さを推定するロジックの組み込み、実用に耐える機能まで開発を行いました。そして3年目はローカルでしか動かないアプリケーションをWeb上でも使えるようにすることがスコープです。

現在はPoC(概念実証)を回して実際の現場で検証されながら実験的に活用されている段階です。

ー今回はどのような機能を開発したのでしょうか。

島野 1年目はアプリケーション画面の開発とAIサーバーの導入の大きく2点。サーバーはタビアンで機材を調達し、クライアントのオフィスへ構築・設置作業も行いました。

アプリはセンサーから出力されたファイルをドラッグアンドドロップすることでデータを解析し、グラフで可視化されます。

梶原 1年目の時点では機能数は少なく、データを読み込んでもパラメータ固定でグラフが描画されるだけでUIも整っていませんでした。2年目に入ってから、大学の先生が開発したアルゴリズムをアプリケーションに組み込む開発を行なったことで、読み込んだデータに基づいたグラフ描画が正確に行えるようになりました。大学の先生は、FORTRANという1950年代に登場したプログラミング言語で開発をするのですが、現代のシステムではほぼ使われておらず、情報が少ないなかでアプリケーションを開発しているプログラミング言語であるTypeScriptに書き換えるのはかなり骨の折れる作業でした…。

島野 1年目と2年目で大きく変わった点は自動で解析するプログラムが入ったことです。1年目はUIはありましたが、数値の自動解析を行いヘドロを測定するところまではできませんでした。2年目から梶原さんがアルゴリズム実装を行ったことにより、グラフの描画を正確に行えるようになりました。2年目の後半からは機能改修も並行しています。

機能改修のフェーズでは初期開発から大幅に改修したわけではありませんが、UX改善をメインに、現場でシステムを使っていくなかでより使いやすいものにできるような改修を行いました。たとえば、日付を全て日本時間表示にし、「何時何分何秒」の表示に書き換えたり、グラフの描画を見やすく変更したり、実際の現場の要望に沿って細かい操作性の改善などを進めていきました。細かい改修にはなりますが、システムをブラッシュアップし、完成に近い形で納品するまでの過程はプロジェクトとしても意識していたポイントですね。

ープロジェクトのポイントはどのような点にありましたか。

島野 タビアンが通常よく行っているプロジェクトはスマートフォンアプリやWebアプリの開発が多く、今回は特殊なプロジェクトだったように思います。今回のプロジェクトはスタンドアローンのデスクトップアプリ開発でした。デスクトップアプリ開発に使われるフレームワークのElectronとReactを使用した開発でしたが、普段はVue.jsの開発が多いこともありこの組み合わせも珍しかったように思います。

全体の画面数こそ少ないシステムではありましたが、機能数やパラメータ設定が非常に多く複雑で、グラフの描画だけではなく計算したものを表示させるアルゴリズムの要素が強い、一般的な開発実装というよりはより研究開発に近いような点が特徴的なプロジェクトだったと思います。

梶原 また、パラメータ数が多いこともありグラフの描画をするデータセットが非常に複雑でした。複雑なアルゴリズムを理解しながら、初期開発時のソースを読み解きながら改修に取り組む必要がありました。ここはプロジェクトとしても苦労した点で、かなり時間をかけましたね。チーム内で開発方針を整理しながら進めていきました。

先ほども少し触れましたが、FORTRANという古い言語をTypeScriptに書き換えてアプリが動いています。最新の言語であれば初めて触れるものでも記法が似ているものも多く、推測できる箇所が多いこともありますが、FORTRANは古い言語だったこともあり、現行のシステムで使っているものもほとんどないので最初は理解するのにかなり苦労しました。TypeScriptへの書き換えのほとんどはChatGPTを活用して行いました。まずChatGPTでTypeScriptへの直訳を行い、そこから正しく書き直せているかはFORTRANにデータを読み込ませ、吐き出した結果とTypeScriptにデータを読み込ませて吐き出した結果を照らし合わせ、差分を見ながら地道に実装していきました。

ープロジェクトマネジメント観点で意識したことを教えてください。

島野 経済産業省用データの補助金を申請して進める3ヵ年計画のプロジェクトのため、年度ごとにスコープとスケジュールが明確に決まっています。そのため、補助金申請を行った際に記載した機能は確実に納期までに開発する必要がありました。最優先すべきは納期を守ることと予算内で事前に取り決めた機能群を開発すること。デリバリー、コスト、スコープは常に意識していましたね。クライアントとコミュニケーションするなかでも、予算と期間内で開発できるスコープをこちらから提示し、開発の舵を切っていくような動きをしていました。

また、これも補助金事業の特徴かと思いますが、納品物としてドキュメントの作成を綿密に行う必要があります。たとえば細かいところだと納品日の記載があっているかどうかまで丁寧に確認を行う必要がありました。最終的な納品ドキュメントのクオリティチェックも意識したポイントですね。

ーでは開発観点で意識したことも教えてください。

梶原 僕は限られた時間のなかで効率よくアルゴリズム実装を行うことを一番意識していました。FORTRANとTypeScriptの整合性を取りながら、粛々と書き換える作業を進めてましたね。

また、開発を進めているうちに、当初の想定より深い部分まで改修をしなければならなかったり、大きな作業ではないと思っていても大幅な改修が必要だったり、細かい部分で想定外の事態が起こることもありました。問題が起こったタイミングでクライアントと期待値調整を行うなど、円滑なコミュニケーションは意識していました。ビジネスサイドと開発サイドが分かれておらず、エンジニアが直接クライアントとコミュニケーションを取る点はタビアンのプロジェクトの特徴かと思います。

ープロジェクトを通してどのような知見や学びが得られましたか。

島野 これまでに経験したプロジェクトとはスキームや毛色が異なったので、プロジェクトメンバーは少し苦戦していたようにも思いました。タビアンの開発の知見やノウハウは増えたのではと思います。あとは補助金事業に携わる開発のノウハウも得られたな、と。納品ドキュメントの作成などはほかの補助金に関するプロジェクトでも活かせるものになったのではと思います。

梶原 FORTRANをTypeScriptに書き換えるなかで、ChatGPTを活用したとお話ししましたが、実は業務で本格的にChatGPTを活用したのは今回が初めてでした。かなり有効活用できると思いましたし、効率化を図るためにできたことも多かったので、個人的に知見が得られましたね。このプロジェクト以降、生成AIの活用は積極的に行うようになり、細かい作業をChatGPTを使って行ない業務の効率化を図っています。

終わりに

このプロジェクトは、3ヵ年をかけて新技術を開発する産学連携プロジェクトです。じっくりと顧客と向き合い、伴走しながら、新しい技術を生み出す必要があり、ふだんタビアンが得意としているWeb技術とは異なる分野での貢献が求められました。

プロジェクトメンバーは、自分たちが得意な技術に捕らわれることなく、ソフトウェアエンジニアとして広く貢献することができました。特に、測定や数値計算・信号処理に対する理解度の高さと提案力を活かし、クライアントの人材開発支援機構さまからは柔軟性を最も評価していただきました。

また、このプロジェクトでは、解析アルゴリズム、デスクトップアプリケーション、物理サーバーの設置、補助金への対応など、今までのタビアンのプロジェクトとは性質が異なるさまざまな領域に携わることができました。タビアンとしてのエンジニアリング・ケイパビリティを広げ、経験を積むことができたプロジェクトになりました。


タビアンでは一緒に働く仲間を募集しています。プロジェクトの内容や開発体制について、より詳しく知りたい方はぜひお気軽に、カジュアル面談へのご応募をお待ちしております。



タビアン株式会社では一緒に働く仲間を募集しています

同じタグの記事

今週のランキング

タビアン株式会社からお誘い
この話題に共感したら、メンバーと話してみませんか?