求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
 
 
 
全部课程 | 技术学院 | 管理学院 | 嵌入式学院 | 在线学院  
成功案例   品质保证  电话 English
追随技术信仰

随时听讲座
每天看新闻
 
   
成功案例
知名某轨 “ReWorks中
塞默菲舍 《嵌入式软件架构设
某水声通 嵌入式Linux应
广汽研究 ARM处理器体系架
联合汽微 嵌入式软件架构设计
某全球知 Linux内核和系
广汽研究 嵌入式软件架构设计

相关课程  
UML +RoseRealtime+嵌入式
C++嵌入式系统开发
嵌入式白盒测试
手机软件测试
嵌入式软件测试
嵌入式操作系统VxWorks
 

嵌入式软件架构设计与实例         
 
主讲嘉宾:张老师 - 曾在华为和科陆公司担任多年敏捷教练
地点时间:北京、上海、 深圳 根据报名开班
课程费用:5000元/人 (学生3折),详见 公开课学习手册
企业内训:可以根据企业需求,定制内训,详见 内训学习手册

《架构设计师》  认证方式  
1.知识:权威知识考试;
2.技能:真实案例实践考评;
3.经验:工作经验审核;
4.素养:未来发展潜力的评估。
   代码分层的思想、可移植性代码的设计、代码解耦的技巧、硬件层抽象、PC上模拟硬件、业务层抽象、业务层在PC上的模拟运行、业务层在PC上的自动化测试、架构设计文档撰写、接口说明文档撰写等内容。
   本课程不单单是嵌入式架构设计的技能讲解,而且在设计中引入可测试性和可维护性设计。最终的结果是,让开发出来的嵌入式软件可以PC电脑上模拟运行,并进行自动化的测试。
 
培训目标:
  • 让程序员开发出来的嵌入式软件,具有高移植性和高维护性。
  • 让嵌入式软件的测试自动化,减少低效率的重复回归测试。
  • 让设计人员撰写出能指导开发人员工作的设计文档,而不是写出只是为了归档的文档。
  • 从我们身边的工作说起。指出大部分的软件都是"意大利面条"式的代码。
  • 引申出解决之道――软件架构设计、代码持续优化和自动化测试。
 
培训对象:开发嵌入式产品的软件架构师、软件设计师、程序员。
学员基础:熟悉C语言; 至少了解一种嵌入式微处理器。
授课方式: 小班授课 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练
培训内容: 2天
模块化程序设计思想 1、 模块化程序设计的核心
讲解什么形式的代码才算是模块化的代码。
2、 代码分层的思想
(1)代码分层思路
(2)嵌入式软件推荐的分层架构
3、 代码解耦的一些基础方法
(1)封装模块文件夹
(2)程序文件的分割
(3)函数封装
(4)static函数限制函数使用范围
(5)static全局变量限制变量使用范围
(6)减少全局变量的使用
嵌入式分层设计 1、 嵌入式架构设计
(1)某产品的开发视图
(2)避免循环依赖
(3)逻辑视图
(4)4+1视图在嵌入式设计文档中取舍
(5)设计文档的度与量
2、 嵌入式分层设计的追求――可移植
(1)硬件封装的基本思想
(3)硬件模块的分离
3、 硬件接口设计
(1)提取硬件抽象
(2)接口文档的撰写
底层硬件API封装模板 1、 模板结构
(1)设备硬件结构体类型定义
(2)设备结构体配置
(3)设备个数宏定义
(4)设备实现需要的全局变量
(5)设备功能实现代码
2、 利用老模板实现新硬件封装
3、 中断处理的封装:回调函数
4、 硬件复用设备对上层的不可见封装
5、 硬件耦合设备对上层的不可见封装
6、 模板的分类
PC模拟底层硬件 1、 PC版与真实硬件环境的不同
2、 PC版测试接口
3、 PC版模拟中断接口
4、 PC版线程互斥处理
 业务层分层架构 1、 可读性封装
2、 提取业务抽象
(1)抽象的原则
(2)案例:命令收发与命令业务处理的分离
3、 同步通讯的限制性封装
4、 异步通信的限制性封装
5、 异步设备封装成同步设备
6、 分层设计总结
PC模拟运行业务层与自动化测试 1、 测试封装
(1)测试代码的可读性封装
(2)测试代码的易用性封装
(3)设备测试打桩接口
(4)利用测试接口定位问题
2、 测试流程
3、 测试用例文档撰写
4、 测试用例代码撰写
(1)利用测试套
(2)使用打桩工具
(3)测试延时和模拟系统延时的区别
测试工具 1、自动化测试工具gTest
(1)gTest的断言
(2)gTest的测试结果文件
2、打桩工具mockcpp
3、持续集成工具CruiseControl
(1)什么是持续集成
(2)CruiseControl的工作原理
(3)CruiseControl的配置脚本
 
其他人还看了课程
数据分析与挖掘  
红帽认证  
企业战略与变革管理  
软件架构设计方法  
定制内训




最新活动计划
QT应用开发 11-21[线上]
C++高级编程 11-27[北京]
LLM大模型应用与项目构建 12-26[特惠]
UML和EA进行系统分析设计 12-20[线上]
数据建模方法与工具 12-3[北京]
SysML建模专家 1-16[北京]