软件工程复习题 联系客服

发布时间 : 星期一 文章软件工程复习题更新完毕开始阅读4a0a0975a8114431b90dd873

50. 结构环境图建立了待实现系统与系统运行环境之间的_____信息边界___________。

51. 软件_____质量保证___________是指为保证产品和服务充分满足消费者要求的质量而进行的有计划、

有组织的活动。

52. 程序效率是指程序的____执行速度__以及程序___占用的存储空间___。

53. 软件需求分析将____软件计划___阶段所确定的软件范围逐步细化到可详细定义的程度,并分析出各

种不同的软件元素,然后为这些元素找到可行的__解决方法__。 54. 软件的____可靠______性表明了一个程序按照用户的要求和设计的目标,执行其功能的正确程度。 55. 软件的可移植性是指当把软件移植到不同的运行环境时,不需改变其___规格______就能照原样工作

的特性。

56. 大型软件是指由_____5到10_____人在两年多的时间里完成的5万到10万行的程序。 57. SC图中_____模块________是用矩形框来表示的。

58. 为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的错误使用,应当进行的诊断和改正

错误的过程,叫做_____改正______性维护。 59. ___软件的需求______是软件发展的动力。

60. 测试用例是指输入数据及其__________预期的输出结果________________。 61. 软件是一种_____逻辑________实体。

62. JSD方法把____数据结构__的描述映射成程序结构描述。 63. JSD方法以_____进程模型_________来反映现实系统的抽象。 64. 瀑布模型最突出的缺点是缺乏__灵活__性。

65. 判定覆盖是通过测试使得程序中____每一判定的每一分支____至少执行一次。 66. OMT是指________对象模型技术____________________。 67. 软件需求的__逻辑_描述是软件设计的基础。

68. 模块内的所有功能部分都是基于同一数据结构,则它属于______信息内聚_________模块。 69. 软件效率应以_____需求_________为准,不以人力所及为准。

70. 度量模块独立性的两个准则是模块间的____耦合_____和模块的__内聚_______。 71. 在需求分析过程中___数据模型___是首先要集中考虑的问题。 72. Goto语句对程序的______清晰性________有很大的破坏作用。

73. _______数据结构_________是数据的各个元素之间的逻辑关系的一种表示。 74. 第一个真正广泛使用的高级语言是_____PL/1________ 三、简答与应用

1. 试述调试的原则。

参考答案纲要: (另请参考教材P254进行更详细的阐述。)

在确定错误的性质和位置时应该用头脑去分析思考,避开死胡同,适当借助调试工具,避免用试探法 在修改错误时应该注意错误错误的群集现象,修改要彻底,避免引入新的错误,修改源代码而不是修改目标程序

5 / 10

2. 哪几种情况的软件可以称为容错软件?它们有哪些共同的方面?

教材P362~363。分4种情况,有3种共同面。

3. 什么是软件工程?它包括哪些要素?各要素的作用是什么? 参考答案纲要: (另请参考教材P15进行更详细的阐述。)

软件工程是指用工程化的原则(科学的方法技术和管理手段)进行软件的开发和维护。 软件工程的三要素是:方法、工具和过程

软件工程方法为软件开发提供了“如何做”的技术;软件工具为软件工程方法提供了自动或半自动的支撑环境;软件工程的过程是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。 4. 试述白盒测试和黑盒测试的特点和测试内容。

参考答案纲要: (另请参考教材P208-209进行更详细的阐述。)

1) 黑盒测试把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只

依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此墨盒测试又叫做功能测试或数据驱动测试。 2) 白盒测试是对软件的过程性细节做细致的检查。这一方法是把测试对象看作一个打开的盒子,它

允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。 5. 系统工程师在需求分析中扮演着什么样的角色?它(们)应具备什么样的素质? 参考答案纲要: (另请参考教材P42-46进行更详细的阐述。)

系统工程师处于用户和高级程序员之间,负责沟通用户和开发人员的认识和见解,起着桥梁的作用。 系统工程师应当具备如下6个方面的素质:

1) 能够熟练地掌握计算机硬、软件的专业知识,具有一定的系统开发经验。

2) 善于进行抽象的思维和创造性的思维,善于把握抽象的概念,并把它们重新整理成为各种逻辑成

份,并给出简明、清晰的描述。

3) 善于从相互冲突或混淆的原始资料中抽出恰当的条目来。

4) 善于进行调查研究,能够很快学习用户的专业领域知识,理解用户的环境条件 5) 能够倾听他人的意见,注意发挥其它人员的作用。 6) 具有良好的书面和口头交流表达能力。 6. 简述在编码阶段实现算法的指导原则。

参考答案纲要: (另请参考教材P189进行更详细的阐述。)

1) 在编程序前,尽可能化简有关的算术表达式和逻辑表达式;

2) 仔细检查算法中的嵌套的循环,尽可能将某些语句或表达式移到循环外面; 3) 尽量避免使用多维数组;

4) 尽量避免使用指针和复杂的表; 5) 采用“快速”的算术运算;

6) 不要混淆数据类型,避免在表达式中出现类型混杂; 7) 尽量采用整数自述表达式和布尔表达式; 8) 选用等效的高效率算法。 7. 为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员键入系统。如果是

存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。

6 / 10

要求:画出数据流程图和软件结构图。 参考数据流程图:

参考软件结构图:

8. 试述Pressman对数据规格说明的原则。

参考答案纲要: (另请参考教材P110进行更详细的阐述。)

有如下7个原则:

1) 用于软件的系统化方法也适用于数据

2) 要确定所有的数据结构和在每种数据结构上施加的操作 3) 应当建立一个数据字典并用它来定义数据和软件的设计 4) 低层数据设计的决策应推迟到设计过程的后期进行

5) 数据结构的表示只限于那些必须直接使用该数据结构内数据的模块才能知道 6) 应当建立一个存放有效数据结构及相关操作的库

7) 软件设计和程序设计语言应当支持抽象数据类型的定义和实现 9. 结构化程序设计有哪些原则?

教材P175~176。包括6条原则!

10. 某业务是将学员发来的信件收集分类后,按几种不同的情况处理。

1) 如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否

额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。 2) 如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修

改,并给学生注销单。

3) 如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。

要求:画出数据流程图和软件结构图。

7 / 10

参考数据流程图:

参考软件结构图:

11. 有人说软件就是程序,这种说法正确吗?请从软件的概念分析你的结论。 参考答案纲要: (另请参考教材P1进行更详细的阐述。)

软件≠程序,软件=程序+数据+文档。

其中程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文材料。

将软件片面的同程序等同起来,没有清楚地认识到文档的重要性。

12. 简述UML中视图、图的概念。说明视图与图的关系,说明各种视图、各种图的作用。 答:视图用来表示被建模系统的各个方面。

视图由多个图(Diagrams)构成,它不是一个图片(graph), 而是在某一个抽象层上对系统的抽象表示。

如果要为系统建立一个完整的模型图,只需定义一定数量的视图,每个视图表示系统的一个特殊的方面。

有5种视图,分别是

1) 用例视图(Use-case view):用于描述系统应该具有的功能集,它是系统的外部用户所能观察到

的系统功能的模型图。 2) 逻辑视图(Logical view):展示了系统内部如何提供系统的功能。它利用系统的静态结构和动态

行为来刻画系统功能, 3) 构件视图(Component view):用来显示代码构件的组织方式。它描述了实现模块(implementation

module)和它们之间的依赖关系。 4) 并发视图(Concurrency View):用来显示系统的并发工作状况

部署视图(Deployment View):用来显示系统的物理架构,即系统的物理部署。

UML 中包含用例图、类图、对象图、状态图、顺序图、协作图、活动图、构件图、部署图共九种。 1) 用例图定义的是系统的功能需求

2) 类图用来表示系统中的类和类与类之间的静态关系。

3) 对象图是类图的一个实例。它及时具体地反映了系统执行到某处时系统的工作状况。 4) 状态图显示了类的所有对象可能具有的状态以及引起状态变化的事件。

8 / 10