ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:873.86KB ,
资源ID:9043123      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9043123.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(江苏大学软件工程复习题.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

江苏大学软件工程复习题.docx

1、江苏大学软件工程复习题一、判断题1.软件就是程序,编写软件就是编写程序。(F)2.软件危机的主要表现是软件需求增加,软件价格上升。(F) 3.软件工程学科出现的主要原因是软件危机的出现。(T) 4.与计算机科学的理论研究不同,软件工程是一门原理性学科。(F)一、判断题1.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。(F)2.原型化开发方法包括生成原型和实现原型两个步骤。(F) 3.软件过程改进也是软件工程的范畴. (T) 4.在软件开发中采用原型系统策略的主要困难是成本问题。(F)一、判断题1.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。(F )2.

2、需求分析的主要目的是解决软件开发的具体方案. (F ) 3.需求规格说明书描述了系统每个功能的实现. ( F ) 4.非功能需求是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。(T )5.需求评审人员主要由开发人员组成,一般不包括用户. (F ) 6.分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。( F) 7.信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是 E-R图. ( T ) 8.用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、 完整性、现实性和有效性。(T)9.需求分析是开发方的工作,用户的参与度不大。

3、(F)一、判断题1软件设计说明书是软件概要设计的主要成果。 (F)2.软件设计中设计复审和设计本身一样重要,其主要作用是避免后期付出高代价(T)3. HIPO法既是需求分析方法,又是软件设计方法。(T) 4.划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。(F) 5. SD法是一种面向数据结构的设计方法,强调程序结构与问题结构相对应。(F) 6.判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。(F) 7.模块独立要求高耦合低内聚。(F)一、判断题1.程序设计语言是指编程时表现出来的特点、习惯、逻辑思维等。(F)2.进行程序设计语言的选择时伞,首先考虑的是应用领域

4、。 (T)3.好程序的一个重要标准是源程序代码的逻辑简明清晰、易读易懂。(T) 4.软件测试的目的是尽可能多地发现软件中存在的错误,将它作为纠错的依据。(T) 5.测试用例由输入数据和预期的输出结果两部分组成。(T)6.白盒测试是结构测试,主要以程序的内部逻辑为基础设计测试用例。(T) 7.软件测试的目的是证明软件是正确的。(F) 8.单元测试通常应该先进行人工走查,再以白盒法为主,辅以黑盒法进行动态测试。 (T)9.白盒测试法是一种静态测试方法,主要用于模块测试。(F)10.在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。(F)11.发现错误多的模块,残留在模块中的错误

5、也多。(T)一、判断题1.代码行技术是比较简单的定量估算软件规模的方法。(T)2.功能点技术依据对软件信息域特性和软件复杂性的评估结果,估算软件规模.(T) 3.常用的制定进度计划的工具主要有Word和ExCel两种。(F)一、 判断题1. 民主制程序员组的一个重要特点是,小组成员完全平等,享有充分民主,通过协商做出技术决策。(T)2. 主程序员组的两个特性是专业化和层次性。(T)3. 现代程序员祖中,技术组长既对技术工作负责,又负责非技术事务。(F)一、判断题1.风险有两个显著特点:一个是不确定性,另一个是损失.(T)2.回避风险是指:风险倘若发生,就接受后果。(F) 3.软件质量保证的措施

6、主要有,基于非执行的测试(也称为复审)、基于执行的测试和程序正确性证明。(T)一、判断题1.总体上说,软件工程文档可以分为用户文档、开发文档和管理文档3类。(T)2.文档是影响软件可维护性的决定因素。(T ) 3.适应性维护是在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些 要求而对软件进行修改,使之在功能和性能上得到完善和增强的活动。(F )4.进行软件维护活动时,直接修改程序,无需修改文档。(F)5.软件生命周期最后一个阶段是书写软件文档。(F)二、选择题 1.在下列选项中,(D )不是软件的特征。 A.系统性与复制性 B.可靠性与一致性 C.抽象性与智能性 D.有形性与

7、可控性 2.软件危机的主要原因是(D )。 A.软件工具落后 B.软件生产能力不足 C.对软件的认识不够 D.软件本身的特点及开发方法 3.下列说法中正确的是( B)。 A. 20世纪50年代提出了软件工程概念 B. 20世纪60年代提出了软件工程概念C. 20世纪70年代出现了客户机/服务器技术 D. 20世纪80年代软件工程学科达到成熟 4. (C)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。 A.软件生命周期 B.软件测试 C.软件工程 D.软件过程 5.在下列选项中,( A)不属于软件工程学科所要研究的基本内容。 A.软件工程材

8、料 B.软件工程目标 C.软件工程原理 D.软件工程过程 6.软件工程的三要素是(C )。 A.技术、方法和工具 B方法、对象和类 C.方法、工具和过程 D.过程、模型和方法7.用来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具通常也称为(D )工具。 A. CAD B. CAI C. CAM D. CASE 二、选择题 1.软件生命周期模型不包括(B )。 A.瀑布模型 B用例模型 C.增量模型 D.螺旋模型 2.包含风险分析的软件工程模型是( D)。 A.喷泉模型 B.瀑布模型 C.增量模型 D.螺旋模型 3.软件过程是(C )。 A.特定的开发模型 B一种软件求

9、解的计算逻辑 C.软件开发活动的集合 D.软件生命周期模型4.软件工程中描述生命周期的瀑布模型一般包括计划、需求分析、设计、编码、( D )维护等几个阶段。 A.产品发布 B.版本更新 C.可行性分析 D.测试 5.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C )。 A.分析阶段 B.设计阶段C.编码阶段D.测试阶段 6.增量模型本质上是一种(C )。 A.线性顺序模型B.整体开发模型C.非整体开发模型D.螺旋模型 7.螺旋模型综合了(B )的优点并增加了风险分析。 A.增量模型和喷泉模型 B.瀑布模型和演化模型 C.演化模型和

10、喷泉模型 D.原型模型和喷泉模型 8.CMM模型将软件过程的成熟度分为5个等级。在( B)使用定量分析来不断地改进和管理软件过程.A.管理级 B.优化级 C.定义级 D.可重复级 二、选择题 1.需求工程的主要目的是(C )。 A.系统开发的具体方案 B.进一步确定用户的需求 C.解决系统是做什么的问题 D.解决系统是如何做的问题- 2.需求分析的主要方法有( C)。 A.形式化分析方法 B. PAD图描述 C.结构化分析方法 D.程序流程图 3. SA法的主要描述手段有(B )。 A.系统流程图和模块图 B. DFD图、数据词典、加工说明 C.软件结构图、加工说明 D.功能结构图、加工说明

11、4.画分层DFD图的基本原则有( C )。 A.数据守恒原则 B.分解的可靠性原则 C.子、父图平衡的原则 D.数据流封闭的原则 5.在E-R模型中,包含以下基本成分(D )。 A.数据、对象、实体 B控制、关系、对象 C.实体、关系、控制 D.实体、属性、关系 6.在下面的叙述中哪一个不是软件需求分析的任务?(C ) A.问题分解B.可靠性与安全性要求 C.结构化程序设计 7.需求规格说明书的作用不应包括(D )。 A.软件设计的依据 B.用户与开发人员对软件要做什么的共同理解 C.软件验收的依据D.软件可行性研究的依据 8.软件需求规格说明书的内容不应该包括( B)。 A.对重要功能的描述

12、 B对算法的详细过程描述 C对数据的要求 D.软件的性能 9.软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合 编写需求分析文档以及(C )。 A.总结 B.阶段性报告 C.需求分析评审 D.以上答案不正确 10.下述任务中,不属于软件工程需求分析阶段的是(D )。 A.分析软件系统的数据要求 B.确定软件系统的功能需求 C.确定软件系统的性能要求 D.确定软件系统的运行平台 11进行需求分析可使用多种工具,但(B )是不适用的。 A.数据流图 B. PAD图 C.状态转换图 D.数据词典 12.在需求分析之前有必要进行(B )工作。 A.程序设计 B.可行性分析 C.

13、ER分析 D. 2NF分析 l3数据流图是进行软件需求分析的常用图形工具,其基本图形符号是(C )。 A.输入、输出、外部实体和加工 B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体 D.变换、数据存储、加工和数据流 14.在结构化分析方法中,用以表达系统内数据的运动情况的工具是( A )? A.数据流图 B.数据字典 C.结构化语言 D判定表与判定树 二、选择题1.为了提高模块的独立性,模块之间最好是(C )。 A.公共环境相合 B控制祸合 C.数据搞合D.特征耦合2.在面向数据流的软件设计方法巾,一般将信息流分为( D)。 A.数据流和控制流 B.变换流和控制流 C事务流和

14、控制流 D.变换流和事务流 3.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的(A) A.内聚性和祸合性 B.局部化和封装化C.抽象和信息隐藏 D.逐步求精和结构图 4.模块的独立性是由内聚性和耦合性来度量的,其中内聚性是(C) A.模块间的联系程度 B.信息隐藏程度 C.模块的功能强度 D.接口的复杂程度 5.当算法中需要用一个模块去计算多种条件的复杂组合,并根据这些条件完成适当的功能时,从供选择的答案中,选出合适的描述工具。(D ) A.程序流程图 B. N-S图 C. PAD图 D.判定表6.面向数据流的软件设计方法可将( C)映射成软件结构。 A.控制结构 B.模

15、块 C.数据流 D. 事物流7. JaCkson方法根据(C )来导出程序结构。 A.数据流图 B.数据间的控制结构 C.数据结构 D. IPO图二、选择题 1.程序语言的特性包括(B )。 A.习惯特性 B.算法特性 C.工程特性 D.技术特性 2.软件实现是软件产品由概念到实体的一个关键过程,它将(A )的结果翻译成用某种程序设计语言编写的并且最终可以运行的程序代码。虽然软件的质量取决于软件设计,但是规范的程序设计风格将会对后期的软件维护带来不可忽视的影响。 A.软件设计 B.详细设计 C.架构设计 D.总体设计 3.成功的测试是指运行测试用例后( A)。 A.发现了程序错误 B.未发现程

16、序错误 C.证明程序正确 D.改正了程序错误 4.白盒测试法是根据程序的( B)来设计测试用例的方法。 A.输出数据 B.内部逻辑 C.功能 D.输入数据 5.软件的集成测试工作最好由(C )承担,以提高集成测试的效果。 A.该软件的设计人员 B.该软件开发组的负责人 C.不属于该软件开发组的软件设计人员 D.该软件的编程人员 6.黑盒测试是从(C )观点的测试白盒测试是从( )观点的测试。 A.开发人员、管理人员 B.用户、管理人员 C.用户、开发人员 D.开发人员、用户 7.软件测试可能发现软件中的( )但不能证明软件(D )。 A.所有错误、没有错误 B.设计错误、没有错误 C.逻辑错误

17、、没有错误 D.错误、没有错误 8.软件测试的目的是(D )。 A.证明软件的正确性 B.找出软件系统中存在的所有错误C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误9.使用白盒测试方法时确定测试数据应根据( A)A.程序的内部逻辑 B.程序的复杂度C.程序的难易程度 D.程序的功能 10.黑盒测试方法根据(B )设计测试用例。 A.程序的词用规则 B.软件要完成的功能C.模块间的逻辑关系 D.程序的数据结构11.在软件测试中,逻辑覆盖标准主要用于(A) A.白盒测试方法 B.黑盒测试方法C.灰盒测试方法 D.回归测试方法12.集成测试的主要方法有两个,一个是( C ),一个是(

18、 )。A.白盒测试方法、黑盒测试方法 B等价划分法,边缘分析方法值C.渐增式测试方法、非渐增式测试方法 D.因果图方法、错误推测方法13.验收测试的任务是验证软件的(D )。 A.可靠性 B.正确性 C.移植性 D.有效性 14.软件测试的目的是尽可能发现软件中的错误,通常(D )是代码编写阶段可进行的测试,它是整个测试工作的基础。 A.集成测试 B.系统测试 C.验收测试 D.单元测试二、选择题1.(B )的作用是为有效地定量地进行管理,把握软件工程过程的实际情况和它所产生的产品质量。 A.估算 B.度量 C风险分析 D.进度安排 2. LOC和FP是两种不同的估算技术,但两者有许多共同的特

19、征,只是LOC和FP技术对于分解所需要的(A )不同。 A.详细程度 B.分解要求 C.使用方法 D.改进过程 二、选择题1项目团队原来有6个成员,现在又增加了6个成员,这样沟通渠道增加了多少?(A)A.4.4倍 B.2倍 C.6倍 D.6条2.Mantei提出了3种通用的项目组织方式:民主分权式、控制分权式、(D)A.启发式 B.归纳式 C.总结式 D.控制集权式二、选择题1.下列哪项不是风险管理的过程(D ) ? A.风险规划 B.风险识别 C.风险评估 D.风险收集 2.按照软件配置管理的原始指导思想,受控制的对象应是( C)。 A.软件过程 B.软件项目 C.软件配置项 D.软件元素3

20、.下列哪项不是人们常用的评价软件质量的4个因素之一( D) A.可移植性 B.可靠性 C.可维护性 D.易用性二、选择题1.在软件维护的内容中,占维护活动工作量比例最高的是(B )。 A.纠错性维护 B.适应性维护 C.预防性维护 D.完善性维护 2.使用软件时提出增加新功能就必须进行(C )维护。 A.预防性 B.适应性 C.完善性 D.纠错性 3.软件维护的副作用是指(C )。 A.运行时误操作 B.隐含的错误 C.因修改软件而造成的错误 D.开发时的错误 4.软件文档是软件工程实施的重要成分。它不仅是软件开发各阶段的重要依据,而且也影响软件的( B)。A.可用性 B.可维护性 C.可扩展

21、性 D.可移植性 5.影响软件可维护性的主要因素不包括( C)。 A.可修改性 B.可测试性 C.可用性 D.可理解性 第一章1. 与计算机硬件相比,计算机软件有哪些特点?软件的特点如下。无法直接观察计算机软件的物理形 态,只能通过观察它的实际运行情况来了解它的功能、特性和质量等。人们在分析、设计、开发、测试软件产品,以及在软件开发项目的管理过程中,渗透了大量的脑力劳动。不存在像硬件- -样的磨 损和老化现象,但存在着缺陷维护和技术更新的问题。软件的开发和运行必须依赖于特定的计算机系统环境。具有可复用性。3.什么是软件危机?什么原因导致了软件危机?软件危机的现象如下。经费超出预算,项目一再拖延

22、。不重视需求,开发的软件不能满足用户的要求,项目成功率低。没有规范的软件工程方法,软件可维护性差、软件质量差、可靠性差。开发工具落后,手工方式,开发效率低。所有导致软件危机的原因,都与软件本身的产品特点相关。软件是一一个复杂的逻辑产品。如果没有解决复杂问题的有效方法,以及软件产品的结构、质量、可维护性得不到保障,开发与维护费用就会持续升高。软件产品不能实现大规模复用,这导致了软硬件生产效率的不同。软件生产是脑力劳动,它看不见、摸不着,开发成本、开发周期等都无法做到准确估算,生产过程不易控制。软件成本主要是由研发成本构成;而硬件的生产成本主要是材料和制造成本,分摊的研发成本很少,即软件研发过程与

23、硬件制造过程相比要复杂得多。5.请简述软件工程研究的内容软件工程研究的内容包括软件开发方法、软件开发模型、软件支持过程和软件管理过程。软件开发方法的内容涵盖市场调研、正式立项、需求分析、项目策划、概要设计、详细设计、编程、测试、试运行、产品发布、用户培训、产品复制、销售、实施、系统维护、版本升级等。常用的软件开发模型有瀑 布模型、迭代模型、增量模型和原型模型等。软件支持过 程由所支持的CASE工具组成,常用的CASE工具有Power Designer和Rational Rose等。7.请简述软件工程的目标、过程和原则目标、过程和原则是一切工程的三维框架,这里是以工程的观点来看待软件开发。软件工

24、程的目标:降低成本、及时交付高质量的软件产品(高质量、高效率、高效益)。.实现目标的过程即完成产品加工的过程,包括:基本过程、支持过程和组织过程。进行过程应遵守的原则:原则就是过程中的轨道约束,包括:选取适宜的开发范型、采用合适的设计方法、提供高质量的工程支持、重视开发过程的管理。9.请简述现代软件工程与传统软件工程显著的区别和改进。传统的软件工程是基于结构化的软件开发方法,而现代软件工程是以面向对象技术为标志。不仅在编程技术上有很大的改进,而且在分析、设计等整个开发过程中,采用面向对象的思维方式,更加完整、自然地反映客观世界。采用架构技术,开发效率、产品质量得到了极大提高。更注重团队开发和管

25、理,融人更多、更新的管理理念和手段,如RUP模型、XP模型、过程改进、能力成熟度模型、配置管理等。第二章1.如何理解软件生命周期的内在特征软件产品的生命周期是指从设计该产品的构想开始,到软件需求的确定、软件设计、软件实现、产品测试与验收、投人使用以及产品版本的不断更新,再到最终该产品被市场淘汰的全过程。软件生命周期这个概念从时间的角度将软件的开发和维护的复杂过程分解为了若干个阶段,每个阶段都完成特定的相对独立的任务。由于每个阶段的任务相对于总任务难度会大幅度降低,因此在资源分配、时间把握和项目管理上都会比较容易控制。应该合理地划分软件生命周期的各个阶段,使各个阶段之间既相互区别又相互联系,为每

26、个阶段赋予特定的任务。3.当需求不能一次搞清楚,且系统需求比较复杂时应选用哪种开发模型比较合适?开发模型不是孤立或排斥的,它们之间需要相互借鉴和参考。螺旋模型是一种综合性的模型适和于较复杂的系统。5.XP是一种什么样的模型XP是现代版的增量模型,特点是客户参与、适应变化、测试驱动、以代码为核心。实行XP的条件如下。企业具有 较高的能力成熟度,具有团队开发环境和配套的测试工具。软件结构是开放的,增量可随意整合。开发团队拥有 “系统隐喻”。7.请简述软件过程软件过程就是软件产品的加工过程,其本质就是将“客观世界”映射(虚拟)到“计算机世界,即从抽象到具体的逐步细化过程。系统分析就是对客观世界的抽象

27、,中间要经过分析模型、设计模型的逐步细化(具体化),最终的具体结果就是计算机世界里的代码。9.请简述CMM的作用CMM的作用如下。CMM是评价软件组织开发能力(水平)的参考模型,是一种认证标准,认可软件工程达到的程度(如同评定职称的条件)。CMM是软件组织提升自身能力、走向成熟的参照系。它提供了走向成熟的阶梯目标,但并不提供走向目标的方法。CMM等级的提高依靠软件过程改进。CMM既是评估软件能力成熟度的模型,也起到了促进软件企业按照该模型设置的级别和关键过程域不断改进自己的软件过程的作用。11.假设你要开发一个软件,它的功能是把73624.9285开平方,所得到的结果应该是精确到小数点后四位。

28、一旦实现并测试完后,该产品将被抛弃。你打算选用哪种软件生命周期模型?请说明你做出这样选择的理由。对这个软件的需求很明确,实现开平方功能的算法也很成熟。因此,既无须通过原型模型来分析需求也无须用原型模型来验证设计方案。此外,- -旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了。第五章1.在选择编程语言时,通常要考虑哪些因素?在选择编程语言时,通常需考虑以下因素待开发系统的应用领域, 即项目的应用范围。用户的要求。软件开发人员的喜好和能力。系统的可 移植性要求。算法和数

29、据结构的复杂性。3.什么是调试?什么是测试?二者有何区别?调试( debug )指的是对模块的调试,是程序员交付可运行的代码模块所必须经历的工作。软件测试(test) 有如下特点。软件测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。不仅仅是测试程序, 还应该对开发过程中所有的产品进行测试,包括文档,其目的是为了尽早地、尽可能多地发现并排除软件中潜在的错误。5.请简述静态测试和动态测试的区别按照执行测试时是否需要运行程序,软件测试可以划分为静态测试和动态测试。静态测试以人工测试为主,通过测试人员认真阅读文档和代码,仔细分析其正确性、一致性及逻辑结构的正确性,从而找出软件产品

30、中的错误或缺陷。静态测试对自动化工具的依赖性较小,通过人脑的思考和逻辑判断来查找错误,因而可以更好地发挥人的主观能动性。与静态测试不同的是,动态测试需要通过实际运行被测程序来发现问题。测试人员可以输人一系列的测试用例,通过观察测试用例的输出结果是否与预期相符来检验系统内潜在的问题或缺陷。7.软件测试的目的是什么?测试的目的如下。测试是一个为 了发现程序中的错误为目的的程序执行过程。一个好的测试用例是能最大限度地找到迄今为止尚未发现的错误。成功的测试是能发现 了那些尚未发现的错误。9.什么是白盒测试?有哪些常用的白盒测试方法?白盒测试主要针对于程序内部逻辑和数据流程的测试,因此白盒测试的测试用例设计需要了解程序的内部逻辑。常用的白盒测试方法主要有逻辑覆盖法、基本路径测试法。#9.白盒测试主要针对于程序内部逻辑和数据流程的测试,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1