1、结构化程序设计
结构化程序设计原则:
(1) 使用几种基本控制结构
(2) 由粗到细,一步步展开(自顶向下,逐步求精)
使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑
选用的控制结构只准许有一个入口和一个出口
复杂结构应该用基本控制结构进行组合嵌套来实现
程序设计风格的要求
2、程序设计语言的分类
第一代:机器语言
第二代:汇编语言
第三代:高级语言
第四代:语言
(1) 机器语言,汇编
(2)高级语言 :系统实现语言、静态高级语言、块结构高级语言、动态高级语言
3、度量程序复杂性的方法
(1)代码行度量法
(2)McCabe度量法
4、选择语言的原则
5、程序编码总原则
(1)先求正确后求快
(2)先求清晰后求快
(3)求快不忘保持程序正确
(4)保持程序整洁以求快
(5)不要因效率而牺牲清晰
6、软件测试
概念: 软件测试是对软件计划,软件设计,软件编码进行查错和纠错的活动
目标:
(1)测试是为了发现程序中的错误而执行程序的过程
(2)一个好的测试用例在于能发现至今未发现的错误
(3)一个成功的测试是发现了至今未发现的错误的测试
原则:
(1) 测试前要认定被测试软件有错,不要认为软件没有错
(2)要预先确定被测试软件的测试结构
(3)要尽量避免测试自己编写的程序
(4)测试要兼顾合理输入和不合理输入数据
(5)测试要以软件需求规格说明书为标准
(6)要明确找到的新错与已找到的旧错成正比
(7)测试是相对的,不能穷尽所有的测试,要根据人力物力安排测试,并选择好测试用例与测试方法
(8)测试用例留作测试报告与以后的反复测试用,重新验证纠错的程序是否有错
在设计测试用例时,应当包括合理的输入条件和不合理的输入条件,测试用例应由测试输入数据和对应的预期输出结果这俩 部分组成
7、软件错误的分类
(1)模块接口检查表
(2)完成外部输入/输出时的检查表
(3)模块局部数据结构检查表
8、软件测试的过程和策略
测试过程:单元测试,组装测试,确认测试,系统测试
9、软件测试用例设计的方法
10、测试路径选择
11、测试种类
功能测试 可靠性测试 强度测试 性能测试 恢复测试 启动/定制测试 配置测试 安全性测试
可使用性测试 可支持性测试 安装测试 过程测试 互连测试 兼容性测试 容量测试 文档测试
(贯穿于集成测试 单元测试 确认测试 系统测试)
12、调试方法
13、软件维护
定义:在软件运行/维护阶段对软件产品进行的修改
类型:改正性维护 适应性维护 完善性维护