DaVinci Team - Standardisierte Automatisierungs-Pipelines und Kollaboration

DaVinci Team ermöglicht Kollaboration sowie Continuous-Integration (CI) mittels standardisierter Integrations-Pipelines. Im Zusammenspiel mit dem Vector Werkzeug DaVinci Configurator Classic und DaVinci Developer Classic kann Applikationssoftware mit einem hohen Automatisierungsgrad in die AUTOSAR Basissoftware MICROSAR Classic integriert werden. Erweiterungen für die Kollaboration ermöglichen zudem eine effiziente Zusammenarbeit von global verteilten Entwicklungsteams sowie verkürzte Release-Zyklen.
Vorteile
- Automatisiert manuelle Arbeitsschritte bei der Integration von Applikationssoftware in die Basissoftware
- Konfigurierbare und erweiterbare CI-Pipelines
- Flexibel einbindbar in CI-Environments
- Ermöglicht Optimierungen zur Kollaboration im Entwicklungsprozess
- Verringert Merge-Konflikte
- Erweiterung für den DaVinci Configurator Classic
Whitepaper
Gratis Download

Im Whitepaper (Englisch) erfahren Sie, warum traditionelle Workflows und Steuergeräte-Entwicklungsprozesse vor neuen Herausforderungen stehen und warum DevOps-orientierte Ansätze mit Continuous Integration zum neuen Standard werden. Die Informationsschrift erklärt, wie der neue Ansatz trotz der monolithischen Struktur von AUTOSAR Classic einfach zu realisieren ist.
Ins Gespräch kommen

Sie interessieren sich für DaVinci Team oder möchten eine Demo-Session? Dann lassen Sie uns sprechen!
Timo Richter
Experte für Embedded-Software
Die AUTOSAR-Entwicklung vereinfachen
Anwendungsgebiete
DevOps und Continuous-Integration haben einen immer stärkeren Einfluss auf die Steuergeräteentwicklung. So steigt die Zahl der Projektmitglieder in Entwicklungsprojekten aus verschiedenen Abteilungen oder Unternehmen stetig an. Die Arbeitsgruppen sind außerdem über mehrere Standorte weltweit verteilt. Dies stellt die Softwareentwicklung vor neue Herausforderungen. DaVinci Team unterstützt Entwickelnde von AUTOSAR-Classic-Steuergeräten bei einer effizienten Kollaboration sowie mit hilfreichen Funktionen für Continuous Integration.
DaVinci Team lässt sich auf Servern einsetzen und ermöglicht Entwickelnden dadurch ein weitgehend unabhängiges Arbeiten an Software-Artefakten. Standardisierte Automatisierungspipelines unterstützen bei der kontinuierlichen Integration der Applikationssoftware in die Basissoftware.
Highlights der Version 1.0
- Anpassbare Automatisierungs-Pipelines für verschiedene Integration-Targets:
> vVIRTUALtarget - Basissoftware-Emulation
> vVIRTUALtarget - MCAL-Emulation
> Zielhardware
- Lokal oder auf dem Server ausführbar
- Authoring-Support für Editoren mit JSON-Schema-Vervollständigung
- Integrationsanweisungen für Port-, Data-, Task- Mapping und NvM-Integration
- HTML-Report
Effiziente Integration
- Automatisierte Erstellung und Konfiguration von NvSWCs
- Instanziierung von Softwarekomponenten (SWC) und Compositions
- Init-Value-Handling für eine optimierte Integration
- Back-in-Time-Funktion zur Fehleranalyse
- Optimierte Leistung durch Speicherung von Kompiliierungsartefakten zwischen den Integrationsläufen
- Export von Integrationsanweisungen aus DaVinci Configurator Classic
Funktionen
Der optimierte Workflow von DaVinci Team ermöglicht ein unabhängigeres und kollaboratives Arbeiten der Entwickelnden an den Software-Artefakten. Bei AUTOSAR Classic lässt sich damit die Anwendungssoftware von der Basissoftware entkoppeln.
Die Basissoftware wird als "Root Konfiguration" vorbereitet und die Applikationssoftware dann mit Integrationsanweisungen angereichert.
Die Integration von Applikationssoftware in die Basissoftware sowie das Erstellen der RTE wird durch die Automatisierungs-Pipeline von DaVinci Team ausgeführt. Dies minimiert Merge-Konflikte in der Kollaboration.
Bei einer herkömmlichen Vorgehensweise, sind viele manuelle Arbeitsschritte erforderlich, um Applikationssoftware in die Basissoftware zu integrieren. Die manuellen Integrationsschritte können dabei viel Zeit kosten. In einem Entwicklungsprozess mit zentralisiertem Integrations-Ansatz, bei dem nicht jedes Projektmitglied die Integration eigenständig durchführen kann, können zudem Blockier-Zeiten entstehen.
Die Lösung: DaVinci Team:
- Integration kann von jedem Entwickler durch die vorkonfigurierte Integrationspipeline mit einem hohen Automatisierungsgrad durchgeführt werden. Ohne die Tools zu öffnen.
- Deterministische Ausführung der Integrationsschritte bei Änderungen an Applikationssoftware oder der Basissoftware-Root-Konfiguration. Entwickelnde können effizient eine integrierte Steuergerät-Software einschließlich ihrer Modifikationen bereitstellen und Tests ausführen, ganz ohne Wartezeiten.
Die Pipeline wird durch ein Build-System (gradle) realisiert und ist verfügbar für den Ziel-Controller oder die Virtualisierungssoftware von Vector vVIRTUALtarget (Basissoftware- Emulation) und vVIRTUALtarget (MCAL-Emulation).
Die Integrationsanweisungen definieren, wie DaVinci Team Mappings oder automatisierte Schritte ausführt. Diese Anweisungen können z.B. den App-Packages beigelegt werden. Alternativ oder ergänzend können Integrationsanweisungen auch zentralisiert als globale Einstellungen für das Projekt definiert werden. Für eine effiziente Zusammenarbeit zwischen den verschiedenen Rollen im Projekt, gibt es verschiedene Arten von Mapping-Anweisungen (Explizites Mapping, Mapping Regeln oder Auto-Mapping).
Ausblick
Erweiterte Funktionen für die Kollaboration
DaVinci Team wird schrittweise um weitere Funktionen ergänzt, um die Kollaboration noch effizienter zu gestalten. In der Entwicklung befinden sich unter anderem Integrationen in IDEs, wie beispielsweise Visual Studio Code sowie eine Text-basierte Diff-/ Merge-Funktion für AUTOSAR-Artefakte (Inline-Diff, 2-Way, 3-Way). Erweiterungen für die Kollaboration und Automatisierungen für MICROSAR Adaptive.
Continuous Integration
DaVinci Team erweitert das Werkzeug DaVinci Configurator Classic um Continuous Integration (CI) als eine standardisierte Integrations-Pipeline für Softwarekomponenten der Applikation. Diese ermöglicht Softwareentwicklern eine schnelle und standardisierte Integration geänderter oder neuer Funktionalität. Dadurch eröffnet sich die Möglichkeit eines frühen Funktionstests auf dem Ziel-Steuergerät. Im Entwicklungsprozess reduziert DaVinci Team die durch lange Integrationsintervalle verursachten Blockierzeiten. Mehr dazu im Video.