曙海教育集团
全国报名免费热线:4008699035 微信:shuhaipeixun
或15921673576(微信同号) QQ:1299983702
首页 课程表 在线聊 报名 讲师 品牌 QQ聊 活动 就业
 

嵌入式软件架构设计课程

 
   班级规模及环境--热线:4008699035 手机:15921673576( 微信同号)
       每期人数限3到5人。
   上课时间和地点
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山学院/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
最近开课时间(周末班/连续班/晚班):2020年3月16日
   实验设备
     ☆资深工程师授课
        
        ☆注重质量 ☆边讲边练

        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
   质量保障

        1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
        2、培训结束后,授课老师留给学员联系方式,保障培训效果,免费提供课后技术支持。
        3、培训合格学员可享受免费推荐就业机会。

课程大纲
1. 立足设计,分析需求——嵌入式软件需求
2. 嵌入式架构的重中之重——控制结构设计
3. 重用关键——模块划分
4. 隔离变化——模块接口设计
5. 自控方案设计——单板软件架构师的下一步

培训特色
了解本课结构:5个模块
1. 立足设计,分析需求——嵌入式软件需求
2. 嵌入式架构的重中之重——控制结构设计
3. 重用关键——模块划分
4. 隔离变化——模块接口设计
5. 自控方案设计——单板软件架构师的下一步

课程大纲
主题 内容
立足设计,分析需求——嵌入式软件需求

课前谈——路线图 与 现身说

【一阶技能】贯通需求分析 
 需求 = 功能需求 + 质量需求 + 约束需求
 功能 = 接口需求 + 系统能力 + 处理流程
 需求分析前期任务、用例图、案例
 需求分析后期任务、用例规约、案例 

【二阶技能】精通需求文档 
 需求内容、模型总览 
 管理软件《需求书》实例 and 最佳模板 
 嵌 入 式《需求书》实例 and 最佳模板
 嵌入式软件的接口需求、算法需求刻画
 接口需求,要充分体现软件与传感器、
执行器、其他系统的双向对接要求
 处理流程,往往涉及操作、处理、控制
过程的专业算法,也应分析并归档

【三阶技能】让《SRS》成为分析和识别需求变更的工具 
 需求变更分析:How to
 需求变更分析:示范案例
 传统“输入-处理-输出”分析方式的改进

在课堂上练会、夯实的技能,将在工作中直接发挥价值
【实战】分组实战,
 任务:电梯控制板需求变更分析、及如何将变更归档
 贯穿案例推进……

嵌入式架构的重中之重——控制结构设计

设计师设计嵌入式软件时,有三种控制结构可供选择
1. 死循环
实现代码分析……
2. 事件驱动多任务(event-driven multitask)
实现代码分析……
3. 时间片轮询架构(time-slice polling)
实现伪代码分析……

设计师设计嵌入式软件时,可参考的优秀范例二则
1. 著名飞行器开源产品——多任务架构
主要收获:入口主程序、Task的划分、Task间的同步
主要收获:中断函数在多任务架构下的经典写法
2. 某硬实时单板控制器——时间片轮询架构
主要收获:入口主程序代码骨架
主要收获:中断函数在时间片轮询架构下的经典写法

设计师设计嵌入式软件时,根据性能选择架构
1. 嵌入式性能:
 速 度:响应时间长短?
 效 率:任务切换过频怎么办?
 吞吐量:每秒处理事件数等
2. 三种控制结构的适用场景
 事件率高低
 事件率波动规律、峰值
3. 案例故事:某单板程序,高事件率下CPU占用率100%
 设计一:事件驱动多任务架构(有OS)
 设计二:时间片轮询架构(无需OS)
 设计优劣对比

在课堂上练会、夯实的技能,将在工作中直接发挥价值
【实战】分组设计实战 
 任务:多任务or时间片轮询架构的选择
 贯穿案例推进……

重用关键——模块划分

设计师划分模块时,代码结构的全局划分方法
1. 从模式开始——巧妙的“五横一纵”分层模式
2. 模块划分——覆盖上下文图定义的接口需求
3. 模块划分——运用用例驱动设计思维
3.1. 起步:分析用例规约,识别实现用例的那些代码块
3.2. 后续:协作设计,即用序列图串起这些代码


设计师划分模块时,注意几个基本原则
1. 通用-专用分离:提炼应用无关的Library、或选择三方库
2. 通用-专用分离:机制与策略分离,开发或选择Framework
3. 隔离外部交互:仅UI层“知道”操作细节和展现格式
4. 隔离外部交互:仅SI层“知道”和外部部件通信的细节
5. 隔离外部交互:仅DM层“知道”数据存储格式

设计师划分模块时,可参考的优秀范例一则
1. 著名开源产品套件——Mumble
主要收获:模块的划分、通用库的提炼、三方框架…

实战演练 
1. 任务:模块划分
(必须覆盖代码结构全局、不能漏模块)
2. 贯穿案例推进……

隔离变化——模块接口设计

设计师设计接口时,考虑的三件事儿
1. 技术选择:接口设计容易?做漂亮最难!
2. 机制选择:调用/回调/同步/异步/轮询/超时
3. 格式定义:函数风格 vs.报文或消息风格

设计师设计接口时,可参考的优秀范例一则
4. 某通用产品——漂亮的C语言接口、方便的配置
主要收获:围绕Domain Type定义模块的核心接口
主要收获:在核心接口基础上,可定义便捷接口
注英文术语为Core Interface、Convenience Interface

设计师设计接口时,这些经验可以用
1. 基于代码:专项练习一
2. 基于代码:专项练习二
3. 基于代码:专项练习三
4. 原则与“坑”总结


实战演练 
1. 任务1:接口的命令化(Command)支持可扩展
2. 任务2:让接口包含回调(Callback)使模块通用化 
3. 贯穿案例设计推进……

自控方案设计——单板软件架构师的下一步

架构师设计自控方案时,工作内容有哪些?
1. 逻辑设计 = 分层设计 + 功能子系统划分
2. 物理设计 = 硬件拓扑 + 软组件分布设计
3. 技术选型 = 开发技术 + 运行环境选型
4. 接口设计 = 接口技术选择 + 接口协议定义



架构师设计自控方案时,需求文档怎么写?
1. 《需求规格书》模板解读
2. 《需求规格书》实际范例分析

架构师设计自控方案时,架构文档怎么写?
1. 《GB SSDD》文档模板解读
2. 《GB架构书》实际范例分析







 

android开发板
linux_android开发板
fpga图像处理
端海培训实验设备
fpga培训班
 
本课程部分实验室实景
端海实验室
实验室
端海培训优势
 
  备案号:备案号:沪ICP备08026168号-1 .(2024年07月24日)....................
友情链接:Cadence培训 ICEPAK培训 EMC培训 电磁兼容培训 sas容培训 罗克韦尔PLC培训 欧姆龙PLC培训 PLC培训 三菱PLC培训 西门子PLC培训 dcs培训 横河dcs培训 艾默生培训 robot CAD培训 eplan培训 dcs培训 电路板设计培训 浙大dcs培训 PCB设计培训 adams培训 fluent培训系列课程 培训机构课程短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班培训 南京 NS3培训 OpenGL培训 FPGA培训 PCIE培训 MTK培训 Cortex训 Arduino培训 单片机培训 EMC培训 信号完整性培训 电源设计培训 电机控制培训 LabVIEW培训 OPENCV培训 集成电路培训 UVM验证培训 VxWorks培训 CST培训 PLC培训 Python培训 ANSYS培训 VB语言培训 HFSS培训 SAS培训 Ansys培训 短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班 端海 教育 企业 学院 培训课程 系列班 长期课程列表实践课程高级课程学校培训机构周末班 短期培训系列课程培训机构 端海教育企业学院培训课程 系列班