软件工程导论试题(打印)(1)

合集下载

《软件工程导论》参考答案

《软件工程导论》参考答案

参考答案(范村长下载的)第1章一、选择题1. D2. C3. B4. D5. B6. A7. D二、填空题1. 程序文档数据2. 抽象模块化信息隐蔽局部化一致性完备性可验证性3. 问题定义可行性研究需求分析4. 软件生命周期模型顺序性依赖性5. 制定计划风险分析实施工程客户评价6. 结构化分析结构化设计结构化程序设计数据流自顶向下,逐步求精功能的分解与抽象三、思考题1. 答:软件产品是一种无形的逻辑产品,是人们脑力劳动的结晶。

软件产品只能以程序、数据和文档的形式出现。

其存储介质是磁盘、磁带或光盘。

通过计算机的执行才能体现出来。

与硬件产品的制造不同,软件产品的成本主要花在研制上,而产品的制造实质上是所开发产品的拷贝。

软件产品不会像硬件产品一样磨损,但仍然需要维护,而且维护的成本很高。

软件产品的开发主要靠脑力劳动,所以产品研制的成本很高,很难像硬件产品那样实现工业化生产。

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

概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件的日益增长的需求;如何维护数量不断膨胀的软件。

具体来说,软件危机主要有以下一些典型表现。

对软件开发成本和进度的估计常常很不准确。

用户对所交付的软件系统不满意的现象时有发生。

软件产品的质量往往靠不住。

软件常常是不可维护的。

软件文档资料通常不完整、不合格。

软件的价格昂贵,软件成本在计算机系统总成本中所占的比例逐年上升。

软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上日益增长的软件需求。

3. 答:软件工程的基本目标是在给定的成本、进度等条件下,开发出满足用户需求的软件产品。

简单来说,也就是要成功地建造一个大型软件系统。

软件项目的成功主要是要达到以下几个目标:付出较低的软件开发成本;达到用户所要求的软件功能;取得较好的软件性能;所开发的软件易于移植、可重用性好;需要较低的软件维护费用;能按时完成开发任务,及时交付使用;软件工程面临的主要问题是:软件费用、软件可靠性、软件维护、软件生产率和软件重用等。

软件工程导论复习试题库完整

软件工程导论复习试题库完整

a(1)在软件工程中,白盒测试法可用于测试程序的部结构。

此方法将程序看作是A)路径的集合B)循环的集合C)目标的集合D)地址的集合c(2)在下述哪一种测试中,测试程序的设计者必须接触到源程序I.功能测试Ⅱ.结构测试A)均不须B)只有ⅠC)只有ⅡD)Ⅰ和Ⅱa(3)检查软件产品是否符合需求定义的过程称为A)确认测试B)集成测试C)验证测试D)验收测试c(4)下述述中,哪一个不是软件健壮性的度量指标?A)失败后重新启动所需的时间B)引起失败的时间所占的百分比D)失败前的平均工作时间D)在一次失败中数据恶化的概率b(5)对软件是否能达到用户所期望的要求的测试称为A)集成测试B)有效性测试C)系统测试D)验收测试a(6)在面向数据流的软件设计方法中,一般将信息流分为A)变换流和事务流B)变换流和控制流C)事务流和控制流D)数据流和控制流d(7)软件需求说明书是软件需求分析阶段的重要文件,下述哪个(些)是其应包含的容I.数据描述Ⅲ.模块描述II.功能描述Ⅳ.性能描述A)ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅱ和ⅢD)Ⅰ、Ⅱ和Ⅳ(8)软件测试一般分为三类,即I.静态测试Ⅱ.动态测试Ⅲ.正确性测试设计测试用例对程序进行测试,应属于A)ⅠB)ⅡC)Ⅰ和ⅡD)Ⅲ(9)模块独立性是由聚性和耦合性来度量的,其中聚性是度量____,耦合性是度量____。

A)模块间联系程度B)模块的功能强度C)信息隐蔽程度D)模块的复杂程度(10)软件设计中一般将用到图形工具,下述哪种(些)工具可用作设计的图形工具I.结构图Ⅱ.实体关系图Ⅲ.IPO图II.Ⅳ.流程图Ⅴ.N-S图A)Ⅰ和ⅡB)Ⅲ和ⅣC)Ⅰ、Ⅲ、Ⅳ和ⅤD)全部A(2)C(3)A(4)C(5)B(6)A(7)D(8)B(10)C(11)试判断下列论述中哪个(些)是正确的I.软件系统中所有的信息流都可以认为是变换流II.软件系统中所有的信息流都可以认为是事务流III.事务分析和变换分析的设计步骤基本类似A)ⅠB)ⅡC)ⅢD)Ⅰ和Ⅲ(12)软件的有效性测试是验证软件的运行是否达到用户的期望,用户的期望应体现于A)详细设计报告B)软件需求说明书C)总体设计报告D)有效性测试要求(13)软件设计中的软件过程其主要描述的是A)模块间关系B)模块操作细节C)模块控制方法D)模块类型(14)软件测试是软件件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?I.预防软件发生的错误Ⅱ.发现改正程序错误Ⅲ.提供诊断错误信息A)只有Ⅰ均不须B)只有ⅡC)只有ⅢD)都是(15)软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?A)功能测试B)单元测试C)结构测试D)确认测试(16)软件维护是软件运行期的重要任务,下列维护任务中哪一类维护是软件维护的主要部分?A)完善性维护B)适应性维护C)改正性维护D)预防性维护(17)软件开发中常采的结构化生命周期方法,由于其特征而一般称其为A)瀑布模型B)对象模型C)螺旋模型D)层次模型(18)软件原型化开发方法有其基本步骤,下述I.获取基本需求Ⅱ.开发工作模型Ⅲ.严格细部说明Ⅳ.模型验证中,哪些(个)是实现原型化的最基本的步骤?A)全部都是B)Ⅰ,Ⅱ和ⅣC)ⅣD)Ⅰ和Ⅱ(19)软件设计将涉及软件的结构、过程和模块的设计,其中软件过程是指A)模块间的关系B)模块的操作细节C)软件层次结构D)软件开发过程(20)软件需求分析和设计过程中,其分析与设计对象可归结为两个主要的对象,即数据和程序,按一般实施的原则,对二者的处理应该是A)先数据后程序B)先程序后数据C)与顺序无关D)可同时进行(11)D(12)B(13)B(14)D(15)B(16)A(17)A(18)B(19)B(20)A(21)结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述I.结构化语言Ⅱ.判定树Ⅲ.判定表是常用的说明工具,其中便于对加工出现的组合条件的说明工具是A)Ⅱ和ⅢB)Ⅰ、Ⅱ和ⅢC)Ⅰ和ⅢD)Ⅰ和Ⅱ(22)软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是A)分析阶段B)设计阶段C)编码阶段D)测试阶段(23)加工是对数据流图中不能再分解的基本加工的精确说明,下述哪个是加工的最核心成分?A)加工顺序B)加工逻辑C)执行频率D)激发条件(24)构建一个原型不支持下述哪种功能?A)取代最终系统B)辅助收集软件需求C)辅助估计工程代价D)作为较大工程的基础(25)软件文档是软件的重要组成部分,也是软件开发阶段的基础,它还影响到软件的A)可复用性B)可维护性C)可扩展性D)可移植性(26)下列哪种描述是正确的?A)定义阶段产生软件需求规划B)测试在软件生命周期中是可选的C)CASE工具只能辅助软件生命周期的设计阶段D)后一阶段改变时,不需要更新以前所有阶段的文档(27)黑盒测试法和白盒测试法经常用于软件测试阶段,其中白盒测试法主要用于测试软件的A)结构合理性B)程序正确性C)程序外部功能D)程序部逻辑(28)软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是A)设计人员和用户B)分析人员和用户C)分析人员和设计人员D)编码人员和用户\(21)A(22)C(23)B(24)A(25)B(26)A(27)D(28)B(29)C(30)A(29)数据流图是用于软件需求分析的工具,下列元素I.数据流Ⅱ.加工Ⅲ.数据存储Ⅳ.外部实体(源或潭)哪些是其基本元素?A)Ⅰ,Ⅱ和ⅢB)Ⅰ和ⅢC)全部D)Ⅰ,Ⅲ和Ⅳ(30)数据字典(DD)是定义哪一种系统描述工具中的数据的工具?A)数据流程图B)系统流程图C)程序流程图D)软件结构图(31)软件需求分析一般应确定的是用户对软件的A)功能需求B)非功能需求C)性能需求D)功能需求和非功能需求(32)软件设计包括总体设计和详细设计两部分,下列述中哪个是详细设计的容?A)软件结构B)数据库设计C)制定测试计划D)模块算法(33)数据字典是对数据定义信息的集合,它所定义的对象都包含于A)数据流图B)程序框图C)软件结构D)方框图(34)软件设计中,设计复审是和设计本身一样重要的环节,其主要目的和作用是能A)减少测试工作量B)避免后期付出高代价C)保证软件质量D)缩短软件开发周期(35)程序设计语言的选择是顺利实施编程的重要基础,评价可用语言的因素甚多,而其首要的选择依据是A)语言的应用领域B)对语言的熟悉程度C)数据结构的复杂度D)算法的复杂度(36)软件开发的原型化方法是一种动态定义软件需求的方法,下述条件:I.成熟的原型化人员Ⅱ.快速的成型工具Ⅲ.需求了解的准确性哪个(些)条件是实施原型化方法所必备的?A)Ⅰ和ⅡB)Ⅱ和ⅢC)Ⅰ,Ⅱ和ⅢD)Ⅲ(37)软件的可维护性度量可分解为对多种因素的度量,下述各种因素I.可测试性Ⅱ.可理解性Ⅲ.可修改性Ⅳ.可复用性哪个(些)是可维护性度量的容?A)全部B)ⅠC)Ⅰ,Ⅱ和ⅢD)Ⅰ和Ⅱ(38)软件测试是软件开发过程中重要和不可缺少的阶段,其包含的容和步骤甚多,而测试过程的多种环节中基础的是A)集成测试B)单元测试C)系统测试D)验收测试(39)数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘制方法中,那些是常采用的?I.自顶向下Ⅱ.自底向上Ⅲ.分层绘制Ⅳ.逐步求精A)全是B)Ⅰ,Ⅲ和ⅣC)Ⅱ,Ⅲ和ⅣD)Ⅰ和Ⅲ(31)D(32)D(33)A(34)B(35)A(36)A(37)C(38)B(39)B(40)B(40)结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的A)控制流B)数据流C)程序流D)指令流(41)软件结构是软件模块间关系的表示,下列术语中哪一个不属于对模块间关系的描述?A)调用关系B)从属关系C)嵌套关系D)主次关系(42)原型化方法是一类动态定义需求的方法,下列叙述中,哪一个不具有原型化方法的特征?A)提供严格定义的文档B)加强用户参与和决策C)简化项目管理D)加快需求的确定(43)评审是对软件进行静态测试的一种方法,下述结论中,哪个是与软件评审无关的容?A)尽量发现错误B)检查软件文档C)根据评审标准D)依靠测试信息(44)软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于A)阅读设计文档B)理解程序代码C)分析软件结构D)查阅测试记录(45)软件工程哪个阶段产生软件需求定义?A)定义阶段B)工程阶段C)维护阶段D)开发阶段(46)自顶向下绘制多层数据流程图时,必须考虑到父图与子图之间的平衡,此平衡通常由___来维护A)输出数据B)数据字典C)处理序号D)输入数据(47)下述哪种是聚性最严格的形式?A)逻辑B)功能C)过程D)一致性(48)下述哪个不是白盒测试法的概念?A)应该执行边界条件下的所有循环B)应该执行边界条件下的所有接口B)应该执行所有逻辑判断的真假情况D)应该至少执行一次模型中的所有独立路径(49)原型化方法是一个动态设计过程,它要求使用该方法的人员具有下述哪种能力A)熟练的编程技能B)及时获得用户需求C)协作精神及有力管理D)巧妙使用工具(50)数据流程图(DFD)是用于描述结构化方法中哪一个工作阶段的工具?(41)D(42)A(43)D(44)C(45)A(46)B(47)B(48)B(49)B(50)BA)可行性分析B)需求分析C)详细设计D)程序编码(51)判定树和判定表是用于描述结构化分析方法中哪一环节的工具?A)功能说明B)数据加工C)流程描述D)结构说明(52)在结构化方法中,软件功能分解应属于软件开发中的哪一阶段?A)详细设计B)需求分析C)总体设计D)编程调试(53)信息隐蔽的概念与下述哪一种概念直接相关?A)软件结构定义B)模块独立性C)模块类型划分D)模块耦合度(54)结构化程序流程图中一般包括三种基本结构,下述结构中哪一种不属于其基本结构?A)顺序结构B)条件结构C)选择结构D)嵌套结构(55)软件复审时其主要的复审对象是A)软件结构B)软件文档C)程序编码D)文档标准(56)软件需求规格说明书不应包含的容是A)系统输入/输出的描述B)质量控制方案C)数据字典D)用户界面需求描述E)系统可靠性要求描述F)测试方案G)需求分析阶段进度安排H)人员需求(51)B (52)C (53)B (54)D (55)B (56)F G H(57)将下面的DFD 转换为初始化的模块结构图图中:左竖虚线表示此处为系统的逻辑输入右竖虚线表示此处为系统的逻辑输出57-1)57-2)57-3)(58)将下面的伪码转换为PAD 和N-S 图beginS1;If x>5then S2else S3;while y<0do beginif z>3then S4else S5;while w>0then S6;S7end;S8;If u>0thenS9;S10;End.(59)将下面的PAD 转换为流程图X D 4G M 7B A 12C 3E56H N 8Y 9Z v g 6j u 10a 1f5i 78k x y Zb 2dc 4e391112j f h i e 47l1c 3d28ab g 6k 59(60)将下面给出的伪码,转换为PAD 图和程序流程图。

(完整版)软件工程导论试题(整理)

(完整版)软件工程导论试题(整理)

单项选择题(每小题1分,共10分)1、在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( A )(A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性2、研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征( C )A 严格定义需求B 划分开发阶段C 规范文档格式D 分析控制流程3、软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D )(A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合4、软件维护的四类维护活动是( A )(A)改正性维护,适应性维护,完善性维护和预防性维护。

(B)适应性维护,完善性维护,抢救性维护和辅助性维护。

(C)改正性维护,适应性维护,完善性维护和辅助性维护。

(D)适应性维护,完善性维护,抢救性维护和预防性维护。

5、主要从( A )几个方面进行系统可行性研究。

(A)技术可行性,经济可行性,操作可行性。

(B)技术可行性,经济可行性,系统可行性。

(C)经济可行性,系统可行性,操作可行性。

(D)经济可行性,系统可行性,时间可行性。

6、进行需求分析可使用多种工具,但( C )是不适用的。

(A)数据流图(B)判定表(C)PAD图(D)数据字典7、软件需求分析阶段的工作,可以分为四个方面:对问题的识别、分析与综合、编写需求分析文档以及( B )(A)软件的总结(B)需求分析评审(C)阶段性报告(D)以上答案都不对8、OMT(Object Modelling Technique)方法的第一步是从问题的陈述入手,构造系统模型。

系统模型由对象模型、( C )组成。

A静态模型和功能模型 B动态模型和过程模型C动态模型和功能模型 D静态模型和操作模型9、为了表示项目管理功能工作中各项任务之间的进度衔接关系,常用的计划管理工具是( D )(A)程序结构图(B)数据流图(C) E-R图(D)甘特(Gantt)图①软件生命周期中所花费用最多的阶段是(D)A.详细设计B.软件编码C.软件测试D.软件维护②可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。

软件工程导论《软件工程》期末考试题及答案

软件工程导论《软件工程》期末考试题及答案

软件工程导论《软件工程》期末考试题及答案一、选择题(每题2分,共20分)1. 下列哪项不是软件工程的基本目标?A. 提高软件的生产率B. 提高软件的可维护性C. 提高软件的性能D. 降低软件的开发成本答案:C2. 下列哪种方法不属于软件需求分析的方法?A. 数据流图(DFD)B. 实体-关系图(ER图)C. 状态转换图D. Petri网答案:D3. 软件设计中,模块的内聚性越高,表明模块的:A. 功能越单一B. 独立性越强C. 复用性越低D. 可维护性越低答案:A4. 在软件测试阶段,下列哪种测试方法不属于黑盒测试?A. 等价类划分B. 边界值分析C. 代码覆盖率分析D. 逻辑覆盖分析答案:D5. 软件项目管理中,项目经理的主要职责不包括以下哪项?A. 制定项目计划B. 管理项目进度C. 组织项目团队D. 编写代码答案:D二、填空题(每题2分,共20分)6. 软件生命周期可以分为______、需求分析、设计、编码、测试、维护等阶段。

答案:需求调研7. 软件工程的三要素是______、过程、方法。

答案:工具8. 在软件设计中,模块的独立性包括______和耦合性两个方面。

答案:内聚性9. 软件测试的目的不包括______。

答案:发现并修复所有错误10. 软件项目管理的主要目标是实现项目的______、质量和成本控制。

答案:进度三、简答题(每题10分,共30分)11. 简述软件工程的基本原则。

答案:软件工程的基本原则包括:(1)抽象:将复杂问题分解为更简单的子问题;(2)分解:将问题分解为多个部分,分别解决;(3)模块化:将软件划分为独立的模块,提高可维护性和复用性;(4)信息隐藏:隐藏模块内部的信息,只暴露必要的接口;(5)一致性:保持软件各部分的一致性,提高可读性;(6)可维护性:使软件易于修改和维护。

12. 简述软件需求分析的目的和任务。

答案:软件需求分析的目的在于明确用户对软件系统的功能、性能等方面的需求。

2023软件工程导论期末考试题库及参考答案

2023软件工程导论期末考试题库及参考答案

2023软件工程导论期末考试题库及参考答案一、选择题(每题2分,共20分)1. 以下哪个不是软件工程的三个基本目标?A. 可维护性B. 可用性C. 可靠性D. 高效性参考答案:D2. 软件生命周期中,以下哪个阶段是软件开发过程的核心阶段?A. 需求分析B. 设计C. 编码D. 测试参考答案:C3. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程参考答案:A4. 在软件工程中,以下哪个方法用于估算软件项目的成本和进度?A. COCOMOB. WBSC. SDLCD. CASE参考答案:A5. 以下哪个是软件工程中的一个重要原则?A. 分而治之B. 一次性编写C. 重用D. 模块化参考答案:D6. 以下哪个不是软件工程的基本活动?A. 软件规格B. 软件开发C. 软件验证D. 软件测试参考答案:C7. 以下哪个是软件工程中用于提高软件质量的技术?A. 设计模式B. 重构C. 代码审查D. 单元测试参考答案:C8. 以下哪个不是软件工程的五大基本过程?A. 软件规格B. 软件开发C. 软件维护D. 软件项目管理参考答案:D9. 以下哪个是软件工程中的一个重要概念,用于描述软件系统中的各个组件之间的关系?A. 耦合B. 内聚C. 模块化D. 重用参考答案:A10. 以下哪个是软件工程中的一个重要原则,用于指导软件开发过程?A. 迭代B. 增量C.螺旋D. 模型驱动参考答案:A二、填空题(每题2分,共20分)11. 软件工程的三要素是:方法、工具和______。

参考答案:过程12. 软件生命周期包括:需求分析、设计、编码、______和软件维护。

参考答案:测试13. 软件工程中的面向对象方法包括:封装、继承和______。

参考答案:多态14. 软件工程中的 CASE 工具主要用于支持______。

参考答案:软件设计和开发15. 软件工程中的敏捷开发方法强调______、可维护性和可扩展性。

(完整)《软件工程导论》试题及答案,推荐文档

(完整)《软件工程导论》试题及答案,推荐文档

一, 判断题(正确的在括号内打上"√",错误的打上"×".每题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)检验:对照计划或标准监督检查实施的情况.。

软件工程导论期末复习题_答案.

软件工程导论期末复习题_答案.

一、单向选择题(四选一、每小题3分,共18分)1、软件的发展经历了(D)个发展阶段。

0102A.一B.二C.三D.四2、需求分析的任务不包括(B)。

0401A.问题分析B.系统设计C.需求描述D.需求评审。

3、一个软件的宽度是指其控制的(C)。

0801A.模块数B.层数C.跨度D.厚度4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。

0802A.判定表和判定树B.盒图C.流程图D.关系图5、以下不属于逻辑覆盖的是(D)。

1402A.语句覆盖B.判定覆盖C.条件覆盖D.基本路径6、为适应软件运行环境的变化而修改软件的活动称为(B)。

1501A.纠错性维护B.适应性维护C.改善性维护D.预防性维护二、填空题(每空2分,共18分)1.软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。

01012.高级语言:独立于机器,面向过程或面向(对象)01013.软件项目管理的范围主要集中于3个P上,即:People人员、Problem问题和(过程)。

02014.人机界面的风格第一代界面是命令和(询问)方式。

12025.由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。

15046.在公式V(G)= E –N + 2中:E为程序图G中边的总数;N 为程序图中结点的总数。

V(G)又称为图G的环形(复杂度)0204。

7.任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。

03038.为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除…?”。

12049.文档是一种数据媒体和其上所记录的(数据)。

0101三、判断题(每小题2分,共24分,错误打X、正确打√)1.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。

(√)01022.目前,软件项目的进度安排的两种比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。

《软件工程导论》试题及答案

《软件工程导论》试题及答案

《软件工程导论》试题及答案软件工程导论试题及答案一、选择题1. 软件工程是一门多学科交叉的学科,其中包括以下哪些学科?A. 计算机科学B. 电子工程C. 数学D. 管理学E. 心理学答案:A、B、C、D2. 软件工程的目标是什么?A. 提高软件开发效率B. 提高软件质量C. 提高软件可靠性D. 提高软件维护性E. 提高软件安全性答案:A、B、C、D、E3. 软件过程模型是指软件开发过程中的一种抽象表示方法,常用的软件过程模型有哪些?A. 瀑布模型B. 增量模型C. 螺旋模型D. 敏捷模型E. 喷泉模型答案:A、B、C、D4. 以下哪个开发方式可以在软件开发过程中提供更多的灵活性和快速反馈?A. 瀑布模型B. 增量模型C. 螺旋模型D. 敏捷模型答案:D5. 软件需求分析的主要任务是什么?A. 确定软件的功能和性能需求B. 定义软件系统的架构C. 设计软件的用户界面D. 实施软件测试答案:A二、填空题1. 软件工程的核心目标是提高软件的 ______ 和 ______ 。

答案:质量、可靠性2. 软件工程中的四个基本活动是需求分析、设计、 ______ 和______ 。

答案:实现、维护3. 瀑布模型的五个阶段依次是:需求分析、设计、编码、 ______ 和 ______ 。

答案:测试、维护4. “快速原型”开发模型注重 ______ 。

答案:用户参与5. 敏捷开发模型的核心原则是 ______ 。

答案:迭代开发三、简答题1. 请简要说明为什么软件工程是一门多学科交叉的学科?答:软件工程在开发软件的过程中需要结合计算机科学的知识来实现软件的功能,同时也需要借鉴电子工程的设计思想来构建软件系统的架构。

此外,软件工程还应用了数学方法来进行软件需求分析和软件质量保证,同时也需要管理学的知识来进行项目管理和团队协作。

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、软件开发常使用的两种基本法是结构化和原型化法,在实际的应用中,它们之间的关系表现为( )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、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( )A、分析阶段B、设计阶段C、编码阶段D、测试阶段二.填空21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的( )情况。

《软件工程导论》期末考试试题与答案

《软件工程导论》期末考试试题与答案
《软件工程导论》期末考试
一、 填空题
I.软件工程中的结构化分析SA是一种面向的分析方法。
2.软件模块独立性的两个定性度量标准是。
3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个的过程。
4.和数据字典共同构成了系统的逻辑模型
5.是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据 此导出测试用例。二、 单选
8.在软件系统中,一个模块应具有什么样的功能,这是由决定的。A.总体
设计B.需求分析C.详细设计D.程序设计
9.面向对象分析是对系统进行的一种方法。A.需求
分析B.程序设计C.设计评审D.测试验收
10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而
且影响软件的。A.可理解
性B.可维护性C.可扩展性D.可
B.继承C.封装D.消息
6.Jackson方法是在软件开发过程中常用的方法,使用Jackson方法时可以实现。A从数
据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D .从模块结构
导出程序结构
7.软件测试时为了而执行程序的过程。A.纠正
错误B.发现错误
C.避免错误
D.证明错误
划分B.边界值分析C.错误推测D.逻辑覆盖
4.软件工程方法是在实践中不断发展着的方法,而早期的软件工程方法主要是指。A.原型
化方法B.结构化方法C.功能化方法D.面向对象方法
5.是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是
隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态
B.
喷泉模型C.原型模型D.增量模型
14.
面向对象的分析阶段建立的系统模型不包括

软件工程导论测试卷(打印)

软件工程导论测试卷(打印)

软件工程导论试卷(老师给的)一.选择1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。

八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和 ( C )。

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、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高( B )A、结构化方法B、原型化方法C、面向对象的方法D、控制流方法9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的 ( B)A、控制流B、数据流C、程序流D、指令流10、软件开发的结构化生命周期方法将软件生命周期划分成 ( A )A、计划阶段、开发阶段、运行阶段B、计划阶段、编程阶段、测试阶段C、总体设计、详细设计、编程调试D、需求分析、功能定义、系统设计11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为( A )A、瀑布模型B、对象模型C、螺旋模型D、层次模型12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是 ( C )A、分析阶段B、设计阶段C、编码阶段D、测试阶段二.填空21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的( 信息流动)情况。

软件工程导论试题

软件工程导论试题

一、单项选择题(每小题3分,共10题)1、需求分析的任务不包括(B)。

A.问题分析B.系统设计C.需求描述D.需求评审。

2、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。

A.判定表和判定树B.盒图C.流程图D.关系图3、为适应软件运行环境的变化而修改软件的活动称为(B)。

A.纠错性维护B.适应性维护C.改善性维护D.预防性维护4、下列不属于软件工程方法3要素的是(D)。

A)方法B)工具C)过程D)人员5、软件的发展经历了(D)个发展阶段。

A.一B.二C.三D.四6、下列不属于UML中的动态图的是(B)。

A)状态图B)对象图C)协作图D)活动图7、一个模块的(B)是指能直接调用(控制)该模块的模块数。

A.扇出数B.扇入数C.宽度D.深度8、下列耦合中,模块独立性最好的是(A)。

A)非直接耦合B)数据耦合C)外部耦合D)内容耦合9、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。

除第1级外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干(A)。

A 关键实践B 软件过程性能C 软件过程能力D 软件过程10、UML的扩展机制不包括(C)。

A)构造型B)标记值C)注解D)约束二、填空题(每题2分,共5题)1、任何复杂的程序流程图都只应该由5种基本控制结构组合或嵌套而成,这5中基本结构分别是顺序型、选择型、先判定型循环、后判定型循环、多情况型选择。

2、在进行结构化分析时,对数据流图进行分层应注意父图和子图平衡。

3、UML的基本构造块包含:视图、图和模型元素。

4、自行车类与自行车车轮类之间是聚集关系。

5、在进行软件规模估算时,与代码行度量方式相比,功能点度量的估算结果更客观和合理。

三、判断题(每题2分,共10题)1、目前,软件项目的进度安排比较常用的方法包括程序评估与审查技术(PERT)和关键路径法(CPM)。

(对)2、缺乏处理大型软件项目的经验。

软件工程导论_习题及答案

软件工程导论_习题及答案

软件⼯程导论_习题及答案第⼀章软件⼯程概论1.什么是软件⽣存周期?软件⽣存周期是指从软件定义、开发、使⽤、维护到淘汰的全过程。

2.软件⽣存周期为什么划分成阶段?(1) 任何⼀个阶段的具体任务不仅独⽴,⽽且简单,便于不同⼈员分⼯协作,从⽽降低整个软件开发⼯作的困难程度。

(2) 可以降低每个阶段任务的复杂程度,简化不同阶段的联系,有利于⼯程的组织管理,也便于采⽤良好的技术⽅法。

(3) 使软件开发的全过程以⼀种有条不紊的⽅式进⾏,保证软件的质量,特别是提⾼了软件的可维护性。

3.应该怎样来划分阶段?(1)每⼀个阶段的任务尽可能独⽴;(2)同⼀阶段内的任务性质尽可能相同;(3)每⼀个阶段任务的开始和结束有严格的标准。

4.软件开发模型有⼏种?它们的开发⽅法有可特点?软件开发模型有瀑布型、渐增型和变换型。

瀑布型开发⽅法是按照软件⽣存周期的划分依次实施,每⼀个阶段有明确规定的任务。

它的特点:(1)各个阶段的顺序性和依赖性;(2)划分逻辑设计与物理设计,尽可能推迟程序的物理实现;(3)每个阶段必须完成规定的⽂档,对其中问题通过复审及早发现,及早解决。

渐增型开发⽅法及特点:(1) 从部分需求出发,先建⽴⼀个不完全的系统,通过测试运⾏该系统取得经验和信息反馈,加深对软件需求的理解,进⼀步使系统扩充和完善。

如此反复,直⾄软件⼈员和⽤户对所设计完成的软件系统满意为⽌。

(2) 在渐增型开发下的软件是随软件开发的过程⽽逐渐形成的。

(3) 渐增型开发⽅法适合于知识型软件的开发,设计系统时对⽤户需求的认识开始不是很清楚的,需要在开发过程中不断认识、不断获得新的知识去丰富和完善系统。

多数研究性质的试验软件,⼀般采⽤此⽅法。

变换型开发⽅法及特点:(1)从软件需求的形式化规格说明出发,经过⼀系列的程序变换,得到最终的程序系统。

(2)该⽅法必须有严格的数学理论和形式化技术的⽀持。

5.什么是软件⼯程?软件⼯程是指导计算机软件开发和维护的⼯程学科。

软件工程导论复习题含答案

软件工程导论复习题含答案

软件工程习题集第1章概述(一)单项选择题1.“软件危机”产生的主要原因是( A )。

A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件2. 软件是一种( B )性工业产品。

A. 理论B. 知识(或逻辑)C. 消耗D. 体力3. 需求分析是在( B )进行的。

A. 用户B. 用户和分析设计人员之间C. 开发人员内部D. 使用和维护人员间4. 软件的主要结构和功能是在( A )阶段决定的。

A. 分析设计B. 编程C. 测试D. 维护5.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是( D )。

A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档6.在软件工程时期,决定软件质量的主要因素是( A )A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展7. 在软件开发模型中,提出最早、应用最广泛的模型是( A )。

A. 瀑布模型B. 喷泉模型C. 增量模型D. 螺旋模型8.瀑布模型把软件生存周期划分为软件定义、软件开发与( C )三个阶段,而每一阶段又可分为若干更小的阶段。

A. 详细设计B. 可行性分析C. 运行及维护D. 测试与排错9. 计算机辅助软件工程,简称( D )。

A. SAB. SDC. SCD. CASE10. 软件危机是软件产业化过程中出现的一种现象,下述现象中:( C )是其主要表现。

①软件需要增长难以满足。

②软件开发成本提高。

③软件开发进度难以控制。

④软件质量不易保证。

A. ③和④B. ③和④C. 全部D. ①、②和③11 软件工程的出现主要是由于( C )。

A. 程序设计方法学的影响B. 其他工程科学影响C. 软件危机的出现D. 计算机的发展12、软件生成周期模型有多种,下列选项中,( C )不是软件生存周期模型。

A.螺旋模型B.增量模型C.功能模型D.瀑布模型(二)简答题1. 软件产品的特点是什么?2. 软件生产的发展经历了哪几个时代?各有何特征?3. 软件危机的概念、表现形式、产生原因、解决途径4. 简述主要的软件生存期模型(或软件开发模型)。

软件工程导论试题

软件工程导论试题

1.办公室复印机的工作过程大概以下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,达成一个复印命令规定的工作后又回到闲置状态,等候下一个复印命令;假如履行复印命令时发现缺纸,则进入缺纸状态,发出警示,等候装纸,装满纸后进入闲置状态,准备接受复印命令;假如复印时发生卡纸故障,则进入卡纸状态,发出警示等候维修人员清除故障,故障清除后回到闲置状态。

请试画出复印机的状态变换图答案:2.录入统计计算某班学生成绩,画出数据流图(DFD)。

学生成绩表数据构造以下:学号|高数|物理|英语|计算机|法律知识|总分|均匀分|不及格门数|升留补|需求功能以下:(1)录入全班学生各课的考分,生成成绩表;(2)检查各课成绩,改正错误,增补未录入成绩,删除非法成绩;(3)计算总分,均匀分;(4)统计不及格门数,而后再写入升级、补考、留级;(5)打印成绩通知单,交家长。

答案:3.中国古代在“室”内举办宴会,座位以西为尊,北次之,南再次之,东最次。

“按上北下南,左西右东”的方向和长幼尊卑的次序进行入坐。

孙坚有四个儿子,分别为孙伯符、孙叔弼、孙仲谋、孙季佐(长幼次序已打乱),请依据以上表达,画进出座次序的程序流程图以及座位散布图。

答案: 座位散布图程序流程图:错误成绩通知开始入坐孙伯符入坐孙仲谋入坐孙叔弼入坐孙季佐入坐结束入坐答案:5. 画出以下伪码程序的程序流程图和盒图:STARTIF p THENWHILE q DOfEND DO ELSEBLOCKmnEND BLOCK END IFSTOP流程图:盒图:6.请画出一个用户使用银行ATM的状态变换图。

从用户将卡插入卡槽开始,到用户取卡结束(假如用户忘掉,ATM应报警),用户能够达成以下几个步骤:登录(卡片进入ATM机后,假如不是可读卡,退卡;如是,等候用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单,输入金额,假如帐户余额不足,提示余额,并要求用户从头输入,假如帐上钱够,吐钱币,并咨询能否打印凭据,最后返回主菜单),主菜单供给退出取卡选择。

《软件工程导论》试题与答案

《软件工程导论》试题与答案

《软件工程导论》试题与答案一、选择题(每题2分,共20分)1. 以下哪个不属于软件工程的三个基本活动?A. 软件规格说明B. 软件设计和实现C. 软件测试和验证D. 软件维护答案:D2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A3. 软件开发过程中,以下哪个阶段的主要任务是需求分析?A. 需求获取B. 设计C. 编码D. 测试答案:A4. 在软件工程中,以下哪个方法主要用于软件项目管理?A. 水平迭代法B. 垂直迭代法C. 敏捷开发D. 模块化设计答案:C5. 以下哪个工具用于软件需求跟踪?A. 用例图B. 类图C. 时序图D. 状态图答案:A二、填空题(每题2分,共20分)6. 软件工程的基本目标是提高软件的______和降低软件的______。

答案:可维护性,成本7. 软件开发过程主要包括______、______、______、______四个阶段。

答案:需求分析、设计、编码、测试8. 软件设计中,常用的设计模式有______、______、______等。

答案:工厂方法、单例、策略9. 软件测试的目的是______、______和______。

答案:发现错误、验证软件功能、评估软件质量10. 敏捷开发的核心价值观包括______、______、______、______、______。

答案:个体和团队、可工作的软件、客户合作、响应变化、简单性三、判断题(每题2分,共20分)11. 软件工程是计算机科学与工程的一个分支,主要研究软件开发的理论、方法和技术。

(对/错)答案:对12. 软件开发过程中,需求分析阶段的主要任务是获取用户需求。

(对/错)答案:对13. 软件测试的目的是证明软件的正确性。

(对/错)答案:错14. 敏捷开发强调快速迭代、持续交付和客户反馈。

(对/错)答案:对15. 软件工程的基本活动包括软件规格说明、软件设计和实现、软件测试和验证。

(完整版),软件工程导论第1-2套试题及答案,推荐文档

(完整版),软件工程导论第1-2套试题及答案,推荐文档
-2-
姓名:字符类型,考虑汉语及英语姓名 课程:字符类型,16 位,按我院实际课程名称情况设计 课程类别:字符类型,4 位,内容是“考查”或“考试” 成绩:数字类型,整数部分 3 位,最多 2 位小数,考试课程直接录入数值(最高 100 分),存放数值,如果是考查课程允许录 入字符优、良、中、及格、不及格或合格、不合格,存放原则是优(95 分)、良(85 分)、中(75 分)、及格(65 分)、不及格 (55 分)存放,或按合格(85 分)、不合格(55 分) 2.面向对象分析题(10 分)
A、数据库 B、软件 C、CASE D、开发方法
7、SA 法中,DFD 图的某个处理过程分解后,一般不超过( )处理过程
A、10
B、7
C、5
D、12
8、下列需求陈述中一致的是( )
A、所有命令响应时间应小于 0.1s;BUILD 命令的响应时间应小于 5s
B、所有命令响应时间应小于 5s;BUILD 命令的响应时间应小于 1s
5.一个模块实际上就是一个进程。( )
6.过程描述语言可以用于描述软件的系统结构。 ( )
7.编程语言应该在软件概要设计时选择。 ( )
8.如果通过软件测试没有发现错误,则说明软件是正确的。 ( )
9.在进行概要设计时应加强模块间联系。( )
10.一般人为,软件开发阶段是由设计、编码和测试三个基本活动组成。( )
()
5.验证软件需求的方法主要靠人工审查的方法。
()
6.并发系统中遇到的一个主要问题是定时问题。
()
7.编码风格由个人喜好决定,没有固定格式。
()
8.面向对象建模得到的模型包含系统的 3 个要素,即静态结构、交互次序和数据变换。( )

软件工程导论试题(整理)

软件工程导论试题(整理)

软件工程导论试题(整理)软件工程导论试题(整理)1. 什么是软件工程?软件工程是一门研究如何以系统化、规范化和可预测的方式开发和维护软件的学科。

它关注的是软件的生命周期过程,包括需求分析、设计、编码、测试、部署和维护等阶段。

2. 软件过程模型有哪些?各有什么特点?(1)瀑布模型:将软件开发过程划分为需求分析、设计、编码、测试和维护等阶段,每个阶段的输出作为下一个阶段的输入。

特点是各个阶段之间严格线性顺序,适用于需求变动较少的项目。

(2)迭代模型:将软件开发过程划分为若干迭代周期,每个迭代周期包含需求分析、设计、编码和测试等阶段。

特点是每个迭代周期都可以得到可运行的软件版本,适用于需求变动较大的项目。

(3)螺旋模型:将软件开发过程划分为若干个循环迭代阶段,每个阶段依次进行需求分析、风险评估、开发和测试等活动。

特点是针对风险进行及时评估和控制,适用于复杂或高风险的项目。

(4)敏捷模型:以个体和交互更甚于流程和工具的方式,强调灵活适应需求变化并迅速交付可用软件的开发方法。

特点是迭代、增量式开发,强调团队协作和反馈,适用于需求易变或创新性强的项目。

3. 请简述软件需求分析的过程。

软件需求分析是确定和明确用户对软件系统的需求的过程。

其主要步骤包括:(1)需求获取:通过与用户、利益相关者进行沟通、访谈、观察等方式,收集软件需求。

(2)需求分析:对收集到的需求进行整理、分类、澄清和详细化,同时识别需求之间的关联和优先级。

(3)需求建模:使用适当的技术和工具,将需求转化为可视化的模型,如用例图、活动图、状态图等。

(4)需求验证:与用户和利益相关者共同验证需求是否准确、完整、一致和可行。

(5)需求管理:在整个软件开发生命周期中,跟踪、变更和控制需求,确保满足客户的期望和项目的目标。

4. 什么是软件架构?软件架构设计的目标是什么?软件架构是指软件系统中各个组件的组织方式和相互关系,包括系统的结构、行为和属性等。

软件架构设计的目标是为了实现软件系统的可靠性、可维护性、可扩展性、可重用性和性能等方面的要求。

《软件工程导论》期末考试试题和答案(整理)

《软件工程导论》期末考试试题和答案(整理)

《软件工程导论》期末考试试题和答案(整理)一、填空题1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。

2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。

3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。

4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。

5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。

6.__数据流图________和__数据字典___共同构成系统的逻辑模型。

7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。

8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。

9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。

二、单项选择题1.下列哪个阶段不属于软件生存周期的三大阶段( C )。

A、计划阶段B、开发阶段C、编码阶段D、维护阶段2.需求分析是(A )。

A、软件开发工作的基础B、软件生存周期的开始C、由系统分析员单独完成的D、由用户自己单独完成的3.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。

A、明确的需求定义B、完整的生命周期C、较长的开发时间D、熟练的开发人员4.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。

A、改正性维护B、适应性维护C、完善性维护D、预防性维护5.一般说来,投入运行的软件系统中有错误(A )。

A、不是不可以理解的B、是不能容忍的C、是要求退货的理由D、是必然的三、多项选择题1.下面哪些测试属于白盒测试(AE)。

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

软件工程导论试题(老师给的)一.选择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、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、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( )A、分析阶段B、设计阶段C、编码阶段D、测试阶段二.填空21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的( )情况。

22.成本效益分析的目的是从( )角度评价开发一个项目是否可行。

23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和() 。

24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。

从程序图来看,一条独立路径是至少包含有一条( )的边的路径。

25.汇编语言是面向( ) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。

26.在JSP方法中解决结构冲突的具体办法是()。

27.详细设计的任务是确定每个模块的内部特性,即模块的算法、( )。

28.所有软件维护申请报告要按规定方式提出,该报告也称( )报告。

29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提高维护的效率和质量的()技术。

30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:()、PASCAL语言、C语言和PL/1语言。

三.判断1.软件的开发与运行经常受到硬件的限制和制约。

( )2.模块内的高内聚往往意味着模块间的松耦合。

( )3.Jackson图只能表达程序结构,不能表达数据结构。

( )上述数据流图表示数据A和B同时输入变换成C。

( )5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。

( )6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。

( )7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。

( ) 8.UML只能应用于软件系统模型的建立。

( )9.容错就是每个程序采用两种不同的算法编写。

( )10.软件测试的目的是为了无一遗漏的找出所有的错误。

( )四、名词解释题(本大题共5小题,每小题3分,共15分)31.软件开发环境32.错误推测法33.黑盒测试法34.软件质量保证35.瀑布模型五、图 a 中,模块G 为判定,判断涉及到模块B、F、G,请指出设计中的错误,再根据改进模块图的基本原则,画出1~2 个改进方案(不改变模块G 的判断关系),并说明是按照哪条基本原则进行改进的。

40.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。

41.根据下列条件使用等价类划分法设计测试用例。

某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-06542.某电器集团公司下属的厂包括技术科、生产科等基层单位。

现在想建立一个计算机辅助企业管理系统,其中:生产科的任务是:(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。

(2)根据车间实际生产日报表、周报表调整月生产计划(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。

(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间技术科的任务是:(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。

(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。

试写出以上系统中生产科和技术科处理的软件结构图。

2009—2010学年第二学期期末考试试题1. 软件危机具有下列表现()。

I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住III. 软件常常不可维护IV. 软件成本逐年上升A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是()。

A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段3. 下列属于软件的特点的是()。

A. 软件是一种逻辑实体,具有抽象性B. 软件在使用过程中没有磨损、老化的问题C. 软件不同于一般程序,它的一个显着特点是规模庞大,复杂程度高D. 以上都正确4. 软件工程的出现是由于()。

A. 软件危机的出现B. 计算机硬件技术的发展C. 软件社会化的需要D. 计算机软件技术的发展5. 软件开发技术不包含()。

A. 软件开发方法学B. 软件工程环境C. 软件工具D. 软件质量度度量6. 软件工程的课程特点()。

I. 学科理论及其知识应用的多维性II. 工程化III. 浓厚的方法学色彩IV. 实践性、指导性强A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确7. 下列属于应用软件的是()。

I. 计算机辅助教学软件II. 软件测试工具III. 办公自动化软件IV. 工程与科学计算软件A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正确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. 内聚程度较低的是()内聚。

A. 偶然 B. 通讯 C. 顺序 D. 时间15. 对一个程序来说,组成系统的模块数目(),则开发成本越小。

A. 越多B. 越少C. 顺序D. 时间16. 画软件结构图时应注意调用关系只能是()。

A. 从下到上B. 从上到下C. 从左到右D. 从右到左17. 程序流程图中的“→”代表()。

A. 数据流B. 控制流C. 顺序流D. 调用18. DFD中的“→”代表()。

A. 数据流B. 文件C. 处理D. 控制流19. DFD中的“○”代表()。

A. 数据流B. 文件C. 处理D. 控制流20. DFD中的“_”代表()。

A. 数据流B. 文件C. 处理D. 控制流1.计算机软件不仅仅是程序,还应该有一整套。

2.传统的软件生存期模型是。

3.软件按照功能的不同可以划分为3大类型、和。

4.DFD在软件工程中表示。

5.与是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到内聚、耦合,提高模块的,为设计高质量的软件结构奠定基础。

6.数据流图有四种基本成分:、、、。

7.12. 数据字典有以下四类条目:、、、。

是组成数据流和数据存储的最小元素。

8.某厂对部分职工重新分配工作的政策是:年龄有20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄有20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度者当技术员;年龄有40岁以上者,中学文化程度当材料员,大学文化程度当技术员。

请用结构化语言、判定表或判定树描述上述问题的加工逻辑。

一、单项选择题1. D2. A3. D4. D5. D6. D7. B8. B9. C 10. C11. B12. B13. B14. A15. C16. B17. B18. A . B二、填空题1. 文档2. 瀑布模型3. 系统软件支持软件应用软件4. 数据流图5. 耦合性内聚性高低独立性6. 数据流加工(又称为数据处理)文件数据的源点或终点7. 数据流数据项文件基本加工数据项三、简答题答:(1)结构化语言。

IF 年龄<20THEN IF 文化程度=初中THEN 脱产学习ELSE 工作为电工ENDIFELSE IF 年龄≤40THEN IF (文化程度=大学)THEN 工作为技术员ELSE IF 性别=男性THEN 工作为钳工ELSE 工作为车工ENDIFENDIFELSE IF (文化程度=大学)THEN 工作为技术员ELSE 工作为材料员ENDIFENDIFENDIF(2)判定树如下:单项选择题(每小题1分,共10分)在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( A )(A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征( C )A 严格定义需求 B 划分开发阶段 C 规范文档格式 D 分析控制流程软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D )(A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合软件维护的四类维护活动是( A )(A)改正性维护,适应性维护,完善性维护和预防性维护。

相关文档
最新文档