国家开放大学《软件工程》章节自测参考答案.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《国家开放大学《软件工程》章节自测参考答案.pdf》由会员分享,可在线阅读,更多相关《国家开放大学《软件工程》章节自测参考答案.pdf(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、国家开放大学软件工程章节自测国家开放大学软件工程章节自测参考答案参考答案 模块一模块一 软件工程概述软件工程概述 一、选择题一、选择题 1软件与程序的区别是()。A.程序价格便宜、软件价格昂贵。B.程序是用户自己编写的,而软件是由厂家提供的。C.程序是用高级语言编写的,而软件是由机器语言编写的。D.软件是程序以及开发软件是程序以及开发、使用和维护所需要的所有文档的总称使用和维护所需要的所有文档的总称,而程序是软而程序是软件的一部分。件的一部分。2 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。A.软件产生 B.软件周期 C.软件工程 D.软件危机软件危机 3瀑布模型本质
2、上是一种()模型。A.线性顺序线性顺序 B.早期产品 C.顺序迭代 D.线性迭代 4瀑布模型存在的问题是()。A.缺乏灵活性 B.用户容易参与开发 C.适用可变需求适用可变需求 D.用户与开发者易沟通 5用户要看到软件产品的模样,最早也要到()以后。A.验收 B.在单元测试之后 C.程序代码编写完成之后程序代码编写完成之后 D.用户需求基本确定 6螺旋模型是一种将瀑布模型和()结合起来的软件开发模型。A.增量模型增量模型 B.专家系统 C.喷泉模型 D.变换模型 7原型化方法是用户和设计者之间执行的一种交互构成,适用于()系统。A.需求不确定性高的需求不确定性高的 B.需求确定的 C.管理信息
3、 D.实时 8原型化方法是一种()型的设计过程。A.自底向上 B.自顶向下 C.自外向内自外向内 D.自内向外 9下列有关软件工程的标准,属于国际标准的是()A.IEEE B.GB C.ISO D.DIN 10结构化方法是一种基于()的方法。A.程序结构 B.数据结构 C.算法 D.数据流数据流 二、简答题二、简答题 1什么是软件危机?软件危机表现在哪几个方面?什么是软件危机?软件危机表现在哪几个方面?参考答案:参考答案:由于软件具有上述这些特点,长期以来一直没有发明一种高效的开发方法,从而导致软件生产效率非常低,交付期一拖再拖,最终交付的软件产品在质量上很难保障。这种现象早在 20 世纪 6
4、0 年代被定义为“软件危机”。它的具体表现如下:(1)“已完成”的软件不满足用户的需求。(2)开发进度不能保障,交付时间一再拖延。(3)软件开发成本难以准确估算,开发过程控制困难造成开发成本超出预算。(4)软件产品的质量没有保证,运算结果出错、操作死机等现象屡屡出现。(5)软件通常没有适当的文档资料,或文档与最终交付的软件产品不符,软件的可维护程度非常低。2试述产生软件危机的主要原因?试述产生软件危机的主要原因?参考答案:参考答案:软件的特点是导致软件危机的客观因素,而软件开发和软件维护过程中使用的不正确方法是主观因素,主要表现为:忽视软件开发前期的调研和分析工作,没有统一的、规范的方法论指导
5、,文档资料不齐全,忽视人员之间的交流,忽视测试工作,轻视软件的维护。3什么是软件工程?软件工程的目标是什么?什么是软件工程?软件工程的目标是什么?参考答案:参考答案:软件工程是:将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程,也就是说将工程化应用于软件开发和管理之中;对中所选方法的研究”。软件工程旨在开发满足用户需要、及时交付、不超过预算和无故障的软件,其主要目标如下:(1)实现预期的软件功能,达到较好的软件性能,满足用户的需求。(2)增强软件过程的可见性和可控性,保证软件的质量。(3)提高所开发软件的可维护性,降低维护费用。(4)提高软件开发生产率,及时交付使用。(5)合理
6、预算开发成本,付出较低的开发费用。4软件工程为什么要强调规范化和文档化?软件工程为什么要强调规范化和文档化?参考答案:参考答案:软件工程强调规范化和文档化。规范化的目的是使众多的开发者遵守相同的规范,使软件生产摆脱个人生产方式,进入标准化、工程化的生产方式。文档化是将软件的设计思想、设计过程和实现过程完整地记录下来,以便于后人的使用和维护,在开发过程中各类相关人员借助于文档进行交流和沟通。另外,在开发过程中产生的各类文档使得软件的生产过程由不可见变为可见,便于管理者对软件生产进度和开发过程进行管理。在用户最终验收时可以通过对提交的文档进行技术审查和管理审查,保证软件的质量。5软件工程层次是如何
7、划分的?软件工程层次是如何划分的?参考答案:参考答案:软件工程的研究内容具有层次化结构,它的最底层是质量保证层,中间是过程层和方法层,最上层是工具层。全面的质量管理和质量需求是推动软件工程过程不断改进的动力,正是这种改进的动力导致了更加成熟的软件工程方法不断涌现。过程层定义了一组关键过程域,目的是保证软件开发过程的规范性和可控性。方法层提供了软件开发的各种方法,包括如何进行软件需求分析和设计,如何实现设计,如何测试和维护等方法。工具层为软件工程方法和过程提供了自动或半自动的支撑环境。目前市场上已经有许多不错的软件工程工具,应用效果良好。6什么是软件生存周期模型?什么是软件生存周期模型?参考答案
8、:参考答案:软件生命周期模型反映的是软件开发过程、活动和任务的结构框架。它能够清晰、直观地表达软件开发全过程,明确规定要完成的主要活动和任务。对于不同的软件系统,可能采用不同的开发方法,使用不同的程序设计语言、不同的管理方法和手段、以及各种具有不同技能的人员参与工作,但是对于软件生命周期模型来说都应该是稳定有效和普遍适用的。到目前为止,已经提出了多种模型,主要有瀑布模型、演化模型、喷泉模型、螺旋模型、智能模型。模型的选择是基于软件的特点和应用领域。7软件工程的发展至今为止经历了哪几个阶段?各阶段的特征是什么?软件工程的发展至今为止经历了哪几个阶段?各阶段的特征是什么?参考答案:参考答案:在 2
9、0 世纪 70 年代基本形成了软件工程的概念、框架、方法和手段,被称之为第一代软件工程,即传统软件工程。结构化分析、结构化设计和结构化编程方法是这个时期的代表。80 年代出现的 Smalltalk 80 程序设计语言标志着面向对象程序设计进入了实用阶段,从 80 年代中到 90 年代中,研究的重点转移到面向对象分析和设计上来,从而演化成软件工程的第二代,称之为对象工程。90 年代后期,软件工程的一个重要进展就是基于组件的开发方法。为了提高软件生产力,避免草率地开发应用程序,尽可能地利用可复用组件来组装成新的应用软件系统。到目前为止,组件技术的研究和发展形成了新一代软件工程,即第三代软件工程,也
10、有不少人称之为组件工程。软件工程至今还在不断发展,无论是组件工程还是对象工程都在不断发展,即使是传统软件工程的一些基本概念、框架,也随着技术的进步在发生变化。总之,软件工程代与代之间并没有鸿沟,它们不仅交叉重叠,也携手并进。8指出瀑布模型中下列任务的顺序指出瀑布模型中下列任务的顺序:验收测试,项目计划,单元测试,需验收测试,项目计划,单元测试,需求评审,成本估计,概要设计,详细设计,系统测试,设计评审,编码,需求求评审,成本估计,概要设计,详细设计,系统测试,设计评审,编码,需求规格说明书。规格说明书。参考答案:参考答案:项目计划-成本估计-需求规格说明书-需求评审-概要设计-详细设计-设计评
11、审-编码-单元测试-系统测试-验收测试 9请比较软件生命周期瀑布模型和螺旋模型的特点。请比较软件生命周期瀑布模型和螺旋模型的特点。参考答案:参考答案:瀑布模型最重要的特点:只有当一个阶段的任务完成、交付相应的文档、通过审查小组的审查合格后,才能开始下一个阶段的工作。瀑布模型的优点:有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工具的研究,从而提高了大型软件项目开发的质量和效率。瀑布模型的缺点:(1)开发过程一般不能逆转,否则代价太大;(2)实际的项目开发很难严格按该模型进行;(3)客户往往很难清楚地给出所有的需求,而该模型却要求如此。(4)软件的实际情况必须到项目开发的后期客户
12、才能看到,这要求客户有足够的耐心。螺旋模型的主要优势在于它是风险驱动的,每个方案在实施前都要经过风险分析。如果风险过大,则项目应该停止,或改变方案。螺旋模型的优点:(1)设计上的灵活性,可以在项目的各个阶段进行变更;(2)以小的分段来构建大型系统,使成本计算变得简单容易;(3)客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性;(4)随着项目推进,客户始终掌握项目的最新信息,从而他或她能够和管理层有效地交互。螺旋模型的缺点:(1)采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失;(2)过多的迭代次数会增加开
13、发成本,延迟提交时间。10什么叫职业化?职业化软件工程师的必备条件是什么?什么叫职业化?职业化软件工程师的必备条件是什么?参考答案:参考答案:所谓职业化,简单说就是能胜任工作,让人放心。“能胜任工作”,就需要具备相应的专业技能、知识和经验;“让人放心”意味着很多,包括遵守行业成文的或未成文的规则和规范,积极有效地和同事沟通,确保自己的工作产品是大家所期望的,尽可能地向客户提供最专业的服务和产品。自律、沟通和技能是成为职业化软件工程师的必要条件。自律:软件区别于其它传统产品,软件只有安装运行后,人们才看见它的界面;开发进度也是肉眼看不见的,很难准确判断开发任务完成了 80%还是 30%;质量更是
14、不可见的,只有通过非常认真、全面的测试和度量,才能了解代码的质量。一个程序员认真思考问题时的模样和他发呆时的表现一样,外人很难判断。因此说,“自律”对软件工程师来说更为重要。沟通:软件的规模越来越大,而且处在不断的变化过程中。因此需要软件工程师进行大量书面的、口头的、或面对面的沟通。大到产品的整体功能和性能要求,小到程序的结构,甚至一个函数、一个变量的含义都需要沟通。沟通有标准化的、可视化的工具语言,如 UML。软件工程强调文档的重要性就是以文档作为沟通的工具,与客户沟通明确用户需求;工程师之间沟通明确设计方案,市场人员和工程师沟通确定产品特征。软件工程的实践表明,缺乏主动沟通,往往导致整个团
15、队的技术方案出现偏差,使整个项目的进度受到影响。技能:软件工程师常常强调自己掌握的编码技术,往往忽视用户需求和软件开发的规范。作为职业化软件工程师,需求分析、软件设计、软件构造、软件测试、软件维护、配置管理、软件项目管理、软件过程改进、软件工具和方法以及软件质量保证等是更为重要的技能。11职业化软件工程师十大忌讳是哪些?职业化软件工程师十大忌讳是哪些?参考答案:参考答案:行为一:对外交付半成品。行为二:不遵守标准和规范。行为三:不积极帮助他人。行为四:版权意识不敏感。行为五:对待计划不严肃。行为六:公事私事相混淆。行为七:不注意知识更新。行为八:不主动与人沟通。行为九:不遵守职业规则。行为十:
16、不够诚实和正直。12根据相关的法律,对于侵犯软件著作权的行为,根据情节应当给予什么处根据相关的法律,对于侵犯软件著作权的行为,根据情节应当给予什么处罚?罚?参考答案:参考答案:对于侵犯软件著作权的行为,要根据情况承担停止侵害、消除影响、赔礼道歉、赔偿损失等民事责任;损害社会公共利益的,由著作权行政管理部门责令停止侵权行为,没收违法所得,没收、销毁侵权复制品,并处罚款;情节严重的,著作权行政管理部门可以没收用于制作侵权复制品的材料、工具、设备等;触犯刑律的,依法追究刑事责任。13职业化软件工程师要注意的问题是什么?职业化软件工程师要注意的问题是什么?参考答案:参考答案:职业化软件工程师要注意的十
17、大问题:高质量地完成任务遵守行业标准,不能肆意按照自己的想象来发挥积极帮助他人版权意识敏感严格遵守计划公私分明注意知识更新善于沟通遵守职业规则诚实和正直。模块二模块二 可行性研究可行性研究 一、选择题一、选择题 1可行性研究的主要任务是()。A.确定性能 B.确定功能 C.进行一次简要的需求分析进行一次简要的需求分析 D.确定系统做什么 2可行性分析研究的费用大约是项目总经费的()。A.20%B.5 C.2%D.6%3可行性研究包括(1)研究目前正在使用的系统(2)复查系统地规模和目标(3)进一步定义问题(4)导出新系统地高层逻辑模型,具体步骤顺序是()A.(3)(2)(1)(4)B.(2)(
18、1)(4)(3)C.(3)(1)(2)(4)D.(1)(2)(3)(4)4可行性研究的各个步骤的工作结果写成清晰的文档,下列哪个人员不必参加审查。A.分析人员分析人员 B.客户组织的负责人 C.用户 D.评审组专家 5可行性研究的四大要素是()。A.经济、技术、计算机硬件环境和网络带宽 B.经济、技术、开发组织能力和领导者水平 C.经济、技术、软件开发工具和人员的稳定性 D.经济、技术、法律和社会环境经济、技术、法律和社会环境 6经济可行分析中()是分析投入的成本和产出的效益。A.投入成本分析 B.产出效益分析 C.成本成本-收益分析收益分析 D.短期-长远利益分析 7()容易把握,风险较低。
19、A.短期利益短期利益 B.投入成本 C.长期利益 D.产出利益 8技术可行性考虑的方面()A.提高软件生产率的技术 B.以上全部以上全部 C.完成需求说明中功能需要的技术 D.保障软件治疗的技术 9计算机病毒是指()。A.一组自我复制和自动执行的具有破坏能力的代码一组自我复制和自动执行的具有破坏能力的代码 B.计算机系统的漏洞 C.程序中的 BUG D.一种细菌 10我国正式颁布实施的()对计算机病毒的定义具有法律性,权威性。A.中华人民共和国计算机信息系统安全保护条例中华人民共和国计算机信息系统安全保护条例 B.计算机软件保护条例 C.计算机病毒防治办法 D.中华人民共和国著作权法 11社会
20、环境的可行性至少包括()A.政策 B.市场 C.市场和政策市场和政策 D.社会安定性 12假定银行的存款年利率是 2%,请问现在存 5000 元,两年后的价值应为()元。A.5100 B.5202 C.4712 D.4500 13无形的效益是()A.投资回收期 B.社会影响力社会影响力 C.货币的时间价值 D.纯收入 模块三模块三 需求分析需求分析 1.面向对象分析任务的核心在于建立()模型。a.建立正确的模型 b.识别问题域对象识别问题域对象 c.识别对象之间的关系 d.上面所有 2.()不是分析建模的目的。a.定义可验证的软件需求 b.开发一个简单的问题解决方案开发一个简单的问题解决方案
21、c.描述客户需求 d.建立软件设计的基础 3.面向对象开发方法主要分为分析、设计和实现三个阶段,下面属于分析阶段主要工作的是()。a.建立用例模型建立用例模型 b.改进系统的性能 c.定义子系统接口参数 d.编写代码 4.面向对象分析过程中建立的模型有()。a.属性模型、功能模型、对象模型 b.对象模型、功能模型、测试模型 c.数据模型、功能模型、活动模型 d.对象模型、功能模型、动态模型对象模型、功能模型、动态模型 5.功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。在面向对象方法中,由()实现。a.用例图和场景描述用例图和场景描述 b.交互图和场景描述 c.活动图和场景描述
22、d.场景描述 6.用()模型分析和定义用户的需求。a.用例用例 b.静态 c.动态 d.数据 7.用()模型描述和分析业务流程。a.数据 b.交互 c.业务 d.动态动态 8.下面建立功能模型的步骤哪个顺序是正确的()。a.确定用例模型/确定角色/确定用例 b.确定角色确定角色/确定用例确定用例/确定用例模型确定用例模型 c.确定角色/确定用例模型/确定用例 d.确定用例/确定用例模型/确定角色 9.建立用例(功能)模型中第一步是()。a.创建机构组织结构及角色职能图创建机构组织结构及角色职能图 b.确定用例 c.确定用例模型 d.确定角色 10.确定角色是()的任务。a.对象模型 b.动态模
23、型 c.用例模型用例模型 d.交互模型 11.()用于描述系统中概念层次的对象。a.界面类 b.控制类 c.实体类 d.分析类分析类 12.分析模型的类有三种即()。a.界面类、控制类、公共类 b.实体类、数据类、界面类 c.边界类、实体类、控制类边界类、实体类、控制类 d.控制类、实体类、数据类 13.建立对象模型的步骤为()。a.构建类图/识别分析类 b.识别分析类识别分析类/构建类图构建类图 c.确定用例/确定角色 d.确定角色/确定用例模型 14.在基于用例的面向对象分析过程中,定义交互行为的关键在于通过描述分析类实例之间的()将用例的职责分配到分析类中。a.上下文关系 b.消息传递消
24、息传递 c.关联关系 d.继承关系 15.动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。面向对象方法中,常用()实现。a.状态图 b.交互图 c.活动图 d.以上全部以上全部 16.需求评审问题清单应该包括()。a.检查正确性的问题列表 b.检查完整性的问题列表 c.检查一致性的问题列表 d.以上全部以上全部 17.是否描述了系统功能的管理属于()问题列表中的内容。a.检查完整性 b.检查一致性 c.检查正确性检查正确性 d.检查可靠性 18.面向对象的需求分析规格说明书的分析模型中可以省略的有()。a.性能需求 b.数据要求数据要求 c.对象模型 d.运行
25、环境 19.软件需求分析规格说明书中的分析模型应该包括()a.对象模型 b.动态模型 c.用例模型 d.以上全部以上全部 模块四模块四 软件设计软件设计 一、选择题一、选择题 1.随着模块规模减小,模块开发成本(),模块集成成本()。A.增加/减小 B.增加/增加 C.减小/减小 D.减小减小/增加增加 2.反映模块独立性的指标是()。A.模块的大小 B.模块的参数 C.内聚和耦合内聚和耦合 D.模块的复杂性 3.非直接耦合的模块独立性最强,()的模块独立性最弱。A.数据耦合 B.控制耦合 C.外部耦合 D.内容耦合内容耦合 4.内容耦合是模块间最紧密的耦合,()是模块间最松散的耦合。A.控制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 国家 开放 大学 章节 自测 参考答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内