概述
软件工程复习提纲,期末、考研的学霸笔记
第六章——实现
第六章实现
- 编码风格:
1)源程序代码的逻辑简明清晰、易读易懂是好程序的一个重要标准。
2)①程序内部的文档:包括恰当的标识符、适当的注解和程序的视觉组织等(例:次数-times)。
②数据说明:数据说明的次序应该标准化,能够加速测试、调试和维护的过程。
③语句构造:每个语句都应该简单而直接。
④输入输出:对所有输入数据都进行检验;保持输入格式简单。
⑤效率:主要指处理机时间和存储器容量两个方面。
【【【不要牺牲程序的清晰性和可读性来不必要地提高效率。】】】
- 测试的定义和目标:
1)概念:①测试是为了发现程序中的错误而执行程序的过程;
②好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;
③成功的测试是发现了至今为止尚未发现的错误的测试。
2)软件测试:为了发现错误而执行程序的过程。(是为了证明程序有错,而不是证明程序无错)
- 单元测试:
1)集中检测软件设计的最小单元——模块(主要使用白盒测试技术)。
2)测试重点:
- 集成测试过程及方法:
1)是测试和组装软件的系统化技术,主要目标是发现与接口有关的问题。
2)由模块组装成程序有两种方法:非渐增式测试方法;渐增式测试方法(被普遍采用的)。
3)渐增式测试方法:
①自顶向下集成策略(被普遍采用):可以使用深度优先或宽度优先策略。
②自底向上集成策略:
③不同集成测试策略的比较:
- BRO测试:
1)测试的一些规定:对于布尔变量B来说,B的输出约束指出,B必须是真(t)或假(f)。
对于关系表达式来说,用符号>,=和<指定表达式的输出约束。
2)例1 C1: B1 & B2
B1和 B2是布尔变量。C1的条件约束形式为(D1,D2),其中D1和D2中的每一个都是
t或f.因此约束集{(t,t),(t,f),(f,t)}被C1的执行所覆盖。
例2 C2: B1 & (E3=E4)
B1是布尔变量,E3和E4是算术表达式。C2的条件约束形式为(D1,D2),其中D1是t
或f.。D2是>,=,<。对于(E3=E4)来说,t 意味着=,而f意味着<或>。因此分别(t,=), (f,=)
替换(t,t),(f,t),并用(t,<),(t,>)替换(t,f)。故C2的约束集为:{(t,=),(f,=),(t,<),(t,>)} 。
例3 C3: (E1>E2) & (E3=E4)
E1,E2,E3和E4都是算术表达式。C3的条件约束形式为(D1,D2),其中D1和D2的每一
个都>,=,<。除了C3的第一个简单条件是关系表达式之外,C3和C2相同,因此可通过修
改C2的约束集得到C3的约束集,结果为:{(>,=),(=,=),(<,=),(>,<),(>,>)} 。
- 确认测试:
1)目标:验证软件的有效性。
2)软件有效性:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的。
3)通常使用的方法:黑盒测试法。
4)两种测试方法:
Alpha测试:由用户在开发者场所进行;
Beta测试:由软件的最终用户们在一个或多个客户场所进行。
5)测试与调试的区别:
- 软件可靠性:
1)系统的稳态可用性为: Ass=MTTF/(MTTF+MTTR)
【系统平均无故障时间MTTF和平均维修时间MTTR】
2)估算平均无故障时间: MTTF=IT /[K( ET- Ec(τ))] (其中K为常数,其典型值是200)
【ET——测试之前程序中错误总数;IT——程序长度(机器指令总
数);τ——测试(包括调试)时间;Ed( τ)——在 0 至τ期间发
现的错误数 ;Ec( τ)——在 0 至τ期 间改正的错误数。】
3)例 对一个包含10000条机器指令的程序进行一个月集成测试后,总共改正了15个错误,
此时MTTF=10h;经过两个月测试后,总共改正了25个错误(第二个月改正了10个错
误),MTTF=15h。
要求:(1) 根据上述数据确定MTTF与测试时间之间的函数关系,画出MTTF与测试
时间τ的关系曲线。在画这条曲线时做了什么假设?
(2) 为做到MTTF=100h,必须进行多长时间的集成测试?当集成测试结束时总
共改正了多少个错误,还有多少个错误潜伏在程序中?
最后
以上就是朴素大象为你收集整理的软件工程复习提纲——第六章的全部内容,希望文章能够帮你解决软件工程复习提纲——第六章所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复