1、软件工程判断(15%)1 软件工程使用的软件工具能够自动地支持软件的开发、管理和文档的生成.F2 验收的依据是需求说明书.F(规格说明书)3 需求规格说明书是在计划时期可行性研究阶段产生的文档.F(可行性探究报告)4 需求分析阶段的成果主要是需求规格说明,但该成果与软件设计、编码、测试直至维护关系不大.F5 软件开发人员对用户需求的理解有偏差,这将导致软件产品与用户的需求不一致,是产生软件危机的唯一原因(F)6 软件生命周期中,测试的工作量最大.T7 编码时应尽可能使用全局变量F8 程序的可靠性、可维护性和效率通常由程序设计语言、源代码的质量和语言的实现机制决定F9 一个模块的扇入是指该模块被
2、其它模块调用的个数,扇入应尽可能的小.F10 概要设计也称总体设计,其过程由确定设计方案和结构设计两个阶段组成T11 系统测试是把软件、硬件、和环境连在一起的全面测试. F(系统测试是把经过测试的子系统装配成一个完整的系统来测试)12 尽可能在软件生产过程中保证各阶段文件的正确性.T13 完成测试作业后,为了缩短源程序的长度应删去源程序的注释F14 如果测试过程没有发现任何错误、则说明软件没有错误F15 内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越低越好F16 快速原型的技术适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合F
3、(不适合复杂的算法)17 文档记录软件开发活动和阶段成果,具有永久性,可供人或机器阅读T18 面向对象方法中的对象就是结构化方法中的模块F(对象不对应模块)19 黑盒测试法可有效的检查模块的内部逻辑结构的正确性F(完全不考虑程序内部结构和处理过程)20 软件需求是指用户对目标软件系统在功能、性能、行为、设计约束等方面的期望.F(分析员+用户)21 缺乏有力的方法学的指导和有效地开发工具的支持,这往往是产生软件危机的原因之一T22 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力F23 一个好的开发人员应具备的素质和能力包括善于分析和综合问题,具有严密的逻辑思维能力T24 软
4、件是开发的而不是制造的,软件不磨损但退化.T25 需求分析任务不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作。T26 一个模块的规模应该尽可能的大.F(应该适中)27 详细设计不等于编写程序,而是设计出程序的蓝图.T28 程序都有错误T29 程序是为了证明程序有错而不是证明程序无错.T软件工程名词解释(10%)1 软件:完成特定功能的程序+数据结构+文档2 软件危机:指计算机软件的开发和维护过程中所遇到的一系列严重问题3 软件工程:指导计算机软件开发和维护的一门工程学4 软件生命周期:一个软件从定义、开发、使用和维护直至最终被废弃,要经历的漫长时期5 数据流图:一种图形化技术,
5、它描绘信息流和数据从输入移动到输出过程中所经受的变换6 数据字典:数据字典是关于数据数据信息的集合,也就是对数据流图中包含的所有元素的定义集合7 概念性数据模型(ER图):是一种面向问题的数据模型,按照用户的观点对数据建立模型8 数据对象:是对软件必须理解的复合信息的抽象9 复合信息:指具有一系列不同性质或属性的事物,仅有单个值的事物不是数据对象10 模块:由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表他11 模块化:把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能12 模块独立:每个模块完成一个相对独立的特定子功能,并且和其他模块关系简单13 结构程序设计经典定义
6、:如果一个程序代码块仅仅通过顺序 选择和循环三种基本控制结构进行连接,且每个代码块只有一个入口一个出口,则称这个程序结构化14 结构化程序设计更全面定义:尽可能少用GO TO语句的程序设计方法,最好仅在检测出错误时才使用,而且应该总是使用前项GO TO语句15 耦合:是对一个软件结构内不同模块间互联程度的度量16 内聚:标志着一个模块内各个元素彼此之间互联程度的度量17 编码:就是把软件设计结果翻译成用某种程序设计语言书写的程序18 编码风格:指不影响程序正确性和效率的前提下,有效编排和合理组织程序的基本原则19 白盒法:按照程序内部的逻辑测试程序,检测程序中重要执行通路是否都按预定要求正确工
7、作(结构测试)20 黑盒法:是在程序接口进行的测试,它只检查程序功能是否按规格说明书的规定正常使用,程序是否能适当的接收输入信息并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性(功能测试)21 软件的可靠性:是程序在给定的时间间隔内,按照规格说明书规定成功地运行概率22 软件可用性:是程序在给定的时间点,按照规格说明书规定成功地运行概率23 软件维护:是软件已经交付使用后,为了改正错误或满足新的需要而修改的软件的过程24 对象:由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体25 类:是对具有相同属性和行为的一个或多个对象的描述26 实例:由某个特定的类
8、所描述的一个具体对象27 消息:要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明28 方法:就是对象所能执行的操作,也就是类中所定义的服务29 属性:就是类中所定义的数据,它是对客观世界实体所具有的性质抽象30 继承:广义的说是指能够直接获得已有的性质和特征,而不必重复定义它们 狭义的说是子类自动地共享基类中定义的数据和方法的机制31 面向对象分析:抽取和整理用户需求并建立问题域精确模型过程32 软件设计:从抽象概括到具体实践过程33 抽象:抽出事物的本质特征而暂时不考虑它们细节34 逐步求精定义:为了能集中精力解决主要问题而尽量推迟对问题细节考虑35 局部化指:把一些关系密切的软件元素物理放的彼此靠近36 深度表示软件结构中控制的层数,它往往能错略标志一个系统的大小和复杂程度37 宽度是软件结构内同一个层次上模块总数的最大值。宽度越大系统越复杂38 扇出是一个模块直接控制的模块数目,扇出过大或过小都不好39 扇入是有多少上级模块直接调用它,扇入越大则共享该模块的上级模块数目越多这是有好处的 但也不能违背模块独立原理单纯追求高扇入