ハイレベルな自動運転技術の開発にGitHub Enterprise Cloudを採用。 分散したパートナー企業群と密なコラボレーションを可能にし安全かつ効率的なクラウド型開発環境を実現。
✔ 多くのエンジニアが活用体験を持つ開発ツールを採用し、開発しやすい環境を構築 ✔ 柔軟なコードレビューの仕組みを実現し、レビュー完了までの時間を半減 ✔ 簡易テストの自動実行とピンポイントのレビューにより開発品質を向上 ✔ クラウド型SAML認証とADの連携でアカウント管理コストを3分の1に圧縮
自動車業界では今、100年に1度のパラダイムシフトといわれる自動運転技術の高度化に向け、グローバルレベルでの主導権獲得競争が活発化している。株式会社J-QuAD DYNAMICS(以下、J-QuAD)は、 “走る・曲がる・止まる” 技術を高度に連携した自動運転・車両運動制御のための統合制御ソフトウェア開発をおこなうジョイントベンチャーだ。センシング技術に強みを持つアイシン精機株式会社と株式会社デンソー、高信頼なブレーキ技術を誇る株式会社アドヴィックス、最高レベルのステアリング技術を有する株式会社ジェイテクトの4 社が、それぞれ最高の技術知見を持ち寄り、AllJapanによる自動運転技術の普及と発展に貢献しようと手を組んだ。
同社の主な開発領域は、自動運転制御ユニット(ECU)、車両統合制御技術、ドライバモニタ(車室内カメラを利用してドライバーのコンディションを検出する技術)、自動駐車技術の4部門があり、東京・本社と愛知・刈谷支社のほか、十数社の社外パートナー企業とともに鋭意開発が進められている。
中でも、自動運転ECU の社内標準開発基盤に、「GitHub Enterprise Cloud」(以下、GitHub)が先行採用され、国内自動車業界初の取り組みとして大きな関心を集めている。
GitHub に注目した理由について、J-QuAD 先進安全技術部長 冨板 健治氏は次のように語る。「当社は、出資会社4 社が開発プロジェクトをそのまま持ち寄る形で開発を継続しているので、開発環境も基本的には従来のものを踏襲しています。ただ、会社全体で1つの目的に向けて連携するためには、同じ開発環境に整える必要もあるため、中長期的には環境を統一していく議論はしています。今回、自動運転ECUが GitHubを先行導入したのは、GitHubがその核になる可能性は極めて大きいと考えたからです」
GitHub を最初に紹介し、強く導入を提案したのは、J-QuAD 先 進安 全技 術 部 第 2 技 術室 技 術 7 課 主幹で、自動運転 ECU 開発のプロジェクトマネージャーを務める望月 洋二氏 だ。望月氏 は、クラウド型のGitHub を本格活用することで、以下の3つの目的が実現すると考えていたという。
1つ目は、パートナー企業との柔軟な連携。同社の開発現場は J-QuAD の2 拠点に加え、共同開発をおこなうアウトソース各社の国内14 拠点と海外1拠点にも広がっているため、地理的に分散していてもソースコードを安全にやりとりできる環境を迅速に用意する必要があったという。
「自動運転 ECU 開発は開発者や開発拠点の変化が激しいプロジェクトですので、SaaS 形式で GitHub を活用できることが望ましいと判断しました」と望月氏は話す。 2つ目は、ソフトウェア開発者の確保。自動車業界ではソフトウェア開発者、とりわけAI 技術者の不足が大きな問題となっている。国内外を問わず、さまざまな場所・企業で協働開発が可能な仕組みや環境づくりが求められていると冨板氏は指摘する。「今後、さらに開発量が増えたり、異なる技術が必要になったりした時に、フレキシブルに開発パートナーと契約を組めるような体制づくりや、高頻度にコミュニケート可能な仕組みを持つ必要がありました」(冨板氏) 開発パートナーの中には、家電業界から自動車関連事業にシフトする会社もあり、エンジニアが仕事をしやすいモダンな開発環境を実現するGitHub の導入によって、広く有能な人材を確保したい目的もあったという。
3つ目は、Pull Requestによる効率化。これまで人間系に頼っていたコードレビューの仕組みを、Pull Requestを使うことでシステム的に実現できるようにしたかったと望月氏は強調する。「従来のコードレビューは、プロジェクトリーダーや各コンポーネントリーダーなど複数の有識者のスケジュールに合せて日程を決めなければならず、時間がかかることもありましたが、Pull requestではコードレビューのフローが仮想的に可能になるため、大幅な効率化が可能です。また、Pull Request からはビルドチェックや簡易テストが可能で、未完全なコードがコミットされてしまう危険性が少ないため、コード品質向上や効率的な開発の面でも非常に有効です」(望月氏)
J-QuAD は、2019 年5月にGitHub の導入を決定。その後、テスト運用を重ねながら、旧開発環境でのリリース終了とGitHub への移行を並行して進め、7 月から正式にプロジェクトでの活用を開始した。
GitHub の採用を決定した理由について、望月氏は、「GitHub はGitのホスティングサービスで大きなシェアを持つグローバルスタンダードとなっており、世の中の多数のエンジニアが活用体験を持っています。そのため、他業種からのキャリア採用が多い当社にとって、全員が違和感なく開発を進められる標準ツールとして適切だと判断しました」と語る
導入過程においてプロセスを整理し、全員が使える環境を作ることに尽力したのが、J-QuAD 先進安全技術部 第1技術室 技術1課 主任 亀田 伸哉氏だ。
「テスト運用では一部のチームに先行導入してもらい、実開発上での課題を抽出しました。その結果を踏まえ、ブランチルールを決めるのが重要であると判断し、標準ブランチルールを徹底させるためのサポート体制を構築しました」と亀田氏は説明する。また、開発委託先の企業が多いため、ブランチの作り方や承認フローの進め方はもちろん、例外的なシナリオに対してどのような操作をすればソースコードの修正記録が残るかなど、自動車業界では不可欠な機能安全規格への対応を念頭に説明責任を果たすためのルール検討も進めたという。
GitHub 導入による効果は主に次の3 点で顕著に表われた。第1 は、レビュー時間の短縮。「Pull Requestを活用することで、有識者は各自の都合に 合わせてレビューを実施できるようになり、1つの工程で数回おこなわれるレビューも完了まで時間を半減させることができた」(望月氏)
第 2 は、開 発 品 質 の 向 上。「GitHub Actions」(GitHubが提供するCI/CDツール)のベータ版をいち早く活用を始めた同社は、Pull Requestが飛ぶと自動的に簡易テストを実行させる環境を構築し、テストの通らないソースコードはマージできないようにした。また、Pull Requestではコードを行単位にピンポイントで指摘できるので、レビューが細分化し、開発品質が大幅に向上したという。
第3 は、アカウント管理作業の負担軽減。GitHub のCloud版を活用することでサーバーレス運用に移行したが、煩雑なアカウント登録管理が残っていた。そこで同社はクラウドのSAML 認証サービス「IdP」(Identity Provider)を 活 用してActive Directory(AD)情報と連携。AD に人事登録されればGitHub を使えるようにし、パートナーを含めたアカウント管理理の手間も削減した。オンプレミス運用と比べ、管コストを3 分の1程度に圧縮できる計算になるという。
今回のGitHub 導入について、冨板氏は、「今までは社内で閉じた世界で開発していたものを、もはやそれが許されなくなるほど、お客様やパートナー企業のみなさまと密にコラボレーションできるようになりました。また、高品質なシステムを大規模に開発していく点においては非常に適したツールだと感じています。今後さらにGitHub を使いこなす過程で、新たなチャレンジに直面すると思われますが、ギットハブ・ジャパンには引き続きそうした課題にもリアルタイムに応えていただけることを期待しています」と語る。
自動車業界は自動運転の普及に向けてかつてない変革期を迎え、単一のグループでは抱えきれないほどの巨大な開発に挑戦していく命運に備えている。従来の常識も創造的に壊しながら、多種多様なパートナーとも柔軟に連携・協働していく中で、GitHubがそのキーファクターのひとつになると冨板氏は確信している。
業種
企業規模
柔軟なホスティングオプションやビッグデータに裏付けされたセキュリティが、企業におけるソフトウェア開発をサポートします。
IT
ITサービス
Start collaborating with your team on GitHub
GitHubのコア機能
Advanced collaboration for individuals and organizations
企業ニーズを満たすセキュリティ、コンプライアンス、柔軟なデプロイメント
Want to use GitHub on your own? Check out our plans for individuals