第一范文网 - 专业文章范例文档资料分享平台

软件工程复习题[1]

来源:用户分享 时间:2025/6/7 2:48:22 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

与测试的区别:测试是为了发现软件中的错误,而调试是诊断并改正错误。

6、管理复审:复查各个阶段的经费、开销、成本以及进度,投资回收期前景的展望。

技术审查:对每个阶段进行严格的审查,从而保证了各个阶段技术的正确性,防上错误的积累和复审。 7、答:(1)复查系统规模和目标。 (2)研究目前正在使用的系统。 (3)导出新系统的高层逻辑模型。 (4)重新定义问题。

(5)导出和评价供选择的解法。 (6)推荐行动方针。 (7)草拟开发计划。 (8)书写文档提交审查 8、答:(1)一致性,即所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。 (2)完整性,需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。 (3)现实性,指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的。 (4)有效性,必须证明需求是正确有效的,确实能解决用户面对的问题。 9、对象的特点? 答:(1)以数据为中心。(2)对象是主动的。(3)实现了数据封装。(4)本质上具有并行性。 (5)模块独立性好。 10、答:(1)描述系统数据结构的对象模型。(2)描述系统控制结构的动态模型。(3)描述系统功能的功能模型。

11、答:模块的作用域定义为受该模块内一个判定影响的所有模块的集合。模块的控制域是这个模块本身以及所有直接或间接从属于它的模块的集合。

12、答:自顶向下测试方法主要优点是不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能在早期发现上层模块的接口错误。自顶向下测试方法的主要缺点是需要存根程序,可能遇到与此相联系的测试困难,低层关键模块中的错误发现较晚,而且用这种方法在早期不能充分展开人力。自底向上测试言法的优缺点与自顶向下测试方法的优缺点刚好相反。

13、答:类是对具有相同数据和相同操作的一组相似对象的定义。类是对具有相同属性和行为的一个或多个对象的描述,而对象是某个特定类所描述的一个具体对象。 14、答:(1)客观世界是由各种对象组成的。

(2)所有对象都划分成各种对象类,每个对象类都定义了一组数据和一组方法。 (3)按照子类与父类的关系,把若干个对象类组成一个层次结构的系统。 (4)对象彼此之间仅能通过传递消息互相联系。

15、答:用最小的代价在尽可能短的时间内确定问题是否能够解决。

(1)技术可行性 (2)经济可行性 (3)操作可行性 (4)法律可行性

16、答:软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。要素是:方法、工具、过程。 17、答:(1)模块测试(2)子系统测试(3)系统测试(4)验收测试(5)平行运行 18、答:(1)对象是具有相同状态的一组操作的集合。(2)对象是对属性值和操作的封装。(3)对象::= ID:是对象的标识或名字 MS是对象中的操作集合 DS:是对象的数据结构 MI :是对象受理的消息名集合

19、答:1、归纳关系:它反映了一个类与若干个互不相容的子类之间的分类关系。 2、组合关系:它反映了对象之间的构成关系。

13

3、关联关系:反映对象之间相互依赖、相互作用的关系。 20、答:(1)在整个开发过程中需求都可能有变化。(2)对应用领域不熟悉。 (3)高风险项目(4)用户完全参与到整个开发过程中。 (5)使用面向对象语言或第四代语言。 21、答:(1)设想供选择的方案。(2)选取合理的方案。 (3)推荐最佳方案。(4)功能分解。(5)设计软件结构。(6)数据库设计。 (7)制定测试计划(8)书写文档(9)审查和复审 22、答:(1)货币的时间价值(2)投资回收期(3)纯收入(4)投资回收率 23、答:(1)与人类习惯的思维方法一致。 (2)稳定性好。(3)可重用性好。(4)可维护性好。 五、论述题 1、

2、答 :(1)在任何大型程序的使用期间,用户必然会发现程序错误,并且把他们遇到的问题报告给维护人员。我们把诊断和改正错误的过程称为改正性维护。

(2)计算机科学技术领域的各个方面都在迅速进步,经常推出新的操作系统或旧的系统的修改版本,时常增加或修改外部设备和其他系统部件;另一方面,应用软件的使用寿命却很容易超过十年,远远长于最初开发这个软件时的运行环境的寿命。因此为了和变化了的环境适当的配合就需要进行修改软件的活动。

(3)在使用软件的过程中用户往往提出增加新功能或修改已有功能的建议,还可能提出一般性的改进意见。为了满足这类要求需要进行完善性维护。

(4)当为了改进未来的可维护性或可靠性,或为了给未来的改进奠定更好的基础而修改软件。 3、

14

4、答:本题能举三个以上例子就得满分。(1)系统软件,操作系统、网络软件,和种语言的编译程序等。(2)实时软件,实时监控功能领域。(3)嵌入式软件,航空航天系统,指挥控制系统等(4)科学和工程计算软件,弹道计算,地震数据处理,数据值天气预报等(5)人工智能软件等。 5

6、答:(1)软件的可靠性是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。它上随着运行时间的增加,运行时遇到的程序故障的概率也是增加的,所以可靠性是减少的。 (2)测试可以暴露程序中的错误,因此是保证软件可靠性的重要手段;但是,测试只能证明程序中有错误,并不能证明程序中没有错误。因此,对于保证软件可靠性来说,测试是一种不完善的技术。

(3)一旦研究出实用的正确性证明程序,软件可靠性将更有保证,测试工作量将大大减少,但是,即使有了正确性证明程序,软件测试也仍然是需要的,因为程序正确性只能证明程序功能是正确的,并不能证明程序的动态特征是符合要求的。所以测试不是软件质量的安全网。 7、

15

8、答:(1)测试的任务是尽可能多地暴露程序中的错误。但是,发现错误的最终目的还是为了改正错误。软件工程的根本目标是以较低成本开发出高质量的完全符合用户要求的软件,因此,在成功的测试之后,还必须进一步诊断和改正程序中的错误,这就是调试的任务。

(2)调试过程由两个步骤组在,首先,确定错误的准确位置,也就是找出是哪个模块或哪些接口引起的错误;然后,仔细研究这段代码以确定问题原因,并设计改正错误。其中第一步所需的工作量大约占调试总工作量的95%。

(3)调试是软件开发过程中最艰巨的脑力劳动。调试开始时,软件工程师仅仅面对着错误的征兆,然而在问题的外部现象和内在原因之间往往并没有明显的联系,在组成程序的数据以万计的元素中,每一个都有可能是错误的根源。所以调试的工作量是十分艰巨的。

9、答:N—S图

10、答:影响维护的因素有(1)可理解性,软件可理解性表现为外来读者理解软件的结构、接口、功能和内部过程的难易程度。模块化、详细的设计文档、结构化设计、源代码内部的文档和良好的高级程序设计语言等,都对改进软悠扬的可理解性有重要贡献。 (2)可测试性,诊断和测试的难易程度主要取决于软件容易理解的程度。良好的文档对诊断和测试是至关重要的。此外,软件结构、可用的测试工具和调试工具,以及以前设计的测试过程也都是非常重要的。

(3)可修改性,软件的设计原理、规则、模块的耦合、内聚、局部化、控制域与作用域等都影响软件的可修改性。

16

17

搜索更多关于: 软件工程复习题[1] 的文档
软件工程复习题[1].doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c6wsbi4kch57e16h2fc0z_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top