软件工程考试复习(有填空题答案).doc.gzip_第1页
软件工程考试复习(有填空题答案).doc.gzip_第2页
软件工程考试复习(有填空题答案).doc.gzip_第3页
软件工程考试复习(有填空题答案).doc.gzip_第4页
软件工程考试复习(有填空题答案).doc.gzip_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、2011-2012年第二学期软件工程复习答疑 任课教师:魏定国教授2011-2012年第二学期软件工程期末复习答疑一、怎样进行课程的总复习?将在18周最后的课程总复习课(串讲):第一、各章的复习重点;第二、适当讲解期末考试复习题。   下面给同学们提几点建议,供大家参考:   (1)在进行课程的总复习前,应该完成课程的上机练习作业;   (2)要进行全面地系统的复习,决不能靠猜题和押题等侥幸心理进行复习,因为结业考试的题量很大,内容覆盖非常广,所以必须进行全面地系统的复习;  

2、0;(3)在全面地系统复习基础上,掌握的课堂讲授的知识点。尤其要抓住各章的重点和难点问题深入复习(我将会在最后一次复习课中强调的)。(4)在全面复习的基础上,认真练习或阅读期末考试复习题(与考试题型一致)。(5)所给的复习资料上未提到内容,只要求作一般性的掌握,可以不必去深究,但不代表一点不考,因为需要掌握软件工程中的一些常识。二、课程理论考试试卷题型本课程理论考试是闭卷考试,题型包括:名词解释5题15分;单项选择题15题15分,填空题10题20分,判断题20题10分,问答与简述题4题20分。综合题两题20分。一、名词解释1、 软件危机指在计算机软件的开发和维护过程中所遇到的一系列严重问题2、

3、 需求分析3、 答:需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化成完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。4、 Alpha测试答:用户在开发者的场所进行测试,并且在开发者的指导下进行,测试在受控环境中进行,开发者记录发现的错误和问题Beta测试答:用户在一个或多个客户场所进行测试,不受开发者控制,测试者记录发现的问题和错误,定期将问题报告发送给开发者。5、 数据字典是关于数据信息的集合,具体来说是指描述和说明数据流图中各元素的词条集合6、 面向对象方法中的“类(Class)”答:面向对象方法中的“类(Class)”

4、就是对具有相同数据和相同操作的一组相似对象的定义。7、 面向对象中的“重载(Overloading)”答:有两种重载:(1)函数重载指在同一作用域内的若干个参数特征不同的函数可以使用相同的函数名字。(2)运算符重载指同一运算符可以施加于不同类型的操作数上面。当被操作数类型不同时,运算符的含义是不同的。8、 动态模型答:动态模型是与时间和变化有关的系统性质。该模型描述了系统的控制结构,他表示了瞬时的、行为化的系统控制性质。它关心的是系统的控制,操作的执行顺序。它从对象的事件和状态的角度出发,表现了对象的相互行为。9、 软件模块设计中的“内聚”答:一个模块内部各个元素彼此结合的紧密程度。它是衡量一

5、个模块内部组成部分间整体统一性的度量。10、 面向数据流的设计方法中的“事务流”答:事务型数据流图中存在一个事务中心(也就是数据处理、加工中心),它将输入分离成若干个发散的数据流,形成许多活动路径,并根据输入值选择其中一条路径,这类数据流就是事务流。11、 软件模块设计中的“耦合”答:软件模块设计中的“耦合”是指软件结构内不同模块彼此之间相互依赖(连接)的紧密程度。12、 面向数据流的设计方法中的“变换流”答:具有较明确的输入、变换(或称主加工)和输出界面的数据流图称为变换型数据流图。13、 模块是数据说明,可执行语句等程序对象的集合.14、 原型是使用样机,使用户通过实践获得对未来系统的的概

6、念,可以更准确提出要求.15、 经济可行性进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发.16、 社会可行性要开发的项目是否存在任何侵犯,妨碍等责任问题,要开发项目目的运行方式在用户组织内是否行得通,现有管理制度,人员素质,操作方式是否可行.17、 投资回收期解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间.18、 数据流图(DFD)数据流图(Data Flow Diagram,简称DFD)是以图形方式刻画各种业务数据处理过程。10、软件可重用18、内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的

7、度量。19、面向对象技术中的“类”答:在面向对象的软件技术中,“类”就是对具有相同数据和相同操作的一组相似对象的定义,也就是说,类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中也包括对怎样创建该类的新对象的说明。20、面向对象技术中的“封装”答:在面向对象的程序中,把数据和实现操作的代码集中起来放在对象内部。一个对象好像是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码与局部数据,都被封装在黑盒子里面,从外面是看不见的,更不能从外面直接访问或修改这些数据和代码。使用一个对象的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法。21、对象的形式化

8、定义答:对象=ID,MS,DS,MI。其中,ID是对象的标识或名字,MS是对象中的操作集合,DS是对象的数据结构,MI是对象受理的消息名集合(即对外接口)。22、面向对象技术中的“封装”答:面向对象技术中,封装是把数据和实现操作的代码集中起来放在对象内部。一个对象好像是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码与局部数据,都被封装在黑盒子里面,从外面是看不见的,更不能从外面直接访问或修改这些数据和代码。使用一个对象的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法23、 面向对象技术中的“多态”答:在面向对象的软件技术中,多态是指子类对象可以像父类对象

9、那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为。当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法。24、面向对象技术中的“继承”答:广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。在面向对象的软件技术中,继承是子类自动地共享基类中定义的数据和方法的机制。一个类直接继承其父类的全部描述(数据和操作)。24、 软件维护25、答:所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程

10、。25、软件的可靠性答:对于软件可靠性有许多不同的定义,其中多数人承认的一个定义是:软件可靠性是程序在给定的时间间隔内,按照规格说明书的规定成功地运行的概率。26、对象模型中的泛化答:UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素之间的一种分类关系。具体元素完全拥有通用元素的信息,并且还可以附加一些其他信息。27、 系统设计说明书答:系统设计说明书是从系统总体的角度出发对系统建设中各主要技术方面的设计进行说明,是系统设计阶段的产物,其着重点在于阐述系统设计的指导思想以及所采用的技术路线和方法,编写系统设计说明书将为后续的系统开发工作从技术和指导思想上提供必要的保证。28、结构

11、化分析答:结构化分析是根据分解与抽象的原则,按照系统中数据处理的流程,用数据图来建立系统的功能模型,从而完成需求分析工作可执行的规格说明答:这是一种使要求说明过程自动化的技术,通过可执行的规格说明语言来描述预期的行为“做什么”,人们可以从直接观察中用规格说明语言来规定任何系统行为。29、黑盒测试法答:该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试。30、白盒测试法答:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理

12、过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。白盒法也不可能进行穷举测试。 喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于采用对象技术的软件开发项目。该模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。瀑布模型(Waterfall Model) 是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下

13、一个阶段,这也是瀑布模型名称的由来。 二、单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。)1.软件可行性研究一般不考虑 D A是否有足够的人员和相关的技术来支持系统开发B是否有足够的工具和相关的技术来支持系统开发C待开发软件是否有市场、经济上是否合算D待开发的软件是否会有质量问题2.软件维护的副作用主要有以下哪几种 C A编码副作用、数据副作用、测试副作用B编码副作用、数据副作用、调试副作用C编码副作用、数据副作用、文档副作用D编码副作用、文档副作用、测试副作用3.软件项目计划一般不包括以下哪项内容 D A培训计划B人员安排C进度安排D

14、软件开发标准的选择和制定4.以下哪一项不属于面向对象的软件开发方法 C Acoad方法Bbooch方法Cjackson方法Domt方法 5以下哪种测试方法不属于白盒测试技术 B A基本路径测试B边界值分析测试C循环覆盖测试D逻辑覆盖测试 6 A 数据处理问题的工作过程大致分为三步,即取得数据、变换数据和给出数据。A变换型 B事务型 C结构化验室 D非结构化7在对数据流的分析中,主要是找到中心变换,这是从 C 导出结构图的关键。A数据结构 B实体关系 C数据流图DER图 8程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的 D 和耦合性。A一致性 B作用域 C嵌套限制 D内聚性

15、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随机地选取测试数据B取一切可能的输入数据作为测试数据

16、C在完成编码以后制定软件的测试计划D选择发现错误可能性大的数据作为测试数据15使用白盒测试方法时,确定测试数据应根据_A_和指定的覆盖标准。A程序的内部逻辑B程序的复杂结构C使用说明书D程序的功能16可行性研究要进行一次_需求分析。参考答案为:CA详细的B全面的C简化的、压缩的D彻底的解析软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。因此答案为C。17系统流程图用于可行性分析中的_的描述。参考答案为:AA当前运行系统B当前逻辑模型C目标系

17、统D新系统解析可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。描述的对象是当前正在运行的系统,因此选择A。18系统流程图是描述_的工具。参考答案为:CA逻辑系统B程序系统C体系结构D物理系统解析系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。19_工具在软件详细设计过程中不采用。参考答案为:DA判定表 BIPO图CPDLDDFD图解析详细描述处理过程常用三种工具:图形、表格和

18、语言。其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。20程序的三种基本控制结构是参考答案为:BA过程、子程序和分程序B顺序、选择和重复C递归、堆栈和队列D调用、返回和转移解析程序的三种基

19、本控制结构是顺序、选择和循环(重复)。子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。21程序的三种基本控制结构的共同特点是参考答案为:DA不能嵌套使用B只能用来写简单程序C已经用硬件实现D只有一个入口和一个出口解析程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。三种结构可以写出非常复杂的程序,而且选择和循环都可以嵌套设计。22产生软件维护的副作用,是指参考答案为:CA开发时的错误B隐含的错误C因修改软件而造成的错误D运行时误操作解析因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用,包括编码副作用、数据副作用、

20、文档副作用三种。只有答案C是正确的表述。23维护中,因误删除一个标识符而引起的错误是_副作用。参考答案为:CA文档B数据C编码D设计解析编码副作用指的是在使用程序设计语言修改源代码时可能引入错误,比如删除或修改一个子程序、一个标号、一个标识符,改变程序代码的时序关系,修改文件的打开或关闭等。因此本题答案为C。24可维护性的特性中相互促进的是参考答案为:AA可理解性和可测试性B效率和可移植性C效率和可修改性D效率和结构好解析软件的可维护性可用七个质量特性来衡量,分别是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。对于不同类型的维护,这些特性的侧重点也不相同,有一些可维护特性是

21、可以相互促进的,比如可理解性和可测试性,可理解性和可修改性,另外一些则是相互矛盾的,如答案中的B效率和可移植性、C中的效率和可修改性。至于D中的结构好则不属于可维护性的特征。25汽车有一个发动机。汽车和发动机之间的关系是_关系。参考答案为:BA一般具体B整体部分C分类关系D主从关系解析类有两种主要的结构关系,即一般具体结构关系和整体部分结构关系。前者称为分类结构,用来描述现实世界中的一般化的抽象关系。后者称为组装结构,用来描述现实世界中的类的组成的抽象关系。汽车和发动机的关系很明显,应该属于整体部分关系。26在变更控制中,_可以用来确保由不同用户所执行的并发变更。参考答案为:BA异步控制B同步

22、控制C存取控制D基线控制解析变更控制包括建立控制点和建立报告与审查制度,其过程中的“检出”和“登入”处理实现了存取控制和同步控制,存取控制管理各个用户存取和修改一个特定软件配置对象的权限,同步控制可用来确保由不同用户所执行任务的并发变更。27变更控制是一项最重要的软件配置任务,其中“检出”和_处理实现了两个重要的变更控制要素,即存取控制和同步控制。参考答案为:AA登入B管理C填写变更要求D审查解析“检出”和“登入”处理实现了两个重要的变更控制要素。具体说明见上题。28提高软件质量和可靠的技术大致可分为两大类:其中一类就是避开错误技术,但避开错误技术无法做到完美无缺和绝无错误,这就需要参考答案为

23、:DA消除错误B检测错误C避开错误D容错解析提高软件质量和可靠性的技术大致可分为两类,一类是避开错误技术,即在开发的过程中不让差错潜入软件的技术,另一类是容错技术,即对某些无法避开的差错,使其影响减至最小的技术。29_是以提高软件质量为目的的技术活动。参考答案为:DA技术创新B测试C技术创造D技术评审解析技术评审是以提高软件质量为目的的技术活动,是对软件本身的结构、与运行环境的接口、变更带来的影响等方面进行的评审活动。30面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多

24、特征,如软件系统是由对象组成的;_;对象彼此之间仅能通过传递消息互相联系;层次结构的继承。参考答案为:CA开发过程基于功能分析和功能分解B强调需求分析重要性C把对象划分成类,每个对象类都定义一组数据和方法D对既存类进行调整解析面向对象方法有四个特征,分别是对象唯一性、分类性、继承性和多态性。其中分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类,每个类是具有相同性质的个体集合,而每个对象相关类的实例,对象彼此之间通过传递消息互相联系。31软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫参考答案为:DA生存期B面向对象设计C面向对象程序设计D面向对象分析解析面向对象

25、的分析的过程就是认识客观世界的过程,其目的就是建立对客观世界的精确、简洁、可理解的正确模型,也就是所谓的建模。因此本题答案为D。32原型化方法是用户和设计者之间执行的一种交互构成,适用于_系统。参考答案为:AA需求不确定性高的B需求确定的C管理信息D实时解析原型不同于最终系统,它只实现所选择的部分功能,仅是为了试验或是演示而用,部分功能需求可以忽略或者模拟实现,因此适用于需求不确定性高的系统。33原型化方法是一种_型的设计过程。参考答案为:AA自外向内B自顶向下C自内向外D自底向上解析原型化方法的基本思想是根据用户给出的基本需求,通过快速实现构造出一个小型的、可执行的模型,用户在计算机上实际运

26、行这个用户界面原型,在试用过程中提出意见或建议,然后开发者再对原型进行改进。如此周而复始,逐步弥补不足之处,从而提高了最终产品的质量。它是一种自外向内的设计过程。34为了提高测试的效率,应该参考答案为:DA随机地选取测试数据B取一切可能的输入数据作为测试数据C在完成编码以后制定软件的测试计划D选择发现错误可能性大的数据作为测试数据解析软件测试是为了尽可能多的发现程序中的错误,尤其是发现至今尚未发现的错误。在选取测试用例时,不可能进行穷举测试,在每一个细节进行测试,也不能无目的地随机选取测试数据,为了提高测试的效率,测试用例应该选择发现错误可能性大的部分,这样的测试结果才符合软件测试的目的。35

27、使用白盒测试方法时,确定测试数据应根据_和指定的覆盖标准。参考答案为:AA程序的内部逻辑B程序的复杂结构C使用说明书D程序的功能解析白盒测试是把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,由于白盒测试是一种结构测试,所以被测对象基本上是源程序,以程序的内部逻辑和指定的覆盖标准确定测试数据。36瀑布模型的关键不足在于 B A过于简单B不能适应需求的动态变更C过于灵活D各个阶段需要进行评审 37.在面向对象软件开发方法中,类与类之间主要有以下结构关系 A A继承和聚集B继承和一般C聚集和消息传递D继承和方法调用 38.以下哪一项不是软件危机的表现形式 C A成本高B生产率低

28、C技术发展快D质量得不到保证 39以下哪一项不是面向对象的特征 D A多态性B继承性C封装性D过程调用 40.面向对象模型主要由以下哪些模型组成 A A对象模型、动态模型、功能模型B对象模型、数据模型、功能模型C数据模型、动态模型、功能模型D对象模型、动态模型、数据模型 41面向对象建模得到的三个模型,其中核心的模型是_A_。A对象模型B功能模型C逻辑模型D动态模型42COCOMO估算模型是_B_。A模块性成本模型B结构性成本模型C动态单变量模型D动态多变量模型43在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是

29、 D 。A时序图 B数据流图 C系统结构图 D状态图44从结构化的瀑布模型看,在软件生存周期的几个阶段中,对软件的影响最大是_C_。A详细设计阶段B概要设计阶段C需求分析阶段D测试和运行阶段45模块 B ,则说明模块的独立性越强。A耦合越强 B耦合越弱C扇入数越高 D扇入数越低46 D 数据处理问题的工作过程大致分为三步,即取得数据、变换数据和给出数据。A非结构化 B事务型 C结构化验室 D变换型47与设计测试数据无关的文档是_D_。A需求说明书 B设计说明书 C源程序 D项目开发设计 48设计软件结构一般不确定_D_。A模块之间的接口B模块间的调用关系C模块的功能D模块内的局部数据 49在多

30、层次的结构图中,其模块的层次数称为结构图的 D 。A粒度 B跨度 C控制域 D深度50两个模块都使用同一张数据表,模块间的这种耦合称为_A_。A公共耦合B内容耦合C数据耦合D控制耦合51与设计测试数据无关的文档是_D_。A需求说明书 B设计说明书 C源程序 D项目开发设计52模块内聚性最好的是_C_。A逻辑内聚B时间内聚C功能内聚D通信内聚53需求分析阶段的任务是确定_C_。A软件开发方法 B软件开发工具C软件系统的功能D软件开发费 54软件结构化设计中,好的软件结构应该力求做到_B_。A顶层扇出较少,中间扇出较高,底层模块低扇入B顶层扇出较高,中间扇出较少,底层模块高扇入C顶层扇入较少,中间

31、扇出较高,底层模块高扇入D顶层扇入较少,中间扇入较高,底层模块低扇入55耦合度也可以分为七级:其中最松散的耦合是_A_A非直接耦合B数据耦合C特征耦合D控制耦合56软件可靠性是软件在给定的时间内,在规定的环境条件下系统完成所指定功能的_C_。A可用性B适应性C概率D可移植性57为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为_D_。A纠错性维护B适应性维护C改善性维护D预防性维护58重用率高的模块在软件结构图中的特征是_B_。A扇出数大B扇入数大C扇出数小D内聚性高59面向对象分析的独到之处是_A_A将数据和处理结合在一起而不是分离B数据和处理分别独立考虑C仅考虑

32、数据结构D考虑处理过程60与软件开发需求分析、设计及编码阶段相对应的软件测试步骤是_D_。A组装测试、确认测试、单元测试B单元测试、组装测试、确认测试C单元测试、确认测试、组装测试D确认测试、组装测试、单元测试三、填空题1系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的_流动_情况。2成本效益分析的目的是从 经济 角度评价开发一个项目是否可行。3自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和 宽度优先策略 。4详细设计的任务是确定每个模块的内部特性,即模块的算法、使用的数据 。5所有软件维护申请报告要按规定方式提出,该报告也称软

33、件问题 报告。7Jackson方法是一种 面向数据结构 的开发方法。8软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性 、 可使用性和效率。9使用白盒测试方法时,确定测试数据应根据_程序的内部逻辑_和指定的覆盖标准。10用面向对象方法开发软件时,在分析、设计和编码等项开发活动之间并不存在明显的边界_。11计算机程序及其说明程序的各种文档称为文件_。 12如果IT是程序长度(机器指令总数),ET测试之前程序中故障总数,而MTTF是平均无故障时间,那么需要改正EC=_ET_- IT_/(K*MTTF)_个错误之后,测试工作才可以结束。 13UML中的泛化关系就是通常所

34、说的_继承关系_,它是通用元素和具体元素之间的一种分类关系。14_继承_是指能够直接获得已有的性质和特征,而不必重复定义它们。 15等价类划分是一种_黑盒测试方法_,寻找有限个具有代表性的测试用例。16软件开发环境的主要目标是提高软件开发的_速度_,改善软件的质量和降低_项目的风险_。 17UML提供的用例图也是进行需求分析和建立_功能模型_的有力工具。 18软件在给定的时间间隔内,按照规格说明书的规定成功地运行的概率就是软件的_概率_。 19面向对象方法中对象是最本的概念,面向对象方法学可概括为 object+classes+inheritance+communication with me

35、ssages 。 20在一个模块中,功能状态与接口反映模块的_外部特性_,逻辑反映它的_内部特性_。31在软件项目的经济可行性分析中,所谓投资回收期指的是:使开发项目累计的经济效益等于_最初的投资费用_所需的时间。32软件开发中原型是软件的一个早期可运行的版本_,它反映了最终系统的重要特性。34两个模块之间只是通过参数交换信息,而且交换的信息仅仅是数据,这种耦合就是_数据耦合_。36面向对象中的“重载”有两种:_函数重载和运算符重载_。37软件工程方法学三要素 方法,工具和过程 。38数据流图中描述加工逻辑一般使用三种工具,分别是_结构化语言_、判定表、判定树。40只有同时使用 对象 类 继承

36、和消息 的方法,才是真正面向对象的方法。41CASE 工具的使用主要是为了提高专业软件人员的 _开发效率_ 。 42在面向对象方法中,对象实现了数据和操作的结合,使数据和操作 _封装_ 于对象的统一体中。 43面向对象分析的目的是对客观世界的系统进行 _建模_ 。 44软件维护工作的生产性活动包括分析评价、修改设计和 _编写软件_ 等。 45为了使应用软件适应计算机环境的变化而 _修改软件_ 的过程称为适应性维护。46需求分析的基本任务是要准确回答系统必须“ 做什么 ”的问题。 47软件结构图的宽度是指一层中 _最大_ 的模块个数。 49软件生存周期是指一个软件从提出开发要求开始直到 _该软件

37、报废_ 为止的整个时期。 四、判断题1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。(对)2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。(错)3.JAVA语言编译器是一个CASE工具。(对)。 4.软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。(错) 5.软件模块之间的耦合性越弱越发。(对)6.数据库设计说明书是一个软件配置项(对) 7.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。(错) 8.过程描述语言可以用于描述软件的系统结

38、构。(错) 9.如果通过软件测试没有发现错误,则说明软件是正确的。(错) 10.快速原型模型可以有效地适应用户需求的动态变化。(对) 21 缺乏有力的方法学的指导和有效的开发工具的支持, 这往往是产生软件危机的原因之一。( )22 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(× )23 在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。( )24 快速原型技术适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合。( × )25 流程图也称为程序(框图)是最

39、常用的一种表示法。( )26 面向数据设计方法一般都包括下列任务: 确定数据结构特征;用顺序、选择和重复三种基本形式表示数据等步骤。( )27 理想的人机界面应针对具有典型个性的特定的一类用户设计。( )28 数据输入的一般准则中包括尽量(增加)用户输入的动作。( × )29 用穷举测试是较现实的测试方法。( × )30 编码时应尽可能使用全局变量(× )31 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。( ) 32 集成测试主要由用户来完成。( × ) 33 确认测试计划应该在可行性研究阶段制定。( ×

40、 ) 34 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。( ) 35 软件概要设计包括软件系统结构设计以及数据结构和数据库设计。( ) 36 在可行性研究中最难决断和最关键的问题是经济可行性。( × )37 耦合是指一个模块内各个元素彼此结合的紧密程度。( × )38 一笔交易,一个动作,甚至操作人员按一个按钮都可以看作是一次事物。( )39 概要设计阶段完成的主要文档是概要设计说明书。( )40 过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。(× )41 程序设计语言中应绝对禁止使用GOTO语句.(错)42 类

41、是关于对象性质的描述,由方法和数据组成.(对)43 随着软件技术的发展,人们逐渐认识到阅读程序的重要性,编码不仅要强调效率还要强调清晰.(对)44 为保证程序的安全,必须做到程序中没有任何错误存在,即容错.(错)45 如果把软件开发所需的资源画成一个金字塔,人是最基本的资源.(对)46 模块的内聚度应尽可能地小。(错)47 因果图法可以用来系统地设计测试用例。(对)48 对程序的穷举测试在一般情况下是可以做到的。(错)49 为了确认用户的需求,先做出系统的主要部分,提交用户试用的软件开发方法是原型法。(对)50 用于表示模块间调用关系的图是SD。(错)51 结构化分析方法就是面向数据流自顶向下

42、逐步求精进行需求分析的方法。(对)52 程序编码在系统分析阶段就可以开始了。(错)53 通常用数据流图、数据库字典和简明算法描述表示系统的逻辑模型。(对)54 一个软件系统中可能会出现所有模块之间没有任何联系的情况。(错)55 判定表不适合做通用的设计工具,不能表示顺序结构、循环结构。(对)56 测试一般情况下是以白盒法为主黑盒法作为补充。(错)57 因果图法可以用来系统地设计测试用例。(错)58 模块的内聚度应尽可能地小,模块间联系尽可能大。(错)59 为了确认用户的需求,先做出系统的主要部分,提交用户试用的软件开发方法是原型法。(对)60 系统分析阶段和系统设计阶段一般不考虑测试。(错)6

43、1 结构化程序设计SP强调模块采用自上而下逐步求精设计方法,单入口、单出口62 标准结构。(对)63 面向对象设计中的主题相当于子系统。(错)64 判定表不适合做通用的设计工具,不能表示顺序结构、循环结构。(对)65 对象中的服务可通过分析属性值的变化情况发现。(错)66 通常用数据流图、数据库字典和简明算法描述表示系统的逻辑模型。(对)五、简答题设计软件:Powerdesigner, Microsoft Visio , Rational , Rose , Open ModelSphere 对象模型表示静态的,结构化的系统的”数据”性质.它是对模拟客观世界实体的对象以及彼此间的关系的映射.动态

44、模型表示瞬时的,行为的系统的”控制”性质,它规定了对象模型中的对象的合法变化序列.功能模型表示变化的系统的”功能”性质,它指明了系统应该”做什么”,因此更直接地反映了用户对目标系统的需求.1. 需求分析阶段的基本任务是什么?需求分析阶段的基本任务是要准确的定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。本阶段要进行以下几方面的工作: 问题识别。双方确定对问题的综合需求,这些需求包括:功能需求、性能需求、环境需求、用户界面需求,另外还有可靠性、安全性、保密性、可移植性、可维护性等方面的需求。分析与综合,导出软件的逻辑模型。分析人员对获取的需求,进行一致性的分析检查,在分析、综合

45、中逐步细化软件功能,划分成各个子功能。这里也包括对数据域进行分解,并分配到各个子功能上,以确定系统的构成及主要成份,并用图文结合的形式,建立起新系统的逻辑模型。 编写文档。编写“需求规格说明书”、编写初步用户使用手册、编写确认测试计划、修改完善软件开发计划。2. 数据流图简称DFD,是SA方法中用于表示系统逻辑模型的一种工具。它以图形的方式描述数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。数据流图有四种基本图形符号:“”箭头表示数据流;“”圆或椭圆表述加工;“=”双杠表示数据存储;方框表示数据的源点或终点。(3分)2、什么是软件危机?其产生的原因是什么

46、?答:当软件开发技术的进步不能跟上硬件技术的进步,未能满足发展的要求,致软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现为:(1)经费预算经常突破,完成时间一再拖延;(2)开发的软件不能满足用户要求;(3)开发的软件可维护性差;(4)开发的软件可靠性差。造成软件危机的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的。共产生原因主要有以下几方面:(1)软件的规模越来越大,结构越来越复杂;(2)软件开发管理困难而复杂;(3)软件开发费用不断增加;(4)软件开发技术落后;(5)生产方式落后;(6)开发工具落后,生产率提高缓慢。

47、 3、.说明结构化程序设计的主要思想是什么? 答:(1)自顶向下、逐步求精的程序设计方法 (2)使用3种基本控制结构、单入口、单出口来构造程序。 4、.软件测试包括哪些步骤?说明这些步骤的测试对象是什么? 答:(1)单元测试,测试对象对单元模块(2)集成测试,测试对象为组装后的程序模块(3)确认测试,测试对象为可运行的目标软件系统 5、需求 分析与软件设计二个阶段任务的主要区别是什么? 答:需求分析定义软件的用户需求,即定义待开发软件能做什么 软件设计定义软件的实现细节以满足用户需求,即研究如何实现软件。 6、软件开发成本估算方法有哪几种?答:(1)自顶向下估算方法。估算人员参照以前完成的项目

48、所耗费的总成本(或总工作量),来推算将要开发的软件的总成本(或总工作量),然后把它们按阶段、步骤和工作单元进行分配,这样方法称为自顶向下的估算方法。(1分)(2)自底向上估算方法。自底向上估算方法是将待开发的软件细分,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,得到软件的总开发量。(1分)(3)差别估算方法。差别估算是将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,导出开发项目的总成本。(1分)(4)专家估算法。依靠一个或多个专家对要求的项目做出估算。(1分)(5)类推估算法。(0.5分)(6)经验公式估算法。(

49、0.5分) 7、说明软件测试和调试的目的有何区别? 答:测试的目的是判断和发现软件是否有错误 , 调试的目的是定位软件错误并纠正错误。 8、 什么是确认测试?该阶段有哪些工作?答:确认测试又称有效性测试。它的任务是检查软件的功能与性能是否与需求规格说明书中确定的指标相符合 。确认测试阶段有两项工作,进行确认测试与软件配置审查:(1)确认测试一般是在模拟环境中运用黑盒测试方法,由专门测试人员和用户参加的测试。(2)软件配置审查的任务是检查软件的所有文档资料的完整性、正确性。如果发现遗漏和错误,应补充和改正,同时要编排好目录,为以后的软件维护工作奠定基础。 9、如何做好软件质量保证工作? 软件质量

50、保证工作是软件工程管理的重要内容,软件质量保证应做好以下几个方面的工作:(1)采用技术手段和工具。质量保证活动要贯彻开发过程始终,必须从采用技术手段和工具,尤其是使用软件开发环境来进行软件开发。(2)组织正式技术评审,在软件开发的第一个阶段结束时,都要组织正式的技术评审。国家标准要求单位必须采用审查、文档评审、设计评审、审计和测试等具体手段来保证质量。(3)加强软件测试。软件测试是质量保证的重要手段,因为测试可发现软件可发现软件中大多数潜在错误。(4)推选软件工程规范(标准)。用户可以自己指定软件工程规范(标准),但标准一旦确认就应贯彻执行。(5)对软件的变更进行控制。软件的修改和变更常常会引

51、起潜伏的错误,因此必须严格控制软件的修改和变更。(6)对软件质量进行度量。即对软件质量进行跟踪,及时记录和报告软件质量情况。10、简述建立对象模型的过程。 答:典型的工作步骤是:(1)首先确定对象类和关联(因为它们影响系统整体结构和解决问题的方法);(2)对于大型复杂问题还要进一步划分出若干个主题;(3)然后给类和关联增添属性,以进一步描述它们;(4)接下来利用适当的继承关系进一步合并和组织类;(5)由于经过一次建模过程很难得到完全正确的对象模型,所以需要反复修改。11. 一般来讲,开发一个软件系统首先应该遵循的基本原则是什么?(无解释给3分,有解释满分)答:开发一个软件系统首先应该遵循的基本原则:(1)首先要建立一个领导子: 能调动资源的行政领导 有经验的系统开发工程师用户(专家)软件开发人员(2)软件系统开发严格按软件生命周期分阶段进行:可行性分析需求(系统)分析总体(概要)设计软件系统的详细设计软件系统的实施(3)要有用户的观点(4)要加强文档资料的管理12. 简述软件再工程的过程(无解释给3分,有解释满分)?答:(1)库存目录分析; 包含每个应用系统的信息,如:名称、构建日期、修改次数、过去18个月报告的错误、用户数量、文档质量、预期寿命,等。从中选出再工程的候选者。(2)文档重构; 如果一个程序走向生命终点,不再

温馨提示

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

评论

0/150

提交评论