嵌入式系统软件可靠性设计资料及嵌入式软件可靠性设计培训

“中国电子标准协会WAYS”有嵌入式软件可靠性设计的企公开课程和企业内训安排,详情可以百度搜一下他们网站了解一下。以下为他们协会的通用大纲!

嵌入式软件既是电子系统的核心,也是硬件系统的有效补充,需要具备防错、判错、纠错、容错的功能,具备了这些功能,就能保证系统可靠性要求在软件分系统设计中的实现。但是软件可靠性又不同于硬件电路,它不会随时间的推移而降低,并且其可靠性保障全部在设计过程中实现。因此软件工程的工作也是软件可靠性所要关注的内容。

为此,中国电子标准协会决定组织召开《嵌入式软件可靠性设计》讲座,本讲座主要从嵌入式软件的系统设计、需求分析、接口、模块、变量控制、软件测试、安全性分析、硬件匹配设计等设计规范进行总结和分析,深层次探讨嵌入式软件的可靠性设计技巧。现具体事宜通知如下:

课程提纲:

1.概述和定义

2.计算机系统设计准则:

2.1、一般要求;

2.2、硬件与软件功能的分配原则;

2.3、硬件与软件可靠性指标的分配原则;

2.4、安全关键功能的人工确认;

2.5、安全性内核;

2.6、自动记录系统故障;

2.7、禁止回避检测出的不安全状态;

2.8、保密性设计;

2.9、容错设计

3.硬件设计:

3.1、硬件选用;

3.2、总线检测;

3.3、加电检测;

3.4、电源失效的安全措施;

3.5、主控计算机失效的安全措施;

3.6、反馈回路传感器失效的防护措施

3.7、电磁干扰的防护措施;

3.8、维修互锁措施

4.软件需求分析

5.软件危险分析

6.安全关键功能设计

7.冗余设计准则:

7.1、指令冗余设计;

7.2、软件陷阱与软件拦截技术;

7.3、软件冗余

8.接口设计准则:

8.1、硬件接口要求;

8.2、硬件接口的软件设计;

8.3、人机界面设计;

8.4、报警设计;

8.5、软件接口设计

9.软件健壮性设计准则:

9.1、电源失效防护;

9.2、加电检测;

9.3、电磁干扰;

9.4、系统不稳定;

9.5、接口故障

9.6、干扰信号

9.7、错误操作;

9.8、监控定时器的设计

9.9、异常保护设计

10. 简化设计准则:

10.1、单入和单出;

10.2、模块的独立性;

10.3、模块的扇入扇出;

10.4、模块耦合方式;

10.5、模块内聚顺方式;

10.6、其他特殊考虑

11.余量设计:

11.1、资源分配及余量要求

11.2、时序安排的余量要求

12. 数据要求:

12.1、数据需求;

12.2、属性控制;

12.3、数值运算范围控制;

12.4、合理性检查

13. 防错程序设计准则:

13.1、参数化;

13.2、公用数据和公***变量;

13.3、标志;

13.4、文件;

13.5、非授权存取的限制

13.6、无意指令跳转的处理;

13.7、程序检测点的设置

13.8、寻址模式的选用;

13.9、数据区隔离;

13.10、安全关键信息的要求;

13.11、信息存储要求;

13.12、算法选择要求

14. 编程要求:

14.1、语言要求;

14.2、汇编语言编程限制

14.3、高级语言的编程限制;

14.4、圈复杂度指数(McCabe)

14.5、软件单元的规模;

14.6、命名要求;

14.7、程序格式要求;

14.8、程序注释要求与方法;

14.8.1、注释的一般要求

14.8.2、模块头注释要求;

14.8.3、模块内注释要求;

14.8.4、安全关键内容注释要求;

14.9程序设计风格;

14.9.1、通用类;

14.9.2、结构类;

14.9.3、说明类;

14.9.4、输人输出类;

14.9.5、语言类

15. 多余物的处理:

15.1、文档中未记载特征的清除;

15.2、程序多余物的清除;

15.3、未使用内存的处理;

15.4、覆盖的处理

16. 版式

17. 注释

18. 命名

19. 可读性

20. 变量、结构

21.函数、过程

22. 可测性与软件测试:

22.1、需求遗漏或不明确

22.2、配置保存的生效

22.3、缺省配置的影响

22.4、报警和清除

22.5、菜单选项测试

22.6、缺省配置测试

22.7、系统测试注意事项

23. 程序效率

24. 质量保证

25. 代码编辑、编译、审查

26. 代码测试、维护

27. 宏