SlideShare una empresa de Scribd logo
1 de 19
徳永 誠
自動運転システムのCI/CDとは?
Webシステムとの違いってなんだ
Jan. 29th, 2021
1
自己紹介
アルゴリズムやデータ構造に興味がある
Backend エンジニアです
Rust+WASMでたまに遊んでます
徳永 誠
最近は
Tier IVには入社3年目。(3年目で古株扱いされま
す)
Tier IV 釣り部部長
CI/CD TeamのLead
2
vios-fish
CONTENTS
自動運転システム
とCI/CD
自動運転開発の難しさ
CI/CDとは
CI/CDの詳細
テスト戦略
Simulatorを利用したCI
自動運転システムのDelivery
プロダクト紹介
CI/CD Dashboard
Rosbag Viewer
Scenario Editor
04
08
13
3
自動運転システムとCI/CD
4
自動運転システム開発の難しさ
高い安全要求 ハードウェア
小さなプログラムによる大きなシステム 難しい要件定義
100以上のプロセスが協調して動作
決まったことの変更が難しい
熱・電力などハード固有の問題
人を轢かないことを保証する
システム
実際に動かして分かる要件の追加・変更
自動運転システムの世界はこれから
5
実現するために
ウォーターフォールなV字型開発とアジャイル的な開発フローを部分的に採用
1. V字型
a. ハードウェアに関わる開発
b. 安全性品質に関わる要求分析・設計・検証
2. アジャイル型
a. ソフトウェア/アルゴリズムの開発
b. 要件の追加・変更
Ticket 1
Ticket 1
V字型 アジャイル型
0.5~1.0 years 2 wks
開発計画
安全コン
セプト
設計
仕様
評価
計画
評価
結果
6
CI/CDの意義
Continuous Integration(CI)とContinuous Delivery(CD)の略称
2つの開発フローをつなげるためにより早いFeedBackを回したい
- お互いに全く関係せずに開発が実施されることはない
- V字型でも、最初に要求がすべて洗い出されることは難しい
(そもそも自動運転が未知の世界)
- Agile型でも、安全性や品質をないがしろにしていいわけではない
V字の手戻りを最小限に抑える
Agileな変化にも耐えうる安全性・品質の担保
7
CI/CDの詳細
8
テスト戦略
皆さんどういったテストを行ってますか?
一般的なWebシステムであればこういう分け方が多いのでは?
単体テスト 結合テスト
機能テスト
UI(受け入れ)テスト
非機能テスト
テスト数
スコープ
コスト
9
自動運転のテスト戦略
ソフトウェアのテストは大きく変わらないが、実際のハードウェア・車両を用い
たベンチテスト・Fieldテストが含まれる
CI/CDチームでは、コストやスコープ、実現可能性を考慮し結合テストを対象に
単体テスト 結合テスト
機能テスト
Fieldテスト
非機能テスト
ベンチ環境でのテスト
テスト数
スコープ
コスト
10
Simulatorを利用したCI
シナリオベースのPlanning Simulatorを用いたテスト
- 一度の実行が低コストで、地図や一部コンポーネントをインテグレーション
したテストが行える
- シナリオ = テストの前提条件・事後条件が明記
- 事前条件: 自動運転車・登場人物(他車両・歩行者・自転車etc.)・地図
- 事後条件: どういう状況になれば成功/失敗なのか
- Ex. 自動運転車が歩行者にぶつからずに目的地にたどり着いたら成功
11
シナリオ
地図
自動運転システム
with simulator Result
自動運転システムのDelivery
まだまだContinuousとは言い難い
- Webシステムのように継続的にアップデートされる状態でどうやって安全性
を担保するのか
- 実車での評価が終わってないものをリリースするわけにはいかない
自動運転車の台数に対してスケールさせるために、構成管理・OTA(遠隔)アップデ
ートができるようになっておく必要がある
- システムのアプリケーションのみを管理
- 差分アップデートサポート
12
プロダクト紹介
13
プロダクト紹介
CI/CD Dashboard / Rosbag Viewer
社内の自動運転システムに特化したCIサービス
- ソースコード変更でのトリガの実行 or Adhocな実行
- rosbagデータ(システム内通信のログデータ)の保存
- 実行結果のグラフィカルなWeb表示
Scenario Editor
テストのシナリオ記述をサポートするツール
- グラフィカルに車両の挙動を記述できる
- 過去にビルドされたイメージを用いて、編集したシ
ナリオをWeb上ですぐに実行可能
14
CI/CD Pipelineのアーキテクチャ
OTA Package
Map
パラメータスイープ
Batch Job を登録
スポットインスタン
ス上で実行
Code
シナリオ単位
で分散 テスト分散
Docker Image Batch
S3
S3
DynamoDB
DynamoDB
ECR
ECR
Lambda
GitHub
Docker Image
Base Docker
Image
Test Scenarios
Test Report
Batch
Build Test
Pull Request
User Kick
15
工夫している点 (1/2)
Batch Computing Environment / ECS Cluster
EC2 Instances
Batch Job / ECS Task
EBS / Docker Layer Storage
ECS Container Agent systemd-tmpfiles
tmpfs
Docker Container
Docker Image
Base Docker
Image
PCD Map Vector Map
Batch Job / ECS Task
Docker Container
ライフサイクル
管理
保存 / 取得
ライフサイクル
管理
保存 / 取得
ベースイメージはクリーンアップしないなどのECS
Container Agentのチューニング.
敢えて、ベースイメージを中間レイヤーではなく
、明示的なイメージとして管理.
Docker Layer Cache
ホストマシンのボリュームに置くことで、Job間で
再利用.
ディスクフルを避けるためにtmpfsを利用.
Map Cache
16
工夫している点 (2/2)
過去にBuildしたImageを利用した簡易実行機能の提供. シナリ
オを編集し、実行確認がブラウザ上で完結.
ブラウザ上でのSimulatorのTrial Run
開発者のPCに存在するSimulatorを用いてCI実行時と同様の環
境を提供. 開発者のデバッグをサポート.
実行環境のRuntime化
開発が過渡期で複数のFirmware(ROS, ROS2など)の管理が必要
.
Firmware依存部分をプラガブルにし、開発・管理効率改善.
Firmware依存処理のプラグイン化
17
シナリオTrial Runのアーキテクチャ図
今後の展望
結合テストだけでなく、ベンチ/FieldテストとサポートできるTestBedの拡大
- 開発者がテストの結果、FeedBackを素早くもらえるシステムづくり
OTAアップデートでアプリケーションだけでなく、OS, Middlewareも含めた環
境管理・アップデートの実施
18
© 2021 Tier IV, Inc. 19

Más contenido relacionado

Destacado

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destacado (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

自動運転システムのCI/CDとは? Webシステムとの違いってなんだ

Notas del editor

  1. Autowareの説明 モジュールの概要 Sensor
  2. V字型の図は文字を読ませないのであれば、ないほうがいい
  3. 小と大を強調させるために視覚的な効果がほしい
  4. チーム紹介を最初に入れたほうがいいと思う 人数、役割、ここが足りてないなど。 写真など雰囲気わかるやつとか(あれば)
  5. OTAとDeltaPackageの用語。説明を入れたほうがよさそう
  6. Youttubeと言わない。社内動画をアピール。
  7. 段階ごとに下にステップを書いたほうがいい。
  8. この工夫をしたことでどれくらい効果あったのかの数字を表したほうがいい。
  9. テストなくて課題からCI/CDが始まったの序章を持ってきたほうがいい。 25分くらい喋っていたので5分 喋って、候補者にリーチする内容以外は削る。(今回でいうAutowareとか、LSim、E2ESimとか)