嵌入式开发过程概览 |
嵌入式软件开发面临的问题
嵌入式软件典型过程
过程参考:敏捷,CMMI,IPD,UP
方法参考:面向过程,面向对象,面向服务
开发过程基础:角色、工作、交付物、时间、质量
开发过程概览:
- 需求分析
- 总体设计
- 概要设计
- 详细设计
- 开发
- 测试
- 部署
|
嵌入式软件需求分析
|
产品特性
功能需求
非功能需求:性能、可靠性、安全性、扩展
接口需求
物理需求
设计约束
实施需求
编写《需求文档》 |
总体设计
|
总体设计的目标
总体设计的范围
划分功能体
设计功能体接口
确定关键技术选型
确定总体设计的边界
编写总体设计《说明书》 |
嵌入式软件概要设计 |
设计层次框架
确定层次关系
划分软件模块
设计模块接口
设计处理过程
编写《概要设计说明书》 |
详细设计
|
详细设计和架构设计的边界区分
详细设计的形式和内容
模块的详细设计
处理过程的详细设计
数据处理的详细设计
详细设计描述与编挡
编写《详细设计说明书》 |
从设计过渡到开发
|
采用组件建模构建单元
划分组件
建模构建依赖关系
子系统和组件的装配关系图
把组件分解为源代码目录
使用UML的图建模《组件模型》
编写《开发目录》 |
单元测试
|
通过单元测试驱动开发
单元测试的粒度与对象
设计单元测试用例
编写单元测试代码
单元测试编码与执行
汇总《单元测试报告》 |
嵌入式软件测试过程
|
测试需求
测试计划
测试设计
测试执行
测试评估
案例:实际测试项目案例过程回顾 |
测试需求分析
|
收集对照软件需求
系统需求分析
测试范围分析
测试对象识别
测试验收标准分析
测试策略分析
案例:实际测试案例需求分析 |
测试用例设计方法
|
测试用例设计目标与范围
测试用例设计方法:等价类、 边界值、因果图、判定表
测试用例覆盖率分析:
编写《测试用例规格》 |
执行软件测试,记录bug
|
测试用例执行策略
测试反馈分析方法
测试中的调整策略
Bug记录方法
测试中的缺陷分析 |
报告缺陷
|
软件缺陷的描述
软件缺陷属性
分离和再现软件缺陷
软件缺陷生命周期
软件缺陷处理技巧
软件缺陷跟踪系统
缺陷跟踪的方法和图表
案例与练习:实际测试案例缺陷报告 |
产品质量评估
|
功能质量
性能质量
覆盖率指标
用户满意度
可靠度
可发布分析 |
测试工具
|
测试管理工具
代码测试工具
运行时分析工具
系统仿真环境
系统测试工具 |