中国电子标准协会培训中心

  
培训课程筛选


嵌入式与实时系统开发专题培训系列 之软件架构设计

关键字:嵌入式 实时系统 开发专题 软件架构设计 
       嵌入式与实时系统开发专题培训系列 之软件架构设计 word版       课程提纲
主讲专家
---------------------------------
胡老师  
  开课信息:   课程编号:KC17192  
  开课日期(天数) 上课地区 费用  
更多:  
招生对象
---------------------------------
该课程主要面向系统架构师、软件架构师(首要对象)、系统设计员、软件设计员、软件设计员和项目经理,另外也包括参与软件设计的其他人员。
课程内容
---------------------------------
1. 课程描述
嵌入式与实时系统与其它软件系统相比,其产品形态特征差别很大,导致适合其软件开发的方法也不一样。业务系统等普通软件,其目的是支持业务活动的自动化,架构师的关注焦点,在于软件的结构如何支撑各类业务场景,硬件在此的职责在于提供足够的运算能力,来满足业务运作的性能要求,架构师通常并不太关心硬件的底层细节;嵌入式与实时系统软件则不一样,其与底层硬件的关系往往极为密切,架构师需要调整软件与硬件的协作,关注软件如何控制和协同硬件资源的使用,以支撑系统的运作。因此嵌入式与实时系统软件的架构设计,除了软件本身的结构外,还需要特别考量软件与硬件的接口及其协议。
本课程介绍了嵌入式与实时系统的软件架构开发方法和实际应用技术,涵盖了软件架构开发的各个步骤,包括:软件架构分析、软件架构设计、折衷设计、解决实时(性能、并发)问题、构建嵌入式与实时软件的开发环境等方面。同时本课程还提供了一个完整的软件架构设计实例模型。
为了让学员更深入地掌握相关内容,课程安排了大量的建模实践习作。

2. 课程目的
使学员能:基本掌握嵌入式与实时系统的软件架构设计方法。
3. 课程对象
该课程主要面向系统架构师、软件架构师(首要对象)、系统设计员、软件设计员、软件设计员和项目经理,另外也包括参与软件设计的其他人员。
4. 学员基础
1. 要求学员具备嵌入式与实时系统开发经验;
2. 要求学员掌握嵌入式与实时系统中主要的硬件部件特性
3. 要求学员掌握主流的实时操作系统
4. 要求学员具备一定的OO基础,具有一定的面向对象的分析、设计经验更佳;
5. 学员最好对UML的各种概念有一定的了解,掌握类图、包图、序列图、状态机图的使用技巧。

5. 前置课程
1. 嵌入式与实时系统开发专题系列——系统需求开发与管理
2. 嵌入式与实时系统开发专题系列——系统架构设计
3. 嵌入式与实时系统开发专题系列——软件设计与实施
6. 课程任务
1. 了解嵌入式与实时软件的特点
2. 深入理解软件架构的重要性
3. 系统地了解使用UML Profile for Schedulability, Performance, and Time统一建模语言的实时系统建模扩展来表达实时行为的方法
4. 系统地掌握软件架构分析过程
5. 系统地掌握软件架构设计过程
6. 掌握解决实时(性能、并发)问题的途径
7. 了解如何构建嵌入式与实时软件的开发环境
8. 了解折衷设计的技巧
7. 授课方式
整个课程围绕一个简单的软件项目实例来展开,通过讲解和指导学员完成一系列练习,让学员对软件架构开发方法和过程等产生较深刻的感性认识;通过答疑和习作评点,使学员进一步深入理解软件架构设计的理论和方法,并纠正一些错误或模糊的认识。
课程中还穿插一些讲师与学员的自由交流活动,解答与探讨实际项目中的各类问题。

8. 课程安排

Day 1
实例项目展示 展示以往成功实施软件架构开发方法的嵌入式与实时系统项目实例,包括需求、软件架构文档、分析模型、设计模型等标准工件、以及完整的项目目录结构等 9:00 – 9:20
嵌入式与实时系统软件概貌  阐述嵌入式与实时系统软件的特点;
 说明开发嵌入式与实时系统软件所面临的挑战;
 全面阐述嵌入式与实时系统从需求、到分析设计、模拟、测试等的开发过程 9:20 – 9:50
UML语言的实时系统建模扩展——Part I  讲述为了更好地建模嵌入式与实时系统的实时行为,需要对UML语言进行必要的扩展,这便是UML Profile for Schedulability, Performance, and Time;
 介绍UML Profile for SPT的概貌,说明SPT如何对标准UML语言进行扩展;
 阐述General Resource Modeling通用资源建模的概念,讲解如何标识系统中的那些时间敏感或性能受关注的资源 9:50 – 10:20
UML语言的实时系统建模扩展——Part I I  阐述General Time Modeling通用时序建模的概念,讲解如何表达系统中的各类与时间有关的内容;
 阐述General Concurrency Modeling通用并发建模的概念,讲解如何表达系统中存在并发、同步要求的元素关系;
 阐述Schedulability Modeling时间调度建模的概念,讲解如何分析系统的可调度性,以满足事件的时间期限deadline;
 阐述Performance Modeling性能建模的概念,讲解如何表达系统中各组成元素的性能要求 10:30 – 12:00

现场自由交流 解答学员的各类疑问,探讨实际项目中的各类问题 13:30 – 14:00
参考示例项目介绍 介绍一个供学员参考、模仿的示例项目,学员在此后的习作中将参考它,以便完成相关练习;示例项目包括:相关的背景文档、需求说明,已开发的需求模型、分析模型、设计模型等 14:00 –14:20
习作——工具安装与UML Profile for SPT实时建模演练 讲解嵌入式与实时系统工具软件Rhapsody的安装与使用;指导学员使用Rhapsody工具,来应用UML 2.0和UML Profile for SPT进行实时软件建模 14:20 –16:20
习作项目介绍 介绍一个供学员习作使用的示例项目,学员在此后的习作中将针对它来完成相关练习;项目资料包括:相关的背景文档、需求说明,已开发的需求模型等 16:30 –17:00

Day 2
嵌入式与实时系统软件架构导论  讲解为什么需要软件架构,阐述架构基线的概念;
 介绍迭代开发各个阶段需要解决的各类关键风险,并分析架构基线是如何规避项目开发风险的(当前关注的就是架构风险);
 阐述软件架构是什么,理清对架构的认识误区,说明架构包含结构和行为两个范畴;
 介绍架构设计的相关理论(元模型体系),以及业界主流的与嵌入式与实时系统相关的架构体系模型,包括:美国国防部DoDAF架构框架和RUP4+1视图等;
 阐述4+1视图的概念,说明如何表达嵌入式与实时系统的软件架构概貌;
 探讨如何在软件描述领域,将嵌入式与实时系统的硬件一并表达的问题——通过开发驱动等途径,将硬件映射到软件领域;
 探讨软件架构师的定位,阐述软件架构师的应有素质、技能、以及应掌握的知识体系 9:00 – 10:50
嵌入式与实时系统软件架构设计——架构分析-PartI  说明架构级技术方案的考察因素有哪些方面,如何确定那些决定架构的敏感用例(运作需求)和关键的非功能性需求;
 讲解如何利用可用资产(例如第三方产品或构件等)来加速软件架构的搭建;说明如何开发初始的架构框架结构;
 介绍业界前瞻的技术:Asset-based Development—基于资产的开发(RAS在UML、MDA之后成为OMG标准) 11:00 – 12:00

点评与现场自由交流 解答学员的各类疑问,探讨实际项目中的各类问题 13:30 – 14:00
嵌入式与实时系统软件架构设计——架构风格与模式  阐述架构风格的概念,介绍常见的嵌入式与实时系统相关的架构风格,例如:分层layer、管道与过滤器、bus总线、封装体-端口-协议;
 讲解架构模式和框架,以及如何应用架构模式与框架来创建健壮的架构;
 重点讲述层次模式,说明分层的类型有精化Refinement、实现Realization以及部署Deployment等3种;深入探讨应用层次模式来帮助开发系统初始的架构层;
 讲述管道与过滤器、bus总线、封装体-端口-协议等嵌入式与实时系统常用的风格或模式; 14:00 – 15:00
嵌入式与实时系统软件架构设计——架构分析-PartII  阐述关键的抽象概念(系统的核心领域内容)在软件架构设计中的核心作用,并讲解如何识别系统所要处理的关键抽象(实体对象);
 结合实例讲解如何识别那些系统需要处理的关键事件,并列出系统中对QoS性能等设计约束影响最为显著的敏感点;
 结合实例讲解如何识别系统中那些必须为活动activity的单元(封装体);
 讲解如何开发系统的界面导航图来框定系统的主体功能行为;
 阐述架构机制的概念,深入说明分析机制,讲解如何使用分析机制来修饰分析类之设计约束;
 讲解嵌入式与实时系统中常见的问题(归结为分析机制):系统的开机初始化、内存与资源的释放、错误处理、watch dog看门狗、分布式计算、受限制的数据存储等 15:00 – 16:00
习作——架构分析 针对选定的项目实例,指导学员确定系统的架构风格,并为系统分层或划分管道与过滤器,以开发系统初始的架构结构;识别关键的抽象概念,确定需要处理的核心功能,绘制界面导航图;并确定系统主要的分析机制,为主要的分析类修饰分析机制; 16:10 – 17:00

Day 3
嵌入式与实时系统软件架构设计——架构设计  阐述软件架构设计所面临的挑战,说明架构设计的质量目标:可维护性、可扩展性、可重用性、互操作性等;讲解架构设计相关的一些原则;
 给出选择架构级技术方案的指南,讲解如何针对系统特征来确定架构级技术方案;
 阐述架构设计中的折衷思想,介绍SEI-ATAM架构折衷分析方法;并讲解架构设计如何反作用于系统行为(功能需求);
 阐述软件设计中分而治之的原则,讲解设计模型的组织结构,说明如何进行架构级的分包,以及划分子系统、定义接口等;
 结合实例讲解嵌入式与实时软件的大粒度结构划分:分层、划分过滤器、划分封装体等;
 介绍封装体的层次化表达途径,并讲解使用嵌套的状态机图来划分复杂的响应行为;
 讲解设计与实施机制,结合实例描述如何根据不同的分析机制特征来选择合适的设计机制实现;
 讲解嵌入式与实时系统中常用的设计机制:系统的开机初始化机制、内存与资源的释放机制、错误处理机制、watch dog看门狗机制、分布式计算机制、受限制的数据存储机制、状态机引擎机制等 9:00 – 10:30
嵌入式与实时系统软件架构设计——面向对象设计原则与模式  讲解面向对象设计中的最重要的原则,包括类的设计原则和包的设计原则;
 结合实例阐述在实际设计,特别是架构设计中,应用设计原则的方法、途径;说明如何保持平台相关的细节和应用的分离,如何应用封装(encapsulation)、抽象(abstraction)和委派(delegation)的原则等;
 阐述软件构造中的冗余,说明在架构设计中如何识别和利用复用机会;讲解结构上的去冗余途径,包括:划分、泛化、模板化template、元层次化meta data-driven、面向方面aspect-oriented等;
 引入设计模式的概念;介绍如何使用设计模式(例如GoF设计模式中的模板方法模式、策略模式等)来优化设计模型; 10:40 – 12:00

现场自由交流 解答学员的各类疑问,探讨实际项目中的各类问题 13:30 – 14:00
面向架构基线的精化设计  讲解嵌入式与实时系统软件层、包和封装体的划分策略;
 讲解如何将分析类对应到不同的架构层或单元,例如:将边界类对应到应用层或集成层,将服务型控制类对应到领域逻辑层或过滤器单元(例如解码处理单元服务类),将活动类对应到封装体(封装体-端口-协议架构风格下的主体元素)等;
 讲解如何贯彻选定的设计机制从而将分析类映射到最终的设计元素;
 讲解类与子系统的设计技巧;
 讲解如何开发驱动,将硬件部件进行封装
 结合实例讲解系统中的核心算法,说明如何优化这些算法,以便满足系统的性能(时间限制)要求; 14:00 – 15:30
习作——架构设计 针对选定的项目实例,指导学员将系统主要的分析机制对应到设计和实施机制;精化系统初始的架构层,以体现设计、实施机制的实现,以及在复用策略的指导下引入第三方构件等;具体设计一些子系统的接口 15:40 – 17:00

Day 4
嵌入式与实时系统软件架构设计——物理设计  阐述源码的并行开发管理,进而讲解构件视图(实施模型)的概念
 阐述软件系统中的并发需求,进而讲解进程视图的概念(即通常说的物理设计视图);
 讲解如何将系统中的活动activity单元(类、构件),向进程或线程进行分配,以解决实时(性能、并发)问题;
 探讨利用框架机制,而不依赖线程来支持轻量级主动activity单元(封装体)的实施;
 阐述软件系统中的分布需求,进而讲解部署视图的概念(即通常说的物理设计视图);
 讲解利用部署模型来分析并解决伸缩性等问题;
 讲解如何分析软件行为,从而反过来引申出对硬件的规格要求:例如LCD的分辨率、RAM的空间大小、UART的通讯速率等 9:00 – 10:00
嵌入式与实时系统软件架构设计——编制软件架构文档  进一步深入阐述4+1视图的概念,讲解RUP的软件架构文档;
 结合一个实例说明软件架构文档的内容,并给出编写软件架构文档,和用它来指导目标系统开发的指南 10:00 – 10:30
嵌入式与实时系统软件架构设计——实时与同步设计  讲解如何将关联密切的passivity被动类与主动activity类划分到同一封装体中,说明被动类如何协同工作以实现封装体的功能,以及如何正确地设计被动类,使其可以在封装体内使用(即在同一线程或活动线索中被创建和访问);
 讲解使用状态机图来描述主动activity类的内部行为实现,并通过分层的状态机图来分析复杂的状态转换关系;
 阐述信号、同步锁等同步概念,讲解利用时序图来分析实时与同步问题 10:40 – 12:00

现场自由交流 解答学员的各类疑问,探讨实际项目中的各类问题 13:30 – 14:00
嵌入式与实时系统软件的开发与调试  阐述构建嵌入式与实时软件开发环境的要求;
 讲解如何选择合适的软件工具,来支撑嵌入式与实时软件的开发;
 阐述嵌入式与实时软件的调试方法,讲解如何利用模拟环境尽早除错,以及使用日志等记录机制来帮助程序调试; 14:00 –15:30
获取团队协作成功的关键  分析团队协作与个人独立开发的根本差异;
 讲述保持概念的完整性和一致性对团队协作的极端重要性;
 介绍双向工程的概念,说明如何保证项目设计与实施的一致性
 介绍一个架构级重构的案例,分析如何在40多天的苛刻工期压力下,进行架构级的重构,如何规避重构失败的风险 15:40 –16:10
项目开发目录结构  讲解如何定义项目开发目录结构,以支持团队的协作开发;
 说明目录结构的设计原则和方法;
 给出一个基于c++的源码目录结构方案; 16:10 –16:40
总结 对4天的课程进行总结 16:40 – 17:00
讲师介绍
---------------------------------
胡老师——首席软件架构师、UML/RUP专家
   具有战略性思维的基本素质,善于从总体上分析、把握全局,归纳与思辨能力较为突出;擅长软件系统体系架构的分析与设计,对软件系统的总体结构和行为有深刻理解;OOP/OOAD功底深厚,精通UML语言,并在多个项目中成功实施面向对象的开发;熟悉软件工程知识体系的主体框架(如SW-CMM 1.1/CMMI 1.02),掌握主流软件过程
Rational RUP;掌握多种CASE工具(特别是Rational的整个系列工具),并有在项目中实际运用的丰富经验。目前主要为软件开发企业提供项目构架设计与开发、咨询、顾问、教练mentor、培训等不同形式的服务。
 
开课时间:2017-03-15 温馨提示:本课程可邀请老师到企业内部培训!
机构名称:深圳市威硕企业管理咨询有限公司 咨询电话:0755-26506757 33558698
课程地区:广东
联 系 人:李正华先生 彭静小姐 郑江波先生
浏览次数:
电子信箱:martin@ways.org.cn


中国电子标准协会培训中心(http://www.ways.org.cn)专业提供可靠性设计、热设计、SMT工艺、电路设计、架构设计、硬件测试、研发管理、嵌入式软件测试、EMC培训、软件技术等课程及服务。欢迎来电来函咨询:0755-26506757 13798472936 martin@ways.org.cn

免费咨询/报名 请仔细填写以便我们安排此课程专业人士第一时间回复您!
您的姓名:
参加人数: 支撑各类业务场景,硬件在此的职责在于提供足够的运算能力,来满足业务运作的性能要求,架构师通常并不太关心硬件的底层细节;嵌入式与实时系统软件则不一样,其与底层硬件的关系往往极为密切,架构师需要调整软件与硬件的协作,关注软件如何控制和协同硬件资源的使用,以支撑系统的运作。因此嵌入式与实时系统软件的架构设计,除了软件本身的结构外,还需要特别考量软件与硬件的接口及其协议。
本课程介绍了嵌入式与实时系统的软件架构开发方法和实际应用技术,涵盖了软件架构开发的各个步骤,包括:软件架构分析、软件架构设计、折衷设计、解决实时(性能、并发)问题、构建嵌入式与实时软件的开发环境等方面。同时本课程还提供了一个完整的软件架构设计实例模型。
为了让学员更深入地掌握相关内容,课程安排了大量的建模实践习作。

2. 课程目的
使学员能:基本掌握嵌入式与实时系统的软件架构设计方法。
3. 课程对象
该课程主要
*人,报名参加2017-03-15开始,在广东举办的《嵌入式与实时系统开发专题培训系列 之软件架构设计》(课程编号:17192)。
联系电话: *  移动电话或传真:
电子邮件: * 所在单位:
咨询内容:
(或备注)
*
 

  近期推荐课程
·[上海]嵌入式软件可靠性设计技巧 ·[广东]环境与可靠性试验技术专题培训
·[北京]嵌入式Linux架构和开发实践培训 ·[山东]嵌入式Linux驱动程序开发和案例实
·[湖南]Android系统开发 ·[上海]机械结构设计规范培训
·[广东]机械结构设计规范培训 ·[北京]机械结构设计规范培训
·[广东]机械结构设计规范培训 ·[甘肃]机械结构设计规范培训
 
官方微信号 pxke02 
相关课程
·[广东-2017-03-15] 嵌入式与实时系统开发专题培训系列 之软件架构设计
                                更多...
推荐公开课
                                更多...
推荐内训课
                                更多...
资讯中心

中国电子标准协会培训中心(深圳市威硕企业管理咨询有限公司)成立于2006年,经过十多年的发展,在国内外业界技术顾问及广大客户的支持下,我培训中心已成为一家专业的电子技术、研发、管理、企业资格及电子标准培训服务提供商,致力为各企业提供成熟的企业技术、管理及标准培训服务。借鉴国际先进的电子技术应用与管理理念,让协会整合以“技术”为核心的企业资源体系,解决企业运营过程中的技术难题,提升生产、运作与工作效率,增强企业核心能力,赢得竞争优势,最终实现企业长期追求的使命与愿景。
经典课程:可靠性设计各种设计技术(包括可靠性降额设计、硬件测试、可靠性余度设计、可靠性动态设计、电路设计、可靠性环境防护设计、EMC培训、热设计、硬件测试、可靠性安全设计、缓冲减振设计、静电防护设计等)、SMT技术管理培训、EMC培训、硬件测试、IPC标准(IPC-A-610E标准、IPC-A-7711/21标准、IPC-A-620A标准、IPC-A-600H标准、IPC J-STD-001标准)、电路设计、硬件测试、ESD防静电防护、ESD设计、硬件测试、EMC培训、电路设计、硬件测试技术及信号完整性分析、硬件测试、DFM电子可制造性设计、机械结构设计、加速试验和筛选技术和模拟仿真技术、硬件测试、EMC培训、失效分析、EMC培训、电路设计、EMC培训、故障模式影响及危害性(FMEA、FMECA)和故障树分析(FTA)、元器件可靠性设计、硬件测试、电路设计、软件可靠性设计、硬件测试、软件测试(黑盒和白盒)、电路设计、可靠性设计各种试验技术(环境应力筛选试验、EMC培训、硬件测试、可靠性工程试验、可靠性统计试验等)以及可靠性管理是我协会的强项;软件类:架构设计、EMC培训、硬件测试、C语言、电路设计、UI设计、硬件测试、需求分析、电路设计、软件项目管理、硬件测试、电路设计、Oracle、软件敏捷、.NET、EMC培训、硬件测试、Android、硬件测试、软件配置管理、Linux、硬件测试、CMMI、软件重构、C++等等

服务热线:0755-33558698 26506757 传真:0755-33119039 电子邮件:martin@ways.org.cn
客服 QQ:52630255 751959468 1305933375 385326049
中国电子标准协会培训中心(http://www.ways.org.cn)网站 ICP注册号:ICP备257378787号