本件のお客様は、ドローンを飛ばす方に向けたサービスを提供される事業者様です。
本案件では、航空法に基づく飛行許可の申請、飛行前の飛行計画の届出、そして飛行後に法令で義務付けられた記録の作成までを、ひとつの画面で完結できる飛行管理システムを新規開発しました。行政が運用する申請システムとAPIで連携し、これまで手作業だった申請・届出をシステム上から直接行えるようにしています。
本記事では、開発前の課題、提案したアプローチ、実装した主な機能、そして開発で苦労した点を整理してご紹介します。
今回のポイントは、申請・届出・記録が別々の場所に分散し、ドローンを飛ばす方の負担が大きかったという課題に対し、行政システムとのAPI連携により、申請から記録までを一元管理できる仕組みを実現したことです。
開発前の課題
ドローンを飛ばすには、機体の登録、飛行許可・承認の申請、飛行ごとの計画の届出、そして飛行日誌や点検記録の作成が必要です。これらは業務で飛ばす方に限った話ではなく、趣味で飛ばす方にも同じように義務として課されます。しかし行政のシステムと手元の記録に分かれているため、同じ情報を何度も入力し直す運用になっていました。
また、申請を出したあとの審査状況は行政システム側にログインしないと分からず、承認されたことに気づくのが遅れるという声もありました。
加えて、飛行できる空域や高度は法令で細かく定められており、飛ばす前に「そこは飛べるのか」を判断すること自体に専門知識が必要でした。日常的に申請を扱う方ばかりではなく、年に数回しか飛ばさない方も同じ手続きを求められます。この判断を誰でも行えるようにすることが求められました。
ご提案・開発アプローチ
行政が公開しているAPIとの連携を軸に設計しました。機体情報の取り込み、許可・承認の申請、飛行計画の届出をシステムから直接行えるようにし、二重入力をなくしています。
申請後の審査状況は定期的に自動で取得し、承認・却下が確定したタイミングで利用者へ通知する仕組みとしました。利用者が確認しに行かなくても、状況が向こうから届く導線です。
飛行可否の判断については、飛行禁止エリアの情報を地図上に重ねて表示し、地点を選ぶだけで飛行可能な高度が分かるようにしています。法令の条文を読み解かなくても判断できることを重視しました。
実装した主な機能
- 機体情報の取り込み・管理
- 飛行許可・承認申請の作成・送信
- 申請状況の自動同期・通知
- 飛行計画の届出
- 飛行禁止エリアの地図表示・飛行可能高度の算出
- 飛行日誌・日常点検記録・点検整備記録の作成とPDF出力
- 操縦者管理
- 気象情報の表示
- 月額課金・お支払い管理
- LINE連携(ログイン・お知らせ配信)
開発で苦労した点
仕様を自分たちで変えられない相手との連携
今回の開発でもっとも神経を使ったのが、行政システムとの連携部分です。相手側の仕様はこちらで変更できず、こちらが合わせるしかありません。
たとえば、送信するデータの文字種の制約です。住所欄に全角のハイフンが含まれているだけで受け付けてもらえない、電話番号にハイフンが入っていると弾かれる、といったことが起こります。しかも全角ハイフンに見える文字は1種類ではなく、複数の異なる文字が存在します。利用者はそれを意識して入力しませんし、意識させるべきでもありません。
そこで、送信の直前に文字を整える処理を専用に用意し、利用者には普通に入力してもらい、システム側で受け入れ可能な形へ変換する方針としました。エラーが出るたびに原因の文字を特定し、変換ルールを一つずつ積み上げています。
「相手が落ちている」ことを利用者に正しく伝える
外部システムと連携する以上、相手側のメンテナンスや一時的な不調は避けられません。ここで「エラーが出ました」とだけ表示してしまうと、利用者は自分の入力が悪いのだと考えて何度もやり直してしまいます。
そのため、応答の内容から原因を切り分け、相手側がメンテナンス中の場合はその旨をはっきり案内するようにしました。自分たちに非がないエラーほど、丁寧に説明する必要があるというのが実感です。
集めたデータは地図表示のたびに再計算すると重いため、あらかじめ整形して保持し、表示時の負荷を抑えています。ここは公開後もチューニングを繰り返した部分です。
制度が動き続けるドメインであること
ドローンに関する制度は今も変化しており、開発中にも要件が動きます。作ったものが翌月には合わなくなる、ということが起こり得る領域です。
そのため、制度に依存する判断ロジックはできるだけ一箇所にまとめ、変更が入ったときに追随しやすい構造を意識しました。運用しながら直していく前提で設計することが、この領域では現実的だと考えています。
導入による効果
機体情報の取り込みから申請・届出、飛行後の記録作成までをシステム上で扱えるようにし、同じ情報を何度も入力する手間をなくすことができました。
申請状況が自動で届くため、承認待ちの確認作業も不要になっています。飛行可否の判断も地図上で完結するため、専門知識のない方や、飛ばす機会が多くない方でも手続きを進められる仕組みとなりました。
まとめ
ドローンを飛ばす方に向けた飛行管理システムの開発事例では、行政システムと連携し、申請・届出・記録を一連の流れで扱える仕組みを整えたことがポイントです。
外部システムとの連携や、法令に基づく複雑な要件を扱う開発では、仕様書どおりに作るだけでは動かない場面が数多くあります。実際に動かして確かめ、運用しながら改善していく前提で設計することを重視しました。
同様に、外部システムとの連携や制度対応を伴うシステムの開発をご検討の際は、お気軽にご相談ください。