湖南大学2013年《软件工程导论》期中考试试卷
软件工程期中试卷

软件工程期中试卷软件工程期中试卷一、引言本试卷旨在对学生在软件工程课程学习中所掌握的知识进行综合评估。
试卷分为以下几个章节,每个章节都覆盖了软件工程中的重要概念和技术。
请仔细阅读每个问题,并提供详细的答案。
二、软件工程基础1、什么是软件工程?请详细描述软件工程的定义和目标。
2、解释软件生命周期模型,并举例说明其中一种模型的特点和适用场景。
3、什么是需求工程?请解释需求工程的过程,并至少三种需求获取的方法。
三、需求分析和规格说明1、请解释需求规格的概念,并说明为什么需求规格是软件开发过程中至关重要的一步。
2、请详细描述需求分析过程中使用的UCD(用户中心设计)方法,并解释该方法的优势。
3、解释功能需求和非功能需求的区别,并举例说明每种需求的特点和要求。
四、设计和建模1、请解释面向对象设计的基本原则,并说明每个原则的作用和应用方法。
2、什么是UML?解释UML中的三种基础建模图(类图、用例图和时序图)的作用和语法规则。
3、请解释软件架构的概念,并描述常见的三种软件架构模式。
五、代码实现和测试1、请解释软件开发中的迭代和增量开发方法,并说明它们的优缺点。
2、解释软件测试的概念和目标,并至少三种常见的软件测试方法。
3、请描述持续集成的概念和好处,并举例说明持续集成在软件开发中的应用。
六、软件项目管理1、解释软件项目管理的概念和目标,并描述软件项目管理中的四个基本要素。
2、请解释敏捷开发方法,并说明敏捷开发方法与传统瀑布模型的区别。
3、请详细描述Scrum框架,并解释Scrum的角色、仪式和工件。
七、软件质量保证1、请解释软件质量保证的概念和意义,并至少三种常用的质量保证方法。
2、解释软件配置管理的概念和目标,并描述常用的配置管理工具和技术。
3、请解释软件不同类型的缺陷,并说明如何进行缺陷管理和修复。
八、项目部署和维护1、请解释软件部署的概念和步骤,并说明常见的软件部署工具和技术。
2、什么是软件维护?请描述软件维护的活动和类型,并解释为什么软件维护是软件生命周期中至关重要的一部分。
2013软件工程试题及参考答案)

《软件工程》试题(第1套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.经济可行性研究的范围包括(C)A.资源有效性 B.管理制度 C.效益分析 D.开发风险2.结构化设计方法在软件开发中用于(A)。
A、概要设计B、详细设计C、程序设计D、测试用例设计3.程序的三种基本控制结构是( B )A.过程、子程序和分程序 B.顺序、选择和重复C.递归、堆栈和队列 D.调用、返回和转移4.软件测试中,白盒法是通过分析程序的( B )来设计测试用例的。
A、应用范围B、内部逻辑C、功能D、输入数据5.软件维护费用高的主要原因是( C )。
A、人员少B、人员多C、生产率低D、生产率高6.软件质量必须在(D)加以保证。
A、开发之前B、开发之后C、可行性研究过程中D、设计与实现过程中7.确认测试主要涉及的文档是( A )。
A、需求规格说明书B、概要设计说明书C、详细设计说明书D、源程序8.模块的内聚性最高的是( D )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚9.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( D )A.生存期 B.面向对象设计 C.面向对象程序设计 D.面向对象分析10.原型化方法是用户和设计者之间执行的一种交互构成,适用于( A )系统。
A.需求不确定性高的 B.需求确定的C.管理信息D.实时11、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干( B )。
A 关键实践B 关键过程域C 软件过程能力D 软件过程12、( A )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程13.下列关于瀑布模型的描述正确的是( D )。
湖南大学2013年《软件工程导论》期中考试试卷

《软件工程导论》期中考试试卷一、填空题(本题20分,每空1分)1、软件是计算机程序、()及()的完整集合,将其统称为软件配置,这些项称为软件配置项。
2、通常,将软件生命周期全过程中使用的一整套技术方法的集合称为方法学,包含三个要素,即方法、()和()。
传统方法学采用()技术来自顶向下顺序地完成软件开发的各项任务,而面向对象方法是一种以()为主线,把数据和对数据的操作紧密地结合起来的方法,其开发过程是一个多次迭代的演化过程。
3、软件测试的目标是(),因而从心理学角度来看,由程序作者对自己编写的程序进行测试是不恰当的。
设计测试方案是测试阶段的关键技术问题,测试方案一般包括()、输入的测试数据和()。
4、模型是为了理解事物而对事物作出的一种抽象,由()和()组成。
对象模型描述了系统的静态结构,通常使用UML提供的()图来描述。
5、需求分析的基本任务是(),在需求分析结束前,系统分析员应该写出(),以书面的形式准确描述软件需求。
6、软件的分类,按其功能可分为:系统软件、()和应用软件。
7、软件设计一般分为概要设计和()两个阶段。
8、用UML进行设计通常需要()和()两类设计模型。
9、状态图描述一个类对象所经历的()以及事件发生时状态的()。
二、选择题(单选题,本题10分,每小题1分)1.软件产品的开发主要是()。
A.复制B.再生产C.拷贝D.研制2.作坊式小团体合作生产方式的时代是()时代。
A.程序设计B.软件生产自动化C.程序系统D.软件工程3.软件工程与计算机科学性质不同,软件工程着重于()。
A.理论研究B.原理探讨C.建造软件系统D.原理的理论4.将每个模块的控制结构转换成计算机可接受的程序代码是()阶段的任务。
A.编码B.需求分析C.详细设计D.测试5.可行性研究的目的是决定()。
A.开发项目B.项目值得开发否C.规划项目D.维护项目6.面向对象的主要特征除对象唯一性、封装、继承外,还有()。
A、多态性B、完整性C、可移植性D、兼容7.软件生存周期中时间最长的是()阶段。
(完整)《软件工程导论》试题及答案,推荐文档

一, 判断题(正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分)Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×)PAD图在设置了五种基本控制结构后,还允许递归调用. (×)为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×)当验收测试通过,软件开发就完成了.(×)完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×)在进行总体设计时应加强模块间的联系.(×)系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)用黑盒法测试时,测试用例是根据程序内部逻辑设计的.(×)在程序调试时,找出错误的位置和性质比改正该错误更难.(√)以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)二,单项选择题(每小题2分,共10分)试判断下列叙述中,哪个(些)是正确的(D)a,软件系统中所有的信息流都可以认为是事务流b,软件系统中所有的信息流都可以认为是变换流c,事务分析和变换分析的设计步骤是基本相似的A,a B,b C,c D,b和c进行需求分析可使用多种工具,但(B)是不适用的.A,数据流图B,PAD图C,判定表D,数据词典在详细设计阶段,经常采用的工具有(A).A,PAD B,SA C,SC D,DFD详细设计的结果基本决定了最终程序的(C)A,代码的规模B,运行速度C,质量D,可维护性使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准.A,程序的内部逻辑B,程序的复杂程度C,该软件的编辑人员D,程序的功能三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.) (ABCD)可以作为模块.A,子程序B,函数C,过程D,编译文件下面哪些测试属于黑盒测试(BCD).A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于度量效益方法的是(ABCD).A,货币的时间价值B,投资回收期C,收入D,投资回报率软件维护的策略包括(BCD).A,定期检测维护B,改正性维护C,适应性维护D,完善性维护下列属于软件测试过程的是(ABE).A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试四,简答题(每题6分,共24分)耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValue(int i) {age=i; }public void setValue(String s) {name=s; }什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分)简述编码风格的重要性.答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量. 面向对象的测试和传统开发方法的测试有什么不同答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.五,分析应用题(20分)求一组数组中的最大数, 数组表示为A(n) ,n=1,2……n的自然数.(10分)请画出程序流程图(4分)请画出该算法的N-S图(3分)请用PAD图来表示该算法(3分)答案:2. 下面是某程序的流程图:(10分)计算它的环路复杂性.(3分) 答案:7为了完成基本路径测试,求它的一组独立的路径.(7分)答案:路径1: (0)—①—(13)—(19)路径2: (0)—②—③—(14)—(19)路径3: (0)—②—④—⑤—(15)—(19)路径4: (0)—②—④—⑥—⑦—(16)—(19)路径5: (0)—②—④—⑥—⑧—⑨—(17)—(19)路径6: (0)—②—④—⑥—⑧—⑩—(11)—(18)—(19)路径7: (0)—②—④—⑥—⑧—⑩—(12)—(19)六,阅读下列说明和数据流图,回答问题1至问题4,将解答填入答题纸的对应栏内.(12分) [说明]某基于微处理器的住宅安全系统,使用传感器(如红外探头,摄像头等)来检测各种意外情况,如非法进入, 火警,水灾等.房主可以在安装该系统时配置安全监控设备(如传感器,显示器,报警器等),也可以在系统运行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息交互.在安装过程中,系统给每个传感器赋予一个编号(即id)和类型,并设置房主密码以启动和关闭系统,设置传感器事件发生时应自动拨出的电话号码.当系统检测到一个传感器事件时,就激活警报,拨出预置的电话号码,并报告关于位置和检测到的事件的性质等信息.加工4的细化图[问题1](3分)数据流图1(住宅安全系统顶层图)中的A和B分别是什么答案:A:传感器: B:报警器[问题2](3分)数据流图2(住宅安全系统第0层DFD图)中的数据存储"配置信息"会影响图中的哪些加工答案:监控传感器,显示信息和状态[问题3](6分)将数据流图3(加工4的细化图)中的数据流补充完整,并指明加工名称,数据流的方向(输入/输出)和数据流名称.答案: 4.4"读传感器"添加输入数据流"传感器状态"4.1"显示格式"添加输出数据流"传感器数据"4.5"拨号"添加输出数据流"电话拨号"七,请以自己的实际体会说明项目管理的意义和作用.(8分)答案:(要点)软件项目管理就是对软件工程项目开发过程的管理.具体地说,就是对整个软件生存期的一切活动进行管理,以达到提高生产率,改善产品质量的目的.软件项目管理的职能:(1)制定计划:规定待完成的任务,要求,资源,人力和进度等.(2)建立项目组织:为实施计划,保证任务的完成,需要建立分工明确的责任机构.(3)配备人员:任用各种层次的技术人员和管理人员.(4)指导:鼓励和动员软件人员完成所分配的任务.(5)检验:对照计划或标准监督检查实施的情况.。
软件工程期中考试以及答案

1、瀑布模型下,采用结构化的方法,在它的生命周期各个阶段中,那个阶段出错对软件的影响最大()A、概要设计阶段B、维护阶段C、测试排错阶段D、需求分析阶段2、UML是软件开发过程中的重要工具之一,它主要用于那种开发方法()A、基于数据流的结构化开发方法B、基于需求动态定义的原型方法C、基于对象的面向对象的方法D、基于实体的信息建模方法3、面向对象方法的主要特征除了封装,继承外还有()A、完整性B、多态性C、可移植性D、可维护性4、结构化设计方法在软件开发中用于()A、概要设计B、详细设计C、可行性分析D、测试5、软件质量保证应该在()阶段开始。
A、编码B、需求分析C、测试D、设计6、数据字典是对数据定义的集合,它所定义的数据包含在()A、数据流图B、流程图C、软件结构图D、顺序图7、结构化程序的三种基本控制结构是()A、过程、函数、模块B、调用、返回、转移C、顺序、选择、循环D、命令、语句、函数8、软件详细设计的任务是确定每个模块的()A、软件体系结构B、功能C、外部接口D、算法和数据结构9、在结构化设计中能够衔接概要设计和详细设计的工具是()A、类图B、流程图C、DFD图D、SC图10、顺序图反映对象之间发送信息的时间顺序,它与()是同构的。
A、类图B、状态图C、协助图D、活动图11、下面说法错误的是()A、该图是对象图B、borrowbook()是方法C、name是属D、该图是类图12、下图中描述“聚合关系”的是() A 、 B 、 C 、 D 、 13、下面的顺序图问号所代表的是() 年级专业: 题 ) ……封………………………………………线……………………………………A、激活区B、角色C、消息D、生命线14、()可对需求进行建模A、SC图B、用例图C、活动图D、部署图15、需求分析的任务不包括()A、系统设计B、问题分析C、需求描述D、需求评审16、当模块中包含复杂的条件组合时,应采用()来描述A、SC图B、判断表C、流程图D、E-R图17、软件可行性分析研究不包括()A、法律可行性B、技术可行性C、政治可行性D、技术可行性18、下面最松散的耦合是()A、非直接耦合B、功能耦合C、数据耦合D、控制耦合19、静态数据结构的概念模式是()A、E-R图B、DFD图C、判断树D、SC图20、结构化程序设计理论认为,实现良好的程序结构应采用的分析方法()A、基于组件B、面向对象C、自顶向下D、基于服务21、DFD图中每个加工最少包括()A、一个输入流B、一个输出流C、一个输入流或者一个输出流D、一个输入流和一个输出流22、()技术是将一个活动图中的活动状态进行分组,每组表示特定的类负责相应的活动。
软件工程期中考试以及答案

1、瀑布模型下,采用结构化的方法,在它的生命周期各个阶段中,那个阶段出错对软件的影响最大()A、概要设计阶段B、维护阶段C、测试排错阶段D、需求分析阶段2、UML是软件开发过程中的重要工具之一,它主要用于那种开发方法()A、基于数据流的结构化开发方法B、基于需求动态定义的原型方法C、基于对象的面向对象的方法D、基于实体的信息建模方法3、面向对象方法的主要特征除了封装,继承外还有()A、完整性B、多态性C、可移植性D、可维护性4、结构化设计方法在软件开发中用于()A、概要设计B、详细设计C、可行性分析D、测试5、软件质量保证应该在()阶段开始。
A、编码B、需求分析C、测试D、设计6、数据字典是对数据定义的集合,它所定义的数据包含在()A、数据流图B、流程图C、软件结构图D、顺序图7、结构化程序的三种基本控制结构是()A、过程、函数、模块B、调用、返回、转移C、顺序、选择、循环D、命令、语句、函数8、软件详细设计的任务是确定每个模块的()A、软件体系结构B、功能C、外部接口D、算法和数据结构9、在结构化设计中能够衔接概要设计和详细设计的工具是()A、类图B、流程图C、DFD图D、SC图10、顺序图反映对象之间发送信息的时间顺序,它与()是同构的。
A、类图B、状态图C、协助图D、活动图11、下面说法错误的是()A、该图是对象图B、borrowbook()是方法C、name是属D、该图是类图12、下图中描述“聚合关系”的是() A 、 B 、 C 、 D 、 13、下面的顺序图问号所代表的是() 年级专业: 题 ) ……封………………………………………线……………………………………A、激活区B、角色C、消息D、生命线14、()可对需求进行建模A、SC图B、用例图C、活动图D、部署图15、需求分析的任务不包括()A、系统设计B、问题分析C、需求描述D、需求评审16、当模块中包含复杂的条件组合时,应采用()来描述A、SC图B、判断表C、流程图D、E-R图17、软件可行性分析研究不包括()A、法律可行性B、技术可行性C、政治可行性D、技术可行性18、下面最松散的耦合是()A、非直接耦合B、功能耦合C、数据耦合D、控制耦合19、静态数据结构的概念模式是()A、E-R图B、DFD图C、判断树D、SC图20、结构化程序设计理论认为,实现良好的程序结构应采用的分析方法()A、基于组件B、面向对象C、自顶向下D、基于服务21、DFD图中每个加工最少包括()A、一个输入流B、一个输出流C、一个输入流或者一个输出流D、一个输入流和一个输出流22、()技术是将一个活动图中的活动状态进行分组,每组表示特定的类负责相应的活动。
软件工程期中试题解答

《软件工程》期中试题一、选择题:1.The waterfall model of software development is also known as the ( ) AA. Classical life cycle modelB. Fountain modelC. Spiral modelD. Chaos model2.The incremental model of software development is ( ) BA. A reasonable approach when requirements are well defined.B. A good approach when a working core product is required quickly.C. The best approach to use for projects with large development teams.D. A revolutionary model that is not used for commercial products.3.COCOMO II is an example of a suite of modern empirical estimation models that requiresizing information expressed as ( ) DA. function pointsB. lines of codeC. application pointsD. any of the above4.An effective risk management plan will need to address which of the following issues ( )DA. risk avoidanceB. risk monitoringC. contingency planningD. all of the above5.The relationships shown in a data model must be classified to show their ( ) CA. Width and depthB. Directionality and reliabilityC. cardinality and modalityD. probability and risk6.The data dictionary contains descriptions of each software ( ) BA. configuration itemB. data objectC. diagramD. notation7.The state transition diagram ( ) AA. indicates system reactions to external eventsB. depicts relationships between data objectsC. depicts functions that transform the data flowD. indicates how data are transformed by the system8.Which of the following is not an area of concern in the design model ( ) DA. architectureB. dataC. interfacesD. project scope9. A program design language (PDL) is often a ( ) AA. combination of programming constructs and narrative textB. legitimate programming language in its own rightC. machine readable software development languageD. useful way to represent software architecture10.What types of errors are missed by black-box testing and can be uncovered by white-boxtesting ( ) BA. behavioral errorsB. subtle logic errorsC. performance errorsD. input error11.To achieve high modularity of software components you need CA. high coupling and high cohesionB. high coupling and low cohesionC. low coupling and high cohesionD. low coupling and low cohesion12.Which of the following is not an objective for building an analysis model CA. define set of software requirementsB. describe customer requirementsC. develop an abbreviated solution for the problemD. establish basis for software design13.下图所示的软件模块结构图,该软件的宽度为()。
最新《软件工程》期中考试卷含答案

《软件工程》期中考试卷
1.软件工程的基本原理有哪些?
2.在进行软件开发之前,为什么要进行可行性分析?应该从哪些方面考虑一项工程的可行性?
3.需求分析方法应遵循的原则是什么?
4.试述瀑布模型和快速原型模型等软件开发方法的基本过程。
5.某学校教材购销系统有以下功能:
学生买书,首先填写购书单,计算机根据各班学生用书表以及售书登记表审查有效性,若有效,计算机根据教材存量表进一步判断书库是否有书;若有书,计算机把领书单返回给学生,学生凭领书单到书库领书。
对脱销的教材,系统用缺书单的形式通知书库,新书购进库后,也由书库将进书通知返回给系统。
请就以上系统功能画出物理模型和逻辑模型。
6.试分析如下界面的优缺点及遵循了哪些设计原则?
7.某工厂人事部门对一部分职工重新分配工作,其分配原则如下:
“如果年龄不满18岁,文化程度是小学,则脱产学习;文化程度是中学,则当电工。
如果年龄满18岁但不满40岁,如果文化程度是小学或中学,若是男性,则当钳工;若是女性,则当车工;文化程度是大学,则当技术员。
如果年满40岁及以上者,文化程度是小学或中学,则当材料员。
”
根据上述原则画出决策树和判定表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件工程导论》期中考试试卷
一、填空题(本题20分,每空1分)
1、软件是计算机程序、()及()的完整集合,将其统称为软件配置,这些项称为软件配置项。
2、通常,将软件生命周期全过程中使用的一整套技术方法的集合称为方法学,包含三个要素,即方法、()和()。
传统方法学采用()技术来自顶向下顺序地完成软件开发的各项任务,而面向对象方法是一种以()为主线,把数据和对数据的操作紧密地结合起来的方法,其开发过程是一个多次迭代的演化过程。
3、软件测试的目标是(),因而从心理学角度来看,由程序作者对自己编写的程序进行测试是不恰当的。
设计测试方案是测试阶段的关键技术问题,测试方案一般包括()、输入的测试数据和()。
4、模型是为了理解事物而对事物作出的一种抽象,由()和()组成。
对象模型描述了系统的静态结构,通常使用UML提供的()图来描述。
5、需求分析的基本任务是(),在需求分析结束前,系统分析员应该写出(),以书面的形式准确描述软件需求。
6、软件的分类,按其功能可分为:系统软件、()和应用软件。
7、软件设计一般分为概要设计和()两个阶段。
8、用UML进行设计通常需要()和()两类设计模型。
9、状态图描述一个类对象所经历的()以及事件发生时状态的()。
二、选择题(单选题,本题10分,每小题1分)
1.软件产品的开发主要是()。
A.复制
B.再生产
C.拷贝
D.研制
2.作坊式小团体合作生产方式的时代是()时代。
A.程序设计
B.软件生产自动化
C.程序系统
D.软件工程
3.软件工程与计算机科学性质不同,软件工程着重于()。
A.理论研究
B.原理探讨
C.建造软件系统
D.原理的理论
4.将每个模块的控制结构转换成计算机可接受的程序代码是()阶段的任务。
A.编码
B.需求分析
C.详细设计
D.测试
5.可行性研究的目的是决定()。
A.开发项目
B.项目值得开发否
C.规划项目
D.维护项目
6.面向对象的主要特征除对象唯一性、封装、继承外,还有()。
A、多态性
B、完整性
C、可移植性
D、兼容
7.软件生存周期中时间最长的是()阶段。
A.需求分析
B.概要设计
C.测试
D.维护
8.与计算机科学的理论研究不同,软件工程是一门()学科。
A.理论性
B.原理性
C.工程性
D.心理性
9.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大()。
A、详细设计阶段
B、概要设计阶段
C、需求分析阶段
D、测试和运行阶段
10.软件工程的出现主要是由于()。
A.程序设计方法学的影响
B.其它工程科学的影响
C. 软件危机的出现
D.计算机的发展
三、判断题(每题1分,共20分)
1、软件危机的主要表现是软件需求增加,软件价格上升()
2、软件工程学科出现的主要原因是软件危机的出现()
3、与计算机学科的理论研究不同,软件工程是一门原理性学科()
4、瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰()
5、软件过程改进也是软件工程的范畴()
6、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据()
7、需求规格说明书描述了系统每个功能的实现()
8、用例模型的基本组成部件是用例、角色和用例之间的联系()
9、顺序图描述对象之间的交互关系,重点描述对象间消息传递的时间顺序()
10、UML语言支持面向对象的主要概念,并与具体的开发过程相关()
11、需求有效性验证是要检验需求能否反映客户的意愿。
()
12、需求文档中内容的详细程度,取决于所要开发系统的类型和用户的业务水平。
()
13、使用图形模型描述需求中的当需要表示状态的变化或需要描述行为序列的时候是非常有效的。
()
14、需求是变化的,但软件是灵活的,总可以满足需求。
()
15、UML不是一个开发过程,也不是一个方法,但允许任何一种开发过程和方法都可使用它。
()
16、交互模型用于描述系统和相关系统之间的联系。
()
17、事件驱动模型描述一个动作的序列,该动作序列涉及输入数据的处理和相关输出的产生。
()
18、活动图为数据处理的过程建模。
()
19、对管道和过滤器体系结构风格来说,特别重要的是过滤器必须是独立的实体。
()
20、客户-服务器体系结构中,由许多分布式处理器构成的网络系统可提供更有效的使用。
()
四、简答论述题(本题20分,任选4题)
1、软件设计的目标是什么?
2、瀑布模型是软件工程中应用最广泛的过程模型,试述采用瀑布模型进行软件开发的基本过程,该过程有何特点?
3、为什么要做架构设计?
4、极限编程是用故事情节并且把每个情节都写在卡片上来表达用户需求的,试述这种需求描述的优点和缺点。
5、Scrum的工作分解结构与传统项目的工作分解结构有哪些区别?
五、设计分析题(本题30分)
1、一个考务处理系统的要求如下,试画出该系统的数据流图(DFD)。
(1)对考生送来的报名表进行检查;
(2)对合格的报名表编好准考证号码后将准考证送给考生,并将汇总后的考生名单送给阅卷站;
(3)对阅卷站送来的成绩表进行检查,并根据考试中心指定的合格标准审定合格者;(4)填写考生通知单(内容包含考试成绩及合格∕不合格标志),送给考生;
(5)按地区、年龄、文化程度、职业、考试级别等进行成绩分类统计及试题难度分析,产生统计分析表。
2、某地铁集团打算为地铁站开发自动售票系统,系统的基本要求如下:
(1)乘客可通过三步操作购票:选择目的地;投入钱币;取票;
(2)系统接收投币前,乘客应选好目的地,而且每次投币只能购一张票;
(3)只要乘客所投钱币面值满足票价要求,而且系统能找零,就应出票,否则退钱;(4)如果需要找零,则在出票前退还多余的钱;
(5)出票结束后,系统应保存销售记录;
(6)系统响应乘客购票操作完成后,重新进入目的地选择界面;
(7)若乘客投币超过10秒,则重新进入目的地选择界面。
根据此回答:用UML状态图描述系统的行为。
3、网络的普及带给了人们更多的学习途径,随之而来的管理远程网络教学的“远程网络教学系统”诞生了。
“远程网络教学系统”的功能需求如下:
1、学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频;
2、教师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得;
3、系统管理员负责对网站页面的维护、审核不合法课件和不合法教学信息、批准用户注册。
根据此回答:
(1)学生需要登录“远程网络教学系统”后才能正常使用该系统的所有功能。
如果忘记密码,可与通过“找回密码”功能恢复密码。
请画出学生参与者的用例图。
(2)教师如果忘记密码,可以通过“找回密码”功能找回密码。
请画出教师参与者的用例图。
4、图书管理系统功能性需求说明如下:
1、图书管理系统能够为一定数量的借阅者提供服务。
每个借阅者能够拥有唯一标识其存在的编号。
图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。
提供的服务包括:提供查询图书信息、查询个人信息服务和预定图书服务等。
2、当借阅者需要借阅图书、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是通过图书管理员充当借阅者的代理和系统交互。
3、系统管理员主要负责系统的管理维护工作,包括对图书、数目、借阅者的添加、删除和修改。
并且能够查询借阅者、图书和图书管理员的信息。
4、可以通过图书的名称或图书的ISBN/ISSN号对图书进行查找。
据此画出语境“借阅者预定图书”的时序图。