検索
特集

ハードウェアと同じくらいソフトウェアを強くする、トヨタのアプローチ車載ソフトウェア(3/3 ページ)

トヨタ自動車とパーソルイノベーションは2021年2月2日、オンラインでソフトウェアエンジニア向けに「ソフトウェアエンジニアが革新するクルマ開発の伝統」と題した勉強会を開いた。

Share
Tweet
LINE
Hatena
前のページへ |       

トヨタはシステムズエンジニアリングに挑みたい

 車両のシステム設計(システムズエンジニアリング)、システム設計情報のDX、設計情報を正しく活用できる開発プラットフォームの3つは、既にトヨタグループ内で取り組みが進められている。

 これまで、自動車メーカーが得意としてきたのは、機械部品やメカトロニクスの開発だ。開発の進め方や開発手法はサプライヤーとともにトヨタが育ててきた専門領域だという。ただ、自動運転車やコネクテッドカーなどで車両全体のシステムを手掛け、開発規模が大きくなってきたときには「機械部品やメカトロニクスの延長にはない考え方が必要だ。システムとしての設計、システムズエンジニアリングに取り組まなければならない」(長尾氏)という。

 長尾氏は「ソフトウェアエンジニアリングからシステムズエンジニアリングに応用できることは多い」と強調した。システム設計とソフトウェア設計で共通して取り入れられるものとして、アジャイル開発やプロダクトライン開発、オブジェクト指向設計、フィーチャーツリー、テスト戦略やテスト手法、品質管理のプロセスなどを挙げた。

 オブジェクト指向設計をクルマに取り入れることについて、長尾氏は「システムが大きくなると、構造化設計のような従来のアプローチから変えなければならない。構造化設計はデータの流れを設計するという考えだが、オブジェクト指向設計では責任の在り方を基に考えていく。この部分はこの事象について責任を持っているが、他のことには関与していないという要素が絡み合ってクルマが出来上がるイメージだ」と述べた。

 V字プロセスと呼ばれる自動車の開発プロセスの中にソフトウェアエンジニアリングを取り入れることで、開発プロセスはアルファベットのVとは違う進み方になっていくようだ。V字プロセスではシステム、サブシステム、部品の順に仕様を決めて設計開発を進め、部品、サブシステム、システムの順でテストを進める。ここにアジャイル開発の手法であるテスト駆動開発と継続的インテグレーションを組み合わせると、システム、サブシステム、部品ごとにまずは仕様に合わせたテストを決定し、そのテストを一定のペースで繰り返しながら開発していく流れになる。「仕様を作ってテストを決めて、そのテストをパスするようにモノをつくっていくということだ」(長尾氏)。

 ただ、こうした手法が一部の部署だけで取り入れられ、部署ごとにやり方が異なるという状況になってはいけない。「部品レベルから車両レベルまで、包括的にこのプロセスを日々実行するには、テストを自動化し、品質を見える化してその結果を各工程にフィードバックするという仕組みが全社で必要だ」と長尾氏は語った。

システムズエンジニアリングの道具づくりも社内で

 トヨタでは、システム開発の中で生まれたソフトウェアの設計情報を品質向上につなげようとしており、この設計情報を他のシステム設計に生かすためのIT基盤を社内で生み育てるプロジェクト「TITAN」が進んでいる。TITANはクルマのシステムズエンジニアリングを陰ながら支える道具という位置付け。TITANが目指すのは、必要な設計情報をデジタルにつなげておくことで、通信仕様の開発期間を従来の100分の1に短縮するといったことだ。

 道具づくりの狙いについて長尾氏は「よりよいクルマを素早く作るには、そのための道具も開発プロセスに合わせて作り込まなければならない。職人が作品を作るときに、道具から自作するのと同じだ。柔軟な道具を持つことで、クルマの変化に対応していく。システムの設計情報が複雑にからんだ問題でも、すぐに解けるようにしていく。これが、クルマを買う人に向けて高品質なクルマを適正な価格で提供することにもつながっていく」と語る。

 TITANではまず、設計情報の見える化からスタートしたが、課題は多かった。見える化されていない情報に取り組むだけでなく、車両のシステム全体を詳細に把握している人が社内にいないということや、設計者当人も知らないシステム同士のつながりがあるといったことも判明した。こうした設計情報の状況を収集しながら、アジャイル開発の手法の1つであるスクラムによってプロジェクトを進めた。「コロナ禍なので、一般的には珍しいフルリモートでのスクラムとなった。対面でみんながホワイトボードの前に集まって話せばあっという間に終わることでもリモートでは時間がかかって難しかった。スクラムに取り組んで8〜9カ月目だが、開始から3カ月たったあたりで軌道に乗ってきたという印象だ」(長尾氏)。

 プロジェクトでは、TITANのユーザーとなる開発部署も参加し、フィードバックを得ながら開発を進めている。プロジェクトが進む中でメンバーもスクラムに慣れてきており、個々人が自律的に活動しながら同じ方向を向いて高いレベルで連携しているという。スクラムを取り入れることでTITANのプロジェクトの活性化が図れており、成功事例として社内外の仲間づくりにつなげたいとしている。ただ、スクラムのようなプロジェクトの進め方は通常の車両開発に取り入れるのは難しい。TITANが条件のそろったプロジェクトだったのが要因として大きかった。

設計情報を正しく活用する開発プラットフォームがArene

 設計情報を正しく活用できる開発プラットフォームとして、トヨタグループのWoven CORE(ウーブン・コア)が中心になって開発しているのが「Arene(アリーン)」だ。飯山氏は「地球上で最もプログラムしやすいクルマを目指したプラットフォームだ」と説明する。

 アリーンは全てのECUに搭載するのではなく、「ソフトウェアを頻繁に更新するようなアプリケーションを載せるコンピュータに取り入れる。例えば自動運転システムやコックピットは状況に応じてアップデートすることが求められており、ここでアリーンが生きる。ただ、ソフトウェアとしては大きく重くなるので、現在のECUにそのまま入れることは難しい。今後はECUと高度なコンピュータを使い分けていくことが重要だ」(飯山氏)。

ソフトウェアエンジニアがハードウェアエンジニアに思うことは

 勉強会では、飯山氏と長尾氏が勉強会の参加者から寄せられた質問に答えた。

 トヨタで役に立つスキルやプログラミング言語について尋ねられた飯山氏と長尾氏は「どの言語かというよりも、ソフトウェア開発の考え方やスキルの方が重要だと考えている。トヨタはこれまで、ハードウェアが強かったので、ハードウェア開発の考え方はしっかりしている。これから同じようにソフトウェアも強くなるには、ソフトウェア開発の考え方をしっかり持った人が増えなければならない。メカなどハードウェアと、ソフトウェアの間に立てるような人を増やしていきたい」と回答した。

 また、ウーブン・コアを傘下に持つウーブン・プラネット・ホールディングスは、ソフトウェアのプロに来てもらうための会社であることを両氏は強調。コーディングの試験を取り入れた採用を実施するなど、「トヨタは変わろうとしている」(長尾氏)。

 ハードウェアエンジニアに対する期待についても尋ねられた。長尾氏は冗談交じりに「もっとソフトウェアエンジニアに優しくしてほしい。ハードウェアとソフトウェアは互いに理解し合って協調しなければならない」と答えた。飯山氏も「組み込み開発の分野でも、マイコンなどハードウェアをやる人と、ソフトウェアをやる人で仲が悪いことがある。作っているものが違っていて、こだわりも異なるからだ。バックグラウンドが違うからこそ、お互いに理解することが必要なのではないか。ソフトウェアへの理解を得られるような活動を続けていきたい」とコメントした。

→その他の「車載ソフトウェア」関連記事はこちら

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る