发表于: 2018-03-21 22:53:38
1 931
今天完成的事情:软件的生命周期、生命周期模型和优缺点、动态测试和静态测试的区别
明天的计划:动态测试的一些东西
遇到的问题:还没有
收获:
1、软件的生命周期
一个软件从最开始的构思、设计到开发、测试、更新、到最后软件报废停止使用,这个过程叫软件的生命周期
软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。 生命周期的每一个周期都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。按照软件的生命周期,软件的开发不再只单单强调“编码”,而是概括了软件开发的全过程。软件工程要求每一周期工作的开始只能必须是建立在前一个周期结果“正确”前提上的延续;因此,每一周期都是按“活动 ── 结果 ── 审核 ── 再活动 ── 直至结果正确”循环往复进展的。
2、生命周期的模型和优缺点:
瀑布模型
特点:
阶段间具有顺序性和依赖性
推迟实现的观点
质量保证的观点
优点:
可强迫开发人员采用规范的方法(例如:结构化技术);
严格地规定了每个阶段必须提交的文档;
要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
缺点:
“瀑布模型是由文档驱动的”在可运行的软件产品交付给用户之前,用户只能通过文档来了解产品是什么样子的。但是通过写在纸上静态的规格说明,很难全面正确的认识动态的软件产品。
适用范围:
需求明确,小规模软件开发。
v模型
适用于需求不断变更,在集成测试可以变更需求,在系统测试不可变更
缺点:1)由于他的顺序性,正式进入测试时,有些bug不容易找其根源,代码修改起来困难
2)由于需求变更较大,所以返工量大
w模型:
开发与测试要并行、无法迭代
适用于非常严谨,不允许有任何问题的项目(如银行等)
H模型(敏捷测试)
缺点:需要完整的团队,不安全
适用于时间、任务周期短,项目小,效率高
螺旋模型
庞大,周期长,适用于不明确的项目
缺点:容易掉进it黑洞,建设周期长,而技术发展比较快,所以经常出现软件开发完毕后和当前技术水平有了较大差距,无法满足当前用户需求
x模型(很少用到)
3、动态测试和静态测试的区别
静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。
动态测试方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。
评论