项目管理
嵌入式软件架构设计(温昱)
参加对象:软件架构工程师、系统工程师、SE工程师等公开课编号
GKK10664
主讲老师
温昱
参加费用
4980元
课时安排
2天
近期开课时间
2020-06-12
举办地址
加载中...
- 开课地址: 开课时间:
电话:010-68630945/18610481046 联系人:尹老师
公开课大纲
课程大纲
【模块一】 人人掌握——嵌入式需求
理大局——嵌入式软件需求分析的过程【步骤明确,经验干货】
步 骤 一:系统边界分析——上下文图and 硬件结构图
步 骤 二:功能需求分析——功能树or 用例图
步 骤 三:用户接口分析——菜单树and 界面流
步 骤 四:软硬接口分析——和外部软硬件的接口规约
步 骤 五:功能步骤分析——输入-处理-输出or 用例规约
步 骤 六:质量需求分析——本课关注步骤级实时、步骤级可靠
一组案例……
划重点——关键点的讲与练
拷资料——文档模板+ 案例资料【外企模板,独家分享】
【模块二】 始于需求——自顶向下设计运行控制结构
理大局——运行控制结构的设计过程【步骤明确,经验干货】
步骤一:分析需求 (功能范围+硬件结构)
步骤二:识别核心模块
步骤三:确定控制流,设计控制模式
步骤四:对关键功能,跑通控制过程
案例分析……上面四步,都有实际案例,并讲解自顶向下思维运用
划重点——三种嵌入式“运行控制结构”模式
结构一:多任务结构(OS-based Multi-task)
结构二:前后台结构(死循环+中断)
结构三:时间片轮询(Time-slice Polling)
一组案例……
划重点——前后台与时间片架构的几个细节
划重点——统一回答几个“大的疑问”
【模块三】 深入详尽——嵌入式分层实战技巧
理大局——嵌入式代码架构,就这么设计【步骤明确,经验干货】
步骤一:借助模式,按“五横一纵”组织模块层次
步骤二:自底向上,先把硬件接口代码模块设计好
步骤三:接口抽象,为多种硬件提供统一接口
步骤四:服务抽象,提炼可复用的显示/通信/存储服务
步骤五:设计功能层模块,确定它对下层模块的调用
步骤六:设计初始化模块,确定它对下层模块的创建和设置
案例分析……上面六步都有实际案例。重点步骤,有代码案例。
划重点——关键点的讲与练【有代码,有真货】
Module对Task/Thread的封装
===Module设计的最低要求:没有隐藏就没有简化
===模块封装task——Message和Task的架构级应用
Module的可扩展&可配置&可插拔
===模块的可配置式设计——Config Array的架构级应用
Interface对多个差异模块的统一抽象
===函数指针结构体的架构级应用
上层对下层的“封装”与“组装”
===模块封装模块——Layer思想的代码实现
===main()如何优雅地“启动”各模块
拷资料——上述技能,分别对应的代码案例
思想的飞跃——架构之道【学员反馈:“大彻大悟的感觉真爽!”】
【模块四】 隔离变化——设计好内部接口、对外接口
我们常设计这两种接口
远程及板间接口或协议——如何设计
步骤一:接口交互过程设计
步骤二:接口实现技术选择
步骤三:接口参数格式定义
案例:分析著名接口规范 ……
模块级接口——技术风格
远程及板间接口或协议——API二次封装
模块级接口——二次封装
拷资料——对应的资料分享
【模块五】 职业生涯——从单板架构师,到方案架构师
谈行业趋势,聊职业发展
方案架构师设计自控方案时,工作内容有哪些?
自控方案中的上位机软件设计
拷资料——对应的资料分享
《GB设计书》文档模板解读、实际范例分析
【模块一】 人人掌握——嵌入式需求
理大局——嵌入式软件需求分析的过程【步骤明确,经验干货】
步 骤 一:系统边界分析——上下文图and 硬件结构图
步 骤 二:功能需求分析——功能树or 用例图
步 骤 三:用户接口分析——菜单树and 界面流
步 骤 四:软硬接口分析——和外部软硬件的接口规约
步 骤 五:功能步骤分析——输入-处理-输出or 用例规约
步 骤 六:质量需求分析——本课关注步骤级实时、步骤级可靠
一组案例……
划重点——关键点的讲与练
- 输入-处理-输出定义功能需求……顽疾是需求项又多又散?分析、解决。
- 与外部软、硬件的接口需求 ……顶层数据流图、上下文图、硬件结构图
- 高性能和可靠性等质量需求 ……质量需求如何定义?以某控制器为案例
- 一组案例……
- 特复杂的功能逻辑如何搞定?= 主控流程+可能事件与分支流程+ 步骤规则
拷资料——文档模板+ 案例资料【外企模板,独家分享】
- 《需求规格》模板
- 《需求规格》实例
- 一组案例……例如,质量90%可以用“功能的步骤级规则”来定义
【模块二】 始于需求——自顶向下设计运行控制结构
理大局——运行控制结构的设计过程【步骤明确,经验干货】
步骤一:分析需求 (功能范围+硬件结构)
步骤二:识别核心模块
步骤三:确定控制流,设计控制模式
步骤四:对关键功能,跑通控制过程
案例分析……上面四步,都有实际案例,并讲解自顶向下思维运用
划重点——三种嵌入式“运行控制结构”模式
结构一:多任务结构(OS-based Multi-task)
结构二:前后台结构(死循环+中断)
结构三:时间片轮询(Time-slice Polling)
一组案例……
划重点——前后台与时间片架构的几个细节
- 【大局】采集-分析-控制模式
- 【局部1】转delay为中断
- 【局部2】占空比与中断
- 【局部3】函数的可重入设计
- 【局部4】核心代码性能
- 高事件率架构案例:多任务vs. 时间片轮转
划重点——统一回答几个“大的疑问”
- 问:我们公司系统比较复杂,性能要求也比较多,总感觉理不清?
- 问:我们公司好像没人会画多线程协作图。请问,怎么画?
- 问:我们公司嵌入式分层架构太泛,没把代码块、线程、中断等说清楚!
【模块三】 深入详尽——嵌入式分层实战技巧
理大局——嵌入式代码架构,就这么设计【步骤明确,经验干货】
步骤一:借助模式,按“五横一纵”组织模块层次
步骤二:自底向上,先把硬件接口代码模块设计好
步骤三:接口抽象,为多种硬件提供统一接口
步骤四:服务抽象,提炼可复用的显示/通信/存储服务
步骤五:设计功能层模块,确定它对下层模块的调用
步骤六:设计初始化模块,确定它对下层模块的创建和设置
案例分析……上面六步都有实际案例。重点步骤,有代码案例。
划重点——关键点的讲与练【有代码,有真货】
Module对Task/Thread的封装
===Module设计的最低要求:没有隐藏就没有简化
===模块封装task——Message和Task的架构级应用
Module的可扩展&可配置&可插拔
===模块的可配置式设计——Config Array的架构级应用
Interface对多个差异模块的统一抽象
===函数指针结构体的架构级应用
上层对下层的“封装”与“组装”
===模块封装模块——Layer思想的代码实现
===main()如何优雅地“启动”各模块
拷资料——上述技能,分别对应的代码案例
- 代码案例…
- 代码案例…
思想的飞跃——架构之道【学员反馈:“大彻大悟的感觉真爽!”】
- 自顶向下——分解思维。架构早期。立足业务,根据需求分解出粗粒度架构
- 自底向上——封装思维。架构后期。立足实现,隐藏细节,统一接口,提炼服务
- 抽象vs.具体——抽象是结果,抽象思维的过程从研究多个“具体”开始
- 分解vs.封装——粗粒度架构来自自顶向下分解,细粒度架构来自自底向上封装
- 接口vs.实现——接口定义“做什么”,实现定义“怎么做”
- 统一接口——下层有多种“怎么做”时,不要直接调用,要通过统一接口调用
- 通用服务——提炼可复用的显示/通信/存储服务,“功能代码”就简洁易修改了
- ……悟道练习,一起画脑图
【模块四】 隔离变化——设计好内部接口、对外接口
我们常设计这两种接口
- 远程及板间接口或协议
- 模块级接口或消息
远程及板间接口或协议——如何设计
步骤一:接口交互过程设计
步骤二:接口实现技术选择
步骤三:接口参数格式定义
案例:分析著名接口规范 ……
模块级接口——技术风格
- Call(调用)
- Message(消息)
- Callback(回调)
远程及板间接口或协议——API二次封装
- 底层协议:负责通用性、跨平台
- 提供API :负责屏蔽细节、方便开发
- 案例分析……
模块级接口——二次封装
- 核心接口 vs. 便捷接口(对核心接口的包装)
- 可配置性
拷资料——对应的资料分享
- 接口规范…
- 接口案例…
- API 案例…
【模块五】 职业生涯——从单板架构师,到方案架构师
谈行业趋势,聊职业发展
- IT行业的人才模型
- 电子企业的常见发展路径
- 我们个人的发展方略
方案架构师设计自控方案时,工作内容有哪些?
- 逻辑设计= 分层设计+ 功能子系统划分
- 物理设计= 硬件拓扑+ 软组件分布设计
- 技术选型= 开发技术+ 运行环境选型
- 接口设计= 接口技术选择+ 接口协议定义
自控方案中的上位机软件设计
- 五横一纵——上位机软件的模块分层模式
- 模块划分——覆盖接口需求
- 模块划分——覆盖功能需求
拷资料——对应的资料分享
《GB设计书》文档模板解读、实际范例分析
上一篇:高效的研发项目管理实战沙盘演练(金小云)
下一篇:商业地产新蓝海——国内外社区商业的成功案例解析与落地五核心
培训现场
讲师培训公告
讲师管理文库
- 企业到公司化阶段后,老板要从关注事向关注人转变
- 某电信企业员工职业化项目纪实
- 某商业银行EVA考核模式设计项目纪实
- 管理企业不难---管理思想摘录
- 成功者离不开第4个医生
- OD落伍了,OD2.0来了
- 中层的责任与担当
- 如何做好员工管理
- 赢在协同:如何高效联动与无缝对接
- 问题解决力 ——问题的分析与解决