《软件工程4次作业.docx》由会员分享,可在线阅读,更多相关《软件工程4次作业.docx(17页珍藏版)》请在课桌文档上搜索。
1、软件工程4次作业一、填空题1 .软件生存周期一般可以划分为,、可行性研究、设计、编码、测试和运行和维护。2 .基于软件的功能划分,软件可以划分成、支撑软件、三种。3 .可行性研究,应从经济可行性、法律可行性和开放方案可行性等方面研羯4 .系统流程图是描绘的传统工具。它的基本思想是用图形符号以描绘系统里面的每个部件5 .数据流图的基本四种成分:数据输入的源点和数据输出汇点、和数据存储文件。6 .结构化分析方法是面向数据流一进行需求分析的方法。结构化分析方法使用DFD_与来描述。7 .是自动地共享类、和对象中的方法和数据的机制。8 .软件详细设计工具可分为3类,即、和一表格工具9 .为了在软件开发
2、过程中保证软件的质量,主要采取下述措施:、复查和管理复审、10 .大型软件测试包括单元测试、确认测试和四个步骤。IL系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的情况。12 .成本效益分析的目的是从角度评价开发一个项目是否可行。13 .自顶向下结合的渐增式测试法,在组合模块时有两种组合策略;深度优先策略和14 .独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条的边的路径。15 .汇编语言是面向的,可以完成高级语言无法完成的特殊功能。16 .如与外部设备之间的一些接口工作。17 .单元测试一般以白盒测试
3、为主,测试为辅。18 .详细设计的任务是确定每个模块的内部特性,即模块的算法、o19 .所有软件维护申请报告要按规定方式提出,该报告也称报告。20 .有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面21 .向维护的技术;在维护阶段用来提高维护的效率和质量的技术。22 .科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供23 .选择的语言有:FORTRAN语言、C语言和PL/1语言。24 .IL目前使用最广泛的软件工程学方法分别是传统方法学和025 .可行性研究主要集中在以下四个方面_经济、技术可行性、法律可行性和抉择。26 .常见的软件概要设计方法有3大类:以数据流图
4、为基础构造模块结构的1.1, 以数据结构为基础构造模块的JaekSOn方法,以对象、类、继承和通信28 .为基础的面向对象的设计方法。29 .和数据字典共同构成系统的逻辑模型。30 .单元测试一般以白盒测试为主,测试为辅。二、单项选择题1 .软件设计中划分模块的一个准则是()。A、低内聚低耦合B.低内聚冏耦合C.Ej内聚低耦合D.Sj内聚【司耦合2 .Jackson设计方法是由英国的MJackson提出的,它是一种面向()的软件设计方法。A、对象B.数据流C.数据结构D.控制结构3 .试判断下列叙述中,哪个(些)是正确的()oa、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息
5、流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的A、aBbC、cD、b和c4.4 .()是用户和设计交换最频繁的方法。A、原型化方法B、瀑布模型方法C.螺旋模型方法D、构件组装模型5 .软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是()。A、硬件环境B、软件开发的环境C.软件开发工具和软件开发的环境D、开发人员的素质6 .20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言)。A、PASCALB、VISUALBASICC、C+D、汇编语言7 .软件测试的目的是?()A证明软件的正确性B.找出软件系统中存在的所有错
6、误C.证明软件系统中存在错误D.尽可能多的发现软件系统中的错误8 .使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能9 .软件维护工作的最主要部分是()。A、校正性维护B、适应性维护C.完善性维护D、预防性维护10 .PDL是()语言。A、高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言11 .瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(),A.详细计划B.可行性
7、分析C.运行阶段D.测试与排错12 .在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标()A.需求分析阶段B.详细设计阶段C.概要设计阶段D.可行性研究阶段,13 .软件工程的出现主要是由于(),A.程序设计方法学的影响B.其它工程科学的影响C.软件危机的出现D.计算机的发展,14 .软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是()A.硬件环境B.软件开发的环境C.软件开发工具和软件开发的环境D.开发人员的素质15 .软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为()A.相互排斥B相互
8、补充C独立使用D.交替使用16 .UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法()A.基于瀑布模型的结构化方法B.基于需求动态定义的原型化方法C.基于对象的面向对象的方法D.基于数据的数据流开发方法17 .在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高()A.结构化方法B原型化方法C面向对象的方法D.控制流方法18 .结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分析对象的()A.控制流B.数据流C.程序流D.指令流19 .软件开发的结构化生命周期方法将软件生命周期划分成()A.计划阶段.开发阶段.运行阶段B.计划阶段.编程阶段.测试阶段C.
9、总体设计.详细设计.编程调试D.需求分析.功能定义.系统设计20 .软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是()A.分析阶段B.设计阶段C.编码阶段D.测试阶段21 .适合于面向对象方法学的软件生存周期模型是()A.瀑布模型B.喷泉模型C.螺旋模型D.增量模型22 .从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大的是()A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段23 .从实用角度看,数据规范化在大多数场合选用第一范式。()A.lB.2C3D.524 .可
10、行性分析研究的目的是()A.项目值得开发否B.争取项目C.开发项目D.功能内聚25 .模块的内聚性最高的是()A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚26 .开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称()A.软件工程B.软件危机C.软件周期D.软件产生27 .需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能28 .完整的软件结构通常用图来表示。()A.IPO图B.HIP0图C.PAD图D.DFD图29 .在白盒法技术测试用例的设计中是最弱的覆盖标准。()A.语句B.路径C.条件组合D.判定30 .软件开发中常采用的结构化生
11、命周期方法,由于其特征而一般称其为()A.瀑布模型B.对象模型C.螺旋模型D.层次模型三、判断题1 .用黑盒法测试时,测试用例是根据程序内部逻辑设计的。()2 .发现错误多的程序模块,残留在模块中的错误也多。()3 .为了加快软件维护作业的进度,应尽可能增加维护人员的数目。()4 .软件维护就是改正软件中的错误。()5 .质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。()6 .软件开发的主要任务是写程序。()7 .测试只能证明程序有错误,不能证明程序没有错误。()8 .模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在行以下。()9 .
12、在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。()10 .程序设计风格指导原则提出,尽量多使用临时变量。()IL软件的开发与运行经常受到硬件的限制和制约。()12.模块内的高内聚往往意味着模块间的松耦合。()13JaCkSOn图只能表达程序结构,不能表达数据结构。()14 .软件生命周期中需我进行需求分析,再进行可行性研究。()15 .软件的质量好坏主要由验收人员负责,其他开发人员不必关心。()16 .判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。()17 .应该尽量使用机器语言编写代码,
13、提高程序运行效率,而减少高级语言的使用。()18 .UML只能应用于软件系统模型的建立。()19 .容错就是每个程序采用两种不同的算法编写。()20 .软件测试的目的是为了无一遗漏的找出所有的错误。()21 .在进行总体设计时应加强模块间的联系。()22 .系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用。()23 .用黑盒法测试时,测试用例是根据程序内部逻辑设计的。()24 .在程序调试时,找出错误的位置和性质比改正该错误更难。()25 .以对象、类、继承和通信为基础的面向对象设计方法也是常见的软件概要设计方法之一。()四、程序设计与算法描述题(1 .
14、某一新闻管理系统主要用来发布新闻,管理员只需要一个,登录后可以在后台发布新闻。任何人可以浏览新闻,浏览者可以注册成为系统会员,注册后可对新闻进行评论。管理员在后台可以对新闻、评论、注册会员进行管理,如修改、删除等。要求:请画出该新闻管理系统的用例图2 .请根据银行ATM系统的正常情况脚本,画出事件跟踪图(即UML顺序图)银行ATM系统的正常情况脚本:1) ATM请储户插卡:储户插入一张现金兑换卡。2) ATM接受该卡并读它上面的分行代码和卡号。3) ATM要求储户输入密码;储户输入自己的密码“1234”等数字。4) ATM请求总行验证卡号和密码:总行要求“39”号分行核对储户密码,然后通知AT
15、M说这张卡有效。5) ATM要求储户选择事务类型(取款、转账、查询等);储户选择“取款”。6) ATM要求储户输入取款额;储户输入“880”。7) ATM确认取款额在预先规定的限额内,然后要求总行处理这个事务:总行把请求转给分行,该分行成功地处理完这项事务并返回该账户的新金额。8) ATM吐出现金并请储户拿走这些现金;储户拿走现金。9) ATM问储户是否继续这项事务:储户回答“不”。10) ATM打印账单,退出现金兑换卡,请储户拿走它们;储户取走账单和卡。U)ATM请储户插卡。3.某电器集团公司下属的厂包括技术科(组装计划、产品工艺设计)、生产科(内部合同、生产报表、月生产计划、产品组装交付)
16、等基层单位。现在想建立一个计算机辅助企业管理系统,请规划系统需求基本条件:背景:公司内部业务流转部门,销售公司(合同)一生产科(生产车间)一技术科;复习资料一、填空题1软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试和运行和维护。2基于软件的功能划分,软件可以划分成一系统软件_、支撑软件、应用软件_三种。3可行性研究,应从经济可行性、技术可行性、运行可行性、法律可行性和开放方案可行性等方面研究。4系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件5数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工、数据流和数据存储
17、文件。6结构化分析方法是面向一数据流JS行需求分析的方法。结构化分析方法使用数据流图DFD_与_数据字典来描述。7 .继承性是自动地共享类、子类和对象中的方法和数据的机制。8 .软件详细设计工具可分为3类,即一图示工具_、_设计语言_和_表格工具二9 .为了在软件开发过程中保证软件的质量,主要采取下述措施:一审查_、复查和管理复审、_测试一。10 .大型软件测试包括单元测试、集成测试、确认测试和系统测试四个步骤。11 .系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的_信息流动_情况。12 .成本效益分析的目的是从_经济_角度评价开发一个项目是否可行。
18、13 .自顶向下结合的渐增式测试法,在组合模块时有两种组合策略;深度优先策略和一宽度优先策略.14 .独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条其他独立路径中从未有过的的边的路径。15 .汇编语言是面向_机器的,可以完成高级语言无法完成的特殊功能。16 .如与外部设备之间的一些接口工作。17 .单元测试一般以白盒测试为主,一黑盒测试为辅。18 .详细设计的任务是确定每个模块的内部特性,即模块的算法、J更用的数据19 .所有软件维护申请报告要按规定方式提出,该报告也称软件问题报告。20 .有两类维护技术:在开发阶段使用来减少错误、提高软件可
19、维护性的面21 .向维护的技术;在维护阶段用来提高维护的效率和质量的_维护支援_技术。22 .科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供23 .选择的语言有:FoRTRAN语言、_PASCAL语言_、C语言和PL/1语言。24 .IL目前使用最广泛的软件工程学方法分别是传统方法学和一面向对象方法学一。25 .可行性研究主要集中在以下四个方面_经济可行性、_技术可行性、法律可行性和抉择。26 .常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的27 ._结构化设计方法_,以数据结构为基础构造模块的ackson方法,以对象、类、继承和通信28 .为基础的_面向对象的
20、设计方法29 .数据流图_和_数据字典_共同构成系统的逻辑模型。30 .单元测试一般以_白盒_测试为主,黑盒测试为辅。二单项选择题1.C2C3C4A5C6D7D8A9C10B11C12A13C14C15B16C17B18B19A20C21B22C23C24A2SD26B27D28B29A30A1 .用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(X)2 .发现错误多的程序模块,残留在模块中的错误也多。(V)3 .为了加快软件维护作业的进度,应尽可能增加维护人员的数目。(X)4 .软件维护就是改正软件中的错误。(X)5 .质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有
21、组织的活动。(V)6 .软件开发的主要任务是写程序。(X)7 .测试只能证明程序有错误,不能证明程序没有错误。(V)8 .模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在行以下。(X)9 .在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。(X)10 .程序设计风格指导原则提出,尽量多使用临时变量。(X)11 .软件的开发与运行经常受到硬件的限制和制约。(V)12 .模块内的高内聚往往意味着模块间的松耦合。(V)13Jackson图只能表达程序结构,不能表达数据结构。(X)14 .
22、软件生命周期中需我进行需求分析,再进行可行性研究。(X)15 .软件的质量好坏主要由验收人员负责,其他开发人员不必关心。(X)16 .判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。(V)17 .应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。(X)18 .UML只能应用于软件系统模型的建立。(X)19容错就是每个程序采用两种不同的算法编写。(X)20 .软件测试的目的是为了无一遗漏的找出所有的错误。(X)21 .在进行总体设计时应加强模块间的联系。(X)22 .系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用.(X)24
23、 .在程序调试时,找出错误的位置和性质比改正该错误更难。(V)25 .以对象、类、继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一。(V)四程序设计与算法描述题1 .某一新闻管理系统主要用来发布新闻,管理员只需要一个,登录后可以在后台发布新闻。任何人可以浏览新闻,浏览者可以注册成为系统会员,注册后可对新闻进行评论。管理员在后台可以对新闻、评论、注册会员进行管理,如修改、删除等。要求:请画出该新闻管理系统的用例图2 .请根据银行ATM系统的正常情况脚本,画出事件跟踪图(即UML顺序图)银行ATM系统的正常情况脚本:1) ATM请储户插卡;储户插入一张现金兑换卡。2) A
24、TM接受该卡并读它上面的分行代码和卡号。3) ATM要求储户输入密码;储户输入自己的密码“1234”等数字。4) ATM请求总行验证卡号和密码;总行要求“39”号分行核对储户密码,然后通知ATM说这张卡有效。5) ATM要求储户选择事务类型(取款、转账、查询等);储户选择“取款”。6) ATM要求储户输入取款额;储户输入“880”。7) ATM确认取款额在预先规定的限额内,然后要求总行处理这个事务;总行把请求转给分行,该分行成功地处理完这项事务并返回该账户的新金额。8) ATM吐出现金并请储户拿走这些现金;储户拿走现金。9) ATM问储户是否继续这项事务;储户回答“不”。10) ATM打印账单
25、,退出现金兑换卡,请储户拿走它们;储户取走账单和卡。11) ATM请储户插卡。3.某电器集团公司下属的厂包括技术科(组装计划、产品工艺设计)、生产科(内部合同、生产报表、月生产计划、产品组装交付)等基层单位。现在想建立一个计算机辅助企业管理系统,请规划系统需求基本条件:背景:公司内部业务流转部门,销售公司(合同)一生产科(生产车间)一技术科;生产科需求条件是:根据销售公司转来的内部合同(产品型号、规格、数量、交货日期)制定车间月生产计划。(2)根据车间实际生产日报表、周报表调整月生产计划以月生产计划为基础,制定产品设计(结构、工艺)及产品组装月计划。将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间。技术科需求条件是:根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。