全国20XX年1月高等教育自学考试 软件工程试题 课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的。请将其代码填写在题后的括号 B )
A.软件是一种逻辑产品 B.软件产品存在磨损问题 C.软件的生产主要是研制 D.软件费用不断增加 2.以下属于形式化开发方法的是( C ) A.结构化开发方法 B.Jackson开发方法 C.维也纳开发方法 D.面向对象开发方法
3.数据字典定义数据流或数据存储组成时所使用的符号(‥‥)表示( D ) A.可选 B.与 C.或 D.重复
4.IDEF是IDEF方法的一部分,用于建立系统的( A ) A.功能模型 B.信息模型 C.动态模型 D.关系模型
5.软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D ) A.公共耦合 B.控制耦合 C.标记耦合 D.数据耦合
6.把需要同时执行的动作组合在一起形成模块,该模块的 C ) A.顺序内聚 B.逻辑内聚 1
C.时间 D )
A.历史悠久 B.使用广泛
C.支持程序的三种基本控制结构 D.可以随心所欲地画控制流程线的流向 8.Jackson结构图的三种基本结构是( B )
A.顺序结构、选择结构、层次结构 B.顺序结构、选择结构、重复结构 C.层次结构、选择结构、重复结构 D.顺序结构、层次结构、重复结构 9.以下属于面向对象程序设计语言的是( A ) A.Java语言 B.C语言
C.Pascal语言 D.Prolog语言
10.以下四种逻辑覆盖中,发现错误能力最强的是( D ) A.语句覆盖 B.条件覆盖 C.判定覆盖 D.条件组合覆盖
11.软件工程领域中,与集成测试有关的软件开发阶段是( C ) A.编码 B.详细设计 C.概要设计 D.需求分析
12.软件维护的副作用不.包括( D )
A.编码副作用 B.数据副作用 C.文档副作用 D.效率副作用
13.原型的优点不.包括( A )
A.对设计人员水平及开发环境要求不高 B.可及早为用户提供有用的产品 C.可及早发现问题,随时纠正错误 D.可减少技术、应用的风险
14.UML统一了三种面向对象方法的表示方法,这三种面向对象方法是( B )
A.Coad方法、OMT方法、OOSE方法 B.Booch方法、OMT方法、OOSE方法
C.Booch方法、Coad方法、OOSE方法 D.Booch方法、OMT方法、Coad方法
15.面向对象的类层次结构中,聚集关系是一种( B ) 2
A.“一般——特殊”关系 B.“整体——部分”关系 C.“相互依赖”关系 D.“一般——具体”关系
16.软件质量特性中,“软件系统按照设计要求,在规定时间和条件下不出故障,持续运行的程度”对应的特性是( C ) A.正确性 B.完整性 C.可靠性 D.可用性
17.软件工程标准中,IEEE属于( A ) A.国际标准 B.国家标准 C.行业标准 D.企业规范
18.与“项目开发计划”文档有关的人员是( A ) A.管理人员和开发人员 B.开发人员和维护人员 C.开发人员和用户 D.管理人员和用户
19.软件工具的三个组成部分不.包括( D ) A.工具 B.工具接口
C.工具用户接口 D.编译系统 20.软件复杂性度量的参数中,由程序中出现的操作数数目所决定的量表示的参数是( A ) A.规模 B.难度 C.结构 D.智能度
二、填空题(本大题共10小题,每小题2分,共20分) 请在每小题的空格上填上正确答案。错填、不填均无分。
21.软件工程研究的主要内容是软件开发技术和___管理___两个方面。
22.软件可行性研究从技术可行性、___经济可行性___、社会可行性三个方面分析研究每种解决方案的可行性。 23.需求分析的基本任务是准确地定义新系统的目标,回答___做什么___的问题。 24.一个模块的作用范围指受该模块内一个___判定___影响的所有模块的集合。 25.PAD图是日本日立公司提出的一种___详细设计___工具。 3
26.程序的注释分___序言性___和功能性注释。
27.G.J.Myers提出:软件测试是为了发现___错误___而执行程序的过程。 28.软件维护的内容有四种:校正性维护、___适应性维护___、完善性维护和预防性维护。 29.面向对象分析模型有三种,分别是:对象模型、___动态模型___和功能模型。 30.对面向对象软件的测试可分为四个层次进行,这四个层次是:算法层、类层、___主题层___和系统层。
三、名词解释题(本大题共5小题,每小题3分,共15分) 31.软件生存周期模型
软件生存周期模型是描述软件开发过程中各种活动如何执行的模型 。 32.数据流图
一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。
33.白盒测试法
该方法把测试对象看作一个透明的盒子,测试人员能了解程序的内容结构和处理过程,以检查处理过程为目的,对程序中尽可能多的逻辑路径进行测试,在所有的点检查内部控制结构和数据结构是否和预期相同。 34.软件质量
是软件与明确地叙述的功能和性能需求,文档中明确描述的开发标准以及任何专业开发的软件产品都应该具有的隐含特性相一致的程度。 35.信息隐蔽
设计和确定模块,使得每一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说是不能访问的。
四、简答题(本大题共4小题,每小题5分,共20分) 36.简述软件危机产生的原因。
1、软件规模越来越大,结构越来越复杂。随着计算机应用的日益广泛,需要开发的软件规模日益庞大,软件结构也日益复杂。
2、软件开发管理困难。由于软件规模大,结构复杂,又具有无形性,因此导致管理困难,进度控制困难,可靠性无法保证。
3、软件开发费用不断增加。软件是一种手智力劳动,它是资源密集、人力密集的产业,大型软件投入人力多,周期长,费用上升很快。
4、软件生产落后。仍然采用个体手工开发方式,根据个人习惯工作爱好工作,无章可循,无规范可依据,仅靠言传身教方式工作。 5、软件开发落后。 4
6、软件开发工具落后,生产率的开发速度缓慢。 37.简述结构化分析的步骤。 1、建立现行系统的物理模型
通过了解现行系统的工作过程,对现行系统的详细调查,收集资料。将看到的、听到的、收集到的信息和情况使用图形或文字描述出来。 2、抽象出现行系统的逻辑模型
运用抽象原则对物理模型进行认真的分析,区别本质因素和非本质因素,去掉非本质因素,形成现行系统的逻辑模型。