软件工程作业答案.docx |
您所在的位置:网站首页 › 软件工程选择题答案 › 软件工程作业答案.docx |
软件工程作业答案.docx 《软件工程作业答案.docx》由会员分享,可在线阅读,更多相关《软件工程作业答案.docx(85页珍藏版)》请在冰豆网上搜索。 软件工程作业答案 软件工程网上作业题 第1章软件工程学概述 一、选择题 1.软件危机具有下列表现() I、对软件开发成本估计不准确 、软件产品的质量往往不可靠 III、软件常常不可维护 IV、软件成本逐年上升 A.I、 和IIIB.I、III和IV C. 、III和IVD.以上都正确 答案: D 2.产生软件危机的原因可能有() I、用户需求描述不精确、不准确 、对大型软件项目的开发缺乏有力的组织与管理 III、缺乏有力的方法学和工具的支持 IV、软件产品的特殊性和人类智力的局限性 A.I和 B.I、 和IV C. 、III和IVD.以上都正确 答案: D 3.()分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。 A.增量模型B.喷泉模型C.原型模型D.螺旋模型 答案: A 4.为了克服软件危机,人们提出了用()的原理来设计软件,这就是软件工程诞生的基础。 A.数学B.软件学C.运筹学D.工程学 答案: D 4、TURBOPASCAL是( )软件。 A.系统软件 B.人工智能 C.事务软件 D.应用软件 答案: D 6.具有风险分析的软件生存周期模型是() A.瀑布模型B.喷泉模型 C.螺旋模型D.增量模型 答案: C 7.瀑布模型的关键不足在于() A.过于简单B.不能适应需求的动态变更 C.过于灵活D.各个阶段需要进行评审 答案: B 8.软件危机是指()。 A.软件遭到破坏B.软件开发和维护过程中遇到的问题 C.软件维护出现困难D.软件不能正常运行系列问题 答案: B 9.软件的复杂性是(),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A.固有的B.人为的C.可消除的D.不可降低的 答案: A 10.()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A.软件过程B.软件测试C.软件生存周期D.软件工程 答案: D 11.软件的主要特性是()。 A.高性能B.高成本C.包括程序和文档D.可独立构成计算机系统 答案: B 12.软件开发方法的主要工作模型有() A.螺旋模型B.循环模型C.瀑布模型D.专家模型 13.软件工程三要素是()。 A.高技术人员、方法和工具B.方法、工具和过程 C.方法、对象和类D.过程、模型、方法 答案: B 14.软件工程的目标有()。 A.易于维护B.低的开发成本C.高性能D.短的开发期 答案: B 15.软件工程学的目的和意义是()。 A.应用科学的方法和工程化的规范管理来指导软件开发 B.克服软件危机 C.做好软件开发的培训工作 D.以较低的成本开发出高质量的软件 答案: D 16.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做() A.软件工程B.软件周期C.软件危机D.软件产生 答案: C 17.快速原型模型的主要特点之一是() A.开发完毕才见到产品B.及早提供全部完整的软件产品 C.开发完毕后才见到工作软件D.及早提供工作软件 答案: D 18.瀑布模型的存在问题是() A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通D.适用可变需求 答案: B 19、软件生存周期模型不包括: ( ) A.瀑布模型 B.对象模型 C.增量模型 D.喷泉模型 答案: B 20.下列哪个不属于软件工程的内涵之一() A.应用完善的科学与工程原理B.经济地开发软件 C.高薪聘请软件高手D.开发既可靠又能有效运行的软件 答案: C 21.在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于( )。 A.维护时期 B.计划时期 C.运行时期 D.开发时期 答案: B 22.下列哪个办法不属于解决软件危机的途径之一() A.研制新一代智能计算机B.大力扶持软件企业 C.采用软件工程的解决途径D.采用面向对象的软件设计方法 答案: B 23.下面哪一项不属于快速原型模型的优点。 A.可及早为用户提供有用的产品。 B.可保证在开发后期,全面发现错误给以纠正。 C.减少技术应用风险,缩短开发时间,减少费用、提高生产率。 D.促使用户主动参与开发活动,促进各类人员的协调,适应需求变化。 答案: B 24.下列哪个不属于瀑布模型与传统的程序设计的不同之处( )。 A.传统的程序设计开发人员只开发程序,不写文档. B.传统的程序设计重点在问题求解和算法,并只有自己才能读懂. C.瀑布模型的各阶段要第三方介入审察 D.传统的程序设计规定各阶段必须写文档. 答案: D 25.下面哪个模式不属于软件工程的开发模式 A.基于瀑布模型的开发模式B.基于原型模型的开发模式 C.基于人机对话的开发模式D.基于关系数据库的开发模式 答案: C 二、填空题 1.软件工程学的内容可包括()、结构、()、()、环境、管理、规范等。 答案: 理论方法工具 2.软件生存周期一般可分为问题定义、()、()、设计、()、测试、运行与维护阶段。 答案: 可行性研究需求分析编码 3.软件=()+()。 答案: 程序文档 4.软件危机的事实使人们意识到: 计算机要推广使用,其关键在于()技术的革新。 答: 软件开发 5.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作()。 答: 软件危机 6.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。 答: 60年代末工程学 7.瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又可细分为若干个更小的阶段。 答: 运行及维护 三、判断改错题 1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。 () √ 2.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。 () ×文档驱动 3.结构化方法的工作模型是使用螺旋模型进行开发。 () ×两者无关 4.软件危机的主要表现是软件的需求量迅速增加,软件价格上升。 () ×软件危机的主要表现: 一方面是无法满足日益增长的对软件的需求;另一方面是难以满足对已有的软件系统维护的需要。 5.RCP法与RSP法的主要区别是,前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。 () √ 四、简答题 1.当沿着螺旋模型的过程流路径向外移时,你认为正在开发或维护的软件发生了什么变化? 答: 在使用螺旋模型开发软件的过程中,从核心开始,螺旋的第一圈可能产生软件的规格说明,接下来的螺旋可能用于开发一个原型,随后是软件的更完善的版本。 经过计划区域的每一圈是为了调整项目计划,基于从用户评估得到的反馈,调整费用和进度。 沿螺旋线自内向外每旋转一圈,便开发出一个更为完善的、新的软件版本。 2.快速原型模型有几种? 各有何特点? 答: 根据原型的不同作用,有三类原型模型: ⑴探索型原型。 这种类型的原型模型是把原型用于开发的需求分析阶段,目的是要弄清用户的需求,确定所期望的特性,并探索各种方案的可行性。 它主要针对开发目标模糊,用户与开发着对项目都缺乏经验的情况,通过对原型的开发来明确用户的需求。 ⑵实验型原型。 这种原型主要用于设计阶段,考核实现方案是否合适,能否实现,对于一个大型系统,若对设计方案心中没有把握时,可通过这种原型来证实设计方案的正确性。 ⑶演化型原型。 这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统的框或者包含系统的主要功能。 在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统,它将原型的思路扩展到软件开发的全过程。 3.试说明"软件生存周期"的概念。 答: 软件生存周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。
(1)计划阶段: 确定待开发系统的总体目标和范围,研究系统的可行性和可能的解决方案,对资源、成本及进度进行合理的估算。 软件计划的主要内容包括所采用的软件生命周期模型、开发人员的组织、系统解决方案、管理的目标与级别、所用的技术与工具,以及开发的进度、预算和资源分配。
(2)分析阶段: 分析、整理和提炼所收集到的用户需求,建立完整的分析模型,将其编写成软件需求规格说明和初步的用户手册。 通过评审需求规格说明,确保对用户需求达到共同的理解与认识。 需求规格说明明确地描述了软件的功能,列出软件必须满足的所有约束条件,并定义软件的输入和输出接口。 (3)设计阶段: 设计阶段的目标是决定软件怎么做,设计人员依据软件需求规格说明文档,确定软件的体系结构,进而确定每个模块的实现算法、数据结构和接口等,编写设计说明书,并组织进行设计评审。 (4)实现阶段: 实现阶段是将所设计的各个模块编写成计算机可接受的程序代码,与实现相关的文档就是源程序以及合适的注释。 (5)测试阶段: 在设计测试用例的基础上,测试软件的各个组成模块。 然后,将各个模块集成起来,测试整个产品的功能和性能是否满足已有的规格说明。 (6)维护阶段: 一旦产品已交付运行之后,对产品所做的任何修改就是维护。 维护是软件过程的一个组成部分,应当在软件的设计和实现阶段充分考虑软件的可维护性。 维护阶段需要测试是否正确地实现了所要求的修改,并保证在产品的修改过程中,没有做其他无关的改动。 5.软件产品的特性是什么? 答: a.软件产品是一种逻辑产品。 b.软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。 c.软件产品不会用坏,不存在磨损、消耗问题。 d.软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是"定做"的。 e.软件费用不断增加,成本相当昂贵。 6.什么是软件危机? 其产生的原因是什么? 答: 软件危机: 软件发展第二阶段的末期,由于计算机硬件技术的进步。 一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。 在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。 主要表现在以下几个方面: a.经费预算经常突破,完成时间一再拖延。 b.开发的软件不通满足用户要求。 c.开发的软件可维护性差。 d.开发的软件可靠性差。 软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的: a.软件的规模越来越大,结构越来越复杂。 b.软件开发管理困难而复杂。 c.软件开发费用不断增加。 d.软件开发技术落后。 e.生产方式落后。 f.开发工具落后,生产率提高缓慢。 7.什么是软件工程? 它的目标和内容是什么? 答: 软件工程: 用科学知识和技术原理来定义、开发、维护软件的一门学科。 软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标: a.付出较低的开发成本; b.面到要求的软件功能; c.取得较好的软件性能; d.开发的软件易于移植; e.需要较低的维护费用; f.能按时完成开发任务,及时交付使用; g.开发的软件可靠性高; 软件工程的内容: 1)软件开发技术: 软件开发方法、软件开发过程、软件开发工具和环境。 2)软件开发管理: 软件管理学、软件经济学、软件心理学。 8.软件工程面临的问题是什么? 答: 软件工程面临的问题: a.软件费用。 b.软件可靠性。 c.软件维护。 d.软件生产率。 e.软件重用。 9.什么是软件生存周期? 它有哪几个活动? 答: 软件生存周期: 一个软件从提出开发要求开始直到该软件报废为止的整个时期。 软件生存周期包括: 可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等. 10.什么是软件生存周期模型? 有哪些主要模型? 答: 软件生存周期模型: 是描述软件开发过程中各种活动如何执行的模型。 (模型: 是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。 ) 软件生存周期主要模型: 瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等 五、问答题 无 第2章可行性研究 一、选择题 1.系统定义明确之后,应对系统的可行性进行研究。 可行性研究应包括()。 A.软件环境可行性、技术可行性、经济可行性、社会可行性 B.经济可行性、技术可行性、操作可行性 C.经济可行性、社会可行性、系统可行性 D.经济可行性、实用性、社会可行性 答案: B 2.研究开发所需要的成本和资源是属于可行性研究中的()研究的一方面。 A.技术可行性B.经济可行性C.社会可行性D.法律可行性 答案: B 3.设年利率为i,若不计复利,n年后可得钱数为F,则这些钱现在的价值是() A.F(1+in)B.(1+ni)/F C.F/(1+ni)D.F/(1+n/i) 答案: C 4.在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于( )。 A.维护时期 B.计划时期 C.运行时期 D.开发时期 答案: B 5.数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成()。 A.数据说明条目、控制流条目、加工条目、数据存储条目 B.数据流条目、数据项条目、数据存储条目、加工条目 C.数据源条目、数据流条目、数据处理条目、数据文件条目 D.数据流条目、数据文件条目、数据池条目、加工条目 答案: B 6.DFD图不反映出系统() A.系统做什么B.系统功能如何实现C.系统由谁来做D.系统实现的约束条件 答案: B 7.下列模型属于成本估算方法的有() A.COCOMO模型B.McCall模型C.McCabe度量法D.时间估算法 答案: A 8.软件项目计划一般不包括以下哪项内容() A培训计划B人员安排C进度安排D软件开发标准的选择和制定 答案: D 9.可行性研究的目标是()。 A.开发项目B.项目值得开发否C.规划项目D.维护项目 答案: B 10.分层DFD图是一种比较严格又易于理解的描绘方式,它的顶层图的作用在于()。 A.描绘了系统的实现细节 B.表明了被开发系统的范围以及它和周围环境的数据交换关系 C.描绘了系统的抽象 D.描绘了软件实现的作者和绘制的时间 答案: B 11.DFD主要用来描述()。 A.系统的信息及其联系B.系统做什么C.系统模拟的动态模型D.系统功能如何实现 答案: B 12.对软件复杂性进行度量时,采用代码行度量法,下列说法不正确的是()。 A.每行代码的出错率与源程序行数之间不存在简单的线性关系 B.对于少于100行语句的小程序,源代码行数与出错率是线性相关的 C.代码行度量法只是一简单的,估计的很粗糙的方法 D.随着程序的增大,出错率以线性方式增长 答案: D 13.软件项目计划范围内容是对软件项目的综合描述,定义其所要做的工作以及性能限制。 下列不属于软件项目计划范围内容的有()。 A.硬件资源B.成本估算C.系统接口D.进度安排 答案: C 14.DFD图反映系统() A.怎么做B.对谁做C.何时做D.做什么 答案: D 15.经济可行性研究的范围包括() A.资源有效性B.管理制度C.效益分析D.开发风险 答案: C 16.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。 A.确定B.行或不行C.正确D.无二义 答案: B 17.为高质量地开发软件项目,在软件结构设计时,必须遵循( )原则。 A.信息隐蔽B.质量控制C.程序优化D.数据共享 答案: A 18.数据流图(DFD)是_______方法中用于表示系统的逻辑模型的一种图形工具。 A.SAB.SDC.SPD.SC 答案: A 19.需求规格说明书的作用不包括( ) A.软件验收的依据B.用户与开发人员对软件要做什么的共同理解 C.软件可行性研究的依据D.软件设计的依据 答案: C 20.数据字典是用来定义_________中的各个成份的具体含义的。 ( ) A.流程图B.功能结构图C.系统结构图D.数据流图 答案: D 21.软件可行性研究实质上是要进行一次( )需求分析、设计过程。 A.简化、压缩的 B.详细的 C.彻底的 D.深入的 答案: A 22.软件计划的具体任务不包括() A.确定软件的作用范围B.解决软件开发的难点 C.估算开发所需的资源D.估算软件成本费用和安排进度 答案: B 23.DFD图不反映出系统() A.系统做什么B.系统功能如何实现 C.数据流向与数据存储D.系统实现的约束条件 答案: B 24.软件可行性研究一般不考虑() A是否有足够的人员和相关的技术来支持系统开发 B是否有足够的工具和相关的技术来支持系统开发 C待开发软件是否有市场、经济上是否合算 D待开发的软件是否会有质量问题 答案: D 25.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的()。 A.总貌B.细节C.抽象D.软件的作者 答案A 26.经调查,系统分析员给出有问题的初略陈述,其中部分描述如下: 某商场的采购部门要求每天开出定购清单,交采购员;仓库管理员将此要还应输入系统,经库存业务(进贷或出贷)处理后输出。 从这段描述可知该部分数据流图中的外部项为: A.采购员、仓库管理员B.定购清单、库存业务 C.库存业务D.定购清单、采购员 答案A 27.下列叙述中,_______不属于数据字典的作用。 A.作为编码阶段的描述工具B.为用户与开发人员之间统一认识 C.作为概要设计的依据D.为需求分析阶段定义各类条目 答案A 28.数据流是数据流图的基本成分,下列关于数据流的叙述中,______是正确的。 A.某加工的输入是一个数据流,该加工的输出也必定是一个数据流 B.多个不同的数据流可以流向一个加工,也可从一个加工中流出 C.数据流只能从加工流向文件,但不能从文件流向加工 D.一个数据流可以从一个文件流向另一个文件 答案B 二、填空题 1.数据流图的基本符号包括()、()、()、()。 答: 数据输入的源点和数据输出的汇点加工数据流数据存储文件 2.数据流图和()共同构成系统的逻辑模型。 答: 数据字典 3.数据字典的内容包括六项: ()、()、()、数据存储、处理逻辑、外部实体。 答: 数据流数据项数据结构 4.可行性研究的目的是()。 答: 用最小的代价在尽可能短的时间内确定问题是否能够解决 5.系统流程图是()的传统工具。 答: 描绘物理系统 6.在可行性研究中,()是系统开发过程中难度最大,最重要的一个环节。 答: 技术可行性 7.在结构化分析中,()用于详细地定义数据流图中的成分。 答: 数据字典 8.结构化分析方法中,数据流图的四种基本成分为: 加工、源点或终点()。 答: 数据流和文件 9.在数据流图中,用以表示软件系统之外的人员、设备等外部实体的基本成分(元素)称为()。 答: 外部项 三、判断改错题 1.可行性研究阶段要进行一次大大压缩简化了的系统分析和设计的过程。 () √ 2.数据流图表示了软件系统对数据的算法处理过程,即系统的物理模型。 () ×数据流图定义 3.加工说明是对系统流程图中的加工进行说明。 () ×数据流图 4.分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。 () ×分层的DFD图可以用于可行性分析阶段。 描述系统的物理结构。 四、简答题 1.可行性研究的任务是什么? 答: a.技术可行性: 考虑的因素 (1).开发的风险 (2)资源的有效性(3)技术(4)开发人员在主段技术可行性时,一旦估计错误,将会出现灾难性后果。 b.经济可行性。 c.社会可行性。 2.可行性研究有哪些步骤? 答: a.确定项目规模和目标 b.研究正在运行的系统 c.建立新系统的高层逻辑模型 d.导出和评价各种方案 e.推荐可行的方案 f.编写可行性研究报告 3.成本---效益分析可用哪些指标进行度量? 答: 有形效益度量: a.货币的时间价值 b.投资回收期 c.纯收入 无形效益: 主要从性质上、心理上进行衡量,很难直接进行量的比较。 通常以有形效益度量作为成本---效益分析的度量。 4.项目开发计划有哪些内容? 答: a.项目概述b.实施计划c.人员组织及分工d.交付期限 5.软件工程的基本目标是什么? 答: 软件工程旨在开发满足用户需要、及时交付、不超过预算和无故障的软件,其主要目标如下:
(1)合理预算开发成本,付出较低的开发费用;
(2)实现预期的软件功能,达到较好的软件性能,满足用户的需求; (3)提高所开发软件的可维护性,降低维护费用; (4)提高软件开发生产率,及时交付使用。 6.原型化方法主要用于解决什么问题? 试说明这种方法的主要优缺点。 答: 建立原型的主要原因是为了解决在产品开发的早期阶段需求不确定的问题,用户、经理和其他非技术项目风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。 原型在软件开发过程中可以起到以下主要作用:
(1)明确并完善需求原型作为一种需求工具,它初步实现所理解的系统的一部分。 用户对原型的评价可以指出需求中的许多问题,在你开发真正产品之前,可以最低的费用来解决这些问题。
(2)探索设计选择方案原型作为一种设计工具,用它可以探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。 (3)发展为最终的产品原型作为一种构造工具,是产品最初子集的完整功能实现,通过一系列小规模的开发循环,你可以完成整个产品的开发。 7.为什么数据流图要分层? 答: 为了表达数据处理过程的数据加工情况,用一个数据流图是不够的。 为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。 8.什么是加工逻辑? 答: 加工逻辑就是处理逻辑,加工逻辑是对加工过程的抽象描述。 加工逻辑的具体实现就是加工过程。 加工逻辑是指用户对这个加工的逻辑要求,即加工的输入数据流与输出数据流之间的逻辑关系。 加工 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |