GENIVI Korea Summit 2013 GENIVI Development Model

Pavel Konopelko Software Architect / SAT Lead Visteon

Dashboard image reproduced with the permission of Visteon and 3M Corporation 19-Nov-13 GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 1 Copyright © GENIVI Alliance 2013 Contents

• Reflecting on the history – Problems to be solved and the attempts on solution

• Current approach – Organization, processes and artifacts

• Looking into the future – Improvements being worked upon

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 2 Reflecting on the history

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 3 Two Dimensions of Development Model

A proper development model needs to address at least two aspects: 1. Solving the right problem – Understand and control the system scope and design constraints—GENIVI Software Platform is a part of a bigger system 2. Solving the problem right – Organize the available development resources in a way that is efficient and compatible with open- sources development practices

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 4 Software Platform in the Big Picture

Vehicle

Electronic Control Unit

System on Chip

Software Platform

Software Applications

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 5 ‘Pure’ Open-Source vs. Full Control

• Distributed, evolutionary • Centralized, requirements- approach driven approach – More robust in face of – Works best under known uncertainty and stable conditions – More waste and therefore – Better utilization of less resource efficiency development resources

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 6 First Attempt: GENIVI Component Development

• In early 2009 GENIVI started by chartering several Working Groups and put together a process task force • In early 2010 the “GENIVI Component Development” (GCD) process was finalized and put into action • It was based on centralized decision making, was rather heavy-weight and was soon abandoned • The approach to system scopes based on UML has proven more viable

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 7 Second Attempt: Tuning Organization

• By mid 2010, after a performance assessment it was realized that the progress is rather slow • The Board decided to simplify the organization, refine the existing Working Groups into more fine grained Expert Groups with dual leadership, move the decision power down the organization hierarchy and streamline the process • This new organization structure and the strong orientation towards the compliance program found wide adoption and are currently in use

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 8 Recent Attempt: Opening up the Code

• From the very beginning, GENIVI assumed that the software projects launched within the alliance will be only accessible to the alliance members • In early 2012, several board members attended the Open Source Think Tank held in Napa valley • The most important feedback was “to be more open and less paranoid” • In October 2012, a fully open project hosting platform hosted by the Foundation was created and all existing projects migrated to it

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 9 Current approach

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 10 Development Teams

System Architecture Team CE Connectivity EG

HMI- Korea REG Application Framework EG

Compliance Specification System Location-Based Infrastructure Services EG EG

Media and Networking EG Baseline Graphics EG Integration Team

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 11 Team Working Mode

• Each development team typically have its mailing list and holds weekly conference calls – All technical issues are discussed in one place on [email protected] • Each team typically arranges several face-to- face meeting per year • Two times a year all participants meet during GENIVI All Member Meetings • SAT has sub-teams for security and compliance • Each Expert Group hosts multiple projects

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 12 CE Connectivity EG Scope

In CEC Scope = Active project Wireless Charging Device management • Device Detection = Not currently active Bluetooth iPod • Device Identification • Hands-Free Profile (HFP) • iPod Out • Device Classification • Advanced Audio Distribution Profile (A2DP) • iAP • Audio/Video Remote Control Profile (AVRCP) • Device ID Profile (DID) Smart Device Out of • Dial-up Networking Profile (DUN) AV • Common APi • File Transfer Profile (FTP) • HDMI inc Wireless • Mirrorlink GENIVI Scope • Headset Profile (HSP) • MHL • IVILink • Object Push Profile (OPP) • 3.5mm Jack AV • Personal Area Networking Profile (PAN) • AV USB SATA • DVI • Phone Book Access Profile (PBAP) • Composite Video NFC eSATA • LVDS • Message Access Profile (MAP) • MiraCast • NFC • VGA • Low Energy • Charging Media Playback • Media Indexing USB • Mass Storage • Playback Control DLNA/UPnP 1394 Firewire • Multimedia • Playlist management • WiFi Thunderbolt • Media Source Abstraction Portable Devices • Metadata Enhancement • MTP, PTP. Media Playback USB • Media Pipeline • Wireless Dongle TCP/IP • Audio Management • WiMax • USB • Video Audio Sync • Wifi • Bluetooth • Phonetic Database • WiFi

WiFi Digital Rights management Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 13 HMI & Application Framework EG Scope

active In HMI&AF Scope Application Framework - G1/G2 • Application Manager TBA - Not currently • Interface Access Manager active HMI Framework - G1 • Service Discovery - (Led by EG-SI) • Popup Manager • Certificate Manager (EG-SI/Security) • Driver Workload Assessor • Communication - (Big list Handling & Data Binding) • Localization Management • Unified API - (G2) Out of • Push Message Centre • GENIVI Reference App Framework - (G2) • Asset Manager GENIVI Scope • I/O Abstractions for Applications G3 – Foreign Frameworks G5 App Store Client Speech Services G4 - SDK • Speech Output Service Graphics Description & Processing Pipeline • Speech Input Services • Rendering technologies • Speech Dialogue Service • Graphics asset formats G5 - App Store

Specific Application Frameworks System Infrastructure Security • Certificate Manager (App FWk) • Interface Access Manager HMI tool chain • Service Discovery (App FWk) • Certificate manager • User Management and Personalization • Software Management Reference HMI Media & Graphics Networking LBS • Layer Manager • Graphics API • Vehicle Interface • Navigation Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 14 Korea REG Scope

KREG Scope = Active project

= Not currently active Car Data Logging • Data logging requirements • Code implementation which working with DLT daemon/client Out of Vehicle Web API • Vehicle Web API requirements GENIVI Scope Regional requirements • Reference implementation • W3C Vehicle API Standardization • Multi profile IVI (include Instrument cluster) W3C standardization • Asian LBS requirements • Automotive BG : Tizen, QNX, … Radio Web API • Coordination with Native Web API • Radio Web API requirements Car data server • OEM CRM/telematics server • Sync protocol

Networking LBS Media and Graphics • Vehicle Interface • Navigation - Web and Radio Tunner • INCM/AMB • DLT • Browser Framework SI • Connection Manager • Persistence Manager Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 15 Location Based Services EG Scope

In LBS Scope = Active project

= Not currently active GNSSService SensorsService • GPS • Odometer POIService • GLONASS • Vehicle Speed • POI on Local Database More Services • Galileo • Inclination • POI on Online Servers • ADASHorizon Out of • ... • Gyroscope • Roadside Assistance • ... • Fleet Management GENIVI Scope • Emergency Call MapDataService EnhancedPositionService • TrafficFlowService • API to access NDS Databases • DeadReckoning • ...

HMI NavigationCore TrafficIncidentsService • Route Calculation MapViewer • Traffic Information • Route Guidance • Map Rendering over multiple delivery channels • Location Input • Map Configuration (RDS /TMC, TPEG, XM/SIRIUS) • MapMatchedPosition

Tuner Speech LayerManagement • Analog Radio Tuner (AM, FM) • Voice Generation • Layer Rendering and • Digital radio tuner (DAB, DMB, ..) • Voice Recognition Compositing • ...

Other EG GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 16 Media & Graphics EG Scope

In MG Scope = Active project = Not currently active Layer Management • Window Manager • Rendering Service • Graphicsystem Smart Device • Common APi Out of • Mirrorlink AV • Livio GENIVI Scope Audio • HDMI inc Wireless • IVILink • Audio Management • MHL • VNC - TBC • Video Audio Sync AV • AV USB • Audio Routing • DVI • Composite Video SATA NFC • LVDS Tuner • MiraCast eSATA • Station Management • NFC • VGA • Data & Traffic Services • Charging • 3.5mm Jack • Hybrid&Internet Radio USB • Mass Storage Media Playback DLNA/UPnP • Multimedia • Media Pipeline • WiFi Thunderbolt • Portable Devices • Audio Management 1394 Firewire • MTP, PTP. • Video Audio Sync Media Playback USB • Playback Control • Wireless Dongle TCP/IP • Playlist management • WiMax • USB • Media Source Abstraction • Wifi • Bluetooth • WiFi

WiFi Digital Rights management Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 17 Networking EG Scope

In NW Scope = Active project

Browser = Not currently active • Download Manager • Bookmark Management ConnMan • HMI Browser API • Session API Ethernet based • Certificate Management • Advanced routing Vehicle Networking • Port Abstraction • Network abstraction • Audio/Video Transmission Out of • NSAP Plugin Concept • IPv4,IPv6, DHCP • Ethernet AVB • Tab Support • Supports Bluetooth, WiFi , Etherrnet GENIVI Scope • Web API / HTML5 Application support via plugins for BlueZ, oFono… • W3C • NTP support • DeviceAPIs • NwDataTransfer Vehicle Interface Ethernet Phy Thunderbolt • Vehicle Web API • Automotive Message Broker Services Framework Vehicle-to-X HMI Widgets • Communication Middleware DUMM • V2I • Distributed Applications • Download Manager • V2V • Messaging Manager • Franca IDL • V2V2I File Server • Upload Manager • Global Discovery/Connectivity

Inter Node Communication • Node 2 Node communication • Autosar Vehicle ECU • FrancaIDL wpa_supplicant libcurl • Common API

Bluetooth HMI • Bluetooth Sack DLNA/UPnP • Bluetooth Hands Free • Popup Manager Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2012 18 System Infrastructure EG Scope

In SI Scope = Active project = Not currently active Lifecycle Software Management • Start-up / shut-down, system & appl. • Download/Installation/deinstallation • Running states and modes • Firmware Updates / External Device • Resource Control and Health Monitoring • OTA update Out of Persistence Automotive GENIVI Scope • Reqs: Flash lifetime, robustness Basic OS Diagnostic Log and Trace • Persistence Client Library: Key-value storage API • Evaluate filesystems/backends Features & Vehicle Diagnostics • Persistence Administration Service Versions • Vehicle service • Support & Guidelines for SQLite and similar • Diagnostic trouble codes, • etc. Vehicle Inter Process Communication & IDL User Management Bootloader Software Stack (i.e. AUTOSAR, ...) • D-Bus Optimization • Profile Manager Miscellaneous Libraries • libc//quota, ... • IPC Common API • User Identification • Franca IDL and Tools • Data Import/Export

Networking EG and AUTOSAR Vehicle HMI and Application Frameworks EG • For Inter Node Communication Processor • Lots of topics around Lifeycle, • Ethernet Command-and-Control SW loading, User mgmt, and combined with IPC + IDL Persistence.

Just about every GENIVI topic and component... • For Lifecycle and other interaction Other EG

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 19 Team Responsibilities

Vehicle Requirements All EGs All EGs Acceptance Test and Use Cases and SAT and BIT Software Platform System Test Requirements

Component Architecture Integration Test Design

Component Component Specification (Black Box) Test

Component Unit (White Box) Design Test

Individual Implementation EG

Copyright © GENIVI Alliance 2009 19-Nov-13 GENIVI is a trademark of the GENIVI Alliance 20 GENIVI Development Activities and Artifacts

• Yocto meta-ivi layer • www.yoctoproject.org Baselines • Baserock morphology • www.baserock.org

• Platform Compliance Specification Compliance Program • Component requirements and specifications • UML model

• 17 public projects addressing IVI functionality Software Projects and tools • projects.genivi.org

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 21 GENIVI Artifacts in Details

• Baselines aim to implement GENIVI Compliance Specification and serve a dual purpose: – To prove that that the specification is feasible – To provide EGs with development and testing environment • Compliance Specification is generated from the UML model – Works in progress is typically stored in the Wiki • Software projects include both platform components and proofs of concept

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 22 Development Phases in EGs

Specific Component

Source Abstract Code Component • Produces Placeholder Component component Component implementation • Produces Vehicle Software Need Component Level Platform Specification (including the • Based on • Produces • Produces API and feature or vehicle-level component behavior) technology to actors, use architecture be supported cases and and software • Produces a requirements platform level scope requirements description GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 23 Compliance Release Cycles

Expert Groups start working Proposals A, B and C are on the Proposals A to E completed, reviewed and targeting the Release X Release approved in time and are Maturity Check Compliance Freeze Compliance Ready X included into Release X

Proposal A Proposal B Proposal C Proposal D Proposal E

Release X+1 Proposals D and E miss the Compliance Freeze and Maturity Check milestones respectively and move into the Release X+1 along with Proposal F new Proposals F and G Proposal G

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2011 24 Baseline Release Cycle

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 25 Looking into the future

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 26 Future Directions

• Improve the baseline and IVI component quality by introducing automated testing for both functionality and performance • Tighten the feedback loop between production programs using GENIVI and the work in the Expert Groups • Grow the developer community and accelerate platform adoption by reference applications and support for specific boards

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 27 Introducing Compliance Testing

Vehicle Requirements Acceptance Test and Use Cases

Software Platform System Test Requirements

Component Reference Architecture Integration Test application Design

Component Component Specification (Black Box) Test

Test Component Unit (White Box) harness Design Test

Out of Implementation scope for compliance testing Copyright © GENIVI Alliance 2009 19-Nov-13 GENIVI is a trademark of the GENIVI Alliance 28 Benefits of Compliance Testing

• Executable compliance test suite would help: – Reducing cost of product quality assurance by software platform implementers (e.g. OSVs, Tier-1s) – Reducing cost of acceptance testing by software platform customers (e.g. Tier-1s, OEMs) – Increasing quality of the specifications, code and baselines produced by GENIVI • Some tests are best expressed as sample applications • Improved quality of all GENIVI-based software

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 29 Compliance Change Management

Change management of the Platform Compliance Specification:

BoD  SAT BoD 21-day review, formal approval [Bylaws]

SAT SAT  EG Common process Compliance Release Process [Wiki] definition is under discussion

EG  Project EG EG Ad hoc, differs across EGs

Project Project Project Project

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 30 감사합니다! Thank You! 질문? Questions?

GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries 19-Nov-13 Copyright © GENIVI Alliance 2013 31