软件工程复习 ()

合集下载

软件工程复习资料精选全文完整版

软件工程复习资料精选全文完整版

可编辑修改精选全文完整版一、单选题(共20题,40分)1、使用数据流图,并不断细化的需求获取方法是()。

(2.0)A、简易的应用规格说明B、面向数据流自顶向下逐步求精C、访谈D、快速原型法正确答案: B2、Z语言是以()为基础的形式化规格说明语言。

(2.0)A、微积分B、概率C、图形D、一阶谓词演算正确答案: D3、HIPO是指(2.0)A、层次输入处理输出图或表B、层次功能结构图C、功能结构图D、输入处理输出图或表正确答案: A4、高铁调用系统最适宜采用()方法。

(2.0)A、有穷状态机B、 Petri网C、 Z语言D、一阶线性时态逻辑正确答案: B5、假设学生年龄的成绩输入范围为18-25,则根据等价类划分技术,下列划分正确的是()。

(2.0)A、可划分为2个有效等价类,2个无效等价类B、可划分为1个有效等价类,2个无效等价类C、可划分为2个有效等价类,1个无效等价类D、可划分为1个有效等价类,1个无效等价类正确答案: B6、用于并发系统,解决定时问题的形式化方法是()。

(2.0)A、 VDMB、 Z语言C、 Petri网D、一阶线性时态逻辑正确答案: C7、软件生命周期中所花费费用最多的阶段是(2.0)A、需求分析B、软件总体设计C、软件维护D、软件实现正确答案: C8、软件质量保证措施SQA不包括:(2.0)A、复审或评审B、软件测试C、程序正确性证明D、软件代码编写正确答案: D9、希望确定软件实现的功能是否与需求规格说明书一致,需进行()。

(2.0)A、单元测试B、有效性测试C、确认测试D、集成测试正确答案: C10、总体设计不包括:(2.0)A、体系结构设计B、数据库设计C、模块内算法设计D、逻辑数据结构设计正确答案: C11、关于类和对象的说法,正确的是(2.0)A、一个类只能有一个角色B、类的命名必须用动词C、类的所有对象都具有相同的属性和操作D、类是对象的实例,对象是类的抽象正确答案: C12、数据字典的基本功能是(2.0)A、数据库设计B、数据通信C、数据定义D、数据维护正确答案: C13、软件需求规格说明的内容不应该包括(2.0)A、主要功能B、算法的描述C、用户界面及其运行环境D、软件性能正确答案: B14、增量模型在添加新的模块时,有一个要求是()(2.0)A、需要更多的测试B、有足够的开发人员C、软件体系结构开放D、各个模块都要进行评审正确答案: C15、在软件详细设计过程中不采用的工具是(2.0)A、判定表B、PDLC、程序流程图D、DFD正确答案: D16、软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试(2.0)A、结构合理性B、软件外部功能C、程序正确性D、程序内部逻辑正确答案: B17、耦合是模块之间的相对独立性的度量。

软件工程综合复习题连答案

软件工程综合复习题连答案

《软件工程》综合复习资料第一章软件工程概述一、选择题1、瀑布模型本质上是一种()。

A、线性迭代模型B、顺序迭代模型C、线性顺序模型D、及早见产品模型2、计算机辅助软件工程,简称()。

A、SAB、SDC、SCD、CASE3、以下判断正确的是()。

A、所谓软件开发就是编写程序。

B、利用软件工程的思想,已成功的解决了软件危机。

C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。

D、一般来说,程序中存在错误的概率与在该段程序中已发现的错误数成正比。

4、_____是以提高软件质量为目的的技术活动。

A.技术创新B.测试C.技术创造D.技术评审5、瀑布模型的存在问题是()。

A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求6、软件生命周期中所花费用最多的阶段是()。

A.详细设计B.软件编码C.软件测试D.软件维护7、计算机系统就是()A.主机,显示器,硬盘,软驱,打印机等。

B.CPU,存储器,控制器,I/O接口及设备。

C.计算机硬件系统和软件系统。

D.计算机及其应用系统。

8、产生软件危机的原因主要与两个方面的问题有关:A.软件在计算机中很难识别,存在磁盘中也看不到。

B.软件设计对人的智商要求很高,也要求很高的资金投入。

C.软件产品本身的特点与其它工业产品不一样,而且在软件的开发和维护过程中用的方法不正确。

D.软件很难理解,硬件也很复杂。

9、软件开发瀑布模型中的软件定义时期各个阶段依次是()A.可行性研究,问题定义,需求分析。

B.问题定义,可行性研究,需求分析。

C.可行性研究,需求分析,问题定义。

D.以上顺序都不对。

10、下列选项中()是软件开发中存在不正确的观念、方法。

A.重编程、轻需求B.重开发,轻维护C.重技术,轻管理D.以上三条都是二、填空题1、软件工程的三个基本要素包括()、()和()。

2、一般软件应该有三部分组成:()、()和()。

3、按软件的功能可将软件分成()、()和()等三类。

软件工程复习题库带答案完整版

软件工程复习题库带答案完整版

软件工程复习题库带答案完整版一、选择题1、白盒测试法是通过分析程序的(C)来设计测试用例的。

A.应用范围B.功能C.内部逻辑D.输入数据2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。

A.风险产生的原因B.风险监控技术C.风险能否消除D.风险发生所产生的后果3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。

A.好的计划B.不断的发布C.反馈和勇气D.持续集成4、等价分类法的关键是(C)。

A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D.确定系统中相同和不同的部分5、下列不属于黑盒测试的技术是(A)。

A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能6、为了提高模块的独立性,模块之间最好是(D)耦合。

A.控制耦合B.公共耦合C.内容耦合D.数据耦合7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。

A.角色B.活动C.制品D.工作流8、功能性注释嵌入在源程序内部,它是用来说明(A)。

A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能9、在结构化分析方法中,数据字典是重要的文档。

对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。

A.只有结构化语言 B.有结构化语言和判定树C.有结构化语言、判定树和判定表 D.有判定树和判定表10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行( B )维护。

A.正确性 B.适应性C.完善性 D.预防性11、软件危机的主要原因是(A)。

A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后12、13、下列关于面向对象分析与设计说法错误的是(C)。

A.面向对象的设计以面向对象分析为基础归纳出类B.建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象C.面向对象的设计是面向对象分析的另一种思维方式D.面向对象的设计是面向对象分析进一步的细化和更高的抽象14、在软件的可行性分析中,可以从不同的角度对软件进行研究,其中(B)是从软件的功能可行性角度考虑的。

软件工程复习资料

软件工程复习资料

软件工程1、软件的概念:软件是计算机系统中与硬件相依存的另一部分,包括程序、数据、以及相关的文档。

2、软件的组成:程序、数据、文档。

3、软件危机:指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

4、软件危机消除的办法:P51、必须充分吸取和借鉴人类长期以来从事各种工程项目所积累的行之有效的原理、概念、技术和方法,特别要吸取几十年来人类从事计算机硬件研究和开发的经验教训。

2、应该推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早起发展阶段形成的一些错误概念和做法3、应该开发和使用更好的软件工具。

总之,解决软件危机,既要有技术措施,又要有必要的组织管理措施。

5、软件工程的含义:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。

6、软件生命周期的过程以及任务。

(1)问题定义(2)可行性研究(3)需求分析(4)总体设计(5)详细设计(6)编码和单元测试(7)综合测试(8)软件维护****************************以上为第一章******************第二章●数据流图有四种成分:源点或终点,处理,数据存储,数据流●画DFD(数据流图)的指导原则:1.符号要使用标准符号2.恰当的命名3.流入流出的数据流的条数一致4.名字要保值一致(平衡)5.遵守加工编号规则6.处理必须既有输入流又有输出流(注意:源点和终点可以相同也可以不同)●数据字典的作用:数据字典(DD)的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息。

●数据字典的内容:(1)、数据流(2)、数据流分量即数据元素(3)、数据存储(4)、处理*********************** *******以上为第二章************************************第三章●实体-联系图(ER)图的概念:ER图中包含了实体、联系和属性3中基本成分,通常用矩形框代表实体,用连接先关实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,并用直线吧实体(或关系)与其属性连接起来。

软件工程复习题(带答案)

软件工程复习题(带答案)

软件工程复习题(带答案)软件工程复习题一、单选题1、软件开发的结构化设计(SD)方法,全面指导模块划分的最重要原则应该是( c )A模块高内聚 B模块低耦合 C模块独立性 D程序模块化2、软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的什么问题?( D )A产生危机 B质量保证 C开发效率 D生产工程化3、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究的结论主要相关于( A )A软件系统目标 B软件的性能C软件的功能 D软件的质量4、软件需求分析一般应确定的是用户对软件的( D )A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求5、软件测试是满足软件的功能和性能要求,保证软件正确性的措施,一般软件测试计划的制订应始于软件开发的哪个阶段? ( D )A.需求分析B.软件设计C.程序编码D.软件计划6、软件工程方法是在实践中不断发展的方法,而早期的软件工程方法主要是指( B )A.原型化方法B.结构化方法C.面向对象方法.D.功能分解法7、数据流图描述数据在软件中流动和被处理变换的过程,它是以图示的方法来表示,即.( A )A.软件模型B.软件功能C.软件结构D.软件加工8、软件工程学涉及到软件开发技术和工程管理两方面的内容,下述内容中哪一个不属于开发技术的范畴?(D)A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济9、软件文档是软件工程实施中的重要成份,它不仅是软件开发的各阶段的重要依据,而且也影响软件的()A.可理解性B.可维护性C.可扩展性D.可靠性10、从( )语言开始,软件摆脱了对硬件的依赖。

A.第一代B.第二代C.第三代D.第四代11、在下面列出的基本成分中,哪个不是实体关系图的基本成分? ( )A.实体B.数据存储C.关系 D属性13、结构化程序设计主要强调程序的(C)A.效率B.速度C.可读性D.大小14、在软件工程中根据程序的功能说明,而不关心程序内部逻辑的测试方法为( A )A.黑盒法B.白盒法C.灰盒法D.综合法15、软件开发的结构化分析方法,常用的描述软件功能需求的工具有( C )A业务流程图,数据字典 B.软件流程图,模块说明C.数据流图,数据字典D.系统流程图,程序编码16、结构化程序设计思想的核心是要求程序只由顺序、循环和( A )三种结构组成。

《软件工程》复习题及答案

《软件工程》复习题及答案
软件工程复习题
第一部分
一、选择题:
1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。
A.软件工程B.软件周期C.软件危机D.软件产生
2.瀑布模型本质上是一种(A)模型。
A.线性顺序B.顺序迭代C.线性迭代D.早期产品
3.瀑布模型存在的问题是(B)。
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求
数据流图的基本符号的意思:
1.矩形表示数据的外部实体;
2.圆角的矩形表示变换数据的处理逻辑;
3.少右面的边矩形表示数据的存储;
4.箭头表示数据流。
8.什么是数据字典?其作用是什么?它有哪些条目?
答:数据字典,主要用来描述数据流程图中的数据流、数据存储、处理过程和和数据源点/终点。
作用:数据流程图描述了系统的逻辑结构,其中的四个基本图形元素的含义无法在数据流程图中详细说明,因此数据流程图需要与其他工具配合使用,数据字典就是这样的工具之一。
32.基线可作为软件生存期中各开发阶段的一个检查点。当采用的基线发生错误时,可以返回到最近和最恰当的(C)上。
A.配置项B.程序C.基线D.过程
33.在软件设计中应该保持模块的独立性原则,( A )反映模块独立性。
A.耦合和内聚 B.数据和模块 C. 模块内部的凝聚力 D.模块之间的耦合
二、简答题
1.什么是软件工程?软件工程的目标是什么?
A、1%B、20%C、8%D、50%
13.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。
A.《计算机软件保护条例》
B.《中华人民共和国计算机信息系统安全保护条例》
C.《中华人民共和国著作权法》
D.《计算机病毒防治管理办法》

软件工程复习题及答案(完整)

软件工程复习题及答案(完整)

一、选择1、文档是软件产品的一部分,没有文档的软件就不称其为软件。

对2、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。

错3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。

错4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。

错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。

错6、软件配置管理是一组标识、组织和控制修改源程序的活动。

错7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

对9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。

对10、面向对象的分析是面向计算机系统建立软件系统的对象模型。

错11、(D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。

A 软件过程B 软件测试C 软件生存周期D 软件工程12、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。

A 质量控制B 质量管理C 质量策划D 质量改进13、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。

除第1级外,每个等级都包含了实现该成熟度等级目标的若干(B)。

A 关键实践 B 关键过程域 C 软件过程能力 D 软件过程14、在软件开发的各种资源中,(D)是最重要的资源。

A 开发工具B 方法C 硬件环境D 人员15、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A 固有的B 人为的C 可消除的D 不可降低的16、在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。

A 业务需求B 功能需求C 非功能需求D 用户需求17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。

软件工程 复习资料

软件工程 复习资料

软件工程复习大纲考试主要章节:第一章软件与软件工程第二章软件项目管理第三章计算机系统工程第3.2节第五章面向数据流的分析方法第八章软件设计基础第十四章软件测试其他:上课讲义题型一、选择题(单选或多选)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、需求分析的主要目的是(BC)。

A) 系统开发的具体方案B) 进一步确定用户的需求C) 解决系统是“做什么的问题”D) 解决系统是“如何做的问题”7、SA法的主要描述手段有(B)。

A) 系统流程图和模块图B) DFD图、数据词典、加工说明C) 软件结构图、加工说明D) 功能结构图、加工说明8、画分层DFD图的基本原则有(ACD)。

A) 数据守恒原则B) 分解的可靠性原则C) 子、父图平衡的原则D) 数据流封闭的原则9、在E-R模型中,包含以下基本成分(C)。

A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性D) 实体、属性、联系10、画DFD图的主要目的是(A D)。

A) 作为需求分析阶段用户与开发者之间交流信息的工具B) 对系统的数据结构进行描述C) 对目标系统的层次结构进行描述D) 作为分析和设计的工具11、数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成(C)。

软件工程 简答题复习题(带答案)

软件工程 简答题复习题(带答案)

软件工程简答题复习题(带答案)软件工程简答题复习题(带答案)1. 什么是软件工程?软件工程是一种系统化、规范化、可量化的方法,用于开发、维护和测试软件系统的过程。

它涵盖了软件开发的各个方面,包括需求分析、设计、编码、测试和维护等。

2. 软件开发生命周期有哪些阶段?常见的软件开发生命周期包括需求分析、系统设计、详细设计、编码、测试、部署和维护等阶段。

3. 什么是需求分析?需求分析是软件开发过程中的第一步,它涉及与客户进行沟通和理解客户需求的过程。

通过需求分析,开发团队可以明确软件系统的功能和性能要求,并将这些要求转化为详细的规格说明。

4. 需求分析的主要目标是什么?需求分析的主要目标是确保开发团队和客户对软件系统的需求达成共识。

它需要明确软件系统的功能需求、性能需求和约束条件,以便后续的设计和开发工作能够按照这些需求进行。

5. 什么是软件设计?软件设计是在需求分析的基础上,根据系统需求和约束条件,将系统划分为模块,确定模块之间的接口和关系,设计出满足系统需求的软件结构和算法的过程。

6. 软件设计的原则有哪些?常见的软件设计原则包括单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、依赖倒置原则(DIP)、接口隔离原则(ISP)和迪米特法则(LoD)等。

7. 什么是软件测试?软件测试是为了评估系统的质量和功能是否满足需求的过程。

它通过设计和执行测试用例,检查系统的输出是否符合预期,并发现潜在的错误和缺陷。

8. 软件测试的分类有哪些?软件测试可以分为单元测试、集成测试、系统测试和验收测试等不同的层次。

单元测试用于测试软件的最小功能单元,集成测试用于测试不同模块之间的交互,系统测试则测试整个系统的功能和性能,验收测试是由客户进行的测试,以确认系统是否达到了合同中规定的要求。

9. 什么是软件维护?软件维护是在软件交付给客户后,为了保证其正常运行和适应环境变化而进行的一系列活动。

维护包括错误修复、性能优化、功能扩展等。

国家开放大学《软件工程》复习资料

国家开放大学《软件工程》复习资料

《软件工程》复习资料一、选择题1.软件工程的研究内容具有层次化结构,最底层是质量保证层,中问层是(C),最主.层是工具层。

A过程层 B.方法层C.过程层和方法层 D.系统层2.可行性研究的四大要素是(D)。

A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平巳经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性3.针对需求不确定的软件开发,比较好的模型是(A)。

A.快速原型化模型B.瀑布模型c.软件成熟度模型。

.系统化模型4.下面的哪个选项不是软件工程的宗旨?(D)A.开发满足用户需求的软件B.研究算法C.及时交付软件D.生产无故障软件5.瀑布模型的主要特点是(A)。

A.将开发过程严格地划分为一系列有序活动B.将开发过程分解为阶段c.提供了有效的管理模式D.缺乏灵活性6.软件结构图中没有(D)元素。

A.模块B.调用参数C.返回结果D.判断7.结构化设计方法划分模块的原则是(C)A.模块扇出小于5B.模块扇人小于5c.低搞合,高内聚 D.模块深度小于78.配置视图体现了系统的实现环境,反映系统的(B)。

A.逻辑架构B.物理架构C组成结构 D.体系结构9.角色可以有四种类型:系统的使用者,硬件设备,外部系统和(D)。

A.数据库B.接口C.对象D.时间10.功能模型用于表达系统的需求,为软件的进一步分析和设计打下基础。

在面向对象方法中,由(C)实现。

A.场景描述B.活动图和1场景描述C.用例图和场景描述D.交互图和场景描述11.在分析模型内表示协调,}I顶序、事务处理以及控制其他对象的类是(A)。

A.控制类B.组件类C.主函数D.事务类12.而信息隐藏的核心内容是(C)。

A.人把数据都放在公共的区域B.数据不能被其他模块访问C.一个模块的内部信息不允许其他模块直接访问D.把信息加密,只能让有密钥的模块访问13.面向过程的方法最关心的是过程,而过程实施的对象是作为过程(A)传递的。

软件工程复习习题(含答案)

软件工程复习习题(含答案)

一、选择题1.在软件危机中表现出来的软件质量差的问题,其原因是___没有软件质量标准____。

2.在软件质量因素中,软件在异常条件下仍能运行的能力成为软件的___健壮性__。

3.在下列测试技术中,___逻辑覆盖___不属于黑盒测试技术。

4.___封装___是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。

5.软件测试时为了___发现错误_____而执行程序的过程。

6.在软件系统中,一个模块应具有什么样的功能,这是由___需求分析__决定的。

7.面向对象分析是对系统进行___需求分析_____的一种方法。

8.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影响软件的___可维护性____。

9.模块内聚度越高,说明模块内各成分彼此结合的程序越____紧密__。

10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码、测试和维护等阶段,一般认为可能占用人员最多的阶段是_维护阶段__。

11.常用的面向对象的软件过程模型是__喷泉模型_____。

生命周期模型A.瀑布模型(规范化,阶段性取得前进)B.喷泉模型(面向对象,开发活动间没明显边界,无缝过渡)C.原型模型(快速,线性顺序,不带反馈环)D.增量模型(产品分解为一系列增量构件,开发中逐步加入)E.螺旋模型(瀑布&快速原型结合,每阶段加风险评估)12.面向对象的分析阶段建立的系统模型不包括____数据模型____。

有对象模型、动态模型、功能模型13.提高软件的可维护性可采用很多措施,下列哪个不在措施之列?提供没有错误的程序。

措施:建立质量保证制度、改进程序文档质量、明确软件质量标准14.计算机系统可以划分为软件系统和硬件系统,软件是一种逻辑产品。

15. 可行性分析研究的主要目的是项目是否值得开发16.在下列四种模块的耦合性中,信息隐蔽性能最好的是(C数据耦合)A.控制耦合B.内容耦合C. 数据耦合D. 特征耦合17.需求分析是回答系统必须(D做什么)的问题。

《软件工程作业》考试复习题库(含答案)

《软件工程作业》考试复习题库(含答案)

《软件工程作业》考试复习题库(含答案)一、选择题1. 软件工程的三要素不包括以下哪项?A. 软件开发B. 软件维护C. 软件管理D. 软件设计答案:B2. 下列哪种编程范式主要用于软件工程中的面向对象编程?A. 命令式编程B. 函数式编程C. 面向对象编程D. 逻辑编程答案:C3. 在软件开发过程中,以下哪个阶段产生的文档最多?A. 需求分析B. 设计C. 编码D. 测试答案:A4. 以下哪个软件工程方法学强调在软件开发过程中使用迭代和增量开发?A. 敏捷开发B. 水晶方法C. 瀑布模型D. 敏捷开发与水晶方法的结合答案:A5. 以下哪个工具常用于软件需求分析阶段的模型建立?A. UML图B. 数据流程图C. 状态转换图D. 时序图答案:B二、填空题1. 软件工程的目的是提高软件的______、______和______。

答案:可用性、可靠性、可维护性2. 软件开发生命周期包括______、______、______、______和______。

答案:需求分析、设计、编码、测试、维护3. 在软件需求分析阶段,常用的方法有______、______和______。

答案:数据流程图、实体关系图、状态转换图4. 软件设计分为______设计和______设计。

答案:架构设计、详细设计5. 软件测试的目的不包括以下哪项______。

答案:找出软件的错误三、判断题1. 软件工程是计算机科学的一个分支。

()答案:正确2. 软件工程适用于所有类型的软件开发项目。

()答案:错误3. 敏捷开发方法适用于所有类型的软件开发项目。

()答案:错误4. 软件测试是软件开发过程中的最后一个阶段。

()答案:错误5. 软件维护是软件开发过程中的重要环节。

()答案:正确四、简答题1. 简述软件工程的定义及目标。

答案:软件工程是应用计算机科学、数学原理和方法来设计、开发、测试和维护软件的一门学科。

其目标包括提高软件的可用性、可靠性和可维护性,降低软件开发成本,提高软件开发效率。

软件工程复习题及参考答案

软件工程复习题及参考答案

软件⼯程复习题及参考答案软件⼯程复习题及参考答案⽂稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-《软件⼯程》课程复习资料⼀、单项选择题:1.下⾯哪些UML图描述系统⾏为?[ ]A.⽤例图B.类图C.对象图2.属于概要设计活动的是[ ]A.软件结构设计B.数据结构设计C.算法设计3.属⾏为型设计模式的是[ ]A.组合模式B.⼯⼚⽅法模式C.观察者模式4.下列说法正确的是[ ]A.UML 是软件开发⽅法B.UML是系统描述语⾔C.UML是软件开发过程5.根据程序流程图划分的模块通常是[ ]A.信息内聚的模块B.过程内聚的模块C.逻辑内聚的模块6.如果某程序中的⽐较个数是m,则其 McCabe环形复杂度为[ ]C.m+17.按ISO9000-3的说明,下列属软件配置项的是[ ]A.软件开发⽅法B.软件开发组织管理制度C.软件开发合同8.软件测试的⽬的是[ ]A.证明软件⽆错B.发现软件中的所有错误C.尽可能发现软件系统中的错误9.软件重构关注的是[ ]A.软件体系结构B.模块细节C.软件性能10.软件项⽬开发计划的内容有[ ]A.数据分析B.风险分析C.功能分析11.在UML的类图中,描述整体与部分关系的是[ ]A.泛化关系B.聚合关系C.依赖关系12.软件过程能⼒成熟度模型CMM⽤以评价[ ]A.软件过程能⼒B.组织能⼒C.学习能⼒13.因计算机硬件和软件环境的变化⽽作出的修改软件的过程称为[ ]C.适应性维护14.对项⽬软件⽽⾔,软件功能需求信息主要由谁提供[ ]A.软件⽤户B.软件开发⼈员C.软件项⽬管理⼈员15.IDEF0 图反映不出[ ]A.系统做什么B.系统功能由谁做C.系统如何做16.原型模型是⼀种什么开发过程模型?[ ]A.⾃顶向上B.由外⾄内C.增量式17.系统流程图描述[ ]A.物理系统B.逻辑系统C.软件体系结构18.需求规格说明书的内容不应该包括[ ]A.软件确认准则B.软件的性能描述C.算法过程的详细描述19.适合需求模糊或需求不确定系统开发的软件开发模型是[ ]A.瀑布模型B.RAD 模型C.原型模型20.UML 图中描述系统结构的是[ ]C.状态图21.⾯向对象⽅法是⼀种什么软件开发⽅法?[ ]A.层次化B.迭代增量式C.逐步求精22.不可以⽤来衡量软件可维护性的是[ ]A.可靠性B.可⽤性C.可⾏性23.系统分析员在需求分析最后负责编写[ ]A.⽤户⼿册B.概要设计说明书C.可⾏性研究报告24.为了提⾼软件的可靠性、可维护性等⽽对软件的修改称为[ ]A.改正性维护B.适应性维护C.预防性维护25.在结构化⽅法中,为使需求改变对软件影响较⼩,应该使软件结构[ ]A.与问题结构对应B.与问题结构独⽴C.与⽤户界⾯对应26.单元测试的计划应该在什么阶段完成?[ ]A.需求分析B.概要设计C.详细设计27.下列属⾯向对象软件开发⽅法的是[ ]28.强调信息隐藏的软件⼯程设计⽅法是[ ]A.Jackson ⽅法B.Parnas ⽅法C.SA/SD ⽅法29.描述系统动态⾏为的模型是[ ]A.包图B.软件结构图C.状态图30.考虑输⼊条件组合的测试⽤例设计⽅法是[ ]A.等价分类法B.语句覆盖法C.因果图法31.下列能减少⽀援性维护活动的是[ ]A.利⽤软件包B.进⾏配置管理C.对⽤户进⾏适当培训32.只⽀持单重继承的程序设计语⾔是[ ]A.C++B.DelphiC.C33.IDEF0 图的顶层图是[ ]A.A0 图B.A-0 图C.A-1图34.在UML的⽤例图中,扩展关系是⼀种[ ]35.独⽴测试⼩组开始介⼊测试是在[ ]A.模块测试阶段B.集成测试阶段C.确认测试阶段36.在成本估计中容易低估局部问题的⽅法是[ ]A.基于经验模型的估计B.⾃底向上估计C.⾃顶向下估计37.在IDEF1X图中,如果⼦实体与⽗实体存在联系,则⼦实体将继承⽗实体的[ ]A.全部属性B.主关键字属性C.⾮主关键字属性38.结构化分析⽅法使⽤的⼯具是[ ]A.数据流图B.类图C.软件结构图39.⽩盒测试设计⽤例的⽅法是[ ]A.等价分类法B.基本路径覆盖法C.因果图法40.在衡量软件质量时,最重要的标准是[ ]A.可维护性好B.可⽤性好C.满⾜⽤户功能需求41.瀑布模型是⼀种[ ]42.模块的独⽴程度可以由什么定性标准度量?[ ]A.耦合度B.复杂度C.可靠性43.以下选项中,不属于对象的特点有[ ]A.继承B.多态C.封闭44.⾯向数据结构的设计⽅法有[ ]A.Parnas ⽅法B.Jackson ⽅法C.IDEF0 ⽅法45.与UML配合最好的软件开发⽅法是[ ]A.RUP ⽅法B.Coad/Yourdon⽅法C.IDEF4⽅法⼆、填空题:1.统⼀建模语⾔UML提供了两种描述整体/部分关系的⽅法,分别是和。

软件工程复习资料-完整版

软件工程复习资料-完整版

一、选择题:1、用例图中,用来表示用例的符号为( B ) 。

2、协作图中包含的元素包括(A ) 。

A. 对象 B. 链 C. 激活 D. 消息3、在类图中,哪种关系表达整体与部分的关系( D ) 。

A .泛化 B. 实现 C. 依赖 D. 聚合4、下列各种图形符号中,用来表示组成关系的符号为 (B )。

A. B. C. D.5 、(A )工具在软件的详细设计中不能使用。

A . DFD B. N-S 图 C. 流程图 D. PDL6 、 “软件危机”是指 (C )。

A. 计算机病毒的出现B. 利用计算机进行经济犯罪活动C. 软件开发和维护中出现的一系列问题D. 人们过分迷恋计算机系统7 、 快速原型是利用原型辅助软件开发的一种新思想,它是在研究 (A )的方法和技术中产生 的。

A. 需求阶段B. 设计阶段C. 测试阶段D. 软件开发的各个阶段8、从严格意义上讲,下列 4 个选项中属于顺序图的元素是(ABCD ) 。

A.对象B. 参与者C. 消息D. 激活9、下列 UML 图形中, (ABCD )属于 UML 的动态视图。

A. 协作图B. 状态图C. 活动图D. 顺序图10、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是( D ) 。

A. 数据库设计B. 数据通信C. 数据关系描述D. 数据定义11、详细设计与概要设计衔接的图形工具是 (D )。

A. DFD 图B. 程序图C. PAD 图D. SC 图12 、UML 中,大多数建模者把节点分为(AC )A . 设备 B. 构件 C. 处理器 D. 显示器13 、(C)是一种特殊形式的状态机,用于对计算流程和工作流程建模。

A .时间图 B. 流程图 C. 活动图 D. 状态图14 、(A )描述从状态到状态的控制流程,常用来对系统的动态特征进行建模。

A. 状态图B. 序列图C. 协作图D. 活动图15、下列特点属于描述用例的特点的是( D ) 。

软件工程复习题及答案

软件工程复习题及答案

软件工程复习题及答案选择题1.在结构化设计SD方法中全面指导模块划分的最重要的原则是( D )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性2.软件维护产生的副作用,是指( C )A.开发时的错误B.隐含的错误C.因修改软件而带来的错误D.运行时误操作3.软件详细设计的主要任务是确定每个模块的( A )A.算法和使用的数据结构 B.外部接口 C.功能 D.编程4.为了提高模块的独立性,模块内部最好是( C )A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚5.软件是一种( C )A.程序B.数据C.逻辑产品D.物理产品6.下列那个模型不是面向对象的分析中建立的模型( B )A.对象模型B.瀑布模型C.动态模型D.功能模型7.确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于A.集成测试B.恢复测试C.验收测试D.单元测试8.采用Gantt图表示软件项目进度安排,下列说法中正确的是( D )A.能够反映多个任务之间的复杂关系B.能够直观表示任务之间相互依赖制约关系C.能够表示哪些任务是关键任务D.能够表示子任务之间的并行和串行关系9.程序的三种基本控制结构是( B )A.过程、子过程和分过程B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移10.软件生存周期中时间最长的是( D )阶段A.总体设计B.需求分析C.软件测试D.软件维护11.为使得开发人员对软件产品的各个阶段工作都进行周密的思考,所以( C )的编制是很重要的。

A.需求说明B.概要设计C.软件文档D.测试计划12.软件部件的内部实现和外部可访问性的分离,是指软件的( C )。

A.继承性B.共享性C.封装性D.抽象性13.单元测试是发现编码错误,集成测试时发现模块的接口错误,确认测试是为了发现功能错误,那么系统测试是为了发现( C )错误。

A.接口错误B.编码错误C.性能、质量不合要求D.功能测试14.软件工程管理对软件项目的开发管理,即对整个软件( B )的一切活动的管理。

软件工程复习(有解析)

软件工程复习(有解析)

一、选择题1.在下列工具与环境中( C )属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个( D )模型。

A.静态单变量 B.动态单变量 C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,( C )属于面向软件产品修改。

A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是( D )A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括( B )A.效率B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。

A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括( B )A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是( B )A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为( A )A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是( D )A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是( B )A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是( B )A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移13.在详细设计阶段,经常采用的工具有( A )A.PAD (问题分析图) B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的( C )A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解( A )A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是( D )A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF图反映系统( D )A.怎么做 B.对谁做 C.何时做D.做什么18.经济可行性研究的范围包括( C )A.资源有效性 B.管理制度C.效益分析 D.开发风险19.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出( B )的回答。

软件工程基础(复习题及答案)

软件工程基础(复习题及答案)

复习题一、判断题(每题2分,共30分)1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。

(对)2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

(错)语言编译器是一个CASE工具。

(对)。

4.软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。

(错)5.软件模块之间的耦合性越弱越好。

(对)6.数据库设计说明书是一个软件配置项(对)7.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。

(错)8.过程描述语言可以用于描述软件的系统结构。

(错)9.如果通过软件测试没有发现错误,则说明软件是正确的。

(错)10.快速原型模型可以有效地适应用户需求的动态变化。

(对)11.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

(对)12.集成测试主要由用户来完成。

(错)13.确认测试计划应该在可行性研究阶段制定(错)14.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

(错)15.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。

(对)16.在可行性研究中最难决断和最关键的问题是经济可行性。

(╳)17.耦合是指一个模块内各个元素彼此结合的紧密程度。

(╳)18. 一笔交易、一个动作、甚至操作人员按一个按钮都可以看做是一次事物。

(√)19.概要设计阶段完成的主要文档是概要设计说明书。

(√)20.过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。

(╳)21.程序设计语言中应绝对禁止使用GOTO语句。

(╳)22.类是关于对象性质的描述,由方法和数据组成。

(√)23.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。

(√)25.为保证程序的安全,必须做到程序中没有任何错误存在,即容错。

软件工程复习题

软件工程复习题

软件工程复习题一、单选题(20 分)第一组: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. 消息11. 软件测试是为了()而执行程序的过程。

A .纠正错误 B. 发现错误 C. 避免错误 D. 证明正确12. 在结构化分析方法中,()表达系统内部数据运动的图形化技术。

A .数据字典 B. 实体关系图 C.数据流图 D. 状态转换图13. 软件工程的基本要素包括方法、工具和()。

软件工程 复习题解析

软件工程 复习题解析

软件工程复习题一、单选题(20分)第一组: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.消息11.软件测试是为了()而执行程序的过程。

A.纠正错误 B.发现错误 C.避免错误 D.证明正确12.在结构化分析方法中,()表达系统内部数据运动的图形化技术。

A.数据字典 B.实体关系图 C.数据流图 D.状态转换图13.软件工程的基本要素包括方法、工具和()。

A.过程 B.软件系统 C.硬件环境 D.人员14.TURBO PASCAL是()软件。

A.系统软件 B.人工智能 C.事务软件 D.应用软件15、选择结构的复杂性比顺序结构的复杂性要()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.什么是软件工程?他的基本原理是什么?1)软件工程是指导计算机软件开发和维护的工程学科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,经济地开发出高质量的软件并有效地维护它。

2)用分阶段的生命周期计划严格管理、坚持进行阶段评审、实行严格的产品控制、采用现代程序设计技术、结果应能清楚的审查、开发小组的人员应该少而精、承认不断改进软件工程实践的必要性。

2. 是什么导致了软件工程?主要是软件危机的出现导致了软件工程3. 通常我们所见的软件工程模型有哪些?瀑布模型、快速原型模型、增量模型(渐增模型)、螺旋模型、喷泉模型。

21.软件危机的现象:1)经费超出预算,项目一再拖延。

2)不重视需求,开发的软件不能满足用户的要求,项目成功率低。

3)没有规范的软件工程方法,软件可维护性差,软件质量差,可靠性差。

3)开发工具落后,手工方式,开发效率低。

22.软件工程的三要素1)“过程”是软件产品加工所经历的一系列有组织的活动,保证能够合理、高质量开发出软件。

2)“方法”为软件开发提供“如何做”的技术。

它涵盖了项目计划、需求分析、系统程序()实现、测试与维护灯一系列活动的做法。

3)“工具”可为过程和方法提供自动的或半自动的支持。

这些工具既包括软件,也包括硬件,软件工具包括编程、建模、管理等开发工具。

通过网络环境把这些软件工具集成起来搭建一个能够支持团队开发的平台,称为计算机辅助软件工程,即CASE。

CASE集成了软件、硬件和()存放开发过程信息的软件工程数据库,形成了一个软件工程环境。

23.简述软件工程的目标,过程和原则1)目标、过程和原则是一切工程的三维框架,,这里是以工程的观点来看待软件开发。

软件工程的目标:降低成本,及时交付高质量的软件产品。

实现目标的过程即完成产品加工的过程:包括:基本过程、支持过程和组织过程进行过程应遵守的原则:原则就是过程中的轨道约束,包括:选取适宜的开发范型、适合的设计方法、提供高质量的工程支持、重视开发过程的管理。

24.对比瀑布模型,原型模型,增量模型和螺旋模型1)瀑布模型:主要体现了分阶段、有控制的思想。

活动间强调按顺序、文档化;存在的问题是过于理想化,每一步的工作必须完整准确,否则无法进行下一步工作2)原型模型:需求分析入手快速、表达直观、容易交流。

重点解决瀑布模型的需求分析入手难的问题。

3)增量模型:对于需求复杂的系统,采用分块开发、逐步集成的开发策略。

增量体现了演进、迭代思想,每一块就是一个增量。

每个增量试一次迭代。

增量模型的新版本叫做“极限编程(XP)”。

4)螺旋模型:融合了上述3种模型,融进了循环往复、强化了演进迭代的思想,增加了风险控制环节。

但是,风险分析的正确性是左右软件演进的关键因素。

25. 当需求不能一次搞清楚,且系统需求较复杂时应选用什么模型?开发模型不是孤立或排斥的,他们之间需要相互借鉴和参考。

螺旋模型是一种综合性的模型,适合于鼻尖复杂的系统。

26.XP(极限开发)是一种什么样的模型?XP是现代版的增量模型,特点是你客户参与、适应变化、测试驱动、以代码为核心。

实行XP的条件如下。

1)企业具有较高的能力成熟度,具有团队开发环境和配套的测试工具。

2)软件结构是开放的,增量可随意整合。

3)开发团队拥有“系统隐喻”。

27.敏捷方法的核心价值观有哪些?它对传统方法的”反叛“体现在哪些方面?1)①注重个人与交互②重点关注可以工作的软件。

③提高客户参与程度。

④以积极的心态响应需求变化。

敏捷联盟强调的价值观是这一流派的核心。

认识受价值观驱使的,敏捷项目管理因而也是以价值观为推动力的。

一个团队可以采用敏捷做法,但如果它不接受敏捷价值观,它将不能得到敏捷方法的潜在好处。

2)敏捷方法对传统方法的”反叛“体现在以人为中心,不再依靠文档来控制过程,认为传统过程过于僵化、文档繁烦,主张对传统过程瘦身,在上述价值观的支配下,做到能够为准28.简述CMM(成熟度等级)软件过程成熟度的5个级别,以及每个级别对应的标准。

1)初始级的软件过程是无秩序的,它几乎处于无步骤可循的状态。

管理是随机的,软件产品的成功往往取决于个人。

2)可重复级,已建立了基本的项目管理过程,对成本、进度和功能特性进行跟踪,并且在借鉴以往经验的基础上制定了必要的规范。

3)已定义级,用于管理和工程两个方面的过程均已文档化、标准化,并形成了整个软件组织的标准软件工程。

所有项目均使用经过批准、裁剪的标准软件过程来开发和维护软件。

4)已管理级的软件过程和产品质量有详细的度量标准并且得到了定量的认证和控制。

5)优化级的软件过程可以通过量化反馈和先进的新思想、新技术来不断地、持续性的过程改进。

29.RUP(统一过程)包含了那些核心工作流和那些核心支持工作流。

1)核心工作流包括:业务建模、需求、分析与设计、实现、测试、部署。

2)支持工作流包括:配置与变更管理、项目管理、环境。

30.如何进行结构化需求分析,其建模方法有哪些?5. 传统方法学-结构化分析中,有哪几个主要步骤?每个步骤应该要做什么?画什么图?怎么画?1)建立当前系统的”具体模型“:体统的”具体模型“就是现实环境的真实写照,这样到达与当前系统完全对应,用户容易理解。

2)抽象出当前系统的逻辑模型:分析系统的”具体模型“,抽象出其本质的因素,获得当前系统的”逻辑模型“。

3)建立目标系统的逻辑模型:分析目标系统与当前系统逻辑上的差别,从而进一步明确目的系统”做什么“,建立目标系统的“逻辑模型”。

4)为了对目标系统进行完整的描述,还需要考虑人机界面和其他一些问题。

建模方法:数据流图、实体关系、控制流图、状态转换图。

31.为什么说需求过程是一个迭代过程?由于人们对客观事物的认识是不断深化,因此需求过程是一个迭代过程,每次迭代都可提供更高质量和更详细内容的软件需求。

这种迭代会给项目带来一定的风险,上一次迭代的设计实现可能会因为需求不足而被推翻。

32.简述可行性研究所研究的问题。

1)经济可行性:进行成本/效益分析那个。

从经济角度判断系统开发是否“合算“。

2)技术可行性:进行技术风险评价。

从开发者的技术实力、以往工作基础、问题的复杂性出发,判断系统开发在实践、费用等限制条件下成功的可能性。

3)法律可行性:确定系统开发可能导致的任何侵权、妨碍和责任。

4)方案的选择:评价系统或产品开发的几个可能的候选方案,最后给出结论意见。

33.简述数据流图的作用。

数据流图的作用:数据流图可以用来抽象地表示系统或软件。

从信息传递和加工的角度它以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。

因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立其系统或软件的功能模型。

34.简述数据字典的作用!数据字典的作用:分析建模种包含了对数据对象、功能和控制的表示。

在每一种表示中数据对象和控制项都扮演一定的角色。

为表示每个数据对象和控制项的特性,建立了数据词典。

数据词典精确地、严格地定义了每一个与系统相关的数据元素,并以字典式顺序将它们组织起来,使得用户和分析员对所有的输入、输出、存储成分和中间计算有共同的理解。

35.简述在软件设计的过程中需要遵循的规则。

模块化、抽象化、逐步求精和信息隐藏。

36.为什么说“高内聚、低耦合”的设计有利于提高系统的独立性?内聚和耦合往往密切相关,模块的高内聚通常意味着低耦合。

低耦合因为模块之间的耦合成都越低,相互影响就越小,发生异常后产生连锁反应的概率就越低;在修改一个模块是,低耦合的系统就可以把修改范围尽量控制在最小的范围内;对一个模块进行维护是,其他模块的内部程序的正常运行不会受到较大的影响。

37.简述界面设计应该遵循的原则。

1)置界面与用户控制之下:以不强迫用户进入不必要的或不希望的动作的方式来定义交互模式;提供灵活的交互;允许用户交互可以被中断和撤销;当技能级别增长时可以使交互流水化并允许定制交互;使用户隔离内部技术细节;设计应允许用户和出现在屏幕上的对象直接交互。

2)减少用户的记忆负担:减少对短期记忆的要求;建立有意义的缺省;定义直觉性的捷径;界面的视觉布局应该基于真实世界的阴雨;以不断进展的方式解释信息。

3)保持界面一直;允许用户将当前的任务放入有意义的语境;在应用系列内保持一致性;如果过去的交互模式已经建立起了用户期望,不要改变它,除非有不得已的理由。

4. 传统方法学中,分几个主要步骤?结构化分析,结构化设计,结构化实现。

6. 传统方法学-结构化设计的概念和原理是什么?模块化、抽象、逐步求精、信息隐藏。

7. 传统方法学-结构化设计有哪些启发规则?改进软件结构提高模块独立性,模块规模应该始终,深度、宽度、扇出和扇入都应适当,模块的作用域应该在控制域之内,力争降低模块接口的复杂程度,设计单入口单出口模块,模块功能应该可以预测8. 传统方法学-结构化设计有哪几个主要步骤?每个步骤要做什么?需要绘制哪些图形图表,怎么画?1)分析并确定输入数据和输出数据的逻辑结构,并用Jackson图庙会这些数据结构。

2)找出输入数据结构和输出数据结构中有对应刮泥的数据单元。

3)秒回数据结构的Jackson头到处描绘成结构的Jackson图。

怎么画:1)为每对有对应关系的数据单元,按照它们在数据结构图中的层次在程序结构图等响应层次化一个处理框。

2)根据输入数据结构中剩余的每个数据单元所处的层次,在程序结构图的相应层次分别为他们画上对应的处理框3)根据输出数据结构中剩余的每个数据单元所处的层次,在程序结构图的相应层次分别为它们画上对应的处理框。

4)列出所有操作和条件,并且把它们分配到程序结构图的适当位置。

5)用伪码表示程序。

9. 传统方法学-结构化设计中,什么是面向数据流的设计方法?面向数据流的设计方法就是通常所说的结构化设计方法。

它是以数据流图为基础,将DFD变换成软件结构的不同映射方法,以软件结构图(SC图)的形式表现。

SC图描述软件系统的层次和分块结构的关系,体现模块与模块之间的联系与通讯,从而表达软件的体系结构。

10. 传统方法学-结构化实现中,所涉及到的测试有哪些?有哪些策略?以及测试有哪几个基本步骤?1)测试基本步骤:单元测试、集成测试、确认测试、(高级测试)。

2)策略:逻辑覆盖(语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖)、控制结构测试(基本路劲测试、条件测试、数据流测试、循环测试)。

11. 面向对象方法学中,其核心是对什么进行分析?对象。

12. 面向对象的基本概念是什么?对象,类,(实例,消息,方法,属性,)封装,继承,多态(重载)。

13. 与传统方法学相比,面向对象方法的区别是什么?1)符合人类的思维习惯2)可复用性好。

相关文档
最新文档