|
Successful Case |
Continental Automotive Electronics |
Bosch Automotive Electronics |
Schaeffler electric drive |
Joyson Automotive Electronics |
Huawei Technical Center |
BMW Automotive Research and Development Center |
Geely Auto Research Institute |
Byd Automotive Research Institute |
|
|
|
|
|
|
|
|
Courses >Embedded Analysis and Design |
|
|
|
Embedded Software Architecture Design and Examples |
Views
|
|
|
|
Mr. Zhang
|
He has worked as an agile coach at Huawei and Kelu for many years |
|
|
|
Time Location: Shanghai 、Shenzhen and Beijing open classes Based on registration |
Course Cost:1000 $/Person
|
|
|
|
Internal Training: You can customize internal training according to the needs of the enterprise. |
|
|
Authentication Method:
Understand the competency model before training.
Ability evaluation after training: Online Examination
Ability Analysis, give learning suggestions
The qualified person shall be issued a certificate as proof of vocational skill qualification |
|
|
|
The idea of code layering, the design of portable code, the skills of code decoupling, the abstraction of the hardware layer, the simulation of hardware on the PC, the abstraction of the business layer, the simulation of the business layer on the PC, the automated testing of the business layer on the PC, the writing of architecture design documents, the writing of interface description documents, etc.
This course is not only an introduction to embedded architecture design skills, but also introduces testability and maintainability design into the design. The end result is that the developed embedded software can be simulated and run on a PC and automated testing.
|
|
Training Goal |
- Embedded software developed by programmers is highly portable and maintainable.
- Automate the testing of embedded software and reduce inefficient regression testing.
- Let designers write design documents that guide developers' work, rather than just for archiving.
- Let's start with the work around us. Point out that most of the software is "Italy pasta" type code.
- Derive solutions - software architecture design, continuous code optimization, and automated testing.
|
Training Target: Software Architects, Software Designers, Programmers who develop embedded products. |
Student Foundation:Familiar with C language; Knowledge of at least one embedded microprocessor. |
Teaching Method:
Customized Course + Case Explanation + Group Discussion, 60% Case Explanation, 40% practice exercise |
Training Content: 2 Days
|
Modular programming Ideas |
1、 The Core of Modular Programming
Explains what forms of code are modular code.
2. The idea of code layering
(1) the idea of code layering
(2) the hierarchical architecture recommended by embedded software
3. some basic methods of code decoupling
(1) encapsulation module folder
(2) the division of program files
(3) function encapsulation
(4) Static function limits the scope of function
(5) Static global variables limit the scope of variable use
(6) Reduce the use of global variables |
Embedded layered Design |
1、 Embedded Architecture Design
(1) Development View of a Product
(2) Avoiding Circular Dependencies
(3) Logical View
(4) 4+1 View Trade-off in Embedded Design Document
(5) Measurement and Quantity of Design Document
2. The Pursuit of Embedded Hierarchical Design - Portability
(1) The basic idea of hardware packaging
(2) The separation of hardware modules
3. Hardware interface design
(1) Extracting hardware abstraction
(2) Writing interface documents |
Underlying hardware API encapsulation template |
1、 Template structure
(1) Definition of device hardware structure type
(2) Device structure configuration
(3) Macro definition of the number of devices
(4) Global variables required for device implementation
(5) Device function implementation code
2. Use the old template to implement new hardware packaging
3. Encapsulation of interrupt handling: callback function
4, invisible encapsulation of the upper layer by the hardware multiplexing device
5, invisible encapsulation of the upper layer by the hardware coupling device
6, classification of templates |
The PC emulates the underlying hardware |
1,The difference between the PC version and the real hardware environment
2, the PC version test interface
3, the PC version of the simulated interrupt interface
4, and the PC version of the thread mutex |
Hierarchical architecture at the business layer |
1、 Readability Encapsulation
2, Extracting Business Abstraction
(1) Principles of Abstraction
(2) Case: Separation of Command Sending and Receiving and Command Business Processing
3, Restrictive Encapsulation of Synchronous Communication
4, Restrictive Encapsulation of Asynchronous Communication
5, Encapsulation of Asynchronous Equipment into Synchronous Device
6, Hierarchical Design Summary |
The PC simulates the operation of the business layer and automated testing |
1、 Test Encapsulation
(1) Readability Encapsulation of Test Code
(2) Usability Encapsulation of Test Code
(3) Device Test Piling
(4) Interface Use Test Interface to Locate Problems
2, Test Process
3, Test Case Document Writing
4, Test Case Code Writing
(1) Use of test sleeves
(2) Use of piling tools
(3) The difference between testing and simulating system delay |
Test Tools |
1. Automated testing tool gTest
(1) gTest assertion
(2) gTest test result file
2. Piling tool mockcpp
3. Continuous integration tool CruiseControl
(1) What is continuous integration
(2) How CruiseControl works
(3) Configuration scripts for CruiseControl |
|
|
|
|
|
|
consultation goals
|
Assist clients in establishing the current system design model
Using tools to reverse engineer models
Refactoring the current design issues. |
Scope of Consultation |
Programming Methods and Modeling
Data Design Methods and Modeling
Algorithm Design Methods and Modeling
System Refactoring |
Consultation Method |
Reverse engineer the current system model
Diagnose current design issues
Optimize the design,
Refactoring the design model |
Successful case |
An embedded system for an automotive electronics company, a monitoring system for aerospace equipment, and a claims system for an insurance company |
For more information:010-62670969, umlooo@hotmail.com
|
|
|
|
|