第一章
1.填空
(1)软件是计算机系统中的___程序(指令)__、数据及其__文档(+服务)___的总称。(2)软件的类型按功能可以分为___系统软件___、__支撑软件___和___应用软件__3中类型。
(3)国家标准GB/T 1147—1995《软件工程术语》对软件工程的定义是软件开发、运行、维护和引退________系统方法_______。
(4)软件工程是指导计算机______软件开发和维护____的工程学科。
(5)软件工程采用_____工程的概念、原理、技术和方法_____来开发与维护软件。
(6)软件工程的目标是____实现软件的优质高产______。
(7)软件工程的主要内容是_____软件开发技术和软件工程管理_____。
2.选择。
(1)下面(B)不是软件的特征。
A系统性与复制性B有形性与可控性C抽象性与智能性D依附性与泛域性
(2)下面(D)不是系统软件。
A.BIOS    B.Windows    C.设备驱动程序  D.办公软件
(3)软件危机的主要原因(A)
A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后
(4)下面(C)不属于软件工程学科所要研究的基本内容。
A软件工程原理B软件工程目标C软件工程材料D软件工程过程
(5)下面(B)是正确的说法。
A.20世纪50年代提出了软件工程的概念
B. 20世纪60年代提出了软件工程概念
C. 20世纪70年代出现了客户机/服务器技术
D. 20世纪80年代软件工程学科达到成熟
.
第二章
1.填空
(1)___软件可行性分析____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否得去开发。
(2)可行性分析的目的不是去开发一个软件项目,而是研究这个软件项目内容是否____值得去开发、其中的问题能否解决___。
(3)可行性分析实质上是要进行一次简化,压缩了的___ 需求分析____和___设计____过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。
(4)可行性分析需要从___技术____可行性、___经济____可行性和___社会____可行性3个方面分析研究每种解决方法的可行性。
(5)技术可行性是对要开发项目的___功能____、___性能____、___控制条件____进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。
(6)技术可行性一般要考虑的情况包括___开发的风险____、___资源的有效性____、___技术____。
(7)技术可行性的研究包括___成本—效益分析____、____公司经营长期策略___、__开发
所需的成本和资源___、_潜在的市场前景_。
(8)社会可行性所涉及的范围包括___合同____、___责任____、___侵权____、用户组织的管理模式、规范及其他一些技术人员常常不了解的陷阱等。
(9)典型的可行性分析有这样的步骤:确定项目规模和目标、___研究正在运行的系统____、___建立新系统的高层逻辑模型____、导出和评价各种方案、推荐可行的方案和编写可行性分析报告。
(10)一个可行性分析报告的主要内容有:引言、可行性分析的前提、对现有系统的分析、____所建议系统的技术可行性分析___、___系统的经济可行性分析____、____社会因素可行性分析___、其他可供选择的方案和结论意见。
(11)成本—效益分析首先是估算将要开发的系统___开发成本___,然后与可能取得的效益进行____比较和权衡___。
(12)效益分析有有形效益和无形效益两种。有形效益可以用____货币的时间价值___、____投资回收期___和____纯收入___等指标进行度量;无形效益主要从性质上、心理上进行衡量,很难直接进行量的比较。
(13)____投资回收期___就是使累计的经济效益等于最初的投资费用所需要的时间。项目____纯收入___是指在整个生存周期之内的累计经济效益(折合现在值)与投资之差。(14)项目开发计划的主要内容有:项目概述、___实施计划____、___人员组织____和交付期限。
(15)纯收入是软件生存周期内两项值之差,这两项是___经济效益____与___投资____。(16)软件工程有两种效益,它们是___无形效益____和___有形效益____。
(17)可行性分析具体步骤的最后一步是___编写可行性报告____。
(18)系统的经济效益等于___因使用新的系统而增加的收入____加上___使用新的系统可以节省的运行费用____。
(19)成本—效益分析的目的是从___经济角度____评价开发一个新的软件项目是否可行。(20)可行性分析中描述系统高层物理模型的工具是____系统流程图___。
(21)可行性分析实质上是进行一次简化、压缩了的___需求分析和设计____。
(22)可行性分析的第一个具体步骤是___确定项目的规模和目标____。
2.选择。
(1)研究开发资源的有效性是进行(A)可行性分析的一个方面。
A技术B经济C社会D操作
(2)在软件的可行性分析中,可以从不同的角度对软件进行研究,其中从软件的功能可行性角度考虑的是(B)
A经济可行性B技术可行性C操作可行性D法律可行性
(3)在遵循软件工程原则开发软件过程中,计划阶段应该依次完成(B)。
A软件计划、需求分析、系统定义B系统定义、软件计划、需求分析
C需求分析、概率设计、软件计划D软件计划、需求分析、概率设计
(4)技术可行性要解决(D)
A存在侵权否B成本—效益问题C运行方式可行D技术风险问题
(5)在软件项目中,不随参与人数的增加而使软件的生产增加的主要问题是(D)
A工作阶段间的等待时间B生产原型的复杂性
C参与人员所需的工作站数D参与人员之间的通信困难
(6)制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是(D)。
A组织与管理B分析与估算C设计与测试D规划与调度
(7)研究软硬件资源的有效性是进行(A)研究的一方面。
A技术可行性B经济可行性C社会可行性D操作可行性
(8)可行性的分析要进行的需求分析和设计应是(A)。
A详细的B全面的C简化的、压缩的D砌底的
第三章
1.填空。
(1)用于描述基本加工说明的3种描述工具是__结构化语言、判定表和判定树__。
(2)数据字典中有4类条目,分别是__数据流、数据项、数据存储和基本加工__。
(3)需求分析阶段产生的最重要的文档是__需求规格说明书__。
(4)DFD利用图形符号表示系统的传统工具,它利用__信息流动__来表示系统中的各个元素。
(5)DFD是描述系统的传统工具,它用__图形符号__来表示系统中的各个元素。
2.选择。
(1)软件质量必须从软件分析开始,在(D)加以保证。
A开发之前B开发之后C可行性研究过程D整个开发过程
(2)SA方法的基本思想是(C)。
A自底向上逐步抽象B自底向上逐步分解
C自顶向下逐步分解D自顶向下逐步抽象
(3)DFD是常用的进行软件需求分析的图形工具,其基本符号是(C)。
A输入、输出、外部实体和加工
B变换、加工、数据流和存储
C加工、数据流、数据存储和外实部体
D变换、数据存储、加工个数据流
(4)判断表和判断树是DFD中用以描述加工的工具,它通常描述的对象是(D)。
A逻辑判断B层次分解C操作条目D组合组件
(5)系统流程图用于可行性分析中的(A)的描述。
A当前运行系统B当前逻辑模型C目标系统D新系统
(6)系统流程图是描述(D)的工具。
A逻辑系统B程序系统C体系系统D物理系统
(7)在程序的描述和分析中,用于指明数据来源、流向和处理的辅助图形是(B)。
A数据结构图  B.DFD C业务结构图D其他图
(8)U/C矩阵是用来进行(C)的方法。
A系统方法B系统分析C子系统划分D系统规划
(9)需求规格说明书的作用不应该包括(D)。
A软件设计的依据B用户与开发人员对软件要做什么的共同理解
C软件验收的依据D软件可行性研究的依据
第四章
1.填空。
(1)总设计又叫做__概要设计__。
(2)在设计阶段,要充分体现软件工程“__模块化__”、“抽象”“信息隐蔽”等基本原则。
(3)系统详细设计阶段最后产生的文档是__详细设计说明书__。
(4)浮动位置菜单又叫做__弹出式菜单__。
(5)数据的显示形式主要包括字符显示和__图形显示__。
2.选择。
(1)以下(D)不属于系统设计。
A总体设计B详细设计C过程设计D需求设计
(2)为了提高模块的独立性,模块之前最好是(C)。
A公共耦合B控制耦合C数据耦合D内容耦合
(3)详细设计的任务上是确定每个模块的(B)。
A外部特性B算法和数据结构C内部特性D功能
(4)数据库设计时的概念数据模型一般用(B)图表示。
A.PAD
B.E-R
C.E-P
D.HIPO
(5)以下(C)不属于报告的布局。
A快结构表B列表报表C栈结构表D组结构表
第五章
1.填空。
(1)在面向对象分析和面向对象设计中,通常把对象的操作称为__方法或服务__。
(2)对象的抽象是__类__,类的实例化是__对象__。
(3)面向对象的程序设计语言应具备对象方法所要求4个成分,它们是__类__、__对象__、__继承__、__消息通信__。
(4)可能的潜在对象有7类,它们是__外部实体__、__事物__、__事件__、__角__、__场所或位置__、__组织机构__、__结构__。
(5)具有__相同特征和行为__的对象构成类。
2.选择。
(1)汽车有一个发动机,汽车和发动机之间的关系是__B__关系。
A一般具体B整体部分C分类D组装
(2)在面向对象方法中,信息隐蔽是通过对象__C__来实现的。
A分类性B继承性C封装性D共享性
(3)只有类的共有界面的成员才能成为使用类的操作,这是软件设计(C)的原则。
A过程抽象B功能抽象C信息隐蔽D共享性E连通性
(4)当且仅当一个操作对类实例的用户有用是,它才是类公共界面的一个成员,这是软件设计的(B)原则。
A标准调用B最小界面C高耦合D高效率E可读性
(5)每个派生类应该当做基类的特殊化来开发,而基类所具有的公共界面是派生类的共有界面的一个子集,这是软件设计的(E)原则。
A动态联编B异质表C信息隐蔽D多态性E继承性
第六章
1.填空。
(1)程序设计语言是人与__计算机__交流的__工具__。
(2)从语言层次上,程序设计语言可以分为__面向机器的语言__和__面向问题的语言__两种类型。
(3)___20世纪50_年代出现了模块化程序设计方法,__20世纪60__年代出现了结构
化程序设计方法。
(4)程序设计风格是指一个人编制程序时表现出来的__特点__、习惯和__逻辑__。
(5)代码实现可以分为数据库、业务对象和用例实现,以及__自顶向下策略__和__自底向上策略__3种策略。
2.选择。
(1)下面(A)属于专用语言。
A.LISP
B.C
C.PASCAL
D.JA V A
(2)不属于一般程序设计方法的是(B)。
A模块化程序设计方法B体系化程序设计方法
C结构化设计方法D面向对象程序设计方法
(3)下面不符合命名规范的表识符是(D)。
A.sUmNmber
B.SumNumber
C.Sum_ Of Number
D.SumC) fNumber
(4)下面(C)不属于选择面对对象语言应该考虑的因素。
A开发环境B发展前景C类库的可扩展性D支持多继承
查成绩app(5)下面(C)是错误的说法。
A中间版本是软件未完成前的版本  B.a版本是可以提交严格测试的软件版本
C.B版本是提交给测试一人员进行全面测试的软件版本
D发布版本是正式想社会发布,或想用户提交使用的软件版本
第七章
1.填空。
(1)软件测试的目的是__发现软件的错误__。
(2)单元测试一般以__白盒法__为主,测试的依据是__系统的模块功能规格说明__。
(3)黑盒测试法是通过分析程序的__功能__来设计测试用例的方法。
(4)软件测试用例主要由输入数据和__预期输出结果__两部分组成。
(5)为适应软硬件环境变化而修改软件的过程是__适应性维护__。
2.选择。
(1)成功的测试是指运行测试用例后(B)。
A未发现程序错误B发现了程序错误C证明程序正确D改正了程序错误(2)白盒测试法是根据程序的(B)来设计测试用例的方法。
A应用范围B内部逻辑C功能D输入数据
(3)检查软件产品是否符合需求定义的过程称为(C)。
A组装测试B单元测试C系统测试D确认测试
(4)软件的继承测试工作最好由(D)承担,以提高继承测试的效果。
A该软件的设计人员B该软件开发组的负责人
C该软件的编程人员D不属于该软件开发组的软件设计人员
(5)(C)是决定软件维护成败和质量好坏的关键。
A修改程序B建立目标程序C分析和理解程序D重新验证程序
第八章
1.填空。
(1)项目是为了创造一个唯一的__产品__或提供一个唯一的__服务__而进行的__临时