《软件工程》期末考试样题一、填空题1.软件开发模型有、、第四代技术模型、、构件组装模型、混合模型。2.可行性研究一般可以从可行性、可行性、运行可行性、法律可行性和开发可行性等方面来研究。3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为。4.数据流图的基本符号包括、、、。5.Jackson图除了可以表达程序结构外,还可以表达,它首先要分析,并用适当的工具来描述。6.详细设计的工具有、表格工具和。7.IPO图由、处理和三个框组成。这个图的特点是能够直观的显示三者之间的关系。8.面向对象技术是一整套关于如何看待和的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用、、、、聚集、消息传送、多态性等概念来构造系统的软件开发方法。二、单项选择题1.下列()属于系统软件。A.WINDOWS2000B.WordC.FlashD.3DMAX2.下列哪个图是N-S图的构件()。A.B.C.D.3.对于螺旋模型,下列()不是利用笛卡尔坐标表达的活动。A.制定计划B.实施工程C.风险分析D.程序编码三、多项选择题1.软件危机可以表现为()。A.产品不符合用户的需要B.软件产品的质量差C.软件的可维护性差D.软件的价格昂贵2.Jackson图中一般可能包括()。A.表头B.表体C.表名D.字段名3.关于内容耦合的描述正确的是()。A、内容耦合是最高程度的耦合B、应该尽量使用内容耦合C、高级语言一般设计成允许内容耦合的形式D、如果一个模块有多个入口,可能发生内容耦合4.下列属于不标准的书写格式()。A、书写时适当使用空格分隔B、一行写入多条语句C、嵌套结构不使用分层缩进的写法D、程序中不加注释四、判断题(正确的在括号内打上“√”,错误的打上“×”)ABWHILEMAABAB1.软件生存周期是从软件开始开发到开发结束的整个时期。()2.系统流程图是一个典型的描述逻辑系统的传统工具。()3.数据流图和数据字典共同构成系统的逻辑模型。()4.扇出是一个模块直接调用的模块数目,一般推荐的扇出为3或4。()5.耦合用于衡量一个模块内部的各个元素彼此结合的紧密程度。()6.程序运行过程中出现错误叫做容错。()7.软件测试的目的是证明程序没有错误。()8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。()五、问答题1.什么是软件生存周期。2.在需求分析阶段,建立目标系统的逻辑模型的具体做法是什么。3.为什么数据流图要分层?4.软件的质量反应为哪些方面的问题?样题答案一、填空题1.瀑布模型、螺旋模型、原型模型2.经济、技术3.F/(1+i)n4.数据输入的源点和数据输出的汇点加工数据流数据存储文件5.数据结构、数据结构6.图形工具语言工具7.输入输出8.软件系统现实世界对象类继承封装二、单项选择题1、A2、C3、D三、多项选择题(每小题2分,共10分)1、ABCD2、ABCD3、AD4、BCD四、判断题1、×2、×3、√4、√5、×6、×7、×8、×9、√10、√五、问答题1.答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。2.答:系统流程图是描述物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里的每个部件(程序、文件、数据库、表格、人工过程等)。系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程。3.答:这了表达数据处理过程的数据加工情况,用一个数据流图是不够的。为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。4.答:软件需求是度量软件质量的基础,不符合需求的软件就不具备质量。在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。如果不遵守这些开发准则,软件质量就得不到保证。往往会有一些隐含的需求没有明确地提出来。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。软件工程期末复习试题一,填空题软件工程学的内容可包括(),结构,(),(),环境,管理,规范等.2.软件生存周期一般可分为问题定义,(),(),设计,(),测试,运行与维护阶段.3.系统流程图是()的传统工具.4.需求分析的基本任务是准确的回答().5.数据字典的内容包括六项:(),(),(),数据存储,处理逻辑,外部实体.6.在需求分析阶段常用的图形工具有(),(),().7.模块独立的概念是(),(),()和局部化概念的直接结果.8.HIPO图是由一组()图和一张()图组成.9.UML的定义包括()和()两个部分.10.软件测试的方法有()和().11.软件=()+().二,单项选择题下列关于瀑布模型的描述正确的是().瀑布模型的核心是按照软件开发的时间顺序将问题简化.瀑布模型具有良好的灵活性.瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开.利用瀑布模型,如果发现问题修改的代价很低.下列哪个图不是N-S图的构件().A.B.C.D.对于下图,有关描述中错误的是().A.A表示数据输入的源点B.B表示数据存储文件C.C表示加工D.D表示数据存储文件下列各方法中()不是软件测试方法.A.白盒法B.黑盒法C.动态测试D.盒法UML的基本建筑块不包括().框架事物关系图三,多项选择题关于数据字典正确的描述是().数据字典最重要的用途是作为分析阶段的工具.实现数据字典三种常见的方法有全人工过程,全自动过程,混合过程.数据字典应该容易更新和修改.可以采用卡片形式书写数据字典.()可以作为模块.过程子程序函数宏耦合的强弱取决于().模块间接口的复杂程度.调用模块的方式.通过接口的信息.模块内部各个元素彼此之间的紧密结合程度.编码风格包括().源程序文档化数据说明方法语句结构输入/输出方法软件测试主要包括()方面的差错和纠错.软件计划软件设计软件编码软件价格四,判断题在可行性研究中最难决断和最关键的问题是经济可行性.()耦合是指一个模块内各个元素彼此结合的紧密程度.()一笔交易,一个动作,甚至操作人员按一个按钮都可以看做是一次事物.()概要设计阶段完成的主要文档是概要设计说明书.()过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解.()程序设计语言中应绝对禁止使用GOTO语句.()类是关于对象性质的描述,由方法和数据组成.()随着软件技术的发展,人们逐渐认识到阅读程序的重要性,编码不仅要强调效率还要强调清晰.()为保证程序的安全,必须做到程序中没有任何错误存在,即容错.()如果把软件开发所需的资源画成一个金字塔,人是最基本的资源.()五,问答题什么是软件危机,软件危机有哪几种表现什么是模块,模块化,模块独立性什么是编码风格为什么要强调编码风格4.什么是黑盒测试法什么是白盒测试法六,分析题已知被测试模块流程图如下,按照判定覆盖法,在表格中填入满足测试要求的数据.填写下表数据覆盖路径覆盖分支Y值TTFF比较下列两段语句,从编码风格的角度分析哪一段好些,并说明好在哪些方面.程序段一:ifabthenifxythenb=yelsea=xendifelsea=bendif程序段二:/position_xisthepositionxofobject;position_yisthepositionyofobject;/ifabthena=belseifposition_xposition_ythenb=position_yelsea=position_xendifendif参考答案一,填空题理论,方法,工具可行性研究,需求分析,编码描述物理系统系统必须做什么数据流,数据项,数据结构层次方框图,Warnier图,IPO图模块化,抽象,信息隐蔽IPO,HCUML语义,UML表示法分析方法,非分析方法程序,文档二,单项选择题CBBDA三,多项选择题A,B,C,DA,B,C,DA,B,CA,B,C,DA,B,C四,判断题00√√00√√0√五,问答题答:软件危机指的是软件开发和维护过程中遇到的一系列严重问题.概括地说,软件危机包含下述两方面的问题:如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的已有软件.具体地说,软件危机主要有下列表现:产品不符合用户的实际需要.软件开发生产率提高的速度远远不能满足客观需要,软件的生产率远远低于硬件生产率和计算机应用的增长,使人们不能充分利用现代计算机硬件提供的巨大潜力.软件产品的质量差.对软件开发成本和进度的估计常常不准确.软件的可维护性差.软件文档资料通常既不完整也不合格.软件的价格昂贵,软件成本在计算机系统总成本中所占的比例逐年上升.答:模块是数据说明,可执行语句等程序对象的集合,模块可以单独被命名的而且可通过名字来访问,例如,过程,函数,子程序,宏等等都可作为模块.模块化就是把程序划分成若干个模块,每个模块具有一个子功能,把这些模块集总起来组成一个整体,可以完成指定的功能,实现问题的要求.模块独立性是软件系统中每个模块只涉及软件要求的具体子功能,而和软件系统中其他的模块接口是简单的.模块独立的概念是模块化,抽象,信息隐蔽和局部化概念的直接结果.答:编码风格又称程序设计风格或编程风格.编码风格实际上指编程的基本原则.程序实际上也是一种供人阅读的文章.编写程序时讲求程序的风格,将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程.黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性.黑盒测试又称为功能测试.白盒测试法的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程.这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作,白盒测试又称为结构测试.六,分析题答数据覆盖路径覆盖分支Y值A=3B=1Y=6ceTT12A=1B=2Y=0bdFF-10注意:本题答案不唯一,学生给出的数字正确就应该算对.答:第二段程序优于第一段.注释起到提示的作用,利于程序阅读者对程序段全貌的理解缩进格式清晰的显示程序中逻辑判断的结构.变量命名方式表明变量的含义.BABAedbTTFFReturnY=Y-10Y=Y+10(A=3)AND(Y1)Y=Y/3c(A2)AND(B=1)beginWHILEXBUNTILYCABCD软件工程期末考试试题、试卷一、单项选择题(本大题共20小题,每小题1分,共20分)1.软件测试的目的是()。A.评价软件的质量B.发现软件的错误C.找出软件的所有错误D.证明软件是正确的2.在设计测试用例时,()是用得最多的一种黑盒测试方法。A.等价类划分B.边界值分析C.因果图D.判定表3.需求分析最终结果是产生()。A.项目开发计划B.需求规格说明书C.设计说明书D.可行性分析报告4.Jackson图中,模块框之间若有直线连接,表示它们之间存在()。A.调用关系B.组成关系C.链接关系D.顺序执行关系5.软件详细设计的主要任务是确定每个模块的()。A.功能B.外部接口C.算法和使用的数据结构D.编程6.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求7.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()A.软件工程B.软件周期C.软件危机D.软件产生8.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是()A.数据、公共、标记、控制B.数据、标记、控制、公