- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.分析60年代出现的软件危机的原因。如何理解“越晚发现的错误,修正的费用越高”。(Ch1)
软件危机是指在软件开发过程中遇到的一系列严重问题,如:开发周期延长,成本增加,可靠性降低等。
开发大型软件与编制小程序主要有以下区别:
⑴人员:小程序从确定要求、设计、编制、使用,直到维护通常由一个人完成;大型软件则由用户、项目负责人、分析员、程序员、资料员、操作员等组成一支开发队伍来协同完成。
⑵文档:小程序很少有书面文档;大型软件则是集体劳动的“产物”,必须有规范化的文档,便于开发和维护。
⑶产品。小程序工作量小,如果需作大的修改,可舍弃旧程序而重新编写;但大型软件的开发耗费了大量的人力与物力,一般不会轻易抛弃,而总是在旧软件的基础上一再改动,以延长它的使用期,因此“版本”在不断升级。
大型软件的开发提出了许多新的问题,而开发方法却还停留在编制小程序的方法上,经验和技巧已不能满足开发大型软件的需要,导致软件开发过程混乱;使用的开发方法和技术不当,没有适当的文档,不易交流,维护困难,开发成本高,软件质量低等,这些问题是造成软件危机的主要原因。
2.会用可达树分析死锁问题。(Ch2.1)
若出现叶结点,则系统中有死锁。
3.简述结构化方法需求分析的综合要求。(Ch3.1)
需求分析阶段的任务主要是确定目标系统必须具备哪些功能。
结构化需求分析的综合要求:
⑴ 功能要求:指系统必须完成的所有功能。
⑵ 性能要求:如联机系统的响应时间,系统的存储容量、健壮性和安全性等方面的要求。
⑶ 运行要求:指系统运行所需要的软硬件环境。
⑷ 未来要求:指系统将来可能的扩充要求。
⑸ 数据要求:指系统所要处理的数据以及它们之间的联系。
需求分析的结果:《需求规格说明书》
4.简述软件测试的三个步骤、黑盒和白盒测试方法。(Ch3.4)
软件测试三个步骤:单元测试、集成测试、确认测试。
(1)单元测试:又称模块测试
测试对象是软件设计中最小的单元——模块,其目的是发现模块内部存在的错误。
单元测试发现编码阶段的错误。
测试内容:
(a)模块间的接口;
(b)模块内的局部数据结构
(c)模块内的重要通路尤其是错误处理的通路和影响上述各方面的边界条件。
(2)集成测试:又称组装测试或联合测试
集成测试发现软件设计阶段的错误。
在单元测试的基础上,需要将所有模块按设计要求组装成系统。在经过单元测试未发现错误的模块,组装之后仍可能出现各种问题。
集成测试的基本方法:边组装边测试。有自顶向下或自底向上两种方法。
(a)自顶向下测试
从主控模块开始,沿着模块层次,边组装边测试已组装部分的功能,直到全部组装完毕,系统达到设计的功能和性能要求为止。
为保证测试的进行,必须提供保证测试条件的桩模块。
桩模块:用来模拟被测模块的下层模块的模块。
再用实际的下层模块代替桩模块,并进行回归测试。
回归测试是相对于原始测试而言的,它部分或全部地重复前面进行过的测试工作。
(b)自底向上测试
与自顶向下测试相反,它先组装最低层模块,向上逐步组装。每组装一个模块,便测试由此模块及其下层模块组成的子功能。直到全部装配完毕,达到系统设计的功能和性能要求为止。
为保证测试的进行,必须提供保证测试条件的“驱动程序”。
用实际的上层模块代替该驱动程序。
(3)确认测试:又称有效性测试或验收测试
确认测试检查系统的功能和性能是否达到系统分析说明书提出的设计指标,即是否满足用户要求,检查文档是否齐全等。
确认测试发现软件分析阶段的错误。
黑盒测试法是根据程序的功能和性能进行测试的方法。它把被测程序看成一个黑盒子,完全不考虑程序内部的数据结构和逻辑通路。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能和性能是否满足预期需要,程序是否能适当地接收输入数据产生正确的输出数据,并保持外部信息的完整性。
产生黑盒测试的测试用例的方法有如下几种:
等价类划分法、边界值分析法、因果图法、错误推测法。
白盒测试法是根据程序的逻辑结构进行测试的方法。它把程序看成是装在一个透明的白盒中,也就是完全了解程序内部的结构和处理过程。这种方法按程序内部的逻辑来测试程序,检验程序的每条通路是否都能按规定要求正确工作。
产生白盒测试用例的方法有如下几种:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、
条件组合覆盖。
一般而言,测试时以黑盒测试法为主,白盒测试法为辅。
5.与OO方法相比,传统方法存在哪些问题。OO方法有哪些优点。(Ch4.1)
传统方法存在的问题:
(1)对现实世界的认识与编程之间存在理解上的鸿沟;功能与数据相分离造成。
(2)修改困难;系统是围绕如何实现一定的行为进行,当需求变化时,数据常常发生变化,最终导致数据的结构变化,难于修改。
(3)维护困难;为了得到“好的软件结构”,使作用域在控制域之中,导致
文档评论(0)