SmartDeviceLink - SDL Core Documentation the SDL embedded component (SDL Core), as well as...
Embed Size (px)
Transcript of SmartDeviceLink - SDL Core Documentation the SDL embedded component (SDL Core), as well as...
SDL Core Documentation Document current as of 11/21/2018 07:57 AM.
Core Documentation In the Core documentation you will find information about the architecture of the SDL embedded component (SDL Core), as well as information on how to customize this application to work well with your vehicle.
First of all, the SDL Core SW Architecture document provides an overview the SDL Core application as well as the SDL platform.
For Integration purpose, please follow:
• Deployment schema • Operational aspects
◦ Configuration ◦ Logging ◦ Diagnostics
• Preloaded Policy Table configuration
For Testing purpose, please follow:
• Logging and diagnostics • Automated Test Framework (ATF) SW Architecture
https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/ https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/table-of-contents/ https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/deployment-view/#49-deployment-view/ https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/operational-view/#410-operational-view/ https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/operational-view/#sdl-configuration https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/operational-view/#logging-configuration https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/operational-view/#diagnostics https://d83tozu1c8tt6.cloudfront.net/configuration/preloaded-policy-table/ https://d83tozu1c8tt6.cloudfront.net/software-architecture-document/operational-view/#logging-configuration https://d83tozu1c8tt6.cloudfront.net/atf/table-of-contents/
Table of contents • 1. Introduction
◦ 1.1. Purpose and Scope of the SAD ◦ 1.2. Definitions and Abbreviations ◦ 1.3. Document Roadmap
• 2. Case Background
◦ 2.1. System Context, Mission and Scope ◦ 2.2. Product Stakeholders ◦ 2.3. Business Goals ◦ 2.4. Significant Driving Requirements
• 3. Solution Overview • 4. Views
◦ 4.1. Use Case View ◦ 4.2. Components View ◦ 4.3. Component Interaction View
▪ 4.3.1. Transport layer ▪ 4.3.2. Protocol layer ▪ 4.3.3. Business layer
◦ 4.4. User Interface ◦ 4.5. Data View ◦ 4.6. Process State View ◦ 4.7. Process View ◦ 4.8. Development View
▪ 4.8.1. Implementation Technologies ▪ 4.8.2. Modules and Code Base Organization ▪ 4.8.3. Development Environment and Standards
◦ 4.9. Deployment View ◦ 4.10. Operational View
https://d83tozu1c8tt6.cloudfront.net/introduction/#1-introduction https://d83tozu1c8tt6.cloudfront.net/introduction/#11-purpose-and-scope-of-the-sad https://d83tozu1c8tt6.cloudfront.net/introduction/#12-definitions-and-abbreviations https://d83tozu1c8tt6.cloudfront.net/introduction/#13-document-roadmap https://d83tozu1c8tt6.cloudfront.net/case-background/#2--case-background https://d83tozu1c8tt6.cloudfront.net/case-background/#21-system-context-mission-and-scope https://d83tozu1c8tt6.cloudfront.net/case-background/#22-product-stakeholders https://d83tozu1c8tt6.cloudfront.net/case-background/#23-business-goals https://d83tozu1c8tt6.cloudfront.net/case-background/#24-significant-driving-requirements https://d83tozu1c8tt6.cloudfront.net/solution-overview/#3--solution-overview https://d83tozu1c8tt6.cloudfront.net/components-view/#4--views https://d83tozu1c8tt6.cloudfront.net/use-case-view/#41-use-case-view https://d83tozu1c8tt6.cloudfront.net/components-view/#42-components-view https://d83tozu1c8tt6.cloudfront.net/component-interaction-view/#43-component-interaction-view https://d83tozu1c8tt6.cloudfront.net/component-interaction-view/#431-transport-layer https://d83tozu1c8tt6.cloudfront.net/component-interaction-view/#432-protocol-layer https://d83tozu1c8tt6.cloudfront.net/component-interaction-view/#433-business-layer https://d83tozu1c8tt6.cloudfront.net/user-interface/#44-user-interface https://d83tozu1c8tt6.cloudfront.net/data-view/#45-data-view https://d83tozu1c8tt6.cloudfront.net/process-state-view/#46-process-state-view https://d83tozu1c8tt6.cloudfront.net/process-view/#47-process-view https://d83tozu1c8tt6.cloudfront.net/development-view/#48-development-view https://d83tozu1c8tt6.cloudfront.net/development-view/#481-implementation-technologies https://d83tozu1c8tt6.cloudfront.net/development-view/#482-modules-and-code-base-organization https://d83tozu1c8tt6.cloudfront.net/development-view/#483-development-environment-and-standards https://d83tozu1c8tt6.cloudfront.net/deployment-view/#49-deployment-view https://d83tozu1c8tt6.cloudfront.net/operational-view/#410-operational-view
• 5. View-to-View Relations
◦ 5.1. Component-to-Layer ◦ 5.2. Data-to-Layer View
• 6. Solution Background
◦ 6.1. Architecture Design Approach ◦ 6.2. Requirements Coverage ◦ 6.3. Prototyping Results ◦ 6.4. Open Questions and Known Issues ◦ 6.5. Results Analysis
• 7. References • 8. List of Figures • 9. Appendices • 10. History
1. Introduction 1.1. Purpose and Scope of the SAD
This document defines the high-level software architecture for the SmartDeviceLink (SDL) system. It describes the structure and the main components of the system, the project basis and dependencies. The goal of the document is to describe, in sufficient detail, the software components, their responsibilities, behavior, and interfaces. This document provides support for Luxoft, Ford, open-source developers and others to learn system design, limitations, stakeholders, and ways of extension and further development.
1.2. Definitions and Abbreviations
Abbreviations used in this document please find in the table below.
https://d83tozu1c8tt6.cloudfront.net/view-to-view-relations/#5--view-to-view-relations https://d83tozu1c8tt6.cloudfront.net/view-to-view-relations/#51-component-to-layer https://d83tozu1c8tt6.cloudfront.net/view-to-view-relations/#52-data-to-layer-view https://d83tozu1c8tt6.cloudfront.net/solution-background/#6--solution-background https://d83tozu1c8tt6.cloudfront.net/solution-background/#61-architecture-design-approach https://d83tozu1c8tt6.cloudfront.net/solution-background/#62-requirements-coverage https://d83tozu1c8tt6.cloudfront.net/solution-background/#63-prototyping-results https://d83tozu1c8tt6.cloudfront.net/solution-background/#64-open-questions-and-known-issues https://d83tozu1c8tt6.cloudfront.net/solution-background/#65-results-analysis https://d83tozu1c8tt6.cloudfront.net/references/#7--references https://d83tozu1c8tt6.cloudfront.net/references/#8--list-of-figures https://d83tozu1c8tt6.cloudfront.net/references/#9--appendices https://d83tozu1c8tt6.cloudfront.net/history/#10-history
A B B R E V I AT I O N E X PA N S I O N
Definitions used in this document are in the table below.
GUI Graphical User Interface
HMI Human Machine Interface
IVI In-Vehicle Infotainment
RPC Remote Procedure Call
SDE Software Development Environment
SEE Software Engineering Environment
TTS Text To Speech
VR Voice Recognition
D E F I N I T I O N D E S C R I P T I O N
1.3. Document Roadmap
The SW architecture of system is considered from different viewpoints:
Concern A functional or non-functional requirement.
A particular diagram or description constructed following the method defined in a viewpoint. These provide the specific description of the system, which can include identifiable subsystems and elements.
Stakeholder An individual, group or organization that has at least one concern relating to the system.
V I E W P O I N T V I E W P O I N T D E S C R I P T I O N
Component Functional type of view which describes the system's runtime functional elements and their responsibilities.
Functional type of view which describes interactions of the system's functional elements. Component Interaction view uses component-level sequence or collaboration diagrams to show how specific components will interact. The purpose is to validate structural design via exploration of the software dynamics.
Use Case View captures system functionality as it is seen by users. System behavior, that is what functionality it must provide, is documented in a use case model.
User Interface Functional type of view which describes interfaces of the system's functional elements.
Describes the way that the system stores, manipulates, manages, and distributes information. The ultimate purpose of virtually any computer system is to manipulate information in some form, and this viewpoint develops a complete but high-level view of static data structure and information flow. The objective of this analysis is to answer the questions around data content, structure, ownership, quality, consistency update latency, references, volumes, aging, retention, and migration.
V I E W P O I N T V I E W P O I N T D E S C R I P T I O N
Concurrency type of view. Process State View is used to model standard process dynamics that are independent of the loaded components. These dynamics may, for example, be part of a component management infrastructure that loads and controls components in the process. For process dynamics, it is often useful to think in terms of a standard set of states such as initializing, operating, and shutting down