软件工程复习题

合集下载

软件工程复习题

软件工程复习题

软件工程习题课一.名词解释01.软件危机02.需求分析03.软件工程:04.黑盒测试法05.软件维护06.软件生存周期07.瀑布模型08.可行性研究09.数据流图10.数据字典11.软件体系结构12.冗余程序设计13.软件测试14.项目计划二.问答题1.计算机软件定义及特点?2.软件危机的表现?3.软件生存周期一般可分几个阶段,每个阶段的工作内容是什么?4.瀑布模型的特点是什么?5.可行性研究的内容?6.可行性研究应从那些方面进行研究,每一方面包含的内容是什么?7.需求获取的主要内容有哪几个方面?8. 需求获取的方法有哪些?9. 需求分析的目标是什么?10.需求分析做完以后得到的主要文档是什么?11. 需求分析存在的困难?12. 需求分析的原则?13. 需求分析的方法?14. 数据流图的特性?15. 数据流图基本符号及含义?16. 数据流图的用途?17. 数据流图画法(参考课堂实例)?18. 数据字典的作用?19. 数据字典中”= + [ ] {}()”的含义?20.概念性数据模型的含义及特点,最常用的表示概念性数据模型的方法?21. ER模型的基本成分及描述元素是什么22概要设计任务?23. 系统设计的原则?24. 软件体系结构的常见形式及特点?25. 评价模块设计优劣的三个特征因素及其含义?26. 界面的风格的含义?27. 系统结构图是SD(结构化设计)方法在概要设计中使用的主要表达工具,SD方法约定系统结构模块的表示符号是什么,各个模块之间调用的方法有哪些?28. DFD图如何映射到功能模块图?29. 需求分析的目标是什么?30.需求分析做完以后得到的主要文档是什么?31. 详细设计的工具及使用方法?32. 详细设计的原则?33. Jackson程序设计方法的特点?34. Jackson图表达基本结构和改进结构的用法?35. Jackson伪代码的含义与用法?36. 设计,编码和程序语言对程序的质量的影响?37. 程序设计语言分类及特点?38. 编码风格主要包含哪些内容?39. 结构化程序设计的目的是什么?40. 软件测试的基本方法?41. 软件测试的步骤?42. 软件维护的分类及含义?43维护的费用和代价计算方法?44. 项目计划的含义?45软件质量的影响因素?三.分析题分析一家公司的营销系统。

软件工程复习题

软件工程复习题

一、判断题1. 白盒法是一种静态测试方法,主要用于模块测试。

(× )2. 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

(× )3. 整体测试又称为逻辑覆盖测试,需要对系统模块的内部结构进行测试。

(×)4. 集成测试主要由用户来完成。

(×)5. 确认测试计划应该在可行性研究阶段制定(×)6. 软件工程过程应该以软件设计为中心,关键是编写程序。

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

( √)8. 瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。

(×)9. 结构化方法的工作模型是使用螺旋模型进行开发。

( Ⅹ)10. 螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。

( √)11. 信息隐蔽原则有利于提高模块的内聚性。

(√)12. 面向对象开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计。

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

( Ⅹ)14. SA法是面向数据流,建立在数据封闭原则上的需求分析方法。

( √)15. HIPO法既是需求分析方法,又是软件设计方法。

( √)16. 判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。

( Ⅹ)17. 需求分析的主要方法有SD法、OOA法及HIPO法等。

(Ⅹ)18. 用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。

(√)19. 分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。

( Ⅹ)20. 信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R 图。

( √)21. 划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。

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

(Ⅹ)23. JACKSON方法是以数据流、数据封闭性准则逐层分解的。

软件工程复习题

软件工程复习题

软件工程复习题一、单项选择题1.软件开发环境按解决的问题分类包含(A)A.程序设计环境B.工具箱环境C.基于方法的环境D.以语言为中心的环境2.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是(A)A.容错技术B.避开错误技术C.检测技术D.排错技术3.软件复杂性的常用度量方法包括(D)A.BOEHM度量法B.可扩充度量法C.线性度量法D.代码行度量法4.面向对象的要素包含(B)A.对象的唯一性B.抽象C.继承性D.分类性5.构造原型时,主要考虑(B)A.全部功能B.原型要体现的特征C.全部细节D.全部要求6.维护中,因修改文件的打开或关闭而引起的错误是(C)A.文档副作用B.数据副作用C.编码副作用D.设计副作用7.诊断和消除程序在使用过程中发生错误的过程称为(A)A.校正性维护B.适应性维护C.完善性维护D.预防性维护8.在白盒技术测试用例的设计中,以下覆盖标准中发现错误能力最强的是(C)A.语句覆盖B.判定/条件覆盖C.条件组合覆盖D.判定覆盖9.软件调试技术包括(A)A.回溯法调试B.循环覆盖调试C.边界值分析调试D.集成测试调试10.在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为(D)A.确认测试B.系统测试C.渐增式测试D.非渐增式测试11.源代码的可维护性表现了程序设计语言的(B)A.心理特性B.工程特性C.技术特性D.传统特性12.至今已有好几百种不同的高级语言,它们有的是用于数值计算,有的是用于商业管理,有的是用于编写系统软件。

以下语言中较适用于数值计算的语言是(D)A.BASIC B.SQLC.LISP D.FORTRAN13.在JSP方法中解决结构冲突的具体办法是(A)A.引入中间数据结构或中间文件B.删除某个输入数据结构C.删除某个输出数据结构D.增加某个输入或输出数据结构14.模块的内聚性可以按照内聚程度的高低进行排序,以下排列中属于从低到高....的正确次序是(C)A.偶然内聚,时间内聚,逻辑内聚B.通信内聚,时间内聚,逻辑内聚C.逻辑内聚,通信内聚,顺序内聚D.功能内聚,通信内聚,时间内聚15.以下软件生存周期的活动中,要进行软件结构设计的是(B)A.测试用例设计B.概要设计C.程序设计D.详细设计16.能够清楚地表示复杂的条件组合与应做的动作之间的对应关系的工具是(C)A.结构化语言B.PAD图C.判定表D.程序流程图17.需求分析方法必须能够表达和理解问题的数据域和(C)A.数据流B.用户类型C.功能域D.应用领域18.以用户需求为动力,以对象作为驱动的模型是(C)A.瀑布模型B.基于知识的模型C.喷泉模型D.增量模型19.把软件生产的全过程人为地划分为若干阶段使得软件人员能根据每一阶段的不同特点更好地组织和管理软件项目的开发,这种概念就是(D)A.软件项目管理B.软件工程C.软件项目计划D.软件生存期20.在软件生存期的各个阶段中跨越时间最长的阶段是(D)A.需求分析阶段B.设计阶段C.测试阶段D.维护阶段二、填空题1.软件设计的主要原则是模块独立性和信息隐藏。

软件工程(专升本)复习题答案

软件工程(专升本)复习题答案

软件工程(专升本)复习题答案一、选择题二、填空题1.耦合性2.数据字典3.扇入数4. 等价划分5.宽度优先策略6.输出结果7. 数据耦合8. F/(1+(n*i))9.在其他独立路径中未有过 10.数据流11. 模块独立性12. 数据存储13. 数据14. 详细设计15. 信息流动16. 经济17. 等价划分18. 输出结果三、简答题1.软件工程的定义。

软件工程是指导计算机软件开发和维护的一门工程学科。

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

2.软件生命周期具体包括哪些时期和阶段?每一时期和阶段的具体任务是什么?软件生命周期由软件定义、软件开发和运行维护(也称为软件维护)3个时期组成。

软件定义时期的任务是:问题定义、可行性研究和需求分析。

开发时期的任务是:总体设计,详细设计,编码和单元测试,综合测试。

其中前两个阶段又称为系统设计,后两个阶段又称为系统实现。

维护时期的主要任务是:使软件持久地满足用户的需要。

每个时期又进一步划分成8个阶段:问题定义-------要解决的问题是什么?可行性研究-----对于上一个阶段所确定的问题有行得通的解决办法吗?需求分析-------为了解决这个问题,目标系统必须做什么总体设计------概括地说,应该怎样实现目标系统?详细设计------应该怎样具体地实现这个系统呢?编码和单元测试-----写出正确的容易理解、容易维护的程序模块。

综合测试-------通过各种类型的测试(及相应的调试)使软件达到预定的要求。

软件维护------通过各种必要的维护活动使系统持久地满足用户的需要。

3.结构化设计中的逐步求精原理是什么?逐步求精:为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。

逐步求精方法的强大作用就在于,它能帮助软件工程师把精力集中在与当前开发阶段最相关的那些方面上,而忽略那些对整体解决方案来说虽然是必要的,然而目前还不需要考虑的细节,这些细节将留到以后再考虑。

软件工程复习题

软件工程复习题

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

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

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

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

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

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

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

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

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

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

( )11、在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。

( )12、在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。

( )13、软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。

( )14、模型是对现实的简化,建模是为了更好地理解所开发的系统。

( )15、UML语言支持面向对象的主要概念,并与具体的开发过程相关。

( )16、用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。

( )17、好的测试用例应能证明软件是正确的。

( )18、白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。

( )19、当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。

( )20、软件技术复审是由用户和测试人员实施的一种质量保证活动。

( )21、在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。

( )22、软件错误可能出现在开发过程的早期,越早修改越好。

( )23、不完善的系统定义往往是导致软件项目失败的主要原因。

软件工程-复习题

软件工程-复习题

《软件工程》复习题一、单项选择题1.螺旋模型是一种将瀑布模型和 _________ 结合起来的软件开发模型。

( )A. 增量模型B.专家系统C. 喷泉模型D. 变换模型2.UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。

消息序列可用两种图来表示,分别是(D)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.UML中有四种关系是:依赖,泛化,关联和()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.下面哪个不是UML中的静态视图()A.状态图 B. 用例图 C. 对象图 D. 类图13.()技术是将一个活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。

A. 泳道B. 分叉汇合C. 分支D. 转移14.软件生存期包括计划,需求分析和定义,(),编码,软件测试和运行维护。

《软件工程》复习题

《软件工程》复习题一、填空题1、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和_______ 。

2、按数据流的类型,结构化设计方法有两种设计策略,它们是变换型设计和___________。

3、风险管理包括了________、_______、____________和风险监控四个活动。

4、数据流图和数据字典共同构成了系统的_______模型,是需求规格说明书的主要组成部分.5、软件是包括程序,____及其___的完整集合。

6、为了便于对照检查,测试用例应由输入数据和预期的两部分组成。

7、可移植性指的是___________________________。

8、一般而言,单独测试某一模块时,要为它设计驱动模块和模块,它们的作用是分别模拟被测试模块的和。

9、G.J.Myers提出:软件测试是为了发现___________而执行程序的过程。

10、软件可行性研究从__________、__________、社会可行性三个方面分析研究每种解决方案的可行性。

11、数据流图用图形符号表示、、及外部实体。

12、在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是关系。

13、类具有操作,它是对象的抽象。

14、标志一个模块内各个元素彼此结合的紧密程度。

15软件总体设计时应该遵循模块化、抽象、、局部化和模块独立等6条基本原理。

16、为了便于对照检查,测试用例应由输入数据和预期的两部分组成。

17、将数据流图映射为程序结构时, 所用映射方法涉及信息流的类型。

其信息流分为和两种类型。

18、软件由程序、、组成。

19、软件工程方法分两类:方法和对象方法。

20、单元测试过程应为测试模块开发一个和(或)若干个。

21、一个模块拥有的直属下级模块的个数称为,一个模块的直接上级模块的个数称为。

22、维护阶段是软件生存周期中花费精力和费用______的阶段。

23、被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为。

软件工程期末考试复习题

一、1.软件产品的开辟主要是(D )。

A.复制B.再生产C.拷贝D.研制2.作坊式小团体合作生产方式的时代是(C )时代。

A.程序设计B.软件生产自动化C.程序系统D.软件工程3.软件工程与计算机科学性质不同,软件工程着重于( C )。

A.理论研究B.原理探讨C.建造软件系统D.原理的理论4.与计算机科学的理论研究不同,软件工程是一门( C )学科。

A.理论性B.原理性C.工程性D.心理性5.软件工程的浮现主要是由于( C )。

A.程序设计方法学的影响B.其它工程科学的影响C. 软件危机的浮现D.计算机的发展6.在软件工程项目中,不随参预人数的增加而使软件的生产率增加的主要问题是( D )A、工作阶段间的等待时间 B 、生产原型的复杂性C 、参预人员所需的工作站数D、参预人员之间的通信艰难7. 软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )A、硬件环境B、软件开辟的环境C、软件开辟工具和软件开辟的环境D、开辟人员的素质8、下列不属于软件工程方法学三要素的是( D ):A、方法B、工具C、过程D、操作1.将每一个模块的控制结构转换成计算机可接受的程序代码是( A )阶段的任务。

A.编码B.需求分析C.详细设计D.测试2.可行性研究的目的是决定( B )。

A.开辟项目B.项目值得开辟否C.规划项目D.维护项目3. 据国家标准GB8566-8计算机软件开辟的规定,软件的开辟和维护划分为八个阶段,其中组装测试的计划是在( C )阶段完成的?A.可行性研究和计划B.需求分析C.概要设计D.详细设计4、初步用户手册在( B )阶段编写。

A.可行性研究B.需求分析C.软件概要设计D.软件详细设计5. 在软件的可行性研究中,可以从不同的角度对软件的可行性进行研究,其中是从软件的功能可行性角度考虑的是(B )A、经济可行性B、技术可行性C、操作可行性D、法律可行性6. 瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。

软件工程复习卷(有答案)

一、填空题(每空1分,共20分)1.软件生存周期一般可以划分为,需求分析、____________、____________、_______________和维护。

2.软件管理主要包括软件生命周期中的__________、__________、____________和组织管理。

3.可行性研究,应从技术可行性、、操作可行性、和法律可行性等方面研究分析。

4.在软件系统边界确定方面,从接口方面考虑,主要考虑_________、____________、_____________和____________四个方面。

5.软件成本估计中已经发展有一些价格估算模型,公式为____________。

6.形式语言是一种符合化,规范化的语言。

其语义无__________。

7.规格说明书应该严格,精确,同时又要容易为用户和软件设计人员理解。

目前,普遍流行的有三种语言___________、____________、___________。

8.数据流图的基本四种成分:数据的源点和终点___________、___ 、和。

9.在软件详细设计中,过程细节说明工具有三种:图形工具、__________和语言工具。

10.软件程序测试技术通常分为静态测试和___________两种:后一种又可分为__________和__________。

11.动态分析方法的动态测试包括三部分______________、执行程序与_______________。

12.软件维护按维护的内容来分,分为四种类型的维护:_______________、________________、_________________和________________。

13.软件工程开发模型中的清洁房间模式的关键技术方法是结构化程序设计+ ______________ + 验证。

14._________现实世界的一个组成部分,被映像到软件域中。

选择:1.软件危机出现于____,为了解决软件危机,人们提出了用工程的原理来设计软件,这是软件工程诞生的基础。

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

《软件工程》课程复习资料一、单项选择题: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环形复杂度为()A.m-1B.mC.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.因计算机硬件和软件环境的变化而作出的修改软件的过程称为()A.完善性维护B.改正性维护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 图中描述系统结构的有()A.组件图B.顺序图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.下列属面向对象软件开发方法的有()A.LCP 方法B.OMT 方法C.IDEF0 方法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 的用例图中,扩展关系是一种()A.泛化关系B.依赖关系C.关联关系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.瀑布模型是一种()A.演化模型B.顺序模型C.增量模型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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1
.
软件工程自测题(一)
一、单项选择题
1. 软件危机具有下列表现
I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住III. 软件常常不可维护IV. 软件成本逐年上升
原因:用户要求不明确 缺乏正确的理论指导 软件开发复杂度越来越高
体现:软件开发进度难以预测 软件开发成本难以控制 产品功能难以满足用户需求 软件缺少适当的文件资料
2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是(运行和维护阶段)软件测试:工作量最大
3.软件的特点是(软件是一种逻辑实体,具有抽象性,在使用过程中没有磨损、老化的问题,不同于一般程序,它的一个显著特点是规模庞
大,复杂程度高)
4. 软件工程的出现是由于(计算机软件技术的发展)
5. 软件开发技术包含( 软件开发方法学、软件工程环境、软件工具)。
6. 软件工程的课程特点(I. 学科理论及其知识应用的多维性II. 工程化III. 浓厚的方法学色彩IV. 实践性、指导性强)。
8. 需求分析阶段最重要的技术文档是(需求规格说明书 )。
9.关于数据流图的说法有( 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储、数据流图是用作结构化分析的一种工具、
数据流图的绘制采用自上向下、逐层分解的方法)。
10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( 数据定义 )。
11. 需求分析阶段的研究对象是(用户要求)。
12. 结构化方法的基本原则是( 抽象与分解 )。
13. 耦合度最高的是( 内容 )耦合。耦合是模块之间相互连接的紧密程度的度量。联系紧密,耦合度越高,而模块间的独立性就越弱
14. 内聚程度较低的是(偶然)内聚。耦合的强弱取决于各个模块之间接口的复杂程度、调用模块的方式以及哪些信息通过接口。
15. 对一个程序来说,组成系统的模块数目( C ),则开发成本越小。
A. 越多 B. 越少 C. 顺序 D. 时间
16. 画软件结构图时应注意调用关系只能是(从上到下 )。
17. 程序流程图中的箭头代表(控制流)。
18. 软件测试是软件质量保证的重要手段,下述(单元测试)是软件测试的最基础环节。
19. 软件测试方法中,黑盒测试法主要用于测试(软件外部功能 )。
20. 软件测试是软件质量保证的主要手段之一,测试的目标是(发现软件中的错误和缺陷)。
21. 选择程度设计语言的关键因素是(算法和数据结构)。
二、填空题
1. 计算机软件不仅仅是程序,还应该有一整套 文档 。
2. 传统的软件生存期模型是 瀑布模型 。
3. 软件按照功能的不同可以划分为3大类型 系统软件 、 支持软件 和 应用软件 。
4. 与程序流程图相比,盒图没有 箭头 ,因此不允许随意转移控制。
5. 好的测试方案 是极可能发现了迄今为止尚未发现的错误的测试方案。
三、判断题(正确的划“√”,不正确的划“×”)
软件测试只能证明程序有错误,不能证明程序没有错误。(T)
在软件的开发过程中,工作量最大的一个阶段应是测试阶段。
一般说来,模块的内聚程度越高,它们之间的耦合程度也就越低。
2

结构化程度设计方法能改善程序结构,但往往会降低程序的运行效率。
对于特定的程序而言,满足条件覆盖的测试数据不一定必然满足判定覆盖。
四、综合题
1. 求100~1000间的素数。请画出描述该问题的N-S图。

2. 将下列数据流图转换为控制结构图。
3. 已知有如下程序段:
begin
p1;
if C1
then while C2
do p2
else p3;
while C3 do
begin p4;
if C4
then p5
else p6
end;
p7;
3

if C5
then repeat p8 until c6
else p9;
end
(1) 请用PAD图描述;

(2)
(3) 请用程序流程图描述。

相关文档
最新文档