《软件工程》考试复习

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授12009-2010年第一学期《软件工程》期末复习答疑一、怎样进行课程的总复习?将在18周最后的课程总复习课(串讲):第一、各章的复习重点;第二、适当讲解期末考试复习题。下面给同学们提几点建议,供大家参考:(1)在进行课程的总复习前,应该完成课程的上机练习作业;(2)要进行全面地系统的复习,决不能靠猜题和押题等侥幸心理进行复习,因为结业考试的题量很大,内容覆盖非常广,所以必须进行全面地系统的复习;(3)在全面地系统复习基础上,掌握的课堂讲授的知识点。尤其要抓住各章的重点和难点问题深入复习(我将会在最后一次复习课中强调的)。(4)在全面复习的基础上,认真练习或阅读期末考试复习题(与考试题型一致)。(5)所给的复习资料上未提到内容,只要求作一般性的掌握,可以不必去深究,但不代表一点不考,因为需要掌握《软件工程》中的一些常识。二、课程理论考试试卷题型本课程理论考试是闭卷考试,题型包括:名词解释5题15分;单项选择题15题15分,填空题10题20分,判断题20题10分,问答与简述题4题20分。综合题两题20分。一、名词解释1、软件危机——指在计算机软件的开发和维护过程中所遇到的一系列严重问题2、需求分析3、答:需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化成完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。4、数据字典——是关于数据信息的集合,具体来说是指描述和说明数据流图中各元素的词条集合5、模块——是数据说明,可执行语句等程序对象的集合.6、原型——是使用样机,使用户通过实践获得对未来系统的的概念,可以更准确提出要求.7、经济可行性——进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发.8、社会可行性——要开发的项目是否存在任何侵犯,妨碍等责任问题,要开发项目目的运行方式在用户组织内是否行得通,现有管理制度,人员素质,操作方式是否可行.9、投资回收期——解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间.10、数据流图(DFD)——数据流图(DataFlowDiagram,简称DFD)是以图形方式刻画各种业务数据处理过程。10、软件可重用11、内聚性——是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。12、面向对象技术中的“类”答:在面向对象的软件技术中,“类”就是对具有相同数据和相同操作的一组相似对象的定义,也就是说,类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授2也包括对怎样创建该类的新对象的说明。13、面向对象技术中的“封装”答:在面向对象的程序中,把数据和实现操作的代码集中起来放在对象内部。一个对象好像是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码与局部数据,都被封装在黑盒子里面,从外面是看不见的,更不能从外面直接访问或修改这些数据和代码。使用一个对象的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法。14、对象的形式化定义答:对象∷=〈ID,MS,DS,MI〉。其中,ID是对象的标识或名字,MS是对象中的操作集合,DS是对象的数据结构,MI是对象受理的消息名集合(即对外接口)。15、面向对象技术中的“封装”答:面向对象技术中,封装是把数据和实现操作的代码集中起来放在对象内部。一个对象好像是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码与局部数据,都被封装在黑盒子里面,从外面是看不见的,更不能从外面直接访问或修改这些数据和代码。使用一个对象的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法16、面向对象技术中的“多态”答:在面向对象的软件技术中,多态是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为。当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法。17、面向对象技术中的“继承”答:广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。在面向对象的软件技术中,继承是子类自动地共享基类中定义的数据和方法的机制。一个类直接继承其父类的全部描述(数据和操作)。18、软件维护答:所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。19、软件的可靠性答:对于软件可靠性有许多不同的定义,其中多数人承认的一个定义是:软件可靠性是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。20、对象模型中的泛化答:UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素之间的一种分类关系。具体元素完全拥有通用元素的信息,并且还可以附加一些其他信息。21、系统设计说明书答:系统设计说明书是从系统总体的角度出发对系统建设中各主要技术方面的设计进行说明,是系统设计阶段的产物,其着重点在于阐述系统设计的指导思想以及所采用的技术路线和方法,编写系统设计说明书将为后续的系统开发工作从技术和指导思想上提供必要的保证。22、结构化分析答:结构化分析是根据分解与抽象的原则,按照系统中数据处理的流程,用数据图来建立系统的功能模型,从而完成需求分析工作可执行的规格说明答:这是一种使要求说明过程自动化的技术,通过可执行的规格说明语言来描述预期的行为2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授3“做什么”,人们可以从直接观察中用规格说明语言来规定任何系统行为。23、黑盒测试法答:该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试。24、白盒测试法答:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。白盒法也不可能进行穷举测试。25、喷泉模型答:喷泉模型是一种以用户需求为动力,以对对象作为驱动的模型,适合于面向对象的开发方法。他克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。喷泉模型使开发过程具有迭代性和无间隙性。系统某些部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统。无间隙是指在分析、设计、实现等开发活动之间不存在明显的边界。二、单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。)1..软件可行性研究一般不考虑DA.是否有足够的人员和相关的技术来支持系统开发B.是否有足够的工具和相关的技术来支持系统开发C.待开发软件是否有市场、经济上是否合算D.待开发的软件是否会有质量问题2..软件维护的副作用主要有以下哪几种CA.编码副作用、数据副作用、测试副作用B.编码副作用、数据副作用、调试副作用C.编码副作用、数据副作用、文档副作用D.编码副作用、文档副作用、测试副作用3..软件项目计划一般不包括以下哪项内容DA.培训计划B.人员安排C.进度安排D.软件开发标准的选择和制定4..以下哪一项不属于面向对象的软件开发方法CA.coad方法B.booch方法C.jackson方法D.omt方法5.以下哪种测试方法不属于白盒测试技术BA.基本路径测试B.边界值分析测试C.循环覆盖测试D.逻辑覆盖测试2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授46.A数据处理问题的工作过程大致分为三步,即取得数据、变换数据和给出数据。A.变换型B.事务型C.结构化验室D.非结构化7.在对数据流的分析中,主要是找到中心变换,这是从C导出结构图的关键。A.数据结构B.实体关系C.数据流图D.E—R图8.程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的D和耦合性。A.一致性B.作用域C.嵌套限制D.内聚性9.在多层次的结构图中,其模块的层次数称为结构图的A。A.深度B.跨度C.控制域D.粒度10.在设计测试用例时,A是用得最多的一种黑盒测试方法。A.等价类划分B.边界值分析C.因果图D.判定表11.面向数据结构的设计方法(Jackson方法)是进行B的形式化的方法。A.系统设计B.详细设计C.软件设计D.编码12.在进行软件测试时,首先应当进行A,然后再进行组装测试,最后再进行有效性测试。A.单元测试B.集成测试C.确认测试D.组合测试13.原型化方法是一种___A____型的设计过程。A.自外向内B.自顶向下C.自内向外D.自底向上14.为了提高测试的效率,应该DA.随机地选取测试数据2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授5B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据15.使用白盒测试方法时,确定测试数据应根据___A____和指定的覆盖标准。A.程序的内部逻辑B.程序的复杂结构C.使用说明书D.程序的功能16.可行性研究要进行一次_____需求分析。参考答案为:CA.详细的B.全面的C.简化的、压缩的D.彻底的[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。因此答案为C。17.系统流程图用于可行性分析中的_____的描述。参考答案为:AA.当前运行系统B.当前逻辑模型C.目标系统D.新系统[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。描述的对象是当前正在运行的系统,因此选择A。18.系统流程图是描述_____的工具。参考答案为:CA.逻辑系统B.程序系统C.体系结构D.物理系统[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。19._______工具在软件详细设计过程中不采用。参考答案为:DA.判定表B.IPO图C.PDLD.DFD图[解析]详细描述处理过程常用三种工具:图形、表格和语言。其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。20.程序的三种基本控制结构是参考答案为:B2009-2010年第二学期《软件工程》复习答疑任课教师:魏定国教授6A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移[解析]程序的三种基本控制结构是顺序、选择和循环(重复)。子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。21.程序的三种基本控制结构的共同特点是参考答案为:DA.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口[解析]程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。三种结构可以写出非常复杂的程

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功