计算机——软件工程期末复习答案.doc_第1页
计算机——软件工程期末复习答案.doc_第2页
计算机——软件工程期末复习答案.doc_第3页
计算机——软件工程期末复习答案.doc_第4页
计算机——软件工程期末复习答案.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

一、单项选择题1在软件生存周期中,时间最长的阶段是(D )A需求分析 B详细设计 C.编码 D.维护2以下最适合于面向对象的软件开发的软件生存周期模型是(D )A瀑布模型 B.增量模型 C.螺旋模型 D.喷泉模型3以下不适用于需求分析的工具是(C)A数据流图 B.判定表 C.PAD图D.数据字典4以下几种模块内聚类型中,内聚性最低的是(B)A时间内聚 B.逻辑内聚 C.顺序内聚 D.功能内聚5系统流程图中 符号的名称是(A)A联机存储 B.处理 C.磁盘 D.文档6数据流图中的每个加工至少有(D)A一个输入流或一个输出流 B.一个输出流C一个输入流 D.一个输入流和一个输出流7HIPO图是软件工程中的一种描述工具,采用HIPO图进行描述的阶段是(C)A可行性分析 B.需求分析 C概要设计 D.详细设计8Jackson方法是软件开发过程中常用的方法,使用Jackson方法可以实现(A)A从数据结构导出程序结构B.从数据流图导出初始结构图C从模块结构导出数据结构D.从模块结构导出程序结构9过程设计语言(PDL),又称为(A)A伪码 B.高级程序设计语言 C.中级程序语言 D.低级程序设计语言10单元测试阶段主要涉及的文档为(B)A需求设计 B.编码和详细设计 C详细设计 D概要设计11软件维护会产生副作用,下面选项中不属于维护副作用的是(B)A编码副作用 B.测试副作用 C文档副作用D.数据副作用l2以下不适合作为科学工程计算的语言是(B)APascal B.C CFortran D.Prologl3PAD图为下列哪个方面提供了有力的工具(A)A系统分析 B软件的自动化生成 C自动分析数据D.测试软件14结构化软件设计是(C)A面向数据结构的 B.面向数据库的 C.面向数据流的 D.面向对象设计的15在McCall软件质量度量模型中,面向软件产品修改的质量因素为(B)A可用性 B.完整性 C适应性D.互操作性16汽车是一种交通工具,汽车类和交通工具类之间的关系是(A)A一般具体 B.has a C整体部分D.组成l7Westinghouse公司于1992年公布了l3类软件工具分类标准和该类的范例工具以及例子,下面说法错误的是(A)A代码生成程序属于编码和单元测试工具 B.桌面出版系统属于文档工具C数据库管理系统属于需求追踪工具 D.计划和进度属于项目管理工具18对McCabe度量法,叙述错误的是(C)A.McCabe度量法是一种基于程序控制流的复杂性度量法B.McCabe度量法以图论为工具,用图的环路作为程序复杂性的度量值C.McCabe度量法将简单IF语句和赋值语句的复杂性同等看待D.McCabe复杂性度量也称为环路度量19瀑布模型本质是一种(B)A顺序迭代模型 B.线性顺序模型 C线性迭代模型D.非线性模型20对于使用原型的建议,下面说法错误的是(C)A开发周期很长的项目,可通过原型开发来缩短开发周期B.系统的使用可能变化较大,不能相对稳定,而原型模型具有适应变化的机制C缺乏开发工具,或对原型的可用工具不了解的时候宜使用原型D.用户对系统的需求较为模糊,对某种要求缺乏信心时宜使用原型21以下哪一项不是软件危机的表现(B)A开发的软件可维护性差B软件极易被盗版C经费预算经常被突破D开发的软件不能满足用户需求22以下哪个软件生存周期模型是一种风险驱动的模型(C)A瀑布模型 B增量模型 C螺旋模型D喷泉模型23各种需求分析方法都有共同适用的(D)A分析方法 B说明方法 C表示方法D基本原则24结构化分析建立功能模型的工具是(A)ADFD B判定树/判定表 CDDD结构化语言25模块中所有成分结合起来完成一项任务,该模块的内聚性是(A)A功能内聚 B顺序内聚 C通信内聚D逻辑内聚26系统定义明确之后,应对系统的可行性进行研究,可行性研究应包括(A)A技术可行性、经济可行性、社会可行性B经济可行性、安全可行性、操作可行性C经济可行性、社会可行性、系统可行性D经济可行性、实用性、社会可行性27以下哪一项对模块耦合性没有影响(D)A模块间接口的复杂程度 B调用模块的方式C通过接口的信息 D模块内部各个元素彼此之间的紧密结合程度28检查软件产品是否符合需求定义的过程称为(A)A确认测试 B集成测试 C系统测试D单元测试29下面关于详细设计的叙述中,错误的是(B)A程序流程图可以描述结构化程序B程序流程图不能描述结构化程序CNS图描述的程序一定是结构化的DPAD图描述的程序一定是结构化的30在整个软件维护阶段所花费的全部工作中,所占比例最大的是(C)A校正性维护 B适应性维护 C完善性维护D预防性维护31以下不属于序言性注释的有(C)A模块设计者 B修改日期 C程序的整体说明 D语句功能32集成测试是为了发现(A)A接口错误 B编码错误 C性能、质量不合要求D功能错误33一个只有顺序结构的程序,其环形复杂度是(B)A0 B1 C3 D534结构化程序设计,主要强调的是(C)A程序的执行效率 B模块的内聚 C程序的可理解性 D模块的耦合35下面关于文档的叙述,错误的是(A)A文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节B文档是软件产品的一部分,没有文档的软件就不成为软件C高质量文档对于转让、变更、修改、扩充和使用有重要的意义D软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量36在McCall软件质量度量模型中,面向软件产品操作的质量因素是(A)A正确性 B可维护性 C适应性 D互操作性37对度量法,叙述错误的是(C)A度量法是一种基于程序控制流的复杂性度量法B度量法以图论为工具,用图的环路数作为程序复杂性的度量值C度量法不能区分简单IF语句和循环语句的复杂性D度量法对模块间的接口和简单IF语句区分对待38在快速原型模型的开发过程中,仅用于代替设计阶段的原型是(C)A探索型模型 B演化型模型 C实验型模型D提交型模型39对于构造原型的建议,下面说法错误的是(D)A暂不考虑错误恢复和处理,但应考虑速度、空间等性能效率方面的要求B可降低可靠性和软件质量标准C原型界面部分的设计,最好能与最终系统的界面相容D根据不同的软件类型和应用领域,可使用不同风格的高级语言来构造原型40面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是(C)ABooch方法 BCoad方法 CUML语言DOMT方法4l.以下哪一项不是软件产品所具有的特性(C) A软件是逻辑产品 B软件产品不会用坏,不存在磨损、消耗问题C.随着技术的提高,软件开发的费用不断降低D.软件产品的成本主要体现在软件的开发与研制上42.“确定软件系统必须做什么”是哪个阶段的任务(B)A.可行性分析和项目开发计划 B需求分析 C概要设计D详细设计43以下哪一项不是软件测试时需要的信息(B)A软件配置 B软件结构 C.测试工具D测试配置44结构化分析方法的分析策略是(B)A自底向上的抽象 B自顶向下的分解 C用DFD建模 D用DD描述数据需求45.一组语句在程序中多处出现,为了节省存储,将这些语句组成一个新的模块,该模块的内聚性为(C )A功能内聚 B顺序内聚 C偶然内聚D逻辑内聚46系统流程图是描绘以下哪一项的工具(C)A软件结构 B逻辑系统 C物理系统D软件功能47数据库的设计一般要进行三个方面的设计:概念设计、逻辑设计和物理设计,其中逻辑设计对应于系统开发的什么部分(C )A可行性分析 B需求分析 C概要设计 D详细设计48以下哪种语言可用于描述模块算法设计和处理细节(B )AUML语言 B过程设计语言 CFORTRAN语言 DPascal语言49软件维护是软件生命周期中的固有阶段,一般认为,以下哪种软件维护在整个维护活动中所占的比例最小(C )A校正性维护 B适应性维护 C预防性维护D完善性维护50软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(D )A结构合理性 B软件外部功能 C程序正确性D程序内部逻辑51使用Jackson方法可以得到(D )A程序流程图 B具体的语言程序 C模块结构图及模块的功能说明书D分层数据流图52.以下哪种测试的任务是检查软件的功能与性能是否与需求规格说明书中确定的指标相符合(B )A集成测试 B确认测试 C单元测试D系统测试53与编程风格有关的因素不包括( B )A源程序文档化 B语句构造 C输入输出 D模块间耦合性54.对于构造原型的建议,下面说法错误的是(D )A. 暂不考虑速度、空间等性能效率方面的要求。 B暂不考虑错误恢复和处理。C可降低可靠性和软件质量标准。D原型界面部分的设计,暂不考虑与最终系统的界面相容。55.有关软件项目进度安排的叙述,错误的是(C )AGantt图常用水平线段来描述把任务分解成子任务,以及每个子任务的进度安排。BGantt图中线段的长度表示完成子任务所需要的时间。C工程网络图是一种有向图,用圆表示事件,用有向弧或箭头表示任务,有向弧或箭头的长度表示子任务持续的时间。D工程网络图只有一个开始点和一个终止点,开始点没有流入箭头,终止点没有流出箭头。56.以下哪一项是软件开发环境中的主要组成部分(C)A软件模型 B软件工程 C软件工具 D硬件环境57对于一个大型系统,若对设计方案没有把握,可以通过以下哪种原型来证实设计方案的正确性。(B)A探索型 B实验型 C演化型 D增量型58对UML的叙述不正确的是(D )AUML统一了Booch方法、OMT方法、OOSE方法的表示方法。BUML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。CUML融入了软件工程领域的新思想、新方法和新技术。DUML仅限于支持面向对象的分析与设计,不支持其它的软件开发过程。59在McCall软件质量度量模型中,以下哪一项是面向软件产品适应的质量因素(D )A可用性 B可维护性 C适应性D可重用性60下面说法错误的是(D)A软件可靠性能够定量计算。 BMTBF是指两次相继失效之间的平均时间。CMTTF是一个描述失效模型或一组失效特性的指标量。DMTTF与失效率成正比61软件开发环境按解决的问题分类包含(A)A程序设计环境 B工具箱环境 C基于方法的环境D以语言为中心的环境62为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是(A)A容错技术 B避开错误技术 C检测技术D排错技术63软件复杂性的常用度量方法包括(D)ABOEHM度量法 B可扩充度量法 C线性度量法D代码行度量法64面向对象的要素包含(B)A对象的唯一性 B抽象 C继承性D分类性65构造原型时,主要考虑(B)A全部功能 B原型要体现的特征 C全部细节D全部要求66维护中,因修改文件的打开或关闭而引起的错误是(C)A文档副作用 B数据副作用 C编码副作用 D设计副作用67诊断和消除程序在使用过程中发生错误的过程称为(A)A校正性维护 B适应性维护 C完善性维护 D预防性维护68在白盒技术测试用例的设计中,以下覆盖标准中发现错误能力最强的是(C)A语句覆盖 B判定/条件覆盖 C条件组合覆盖D判定覆盖69软件调试技术包括(A)A回溯法调试 B循环覆盖调试 C边界值分析调试D集成测试调试70在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为(D)A确认测试 B系统测试 C渐增式测试D非渐增式测试71源代码的可维护性表现了程序设计语言的(B)A心理特性 B工程特性 C技术特性D传统特性72至今已有好几百种不同的高级语言,它们有的是用于数值计算,有的是用于商业管理,有的是用于编写系统软件。以下语言中较适用于数值计算的语言是(D)ABASIC BSQL CLISP DFORTRAN73在JSP方法中解决结构冲突的具体办法是(A)A引入中间数据结构或中间文件B删除某个输入数据结构C删除某个输出数据结构D增加某个输入或输出数据结构74模块的内聚性可以按照内聚程度的高低进行排序,以下排列中属于从低到高的正确次序是(C)A偶然内聚,时间内聚,逻辑内聚 B通信内聚,时间内聚,逻辑内聚C逻辑内聚,通信内聚,顺序内聚 D功能内聚,通信内聚,时间内聚75以下软件生存周期的活动中,要进行软件结构设计的是(B)A测试用例设计 B概要设计 C程序设计D详细设计76能够清楚地表示复杂的条件组合与应做的动作之间的对应关系的工具是(C)A结构化语言 BPAD图 C判定表D程序流程图77需求分析方法必须能够表达和理解问题的数据域和(C)A数据流 B用户类型 C功能域D应用领域78以用户需求为动力,以对象作为驱动的模型是(C)A瀑布模型 B基于知识的模型 C喷泉模型D增量模型79把软件生产的全过程人为地划分为若干阶段使得软件人员能根据每一阶段的不同特点更好地组织和管理软件项目的开发,这种概念就是(D)A软件项目管理 B软件工程 C软件项目计划D软件生存期80在软件生存期的各个阶段中跨越时间最长的阶段是(D)A需求分析阶段 B设计阶段 C测试阶段D维护阶段81Wasserman提出的软件工程环境的五级模型中,支持工作台或环境中一个工具对系统中其它工具的访问称为(C )A平台集成 B表示集成 C控制集成D过程集成82以下被详细设计阶段用来描述处理过程的工具是(C )A软件结构图 B程序流程图 C数据流图D对象图83在McCall软件质量度量模型中,属于面向软件产品适应的是(C)A可用性 B可维护性 C适应性D可互操作性84在实现系统功能时,为了增加系统的可靠性,在规定功能之外,多加入了一些资源,这种技术称为(A )A冗余技术 B可靠性技术 C可重用技术D检测技术85快速原型思想是在研究以下哪个阶段的方法和技术中产生的?(D )A软件开发 B设计 C编码D需求分析86软件维护中,因修改交互输入的顺序,没有正确的记录而引起的错误是以下哪一项产生的副作用?( A )A文档 B数据 C编码 D设计87以下属于软件维护阶段文档的是(C )A软件需求说明 B操作手册 C软件问题报告D测试分析报告88以下哪一项属于白盒技术设计测试用例的方法?(A)A循环覆盖 B等价类划分 C边界值分析 D因果图89效率是一个性能要求,因此应当在以下哪个阶段规定?(B)A可行性分析 B需求分析 C概要设计D详细设计90PAD图的优点之一是支持逐步求精的设计方法,其逐步细化的方式为(B )A由右到左 B由上到下 C由下到上D由左到右91在模块的四种基本属性中,反映模块内部特性的是(C )A接口 B功能 C逻辑 D状态92模块的耦合性可以按照耦合程度的高低进行排序,以下哪一项符合从低到高的正确次序?( D )A标记耦合,公共耦合,控制耦合,内容耦合B数据耦合,控制耦合,标记耦合,公共耦合C无直接耦合,标记耦合,内容耦合,控制耦合D无直接耦合,数据耦合,控制耦合,内容耦合93在建立软件系统的模块结构时,评价系统模块划分质量的根据为(C)A数据独立性 B程序独立性 C模块独立性D设备独立性94PDL是描述处理过程(C )A做什么 B为什么做 C怎么做D对谁做95结构化语言是介于自然语言和形式语言之间的一种(D )A半形式语言 B半自然语言 C过程描述语言D高级语言96软件需求分析产生的重要文档一个是软件需求分析规格说明书,另一个可能产生的文档是(C )A软件维护说明书 B概要设计说明书 C可行性分析报告D初步的用户手册97结构化分析(SA),是面向下面哪一项进行需求分析的方法?(D )A过程 B对象 C用户 D数据流98系统流程图用于可行性分析中描述以下哪一方面?(D )A目标系统 B当前运行系统 C新系统D当前逻辑模型99为了克服软件危机,人们首先想到要用以下哪种方法来开发软件?(D )A模块化 B结构化 C工程化D形式化100以下哪一项是面向数据结构的软件开发方法?(D)AIDEF方法 B结构化方法 CVDM方法DJACKSON方法二、填空题:1为了支持软件人员开发和维护活动而使用的软件一般是指软件工具。2在IDEF0方法中,一个活动可以无输入,但必须至少有一个控制箭头。3在软件结构的设计中,各个模块之间要力求降低耦合性,提高内聚性。4在类的层次结构中,通常上层类称为父类或超类,下层类称为子类。5数据流图(DFD)一般可分为变换型和事务型两类。6软件维护的内容包括校正性维护、适应性维护、完善性维护和预防性维护。7软件的生产经历了三个阶段,分别是程序设计时代、程序系统时代和软件工程时代。8渐增模型是瀑布模型的变种,分为两类:增量构造模型和演化提交模型。9状态图反映了事件与状态的关系。10软件项目管理过程一个关键的活动是制定项目计划,它是软件开发工作的第一步。11组成软件的两个部分是:程序和文档。12项目开发计划的主要内容包括项目概述、实施计划、人员组织及分工、交付期限。13为了克服软件危机,1968年北大西洋公约组织的工作会议上首先提出了软件工程的概念。14变换型数据流图是由输入、交换(或处理)和输出三部分组成的。15Jackson方法是一种面向数据结构的开发方法。16结构化语言是介于自然语言和形式语言之间的一种半形式语言。17软件产品在交付使用之前一般要经过单元测试、集成测试、确认测试和系统测试。18不采用软件工程的方法开发软件,软件只有程序而无文档,从而导致维护工作困难,这是一种结构化的维护。19子类自动共享父类数据结构和方法的机制是继承性,这是类之间的一种关系。20软件版本控制是属于软件控制的活动内容。22可行性研究从以下三个方面研究每种解决方法的可行性:经济可行性、社会可行性和技术可行性。23HIPO图的H图用于描述软件的层次关系,矩形框表示一个模块,矩形框之间的直线表示模块之间的调用关系。24数据流图描绘数据在系统中流动和处理的过程。25为了便于对照检查,测试用例应由输入数据和预期的输出数据两部分组成。26软件详细设计阶段常采用的工具有图、表和语言。27由于运用原型的目的和方式不同,在使用原型中可以采取抛弃策略和附加策略。28实现容错技术的主要手段是冗余。29软件开发环境的目标是提高软件开发的生产率和降低软件的费用。30面向对象分析的目的是对目标系统进行建模。31软件工具通常由工具、工具接口和工具用户接口三部分构成。32软件工程管理中的控制包括进度控制、人员控制、经费控制和质量控制。33软件开发的原型模型可以分为三类,它们是:探索型原型、实验型原型和演化型原型。34软件复杂性主要表现在程序的复杂性。程序的复杂性主要指模块内程序的复杂性。35白盒法中,基本路径测试首先以详细设计或源程序为基础,导出控制流程图的拓扑结构(程序图)。36在软件的详细设计中根据控制流程从上到下、从左到右展开的设计工具是PDA图。37一个模块通过传递开关、标志对某一模块的多种功能进行选择,则这两个模块之间的耦合方式是控制耦合。38结构化分析是面向数据流进行需求分析的方法。39有效的模块化是通过定义一组相互独立的模块来实现信息隐蔽的,这些模块彼此之间仅交换那些为了完成系统功能所必须的信息。40在软件生产中,软件工程过程的作用是规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。41开发软件工具的主要目的是为了提高软件生产率和改善软件质量。42确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动称为软件质量保证活动。43面向对象分析阶段所使用的三种模型是对象模型、动态模型和功能模型。44在软件测试的所有覆盖方法中发现错误能力最弱的覆盖是软件测试语句覆盖。45黑盒测试又被称为数据驱动测试或功能测试。46PDL具有严格的关键字外层语法,用于定义控制结构、数据结构和模块接口。47如果一个模块可调用n个模块,其中直接的下属模块的个数是m个(m=n),那么该模块的扇出数是m个。48在概要设计阶段,形成软件结构并经过优化改进后,还应为每个模块写一份处理说明和提供一份接口说明。49描述加工逻辑的三种工具是结构化语言、判定表、判定树。50计算机辅助软件工具简单地定义为软件开发自动化,通常简称为CASE。三、名词解释题:1软件开发方法:软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。2耦合性:用于衡量不同模块彼此间互相依赖(连接)的紧密程度。3多态性:指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一条消息可以产生不同的结果。4软件质量保证:在软件开发过程中,为了保证产品满足制定标准而进行的各种活动。5确认测试:确认组装完毕的程序是否满足软件需求规格说明书(SRS)的要求。6软件生存周期:一个软件从提出开发要求直到该软件报废为止的整个时期。7需求分析:需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。8程序设计风格:一个人编制程序时所表现出来的特点,习惯逻辑思路等。9白盒测试:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的是否一致。10基线:软件文档或源码(或其它产出物)的一个稳定版本,它是进一步开发的基础。所以,当基线形成后,项目负责SCM的人需要通知相关人员基线已经形成,并且哪儿可以找到这基线的版本。这个过程可被认为内部的发布,至于对外的正式发布,更是应当从基线了的版本中发布。12软件项目的纯收入:在整个生存周期之内的累计经济效益与投资之差。13完善性维护:增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动。14类的继承性:子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。15软件工具:为了支持软件人员开发和维护活动而使用的软件。16软件开发环境:在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统。17错误推测法:在测试程序时,人们可能根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。18黑盒测试法:把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,一句需求规格说明书,检查程序是否满足功能需求。20瀑布模型:将软件生存周期各个活动规定为依线性顺序连接的若干阶段的一种软件开发模型。包括可行性分析,项目开发计划,需求分析,概要设计,详细设计,编码,测试和维护。21软件可靠性:(1)在规定的条件下,在规定的时间内,软件不引起系统失效的概率;(2)在规定的时间周期内,在所述条件下程序执行所要求的功能的能力。24信息隐蔽:在设计和确定模块时,使得一个模块内包含信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的。25模块化:解决一个复杂问题时自顶向下逐层把系统划分若干模块的过程。每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统缩要求的功能。四、简答题1简述可行性研究的目的和任务。答:(1)目的:用最小的代价在尽可能短的时间内确定该项目是否能够开发。(2)任务:技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。包括:开发的风险;资源的有效性;技术;开发人员在评估技术可行性时,一旦估计错误,将会出现灾难性的后果。经济可行性:包括成本效果分析、公司经营长期策略、开发所需的成本和资源、潜在的市场前景。社会可行性:包括合同、责任、侵权、用户组织的管理模式及规范,其他一些技术人员常常不了解的陷阱等。2什么是模块化?软件结构设计的优化准则是什么?答:(1)模块化:按规定的原则奖一个大型软件划分为一个较小的、相对独立但又相关的模块。(2)优化准则:改进软件结构,提高模块独立性;模块大小要适中;软件结构图的深度、宽度、扇入和扇出要适当;尽量降低模块接口的复杂程度;设计单入口、单出口的模块;模块的作用域应在控制域之内。3简述详细设计的基本任务。答:任务:为每个模块确定采用的算法。确定每一模块使用的数据结构。确定模块接口的细节。缩写过程设计说明书。设计每一模块的测试用例。4简述软件测试的任务、目的与类型。答:(1)任务:为了寻找软件错误而运行程序的过程。(2)目的:为了发现软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例;一个成功的测试用例是指揭示了迄今为止尚未发现的错误的测试。(3)类型:白盒测试和黑盒测试。5简述软件工程过程的含义、目的以及包含的子过程。答:(1)含义:规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。(2)目的:为各种人提供一个公共的框架,以便用相同的语言进行交流。(3)子过程:获取过程、供应过程、开发过程、操作过程、维护过程、管理过程、支持过程。6数据字典的作用是什么,它有哪些条目?答:(1)作用:数据流程图描述了系统的逻辑结构,其中的四个基本图形元素的含义无法在数据流程图中详细说明,因此数据流程图需要与其他工具配合使用,数据字典就是这样的工具之一。(2)条目:数据流词条;数据元素词条;数据存储词条;数据加工处理词条;数据源点及终点词条。7简述结构化程序设计方法的基本要点。答:采用自顶向下,逐步求精的程序设计方法;使用三种基本控制结构构造程序,分别是顺序,选择和循环;采用主程序员组的组织形式;采用单入口单出口的模块形式。8简述原型的开发步骤。答:步骤:快速分析:迅速确定基本需求、集中力量确定需求说明;快速构造原型:在快速分析基础上,在强有力的软件工具支持下,快速构造所需原型;运行原型:在开发者指导下,用户参与原型运行,各类人员在共同运行原型中进一步加深对系统的了解级相互间的理解,以发现各种问题。评价原型:在运用基础上,根据原型目标,考核原型的特性,分析原型效果是否满足用户需要,提出修改建议。在评价基础上进行修改。若不满足需求说明,则根据明确的需求修改原型。若不满足用户需求,则先修改并明确用户需求,再重新构造原型。9简述软件工程研究的内容和它所面临的主要问题。答:(1)内容:软件开发技术;软件开发管理。(2)主要问题:软件费用;软件可靠性;软件维护;软件生产率;软件重用。10说明需求分析的定义,并简述需求分析的基本任务。答:(1)定义:需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求转化为完整的需求定义,再由需求定义转换到相应的形式功能规约的过程。(2)基本任务:要准确地定义新系统的目标,为了满足用户需求,回答系统必须“做什么”的问题。11就程序设计语言的工程特性而言,对程序编码有哪些要求?答:要求:可移植性;开发工具的可利用性;软件的可重用性;可维护性。12简述提高软件可维护性的方法。答:方法:建立明确的软件质量目标;利用先进的软件开发技术和工具;建立明确的质量保证工作;选择可维护的程序设计语言;改进程序文档。13说明面向对象的要素以及这些要素的具体含义。答:抽象:抽象是指强调实体的本质。内在的属性,忽略一些无关紧要的属性。封装性(信息隐蔽):封装性是指所有软件内部都有明确的范围以及清楚的外部边界。共享性:面向对象技术在不同级别上促进了共享。14增量构造模型有什么特点?答:增量构造模型是部分阶段进行增量开发,即在该模型中,需求分析阶段和设计阶段与瀑布模型一样,按瀑布模型方式开发,而编码和测试阶段不采用瀑布模型方式,而采用增量方式开发,即针对部分功能进行编码,进行测试,将这分功能提交用户,然后再对另一部分功能编码,测试提交用户,直至把全部功能按这种方式开发完毕。在这种模型中,用户可以及早看到部分软件功能,及早发现问题,以便在其他软件功能开发时及时解决。15软件测试要经过哪些步骤?简述这些测试的基本任务。答:(1)步骤:单元测试、集成测试、确认测试、系统测试。(2)基本任务:单元测试:对源程序中的每个程序单元进行测试,检查各模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误;集成测试:检查与设计相关的软件结构的有关问题;确认测试:主要检查已实现的软件是否满足需求鬼哥说明书中确定了的各种需求;系统测试:把已确认的软件与其他系统元素结合在一起进行测试。16简述需求分析方法应遵循的基本原则。答:必须能够表达和理解问题的数据域和功能域;可以把一个负责问题按功能进行分解并可逐层细化;建模。17模块间的耦合性包括哪些类型?答:无直接耦合;数据耦合;标记耦合;控制耦合;公共耦合;内容耦合。18软件维护的困难性表现在哪几个方面?答:一般来讲,维护人员对开发人员写的程序和文档,理解都比较困难,对维护工作会不喜欢;维护持续时间都很长,在开发人员不再现场的情况下,维护软件通常是很困难的;绝大多数软件在设计时对将来的软件修改都没有考虑或考虑不多,尤其未能在设计中强调并认真解决好模块的独立性,使软件的修改既困难又易发生差错。19增量模型和瀑布模型的本质区别是什么?答:区别:瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节;而增量模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件。20画数据流图应注意哪些事项?答:注意事项:命名。不能是有缺乏具体含义的名字,加工名应能反映出处理的功能;画数据流而不是控制流。数据流名称只能是名词或名词短语,整个图中不反映加工额执行顺序;一般不画物质流。每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工结果。编号。子徒的编号应与父图的编号相对应。父图与子图的平衡:子图的输入输出数据同父图相应加工的输入输出数据流必须一致。局部数据存储。注意数据流图的易理解性。21软件生存周期有哪几个活动?其中需求分析阶段的主要任务是什么?答:(1)活动:可行性分析和项目开发计划、需求分析、概要分析、详细设计、编码、测试、维护。(2)主要任务:要准确的定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。五、应用题1某个程序的伪码如下(前面的标号只用于标明语句顺序,不参与程序运行):1:START2:IF L1 THEN3:S14:DO WHILE L25:S26:IF L3 THEN7:S3ELSE8:S49:END IF10:END DOEISE11:S512:END IF13:STOP (1)试将其转换成PAD图(5分);(2)计算程序的环路复杂性(5分)解:(1)(2)该程序的环路复杂度为4。2某服装贸易公司的销售子系统功能如下:(1)公司提供多种类别服装,所有类别的服装通过各个地区的分公司进行销售;(2)公司接收分公司的订单,检验订单,若有库存就供货,则修改库存,给仓库开备货单,并且将订单留底;若库存不足,则进行缺货登记。(3)根据缺货记录将缺货通知单发给采购部,以便采购。(4)根据采购部门的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进行供货处理。试采用SA方法画出该公司销售管理系统的分层DFD(画出顶层、0层、1层图)。解:顶层结构图:0层:1层:3根据下列对某种人寿保险问题的描述画出决策表。某保险公司的一种人寿保险的参保类型划分原则如下:(1)如果年龄不满25岁,男性适用保险类型A,女性适用保险类型B。(2)如果年龄满25岁但不满50岁,已婚男性适用保险类型A,未婚男性适用保险类型B,已婚女性适用保险类型B,未婚女性适用保险类型C。(3)年龄在50岁以上者,已婚女性适用保险类型B,其余适用保险类型C。解:年龄=25&=50性别男女男女男女婚否是否是否是否是否是否是否保险类型A110010000000B001101100010C0000000111014测试题: 函数Find(array,L,R,value)的功能是在一个整数数组array中搜索第一个值为value的整数,搜索的范围在数组下标L到R范围内。如搜索到有这个数,则函数值为第1个等于该数的下标,否则函数值等于-1。假设数组非空,数组长度可由一内置函数得知,

温馨提示

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

评论

0/150

提交评论