软件工程期末复习资料非常全_第1页
软件工程期末复习资料非常全_第2页
软件工程期末复习资料非常全_第3页
软件工程期末复习资料非常全_第4页
软件工程期末复习资料非常全_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、A. 软件备件很难订购B. 不断的变更使组件接口之间引起错误A. 软件备件很难订购B. 不断的变更使组件接口之间引起错误1 、下列哪一模型是软件的基础模型A.瀑布模型 B.快速原型C.增量模型D.螺旋模型2 、划分软件生存周期的阶段时所应遵循的基本原则是A.各阶段的任务尽可能相对独立B.各阶段的任务在时间上连续C.各阶段的任务尽可能相关性D.各阶段的任务在时间上相对独立3、下列哪个办法不属于解决软件危机的途径之一A.采用软件工程的解决途径B.研制新一代智能计算机C.采用面向对象的软件设计方法D.大力扶持软件企业4、下列哪个不属于软件工程的内涵之一A. 扶持培养软件高手的学院B. 开发既可靠又能

2、有效运行的软件C.应用完善的科学与工程原理D.经济地开发软件造成大型软件开发困难的根本原因在于A.开发人员缺乏足够的开发经验B.项目开发进度不合理C.软件系统的复杂TD.对软件开发的资金投入不足软件会逐渐退化而不会磨损,其原因在于A. 正确 B. 错误C.软件错误在经常使用之后会逐渐增加D. 软件通常暴露在恶劣的环境下下面说法正确的是A. 大多数软件系统是不容易修改的,除非它们在设计时考虑了变化B.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产C.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功D.购买大多数计算机系统所需的硬件比软件更昂贵8.Ariane 5 火箭发射

3、失败的事例告诉我们A. ( 2 )软件后备系统可以通过复制生成B.( 3 )软件重用必须重新进行系统论证和系统测试选项( 1 )和( 3 )( 1 )系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制软件危机的主要原因是A.软件本身的特点及开发方法。B.软件工具落后。C.软件生产能力不足。D.对软件的认识不够。下面的描述正确的是A. 软件质量是在开发过程中逐渐构建起来的。B.软件质量是由产品的功能、性能、易用性等外在特性决定的C.运行正确的软件就是高质量的软件。D.软件产品质量越高越好,最理想的情况是达到“零缺陷”11 、可行性研究主要包括哪几项?A. 技术可行性、经济可行性和操作可

4、行性B.技术可行性、经济可行性和道德可行性C.技术可行性、法律可行性和操作可行性D.技术可行性、操作可行性和法律可行性12 、成本 /效益分析的目的是帮助( )正确地作出是否投资于这项开发工程的决定。A.系统分析员 B.客户组织的负责人C.项目经理D.软件开发人员13 、在进行成本/效益分析的时候,需要考虑( )A. 开发成本B. 运行费用 C. 系统带来的经济效益D. 系统使用寿命14 、数据流图和数据字典共同定义了新系统的逻辑模型。A. 错 B. 正确15 、可行性研究可行性研究需要的时间长短和所研究系统的规模关系不大。,请用户、客户组织的负责人及评审组审16 、把可行性研究各个步骤的工作

5、结果写成清晰的文档 查, 以决定是否继续这项工程及是否接受分析员推荐的方案。正确 B. 错误、结构化分析方法遵守的准则之一定义软件需要完成的功能,需要建立的模型是A.功能模型B.数据模型C.行为模型D.动态模型、下列叙述中,( )不属于数据字典的作用。A.为用户与开发人员之间统一认识B.为需求分析阶段定义各类条目C.作为概要设计的依据D.作为编码阶段的描述工具、分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的( )。A.总貌B.软件的作者C.细节 D.抽象、结构化分析方法以数据流图、( )和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。A.PAD 图 B.

6、IPO 图 C.DFD 图 D. 数据字典、不适于作为数据流图处理(加工)框名称的是( )。A.打印工资支票B.工资支票数据C.人工校核工资数据D.计算职工工资)。22 、需求分析过程中,分析员是(A. 用户和软件人员的中间人B.用户和软件人员的领导C. 软件的编程人员 D. 用户中系统的直接使用者23 、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于下列哪个系统。A.管理信息B.决策支持C.需求不确定的D.需求确定的24 、数据字典是用来定义下列哪个选项中的各成分的具体含义的。A.功能结构图B.数据流图 C.流程图 D.系统结构图25 、下列哪一项不是用来获取用户需求的。A.与

7、业务人员进行访谈B.绘制时序图 C.发放调查问卷D.绘制数据流图26 、获取用户需求的时候,定义数据流图中包含的元素使用下列哪一项进行描述?A.数据字典B.实体关系图C.系统流程图D.IPO图27 、数据流图的四个基本符号是下列哪一组。A.数据源点,处理,数据存储,数据流B.数据源点,数据终点,处理,数据存储C.外部实体,处理,数据终点,数据流 D.外部实体,数据存储,处理,数据流28 、下列哪一项的作用是“用来明确系统和环境的界限”的?A.数据终点B.数据存储C.外部实体D.数据流29 、数据流图中的处理必须有流入的数据流和流出的数据流。A. 正确 B. 错误A. 正确 B. 错误A.正确

8、B.错误30 、可行性研究可行性研究需要的时间长短和所研究系统的规模关系不大。A. 错误 B. 正确、把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查, 以决定是否继续这项工程及是否接受分析员推荐的方案。A. 正确 B. 错误、一个软件项目是否进行开发的结论是在可行性报告文档中作出。A. 错误 B. 正确、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。A.错误 B.正确、数据流图中的数据流可以从外部实体直接到数据存储。A.错误B.正确、同一个外部实体只能在一张数据流程图中出现一次。A. 正确B. 错误36 、处理又称功能,表示对数据进行的操作。非

9、直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控 制和调用来实现的。数据耦合:一个模块访问另一个模块时,彼此之间是通过简单数据参数(不是控制 参数、公共数据结构或外部变量)来交换输入、输出信息的。特征耦合:一组模块通过参数表传递记录信息,就是标记耦合。这个记录是某一数据结构的子结构,而不是简单变量。其实传递的是这个数据结构的地址;控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择 另一模块的功能,就是控制耦合。外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是 通过参数表传递该全局变量的信息,则称之为外部耦合。公共耦合:若一组模

10、块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合一个模块直接访问另一个模块的内部数据;一个模块不通过正常入口转到另一模块内部;(3)两个模块有一部分程序代码重叠(只可能出现在汇编语言中);一个模块有多个入口。耦合强度,依赖于以下几个因素:一个模块对另一个模块的调用;一个模块向另一个模块传递的数据量;一个模块施加到另一个模块的控制的多少;模块之间接口的复杂程度偶然内聚如果一个模块的各成分之间毫无关系,则称为偶然内聚,也就是说模块完成一组任务,这 些任务之间的关系

11、松散,实际上没有什么联系。逻辑内聚几个逻辑上相关的功能被放在同一模块中,则称为逻辑内聚。如一个模块读取各种不同类型外设的输入。尽管逻辑内聚比偶然内聚合理一些,但逻辑内聚的模块各成分在功能上并无关系,即使局部功能的修改有时也会影响全局,因此这类模块的修改也比较困难。时间内聚如果一个模块完成的功能必须在同一时间内执行(如系统初始化),但这些功能只是因为 时间因素关联在一起,则称为时间内聚。过程内聚构件或者操作的组合方式是,允许在调用前面的构件或操作之后,马上调用后面的构件或 操作,即使两者之间没有数据进行传递。模块完成多个需要按一定的步骤一次完成的功能。(过程相关一控制耦合)。例如:在用程序流程图

12、设计模块时,若将程序流程图中的一部分划出各自组成模块,便形成过程内聚。通信内聚(信息内聚)如果一个模块的所有成分都操作同一数据集或生成同一数据集,则称为通信内聚。模块完成多个功能,各个功能都在同一数据结构上操作,这个模块的所有功能都是基于同 一个数据结构(符号表),因此,它是一个信息内聚的模块。顺序内聚如果一个模块的各个成分和同一个功能密切相关,而且一个成分的输出作为另一个成分的 输入,则称为顺序内聚。功能内聚模块的所有成分对于完成单一的功能都是必须的,则称为功能内聚37、下列耦合关系中,模块之间最差的耦合是()A.控制耦合 B.内容耦合C.数据耦合D.公共耦合38、一组模块均与同一外部环境关

13、联,并受到约束时,这种耦合称之为()A.外部耦合B.数据耦合C.控制耦合D.数据耦合A.矩形B.平行四边形C.圆角矩形 D.菱形A.矩形B.平行四边形C.圆角矩形 D.菱形39 、如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称之为(A.过程内聚B.顺序内聚C.功能内聚D.通信内聚40 、在结构图中,将上级模块获得的数据,经过处理,再传给下属模块的模块是( )A.加工模块B.协调模块 C.传出模块D.传入模块41 、耦合是影响软件复杂程度的一个重要因素。应该采取下述分哪些设计原则( )A. 尽量使用数据耦合 B. 限制公共环境耦合的范围C.偶尔可以使用内容耦合D.少用控制耦合和特

14、征耦合42 、在考虑模块内聚时的设计原则是( )A. 应该力求做到模块的高内聚B.通常中等程度的内聚(通信、过程)也是可以采用的C.对于低内聚的模块可以考虑进行模块分割D. 低内聚(偶然、逻辑、时间)建议不要使用42 、局部化的概念和信息隐藏概念是密切相关的。A. 错误 B. 正确43 、程序流程图中表示分支的图形是( )。44 、下列哪一项既可用于表示程序逻辑,也可用于描绘数据结构。(A.流程图 B.判定表 C.PAD图 D.盒图45 、在结构化程序设计当中,不建议使用( )A.循环语句B.子程序调用语句C.转向语句 D.分支语句46 、下面哪个不属于良好的人机界面设计原则?( )A.力求用

15、户输入量最少B.具有帮助功能C.为不同的用户和功能提供一致的界面服务D.系统的全部界面格式和风格一致47 当模块中包含复杂的条件组合, 下列哪一项能够清晰地表达出各种动作之间的对应关系。 ( )A.流程图 B.盒图 C.关系图 D.判定表和判定树48 、流程图中的矩形表示( )A.处理B.输入输出C.分支 D.开始49 、判定表由四部分组成,右下部列出的是下列哪一项( )A. 条件组合与动作之间的对应关系 B. 所有条件C.所有可能的动作D.可能的条件组合50 、下列关于伪码的描述,哪个是不准确的?( )A. 描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单;B.可以嵌入在源程序中一

16、起作为程序文档;C.利用伪码可自动生成程序代码D. 伪码和图形工具一样形象直观;.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。A.软件工程B.软件周期C软件危机D.软件产生. 瀑布模型本质上是一种(A )模型。A.线性顺序B顺序迭代C线性迭代D.早期产品. 瀑布模型存在的问题是(B )。A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通D.适用可变需求.螺旋模型是一种将瀑布模型和( A)结合起来的软件开发模型。A.增量模型 B.专家系统 C.喷泉模型D.变换模型.原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。A.需求不确定性高的B.需求确

17、定的 C.管理信息 D.实时. 下列有关软件工程的标准,属于国际标准的是(C )A.GB B.ANSI C.ISO D.IEEE.结构化方法是一种基于(D)的方法。A.数据Z勾B.程序结构C.算法D.数据流.软件可行性研究实质上是要进行一次(A)需求分析、设计过程。A、简化、压缩的 以详细的C彻底的D、深入的. 可行性研究的目的是(D)A、分析开发系统的必要性B、确定系统建设的方案C、分析系统风险D、确定是否值得开发系统.可行性研究是在(A)之前A、系统开发 B、测试C、试运行 D、集成测试. 可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的(C)。A、 1

18、% B、 20% C、 8% D、 50%12.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。A.计算机软件保护条例B.中华人民共和国计算机信息系统安全保护条例C.中华人民共和国著作权法D.计算机病毒防治管理办法效率是一个性能要求,因此应当在以下哪个阶段规定? BA、可行性分析B、需求分析C、概要设计D、详细设计需求规格说明书的作用不包括( D)A、软件验收的依据 B、用户与开发人员对软件要做什么的共同理解C、软件可行性研究的依据D、软件设计的依据数据字典是用来定义(D)中的各个成份的具体含义的。A、程序流程图B、功能结构图 C、系统结构图D、数据流程图数据流程图是(A方法中用

19、于表示系统逻辑模型的一种图形工具。A、 SA B、 SD C、 SP D、 SC TOC o 1-5 h z DFD 中的每个加工至少有(A)。A、一个输入流或一个输出流B、一个输入流和一个输出流C、一个输入流 D、一个输出流需求分析阶段的关键任务是确定(D)A、软件开发方法 以软件开发工具 C软件开发费 D、软件系统的功能在 SD 方法中全面指导模块划分的最重要的原则是(D)。A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性在模块的 3 种基本属性中,反映模块内部特性的是(C)。A、接口 B、功能C逻辑D、状态模块的耦合性可以按照耦合程度的高低进行排序,以下哪一项符合从低到高的正确次

20、序( D)。A、数据结构耦合,公共耦合,控制耦合,内容耦合B、数据耦合,控制耦合,数据结构耦合,公共耦合C、无直接耦合,数据结构耦合,内容耦合,控制耦合D、无直接耦合,数据耦合,控制耦合,内容耦合PDL延程设af语言)是描述处理过程(C )A.耦合和内聚 B.数据和模块C. 模块内部的凝聚力D.模块之间的耦合A.耦合和内聚 B.数据和模块C. 模块内部的凝聚力D.模块之间的耦合A、做什么以为什么做 C、怎么做D、对谁做(D)工具在软件详细设计过程中不采用。A、判定表 B、IPO图 C PDL D DFD图为高质量地开发软件项目,在软件结构设计时,必须遵循( A原则。A.信息隐蔽B、质量控制 C

21、、程序优化D、数据共享 TOC o 1-5 h z 当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A、数据耦合B、公共耦合C标记耦合D、内容耦合详细设计与概要设计衔接的图形工具是(B)。A、DFD图B、SC图C、PAD图D、程序流程图下列几种类型中,耦合性最弱的是(D)。A、内容型以控制型C、公共型D、数据型软件结构使用的图形工具,一般采用(C)图。A、 DFD B、 PAD C、 SC D、 ER在七种偶合中,最低偶合是(D)。A、内容偶合B、公共偶合C、数据偶合D、非直接偶合结构化程序设计,主要强调的是(C)A.程序的执行效率B.模块的内聚C.程序的可理解性D.模块的耦

22、合基线可作为软件生存期中各开发阶段的一个检查点。当采用的基线发生错误时,可以返回到最近和最恰当的(C)上。A.配置项 B.程序C基线D.过程在软件设计中应该保持模块的独立性原则,( A )反映模块独立性。)。具有风险分析的软件生命周期模型是(A.瀑布模型B.喷泉模型C.螺旋模型D增量模型软件工程的基本要素包括方法、工具和( A )。A.过程B软件系统C.硬件环境D.人员)表达系统内部数据运动的图形化技术。在结构化分析方法中,(A.数据字典B.实体关系图C.数据流图D.状态转换图“软件危机”是指( C )。A. 计算机病毒的出现B利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问题D.

23、人们过分迷恋计算机系统软件的(A设计又称为总体设计,其主要任务是建立软件系统的总体结构。A.概要B抽象C.逻辑D规划下列不属于数据字典组成部分的是? ( D )A.数据项B数据流C.数据文件D数据库下列不属于软件需求范畴的是? ( A )A. 软件项目采用什么样的实现技术B . 用户需要软件能做什么样的事情D. 用户需要软件达到什么样的性能C. 用户需要软件完成什么样的功能.模块的内聚性最高的是( D )。A. 逻辑内聚B.时间内聚C.偶然内聚D功能内聚.在白盒测试技术测试用例的设计中,( B )是最强的覆盖标准。A.语句覆盖B路径覆盖C.条件组合覆盖D.判定覆盖. Jackson程序设计方法

24、是一种面向(A )的设计方法。A.数据结构B数据流图C. IPO图D系统流程图.软件设计中划分模块的一个准则是(C )。A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是(C )。A.喷泉模型B增量模型C.瀑布模型DB旋模型.类构件的重用方式有多态重用、继承重用和( A )。A.实例重用B重载重用C.代码重用D方法重用.软件维护工作的最主要部分是 (C)。A.校正性维护B适应性维护C. 完善性维护D. 预防性维护47. 一个模块的(C )太大一般是因为缺乏中间层次,应当适当增加中间层次的控制模块。B宽度A. 深度C.

25、 扇出D扇入从本质上说,面向对象是“先”确定(A)。A.动作的主体 B.属性C.关系D.方法(B)是对象的静态特征。A.方法B.属性C.关系D操作对象白( D)使对象的动态特征A.特征B.属性C.关系D操作属于某个类的一个具体对象称为该类的(A.实例B.虚拟C.继承D.多态UML 是(A)。A) 一种可视化的建模语言B)是一种可视化的程序设计语言C)是一种过程D) 是一种方法封装的的作用是(A)。A.复用B.对象C.实例D.方法面向对象分析的核心在于建立(B)模型。建立正确的模型识别问题域对象C识别对象之间的关系后确定执行的动作。A)。D.上面所有. 面向对象分析过程中建立的模型有( D )。

26、数据模型、功能模型、活动模型对象模型、功能模型、测试模型属性模型、功能模型、对象模型对象模型、功能模型、动态模型.下列的(C)不是分析建模的目的。定义可验证的软件需求描述客户需求开发一个简单的问题解决方案建立软件设计的基础.下列的(C)不属于面向对象分析模型。用例图类图实体关系图顺序图. ( A )用于描述系统中概念层次的对象。A.分析类B. 界面类C.实体类D.控制类. 在基于用例的面向对象分析过程中, 定义交互行为的关键在于通过描述分析类实例之间的(A)将用例的职责分配到分析类中。A. 消息传递B 关联关系C 继承关系D 上下文关系.用例的实现细节不会在(B)描述。用例说明用例图C活动图D

27、.顺序图用例的职责通常分配给(D)的对象。发送消息接收消息C.发送和接收双方D.分析类组织机构图是(C)。UML 的一个最新图类图的一种C.用于识别角色的辅助图D.用例图的一种在图书馆系统中,假如已经构造了一个一般借书者类,后来发现图书馆的学生和教师在借书中有不同要求。请问在面向对象设计中用(B)方法可以方便地设计这两个类?A.信息隐藏B.继承C.动态联编D.代码复制框架是一组可用于不同应用的( A集合A.类B对象C.模块D.代码下面哪个选项不能描述子系统之间的关系。(D)A.请求一一服务关系B.继承关系C依赖关系D数据关系每个子系统的接口上定义了若干(B),体现了子系统的功能。A.说明B操作

28、C属性D关系通常将具有共性的非功能要求设计在(B),以减少重新开发的工作量。A.接口层B.中间层 C最低层D.最高层每个用例至少应该有一个(C),它通常没有属性而只有方法,只是起协调和控制作用。A.接口类B实体类 C控制类D.界面类类有三种类型即( A )。边界类、实体类、控制类实体类、数据类、界面类控制类、实体类、数据类界面类、控制类、公共类下面那个选项不是正确的面向对象设计思想。( C)A.对接口进行设计B.发现变化并且封装它C 先继承后组合D.先组合后继承定义类的属性类型时尽量使用已有的类型,太多的自定义类型会降低系统的( A )指标。A.可维护性B.安全性C开发效率D.可移植性72.

29、从本质上说,面向对象是“先”确定动作的()“后”执行( D )。A.数据Z构/主体B.主体/数据结构C.动彳/主体D.主体/动作结构化语言是介于自然语言和形式语言之间的一种( D)。A.半形式语言 B.计算机语言 C.低级语言 D.高级语言程序设计语言的技术特性不应包括(C)。A、数据结构的描述性以抽象类型的描述性C、数据库的易操作性H软件的可移植性程序的三种基本控制结构是( B)。A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移结构化程序设计主要强调的是( D)。A.程序的规模B.程序的效率 C.程序设计语言的先进性D.程序易读性下列关于功能性注释不正确的

30、说法是(B)。A.功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态B.注释用来说明程序段,需要在每一行都要加注释C可使用空行或缩进,以便很容易区分注释和程序D.修改程序也应修改注释下列关于效率的说法不正确的是(D)。A.效率是一个性能要求,其目标应该在需求分析时给出B.提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法C效率主要指处理机时间和存储器容量两个方面D.程序的效率与程序的简单性无关结构化维护与非结构化维护的主要区别在于(B )。A.软件是否Z构化B.软件配置是否完整C.程序的完整性D.文档的完整性关于JAVA语言下列说法不正确的是(B)。A.跨平台的B.动态

31、指针 C.解释型的 D.面向对象的使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。A程序内部逻辑B.程序复杂结构C.使用说明书 D.程序的功能确认测试主要涉及的文档是(A)。A、需求规格说明书B、概要设计说明书C、详细设计说明书 D、源程序测试的关键问题是( D)。A.如何组织对软件的评审B.如何验证程序的正确性C如何采用综合策略D.如何选择测试用例黑盒测试在设计测试用例时,主要研究( A)。A.需求规格说明B.详细设计说明C项目开发计划D.概要设计说明与详细设计说明 TOC o 1-5 h z 下面哪些测试属于黑盒测试(B)。A、路径测试B、等价类划分 G条件判断D、循环测试在

32、下述哪一种测试中,测试人员必须接触到源程序(B)。A、功能测试 B、结构测试C、功能测试和结构测试H性能测试检查软件产品是否符合需求定义的过程称为(D)。A、确认测试B、集成测试 C验收测试 D、验证测试D)。软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(A、结构合理性B、软件外部功能 C、程序正确性 D、程序内部逻辑软件维护中,因修改交互输入的顺序,没有正确的记录而引起的错误是(作用。A、文档日数据 C、编码D、设计以下属于软件维护阶段文档的是(C)。A、软件需求说明B、操作手册C、软件问题报告D、测试分析报告产生软件维护的副作用,是指(C)。A、开发时的错误日隐含

33、的错误C、因修改软件而造成的错误D、运行时误操作维护中,因误删除一个标识符而引起的错误是(C)副作用。A、文档B、数据 C编码D、设计可维护性的特性中,相互促进的(A)。A、可理解性和可测试性B、效率和可移植性C、效率和可修改性D、效率和结构好软件维护的困难主要原因是( C)A、费用低B、人员少 C、开发方法的缺陷 D、用户不配合软件维护费用高的主要原因是( C)。A、人员少B、人员多 C生产率低D、生产率高为了适应软硬件环境变化而修改软件的过程是(C)。A、校正性维护B、完善性维护C适应,f维护 H预防性维护可维护性的特性中,相互矛盾的是(B)A.可理解性与可测试性B.效率与可修改性C可修改

34、性和可理解性D.可理解性与可读性各种不同的软件维护中,以( C)维护所占的维护量最小。A、纠错性维护B、代码维护C、预防性维护 D、文档维护在变更控制中,(B)可以用来确保由不同用户所执行的并发变更。A.异步控制B.同步控制C.存取控制D.基线控制变更控制是一项最重要的软件配置任务,其中“检出”和( A处理实现了两个重要的 变更控制要素,即存取控制和同步控制。A.登入B.管理C.填写变更要求 D.审查在整个软件维护阶段所花费的全部工作中,所占比例最大的是( )A.校正性维护 B.适应性维护C.完善性维护 D.预防性维护下面关于文档的叙述,错误的是( B )A.文档是软件产品的一部分,没有文档的

35、软件就不成为软件。B.文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节。C.高质量文档对于转让、变更、修改、扩充和使用有重要的意义。D.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量。.在软件质量因素中,软件在异常条件下仍能运行的能力成为软件的(B )。A.安全性B健壮性C.可用性D可靠性.在下列测试技术中,(D )不属于黑盒测试技术。A.等价划分B边界值分析C.错误推测D逻辑覆盖. ( C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态B继承C.封装D消息. Jackson方法是在软件开

36、发过程中常用的方法,使用Jackson方法时可以实现( A )。B. 从数据流图导出初始结构图D. 从模块结构导出程序结构)而执行程序的过程。B发现错误A. 从数据结构导出程序结构C. 从模块结构导出数据结构.软件测试时为了( BA. 纠正错误C.避免错误D证明错误.在软件系统中,一个模块应具有什么样的功能,这是由( B )决定的。A.总体设计B需求分析C.详细设计D程序设计. 软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影响软件的(B )。A.可理解性B可维护性C.可扩展性D可移植.模块内聚度越高,说明模块内各成分彼此结合的程序越( B )。A.松散B紧密C.无

37、法判断D相等.常用的面向对象的软件过程模型是( B )。A.瀑布模型B喷泉模型C.原型模型D增量模型)。. 面向对象的分析阶段建立的系统模型不包括(A. 对象模型B动态模型C.功能模型D数据模型.瀑布模型的存在问题是(B )。A.用户容易参与开发B缺乏灵活性C.用户与开发者易沟通D.适用可变需求.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是(C )。A.喷泉模型B增量模型C.瀑布模型D螺旋模型.类构件的重用方式有多态重用、继承重用和( A )。A.实例重用B重载重用C.代码重用D方法重用.在白盒测试技术测试用例的设计中,( A )是最弱的覆盖标准。A.语句覆盖B路径覆盖C.条

38、件组合覆盖D判定覆盖.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C )。A.软件工程酥件周期C软件危机欧件产生、填空题软件模块独立性的两个定性度量标准是(耦合和内聚)。软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个(由下而上)的过 程。(等价划分)是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据 此导出测试用例。(数据流图)和数据字典共同构成了系统的逻辑模型。可行性研究主要集中在以下三个方面:经济可行性、(技术可行性)、法律可行性。IPO 图是 输入、处理和输出_的简称,它是美国IBM 公司发展完善起来的一种图形工具。软件生命周期一般可分为

39、问题定义、(可行性研究)、需求分析、设计编码、测试、运行与维护等阶段。可行性研究主要集中在以下三个方面:经济可行性、(技术可行性)、法律可行性。一般来说,可以从一致性、完整性、现实性和(有效性)四个方面验证软件需求的正确性。复杂问题的对象模型通常由下述五个层次组成:主题层、类与对象层、结构层、属性层和 (服务层 ) 。软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、(可移植性)、可使用性和效率。软件一般由程序、数据和(文档)组成。面向对象模型主要由对象模型、动态模型、(功能模型)。软件需求分析过程应该建立数据模型、功能模型和(行为模型) 三种模型之上。需求分析的最终结果是

40、(需求规格说明书)。常见的测试方法一般分为:白盒测试和(黑盒测试)。软件工程三要素包括方法、 (工具)和过程,其中,过程是支持软件开发的各个环节的控制和管理。类构件的重用方式有实例重用、继承重用和(多态重用)三种。耦合和(内聚)是衡量模块独立性的两个定性的标准。软件测试的步骤按顺序分别是: (单元测试 ) 、子系统测试、系统测试、_确认测试和系统测试。 21. 数据库的 “概念设计” 与“逻辑设计” 分别对应于系统开发中的 “ ” 与“ ” ,而数据库的“物理设计”与模块的“ ”相对应。解:需求分析概要设计 详细设计概要设计文档主要有、 和 。解:概要设计说明书 数据库设计说明书 用户手册 组

41、装测试计划模块化指解决一个复杂问题时逐层把软件系统划分成若干 的过程。解:自顶向下模块 24. 模块之间联系越紧密,其就越强,模块的 则越差。解:耦合性 内聚性软件结构往往用 结构的图形来表示。 软件结构图是软件系统的 结构。 解: 树状或网状 模块层次面向数据流的设计又称,它是以需求分析阶段产生的为基础,按一定的步骤映射成软件结构。解:结构化设计数据流图数据流图一般可分为 和 两类。解:变换型事务型详细设计也称 ,它是软件设计的第二阶段,主要确定每个 的具体执行过程。解:过程设计 模块 TOC o 1-5 h z 处理过程设计中最典型的方法是方法,其基本要点是采用的程序设计方法是、。解:结构

42、化程序设计 自顶向下 逐步求精任何程序都可由 、 和 3 种基本控制结构构造。 这 3 种基本结构的共同点是、。解:顺序 选择 循环 单入口 单出口详细描述处理过程常用 3 种工具: 、 、和 。解:图形表格 语言Jackson方法是面向的设计方法,它的描述工具是 。解:数据结构Jackson软件测试的目的是尽可能多地发现软件中存在的 ,将 作为纠错的依据。解:错误测试结果测试阶段的基本任务是根据软件开发各阶段的 和程序的 ,精心设计一组 ,利用这 些实例执行 ,找出软件中潜在的各种 和 。解:文档资料 内部结构 测试用例 程序 错误 缺陷测试用例由 和预期的 两部分组成。解:输入数据 输出数

43、据35. 软件测试方法一般分为两大类:方法和 方法。解: 动态测试 静态测试动态测试通过发现错误。根据 的设计方法不同,动态测试又分为 与 两类。解:运行程序 测试用例 黑盒测试 白盒测试黑盒法只在软件的 处进行测试, 依据 说明书, 检查程序是否满足 要求。 解: 接口 需求规格 功能白盒法必须考虑程序的 和 ,以检查 的细节为基础,对程序中尽可能多的逻辑路径进行 。解:内部结构处理过程 处理过程 测试白盒测试是测试, 被测对象是, 以程序的 为基础设计测试用例。 解: 结构 源程序 内部逻辑逻辑覆盖是对程序内部有存在的逻辑结构设计测试用例,根据程序内部的逻辑覆盖程度又可分为 、 和 6 种

44、覆盖技术。 解: 判定 语句覆盖 判定覆盖 条件覆盖 判定/ 条件覆盖条件组合覆盖 路径覆盖黑盒测试是测试, 用黑盒技术设计测试用例有4 种方法: 、 和 。 解: 功能 等价类划分 边界值分析 错误推测 因果图42. 等价类划分从程序的条件划分成两个或多个说明,找出一个输入条件(通常是一句话 一个短语 等价类或 ),然后将每个输入边界值分析是将测试情况作为重点目标,选取正好等于、刚刚大于或刚刚小于 的测试数据。如果输入或输出域是一个有序集合,则应选取集合的 元素和 元素作为测试用例。解:边界边界值 第一个 最后一个软件测试一般经过4 个测试: 、 和 。解:单元测试 集成测试 确认测试 系统

45、测试集成测试的方法有两种: 和 。解:非渐增式测试渐增式测试软件配置审查的任务是检查软件的所有文档资料的 和 。解:完整性正确性调试也称 ,是在成功的测试之后才开始进行,其目的是确定错误的 和 ,并改正错误。解:纠错原因 位置调试技术包括、 和 。解:简单调试 归纳法调试 演绎法调试 回溯法调试为了提高程序的易读性,同时为减少错误,提高软件开发效率,编码时应注意养成良好的 程序设计风格 。程序加注释对理解程序提供了明确指导, 根据作用不同注释分序言性注释和 功能性注释 。三、简答题.什么是软件工程?软件工程的目标是什么?答: 软件工程是将系统化的、 规范的、 可度量的方法应用于软件的开发、 运

46、行和维护过程,即将工程化应用于软件开发和管理之中,对中所选方法的研究。目标:合理预算开发成本,付出较低的开发费用。实现预期的软件功能,达到较好的软件性能,满足用户的需求。提高软件的可维护性,降低维护费用。提高软件开发生产率,及时交付使用指出瀑布模型中下列任务的顺序: 验收测试, 项目计划, 单元测试, 需求评审, 成本估计,概要设计,详细设计,系统测试,设计评审,编码,需求规格说明书。答:项目计划,成本估计,需求规格说明书,需求评审,概要设计,详细设计,设计评审,编码,单元测试,系统测试,验收测试可行性研究报告的主要内容是什么?答:可行性研究主要包括以下几个部分:( 1 )概述( 2 )技术可

47、行性(3)项目成熟程度(4 )市场需求情况和风险分析(5)投资估算及资金筹措( 6 ) 经济与社会效益( 7) 综合实力和产业基础( 8) 项目实施进度计划 ( 9)其它尚需要说明的必要的方面( 10 )结论什么是需求分析?需求分析阶段的基本任务是什么?答:所谓 需求分析 ,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。可以说, “需求分析”就是确定要计算机“做什么”。任务: 确定软件项目的目标和范围。 调查使用者的要求, 分析软件必须做什么,编写需求规格说明书等它相关文档, 并进行必要的需求审查。 除此之外, 还包括需求变更控制,需

48、求风险控制,需求版本控制等对需求的管理工作什么是结构化分析方法?该方法使用什么描述工具?答: 结构化的分析方法是面向数据流的方法, 因此, 此方法研究的核心是数据的组成和数据流向和对数据的加工处理。 结构化分析方法用抽象模型的概念, 按照软件内部数据传递、 变换的关系,自顶向下逐层分解,直至找到满足功能要求的所有可实现的软件元素为止描述工具:1系统流程图2数据流程图3数据字典4 IPO图5层次方框图6实体一关系图7 状态变迁图结构化分析方法通过哪些步骤来实现?答: 1)确定系统的功能要求确定系统的数据要求确定系统的操作要求和界面要求确定系统的性能要求确定系统的运行要求获得当前系统的物理模型抽象

49、出当前系统的逻辑模型建立目标系统的逻辑模型。修正开发计划)如果需要则开发系统原型7. 什么是数据流图 ?其作用是什么 ?其中的基本符号各表示什么含义?答:数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程, 是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。数据流图的基本符号的意思:. 矩形表示数据的外部实体;. 圆角的矩形表示变换数据的处理逻辑;.少右面的边矩形表示数据的存储;.箭头表示数据流。什么是数据字典?其作用是什么?它有哪些条目?答:数据字典,主要用来描述数据流程图中的数据流、数据存储、处理过程和和数据源点 /终点。作

50、用: 数据流程图描述了系统的逻辑结构, 其中的四个基本图形元素的含义无法在数据流程图中详细说明,因此数据流程图需要与其他工具配合使用,数据字典就是这样的工具之一。包括的条目:数据流词条数据元素词条数据存储词条数据加工处理词条数据源点及终点词条什么是概要设计?有哪些基本任务?答:概要设计:根据用户的需求先确定软件系统的总体结构和总的设计原则。基本的任务:设想供选择的方案。推荐最佳方案。功能分解,确定软件结构。设计软件结构。制定测试计划。数据设计。书写文档。包括总体设计规格说明书。用户手册。测试计划。设计审查和复审。详细设计的基本任务是什么?有那几种描述方法?答:详细设计阶段的任务是要为编写程序代

51、码设计“图纸”,由程序员按“图纸”用某种高级程序设计语言编写程序代码。 主要方法有设计程序流程图, 表格设计符号以及过程设计语言。什么是变换流?什么是事物流?答:变换型数据流可以划分为明显的三部分:逻辑输入,中心变换,逻辑输出事务流的特点是数据沿某个输入路径流动,该路径将外部信息转换成事务,其中发射出多条事务处理路径的中心处理被称为中心事务在软件开发的早期阶段,简述从哪些方面研究目标系统的可行性。一般说来,至少应该从下述 3 个方面研究系统的可行性。1 )技术可行性。使用现有的技术能实现这个系统吗?2 )经济可行性。这个系统的经济效益能超过它的开发成本吗?3 )操作可行性。系统的操作方式在这个

52、用户组织内行得通吗?必要时还应该从法律、社会效益等更广泛的方面研究系统的可行性。简述需求分析中的情景分析技术。所谓情景分析就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析。 系统 分析员利用情景分析技术,往往能够获知用户的具体需求。情景分析技术的用处主要体现在下述两个方面。1 )它能在某种程度上演示目标系统的行为,从而用于用户理解,而且还可能进一步揭示出一些分析员目前还不知道的需求。2 )由于情景分析较易为用户所理解,使用这种技术能保证用户在需求分析过程中始终扮演一个积极主动的角色。 需求分析的目标是获知用户的真实需求, 而这一信息的唯一来源是用户,因此,让用户起积极主动的作用对

53、需求分析工作获得成功是至关重要的。简述系统设计原理中的模块化。模块化就是把程序划分成独立命名且可独立访问的模块, 每个模块完成一个子功能, 把这些模块集成起来构成一个整理,可以完成指定的功能满足用户的需求。采用模块化原理可以使软件结构清晰, 不仅容易设计也容易阅读和理解。 因为程序错误通常局限在有关的模块及它们之间的接口中, 所以模块化是软件容易测试和调试, 因而有助于提高软件的可靠性。 因为变动往往只涉及少数几个模块, 所以模块化能够提高软件的可修改性。模块化也有助于软件开发工程的组织管理, 一个复杂的大型程序可以由许多程序员分工编写不同的模块,并且可以进一步分配技术熟练的程序员编写困难的模

54、块。用例建模时,如何寻找行为者?为获取用例首先要找出系统的行为者, 可以通过请系统的用户回答一些问题的办法来发现行为者。)谁将使用系统的主要功能?2)谁需要借助系统的支持来完成日常工作?3)谁来维护和管理系统?4)系统控制哪些硬件设备?5)系统需要哪些其他系统交互?6)哪些人或系统对本系统产生的结果感兴趣?举例说明类和对象的关系。答:学生可作为一个类-学生类,每个学生就是这个学生类的一个实例,例如,学生张三就是学生类的一个实例。面向对象分析的关键步骤有哪些?应建立哪几个模型?答:关键步骤有识别问题域的对象并分析它们相互之间的关系,建立简洁、 精确、 可理解的 正确模型;应建立的模型有功能模型,

55、对象模型,动态模型。什么是实体类、边界类和控制类?为什么将分析类划分成这三种类型?答:(1)实体类保存要存入永久存储体的信息。实体类通常在事件流或交互图中,是对用户最有意义的类。边界类位于系统与外界的交界处,包括所有的窗体、报表、系统硬件接口、与其他系统的接口。控制类负责协调其他类的工作。 每个用例中至少应该有一个控制类, 它控制用况中的事件顺序。( 2 )分为三种类型是因为它们各自的功能不同。界面类描述系统与角色之间的接口。控制类在分析模型内表示协调、顺序、事务处理以及控制其他对象的类。实体类为需要长久保存的信息进行建模的类。UML 中有哪几类个视图,它们的作用分别是什么?答:( 1)用例视

56、图( Use-Case view)用例视图用于描述系统的功能集。 它是从系统外部以用户角度, 对系统做的抽象表示。 用例视图所描述的系统功能依靠于外部用户或另一个系统触发激活, 为用户或另一个系统提供服务,实现与用户或另一个系统之间的交互。用例视图中可以包含若干个用例, 用例表示系统能够提供的功能, 用例视图是其他视图的核心和基础。 其他视图的构造依赖于用例视图中所描述的内容, 因为系统的最终目标是实现用例视图中描述的功能, 同时附带一些非功能性的特性,因此用例视图影响着所有其他的视图。( 2 )逻辑视图(Logical view )如果说用例视图描述系统“做什么”,那么逻辑视图就是描述“怎么

57、做”。系统的静态结构描述类、对象和它们之间的关系,反映的是系统静态特征或结构组成。( 3 )组件视图( Component view )组件视图用来描述系统实现的结构和行为特征,反映系统各组成元素之间的关系。 组件视图 由组件图实现,主要供开发者和管理者使用。(4)并发视图(Concurrency View )并发视图用来描述系统的动态和行为特征。 并发视图将任务划分为进程或线程形式, 通过任务划分引入并发机制, 可以高效地使用资源、 并行执行和处理异步事件。 除了划分系统为并发执行的进程或线程外,并发视图还必须处理通信和同步问题。( 5 )配置视图(Deployment View )配置视图

58、体现了系统的实现环境, 反映系统的物理架构。 配置视图还包括一个映射, 该映射显示在物理架构中组件是怎样分配的。顺序图在分析阶段的作用?答: 顺序图描述了一组交互对象间的交互方式, 它表示完成某项行为的对象和这些对象之间传递消息的时间顺序活动图在分析阶段的作用?答: 活动图反映系统中从一个活动到另一个活动的流程, 强调对象间的控制流程。 活动图特别适合描述工作流和并行处理过程。 具体地说活动图可以描述一个操作过程中需要完成的活动; 描述一个对象内部的工作; 描述如何执行一组相关的动作, 以及这些动作如何影响它们周围的对象;说明一个业务活动中角色、工作流、组织和对象是如何工作的。比较结构化设计和

59、面向对象设计区别?答: 结构化设计: 系统被划分成多个模块, 这些模块被组织成一个树型结构。 根就是主模块,叶子是最低级的功能模块。这棵树也表示调用结构:每个模块都调用自己的直接下级模块,并被自己的直接上级模块调用。 顶层模块负责收集应用程序最重要的那些执行策略, 底层模块实现处理细节。在这个体系结构中越靠上层位置,概念的抽象层次就越高。但是,由于上层模块需要调用下层模块, 所以这些上层模块就依赖于下层模块的处理细节。 也就是说, 当实现细节发生变化时, 抽象也会受到影响; 如果想复用某一个抽象的话, 就必须把它依赖的细节都一起拖过去。面向对象设计: 上层创建的抽象不依赖于任何细节, 而细节则

60、高度依赖于上层的抽象。 这种依赖关系的变化正是结构化设计与面向对象设计的根本区别。为建立良好的编程风格应遵循什么原则? 答: 1)节简化不使用不必要的变量和函数 避免变量重名,变量重名可导致很难被发现的错误。尽量减小代码量。尽量减少代码的执行时间,提高执行效率。免功能冗余的模块。尽量不使用全局变量。2)模块化确保物理和逻辑功能密切相关。限定一个模块完成一个独立的功能,提高模块的内聚度。检查代码的重复率,重复多的代码,要抽出来作为一个单独的模块。3)简单化采用直接了当的算法,避免使用技巧性高和难懂的代码。使用简单的数据结构,避免使用多维数组、指针和复杂的表。注意对象命名的一致性。以手工的方式简化

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论