填空
(1)一般来说,好的软件开发环境应采用 和集成化CASE环境 (2)软件由程序、 、 组成
(3)软件工程采用层次化的方法,每个层次都包括 、方法、 三要素 (4)在分析过程中用来描绘物理系统的图形工具是 (5)需求分析阶段产生的文档是
(6)需求分析包括: 的分析方法、面向过程流的分析方法
(7)在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是 关系
(8)数据流图用图形符号表示 、 、数据源及外部实体
(9)一个模块拥有的直属下级模块的个数称为 ,一个模块的直接上级模块的个数称为
(10)从工程管理的角度看,软件设计可分为 和 两大步骤
(11)软件详细计算阶段的输出结果为 ,此文档经严格复审后将作为 阶段的输入文档
(12)软件工程设计中最常用的技术和工具主要为 、 、 、盒图 、和PDL语言
(13)单元测试过程应为测试模块开发一个 和(或)若干个
(14)设计用户界面要充分考虑到 ,还要考虑 ,可用的软、硬件技术及应用本身产生的影响
(15)软件测试既是软件开发阶段的最后一个活动,又是软件质量保证的最后一项措施。它所用的主要技术分为 和 两大类
(16)维护是指软件在交付使用后,为 或 而修改软件的过程 (17)逆向工程与 是目前预防性维护采用的主要技术
(18)在面向对象的概念中, 是由某个特定类描述的一个具体的对象
判断
(1)一个优秀的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力( )
(2)一个优秀的开发人员不必非要具有良好的书面和口头表达能力,只要程序写的好就没问题了( )
(3)软件维护的副作用指由于维护或在维护过程中其他一些不期望的行为引入的错误( )
(4)耦合是影响软件复杂度的重要因素。设计时应尽量使用内容耦合,少用控制耦合和特征耦合,限制公共环境耦合,完全不用数据耦合( )
(5)需求分析主要内容包括:问题分析、需求描述、需求评审( ) (6)如果大量测试没有发现任何错误,可以说明软件没有错误( )
(7)编程风格是在提高性能的前提下,有效地编排和组织程序以提高可读性和可维护性( )
(8)数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合( )
(9)程序的可靠性、可维护性和效率通常只由程序设计语言、源代码的质量和语言的实现机制决定的( )
(10)完成测试工作后,为了缩短源程序的长度应删去源程序中的注释( ) (11)难以控制开发进度和工作量估计困难是软件危机的主要表现之一( )
(12)系统响应时间是指当用户执行了某个控制动作后(例如,按回车键,点鼠标等),系统作出反映的时间( )
(13)在模块化原理中,模块的控制域应该在作用域之内( )
(14)需求分析主要内容包括:问题分析、需求描述、需求评审( )
(15)原型是目标软件系统的一个可操作模型,它实现了目标软件系统的某些重要方面( )
(16)即使测试过程没有发现任何错误,也不能说明软件没有错误( )
(17)编程风格是在提高性能的前提下,有效地编排和组织程序以提高可读性和可维护性( )
(18)采用信息隐藏原理指导模块设计可以支持模块的并行开发,减少软件测试和软件维护的工作量( )
(19)程序的可靠性、可维护性和效率通常只由程序设计语言、源代码的质量和语言的实现机制决定的( )
(20)模块接口设计要简单,以便降低复杂程度和冗余度( )
(21)过程式程序设计语言的基本机制包括:消息传递、数据类型的定义、多态、子程序、控制结构( )
(22)软件=“完成特定功能的程序+数据结构+文档” ( )
(23)制定软件项目进度表的途径之一是软件开发小组根据提供软件产品的最后期限从后往前安排时间( )
(24)在模块化原理中,模块的作用域应该在控制域内( )
(25)瀑布模型在实际的项目中严格顺序执行就基本可以成功( ) (26)只要实行严格的产品控制域就不用担心用户随意改需求( ) (27)确定测试任务是根据软件需求严格说明书,测试软件系统是否满足用户的需求( ) (28)需求分析阶段所生成的文档主要是进度计划和可行性研究报告( )
(29)确定测试任务是根据软件需求规格说明书,测试软件系统是否满足用户的需求( ) (30)软件就是完成特定功能的程序的集合( )
(31)制定软件项目进度表的途径之一是软件项目开发组织根据项目和资源情况制定软件项目开发的初步计划和交付软件产品的日期( )
(32)在模块化原理中,模块的作用域应该在控制域内( )
(33)过程式程序设计语言的基本机制包括:消息传递、数据类型的定义、多态、子程序、控制结构( )
(36)只要完成了软件的测试工作,将软件产品交给用户,软件生命周期就结束了( ) (37)重构工程也称修复和改造工程,它是在逆向工程所获信息的基础上修改或重构已有的系统,产生系统的一个新版本( )
(38)面向对象方法中的对象就相当于结构化方法中的模块( )
(39)面向对象中的继承是指子类能够直接获得父类已有的性质和特征,但需要重新定义( )
(40)对象之间的通信仅通过消息传递机制( )
简答题
(1) 简述软件工程的基本原理。P3
解:1分阶段的生命周期计划严格管理 2坚持进行阶段评审 3实行严格的产品控制 4采用现代程序设计技术 5结果应能清楚地审查
6开发小组的人员应当少而精
7承认不断改进软件工程时间的必要性
(2) 简述软件工程中的瀑布模型及其特点P6
解:瀑布模型又称为经典生命周期模型,是软件工程中应用最为广泛的过程模型。它可以完整的描述传统软件工程方法学中的软件过程。
第一,各阶段之间有依赖性和严格的顺序性;第二,推迟实现;第三,严格的阶段质保;第四,文档驱动
(3) 研究软件工程项目的可行性应从那几个方面分析?P10
解:1.技术可行性(1)技术(2)资源的有效性(3)开发的风险 2.经济可行性 3.操作可行性 4.社会可行性
(4) 需求分析中对系统的综合要求包括哪些方面?P21
解:1功能性需求 2非功能性需求:(1)可用性,(2)可靠性,(3)性能,(4)可支持性,(5)外部接口需求,(6)约束信息
(5) 简述软件工程中需求分析的基本任务P21
解:1.确定系统的综合要求 2.分析系统的数据要求 3.建立软件的逻辑模型
4.编写软件需求规格说明书 5.需求分析评审
(6) 已知某学校教务管理系统中规定:每个教师(教工号,姓名,
性别,职称,职务)可以教多门不同的课程(课程号,课名,学时,学分),每门课程只能由一个老师来教,每个学生(学号,姓名,性别,系,年级)可以学习多门课程并取得成绩。每门
相关推荐: