软件工程导论复习试题库完整
软件工程导论复习题及答案
的耦合度最低。一个模块内部的内聚种类中 D 内聚的内聚度最高, E 内聚的内聚度最低。
A:① 低内聚低耦合 ② 低内聚高耦合
③ 高内聚低耦合
④ 高内聚高耦合
B:① 数据 C:① 数据 D:① 偶然 E:① 偶然
② 非直接 ② 非直接 ② 逻辑 ② 逻辑
③ 控制 ③ 控制 ③ 功能 ③ 功能
④ 内容 ④ 内容 ④ 过程 ④ 过程
2). C :例如,一个模块把开关量作为参数传送给另一模块。
3). D :例如,一个模块把一个数值量作为参数传送给另一模块。
其中, E5 的耦合性最强。
A:① 强
② 适中
③弱
④ 不考虑
B~E:
① 公共耦合
② 数据耦合
③ 逻辑耦合
④ 外部耦合
⑤ 内容耦合
⑥ 控制耦合
6.软件设计中划分模块的一个准则是 A 。两个模块之间的耦合方式中, B 耦合的耦合度最高, C 耦合
② 关于系统的高层逻辑模型
③ 用户手册
④ 操作手册
B:① 程序流程图 C:① 程序流程图 D:① 程序流程图 E:① 程序流程图
② IPO 图 ② 数据流图 ② HIPO 图 ② 算法描述
③ 成本/效益分析 ③ HIPO 图 ③ 数据字典 ③ IPO 图
④ 数据字典 ④ 算法描述 ④ 成本/效益分析 ④ HIPO 图
思想是 E ,这是提高可维护性的重要措施。
A~C:(共有下列 15 个可选择的答案供选择)
① 记录
② 集合
③ 指针
④树
⑤图
⑥表
⑦ 顺序
⑧ 选择
⑨ 重复
⑩ 线性表
⑾ 键表
⑿ 列表
⒀ 数组
⒁栈
软件工程导论综合复习题
一、选择题1、软件是一种( B )性工业产品。
(1)理论(2)知识(或逻辑)(3)消耗(4)体力2、需求分析是在( B )进行的。
(1)用户(2)用户和分析人员之间(3)开发人员内部(4)使用和维护人员之间3、在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于( B )的研究。
(1)经济可行性(2)技术可行性(3)操作可行性(4)法律可行性4、在软件工程项目中,不随参与人员的增加而使软件的生产率增加的主要问题是( D )。
(1)工作阶段的等待时间(2)生产原型的复杂性(3)参与人员所需的工作站数(4)参与人员之间的沟通困难5、需求分析阶段的研究对象是( A )。
(1)用户需求(2)分析员要求(3)系统需求(4)软硬件需求6、对某公司进行调查分析,确定是否值得开发一个新系统的工作是进行( D )。
(1)系统设计(2)系统分析(3)系统详细调查(4)系统初步调查7、系统分析员应当( D )。
(1)善于使用户接受自已的观点(2)善于使自已获得成就(3)是用户与计算机技术人员的有效协调与组织者(4)满足上述所有条件8、数据流图的绘制过程,是对新系统的需求进行综合分析和形成新系统( A )的过程。
(1)逻辑模型(2)物理模型(3)总体方案(4)可行性报告9、系统测试的目的是( D )。
(1)找出编码错误(2)找出数据错误(3)要证明程序无错(4)发现软件错误10、一个模块内部各程序段都在同一张表上操作,这个操作的内聚性称为( B )。
(1)时间内聚(2)功能内聚(3)通信内聚(4)顺序内聚11、对象是面向对象开发的基本成分,每个对象可用它的一组()和它可以执行的一组操作来定义。
(1)服务(2)参数(3)属性(4)调用12、最高程度也是最差的耦合是()。
(1)公共耦合(2)内容耦合(3)控制耦合(4)数据耦合13、概要设计阶段产生的文档不包括()。
(1)概要设计说明书(2)数据库设计说明书(3)用户手册(4)开发进度报告14、汽车有一个发动机,汽车和发动机之间的关系是()。
软件工程导论复习试题库完整
.word 格式 ,在软件工程中 ,白盒测试法可用于测试程序的内部结构 。
此方法将程序看作是下述陈述中 , 哪一个不是软件健壮性的度量指标 ?A) 失败后重新启动所需的时间 B) 引起失败的时间所占的百分比D) 失败前的平均工作时间 D )在一次失败中数据恶化的概率b( 5) 对软件是否能达到用户所期望的要求的测试称为A) 集成测试 B) 有效性测试 C) 系统测试 D) 验收测试a(6) 在面向数据流的软件设计方法中 ,一般将信息流分为A) 变换流和事务流 B) 变换流和控制流C)事务流和控制流 D) 数据流和控制流d( 7)软件需求说明书是软件需求分析阶段的重要文件 , 下述哪个 (些 )是其应包含的内 I. 数据描述 Ⅲ. 模块描述II. 功能描述 Ⅳ. 性能描述A )ⅡB )Ⅲ和Ⅳ C) Ⅰ、 Ⅱ 和Ⅲ D )Ⅰ、Ⅱ 和Ⅳ1) 2) A) 路径的集合 在下述哪一种测试中 B) 循环的集合 C)目标的集合 ,测试程序的设计者必须接触到源程序D) 地址的集合I. 功能测试 Ⅱ . 结构测试A)均不须 B)只有Ⅰ C)只有 Ⅱ D) Ⅰ和Ⅱ3) 检查软件产品是否符合需求定义的过程称为A)确认测试 B)集成测试 C)验证测试 D) 验收测试4)(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. 结构化语言 Ⅱ. 判定树 Ⅲ. 判定表是常用的说明工具 ,其中便于对加工出现的组合条件的说明工具是段,一般认为可能占用人员最多的阶段是24 )构建一个原型不支持下述哪种功能(26) 下列哪种描述是正确的 ?A )Ⅱ和ⅢB )Ⅰ、Ⅱ 和ⅢC )Ⅰ 和ⅢD )Ⅰ和Ⅱ22 )软件开发的瀑布模型 般都将开发过程划分为 分析 、设计 、编码和测试等阶A ) 分析阶段B )设计阶段C ) 编码阶段D ) 测试阶段23 )加工是对数据流图中不能再分解的基本加工的精确说明 ,下述哪个是加工的最核心 成分 ? A )加工顺序B )加工逻辑C ) 执行频率D ) 激发条件A )取代最终系统C )辅助估计工程B )辅助收集软件需求 25 )软件文档是软件的重要组成部分 , 也是软件开发阶段的基础 , 它还影响到软件的A ) 可复用性B ) 可维护性C )可扩展性D )可移植性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) 程序设计语言的选择是顺利实施编程的重要基础 ,评价可用语言的因素甚多 ,而其首要的选择依据是C) 数据结构的复杂度 D) 算法的复杂度(36) 软件开发的原型化方法是一种动态定义软件需求的方法 ,下述条件 :哪个 (些)条件是实施原型化方法所必备的 ?A )Ⅰ 和ⅡB )Ⅱ 和ⅢC )Ⅰ,Ⅱ 和ⅢD )Ⅲ(37) 软件的可维护性度量可分解为对多种因素的度量 ,下述各种因素I. 可测试性 Ⅱ. 可理解性Ⅲ. 可修改性 Ⅳ. 可复用性 哪个 (些 )是可维护性度量的内容 ?A)全部 B )Ⅰ C )Ⅰ,Ⅱ 和Ⅲ D )Ⅰ 和Ⅱ(38) 软件测试是软件开发过程中重要和不可缺少的阶段过程的多种环节中基础的是A) 集成测试 B) 单元测试 C) 系统测试 D) 验收测试(39) 数据流图是用于表示软件模型的一种图示方法 ,在下列可采用的绘制方法中 ,那些是常采用的 ?A) 语言的应用领域B) 对语言的熟悉程度I. 成熟的原型化人员Ⅱ. 快速的成型工具 Ⅲ . 需求了解的准确性,其包含的内容和步骤甚多 ,而测试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-2 )57-3 )(58)将下面的伪码转换为 PAD 和 N-S 图beginS1;If x>5 then S2 else S3;while y<0 do beginif z>3 then S4 else S5;while w>0 then S6; S7end;S8;If u>0 then S9;S10;End.(59)将下面的 PAD 转换为流程图(60)将下面给出的伪码,转换为 PAD 图和程序流程图 begin 为变量 X 赋值IF X>0 then S1Else S2; 为 Y 和 Z 赋值; while Y>0 do begin IF X>0 then S3;while Z>0 do begin S4; S5end end;S6 IF Z=0 then S7;End.S1S2A1B>0B<=0B1B2B3C1C2staA>0A<=0A2WhileB4C>0C<=0(61)问题陈述:某校学生管理科负责录入、修改(在授权时)学生成绩(姓名、学生、A 科成绩);医务科负责录入学生健康信息(姓名、学号、健康状况[优、良、一般、差]);房产科负责录入、修改、查询学生住宿情况(姓名、学号、楼号、房间号、现有人数);学籍科负责统计 A 科成绩及格率并按月统计学生健康状况百分比,请给出该学生管理信息系统的 DFD 及数据字典。
《软件工程导论》期末考试试题和答案(整理)
得分评卷人一、填空题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)。
(完整)《软件工程导论》试题及答案,推荐文档
一, 判断题(正确的在括号内打上"√",错误的打上"×".每题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分,共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)的回答。
-软件工程导论复习题.doc
软件工程导论复习题一、名词解释软件、继承性、封装、多态性、软件危机、UML、用例视图、软件生存周期、瀑布模型、需求分析、模块化、模块独立性、白盒测试、等价类划分、风险管理二、选择题1、封装是指把对象的()结合在一起,组成一个独立的对象。
A.属性和操作B。
信息流C。
消息和事件D。
数据的集合2、封装是一种()技术,目的是使对象的生产者和使用者分离,使对象的定义和实现分开。
A.工程化B。
系统维护C。
信息隐蔽D。
产生对象3、面向对象方法中的()机制使子类可以自动地拥有(复制)父类的全部属性和操作。
A.约束B。
对象影射C。
信息隐蔽D。
继承5、软件是一种逻辑产品,它的开发主要是()A研制B拷贝C再生产D复制6、软件生命周期一般包括:软件开发期和软件运行期,下述()不是软件开发期所包含的内容?A需求分析B结构设计C程序编制D性能优化8、在软件生存周期中,()阶段必须要回答的问题是“要解决的问题是什么?”A需求分析B可行性分析与项目开发计划C概要设计D测试9、在软件开发中,通常要花费()以上的代价进行测试和排错A20% B 30% C 40% D 50%10、在软件开发方法中,()方法总的指导思想是自顶向下、逐步求精。
它的基本原则是功能的分解和抽象。
A结构化B面向对象的开发 C JSD D VDM11、软件工程是一门()学科。
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、设年利率为I,若n年能收入F元,那么这些钱现在的价值P 是()A P=F/(1+n*I)B P=F*(1+n*I)C P=F*n*(1+n)D P=F*(1+I)n17、需求分析阶段,分析人员要确定对问题的综合看法,其中最主要的是()需求A功能B性能C可靠性D可维护性18、需求分析阶段产生的最重要的文档是()A需求规格说明书 B 修改完善的软件开发计划C 确认测试计划D 初步的用户使用手册19、数据流图反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是(),整个图不反映加工的执行顺序。
软件工程导论复习题
1.软件工程学概述一、填空题1.软件=()+()。
2.软件生存周期一般可分为系统工程、()、()、()、测试、运行与维护阶段。
3.在瀑布模型中,将软件开发划分为若干个时期,软件项目的可行性研究一般被归属于()。
4.根据软件工程学的七项基本原则,DOS中把标准输入、输出设备视为文件,这一思想体现了软件工程学的()原则。
二、判断题1.软件是一种逻辑实体,而不是具体的物理实体。
()2.软件工程是开发、运行、维护和修复软件的系统方法。
()3.螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示,()4.在软件开发中,采用原型系统策略的主要困难是时间问题。
()三、选择题1.软件工程的概念是哪年提出的()。
A.1988B.1968C.1948D.19282.软件文档是软件工程实施中的重要成分,它不仅是软件开发各阶段的重要依据而且也影响软件的()。
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.软件是一种()。
软件工程导论试题
一、单项选择题(每小题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章概述(一)单项选择题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. 简述主要的软件生存期模型(或软件开发模型)。
软件工程导论试题及答案
A、PBB、VBC、UMLD、SQL Server 2000中的SQL语言14、与设计测试数据无关的文档是()A、需求分析说明书B、概要设计说明书C、源程序D、项目开发计划15、软件测试中的测试实例主要由输入数据和()组成A、测试规则B、测试计划C、预期输出结果D、以往测试记录分析三、简答题(共20分)1.项目A是为银行开发ATM(自动取款机)软件,项目B是为网络公司开发网络数据流分析软件,请问按照面向数据流设计方法(SD法),两个项目应分别采用何种方法将需求分析的功能模型转换成软件结构,为什么?(6分)2.某保险公司对投保人的汽车保费计算方法如下:单身男,年龄30岁以下(含30岁),计保费标准A,30岁以上计保费标准B;已婚男30岁以下(含30岁),计保费标准C,30岁以上计保费标准D,单身女,年龄25岁以下(含25岁),计保费标准E,25岁以上计保费标准F;已婚女25岁以下(含25岁),计保费标准G,25岁以上计保费标准H,请画出对应的判定树。
(8分)9、√ 10、√ 11、√ 12、× 13、× 14、× 15、√二、项选择题:每题1分,共15分1、C2、B3、B4、A5、B6、D7、B8、B9、A 10、A 11、A 12、A 13、D 14、D 15、C三、简答题(总共20分)1、总共6分,项目A 用事务流(2分),项目B 用变换流(2分),项目A 回答原因(1分),项目B 回答原因(1分)2、总共8分,画对每个条件1分3、每写出一种语言或工具1分,写出应用领域1分,如C#(C/B/S 结构软件),JA V A (B/S 结构软件),C++(系统软件),DEPHI (开发C/S 结构软件)、PB (开发C/S 结构下基于数据库的软件)。
四、综合题(总共25分)1、共10分每对一个对象类1分,写出一个对象类的关系0.5分2、测试题共15分五、分析设计题(总共25分)对象类图10分,每写对1个对象类1分,1个联系和多重性1分*功能模型:用例图7分,每写对1个用例1分,1个行为者1分动态模型:顺序图8分,每写对1个对象类和生命线0.5分,1个事件1分一、判断题:每小题1分,共15分,在正确的打上√,错误的打上X()2.数据字典是对数据流图中的数据流,处理过程、数据存储、数据的源和终点进行详细定义。
软件工程导论综合期末复习题(天津科技大学)
一、选择题1、软件是一种(B)性工业产品。
(1)理论(2)知识(或逻辑)(3)消耗(4)体力2、需求分析是在(B)进行的。
(1)用户(2)用户和分析人员之间(3)开发人员内部(4)使用和维护人员之间3、在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于( B )的研究。
(1)经济可行性(2)技术可行性(3)操作可行性(4)法律可行性4、在软件工程项目中,不随参与人员的增加而使软件的生产率增加的主要问题是( D )。
(1)工作阶段的等待时间(2)生产原型的复杂性(3)参与人员所需的工作站数(4)参与人员之间的沟通困难5、需求分析阶段的研究对象是( A )。
(1)用户需求(2)分析员要求(3)系统需求(4)软硬件需求6、系统分析员应当(D)。
(1)善于使用户接受自已的观点(2)善于使自已获得成就(3)是用户与计算机技术人员的有效协调与组织者(4)满足上述所有条件7、数据流图的绘制过程,是对新系统的需求进行综合分析和形成新系统( A )的过程。
(1)逻辑模型(2)物理模型(3)总体方案(4)可行性报告8、系统测试的目的是(D)。
(1)找出编码错误(2)找出数据错误(3)要证明程序无错(4)发现软件错误9.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( A )A.软件工程B.软件周期C.软件危机D.软件产生10.研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.法律可行性二、名词解释1、什么是软件危机?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
2、软件危机有哪两个主要问题?答:主要是两个问题。
1. 如何开发软件,怎样满足对软件的日益增长的需求。
2. 如何维护数量不断膨胀的已有软件3、什么是软件工程?答:软件工程是:1、把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用与软件;2、研究1中提到的途径。
《软件工程导论》试题与答案
《软件工程导论》试题与答案一、选择题(每题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.文档3.软件工程4.软件生存周期5.软件工程过程6.软件生存周期模型7.软件开发方法8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与________。
2.程序设计时代的生产方式是________。
3.软件工程涉及到几个学科,它是一门_____学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。
6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。
7.结构化方法是一种面向数据流的开发方法。
由结构化分析、_______、结构化程序设计构成。
8.软件工程研究的主要内容是软件开发管理和_______两个方面。
9.软件工具是支持软件开发人员的开发和维护活动而使用的________。
10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。
三、选择题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.1/2B.1/3C.1/4D.2/37.软件开发中大约要付出( )%的工作量进行测试和排错。
A.20B.30C.40D.508.准确地解决“软件系统必须做什么”是( )阶段的任务。
A.可行性研究B.需求分析C.详细设计D.编码9.软件生存周期中最长的是( )阶段。
A.需求分析B.概要设计C.测试D.维护四、简答题1.软件产品的特性是什么?2.软件生产有几个阶段?各有何特征?3.什么是软件危机?产生的原因是什么?4.软件工程的性质、目标和内容是什么?5.软件工程面临的问题是什么?6.软件工程过程有哪些过程?7.软件生存周期有哪几个阶段?8.软件生存周期模型有哪些主要模型?9.有哪些主要软件开发方法?参考答案二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计8.软件开发技术9.软件10.开发方法三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D第二章一、名称解释1.可行性研究2.技术可行性3.经济可行性4.社会可行性5.货币时间价值6.投资回收期7.纯收入8.系统流程图二、填空题1.可行性研究的目的是用最小的代价,在尽可能短的时间内,确定________。
软件工程导论试题(整理)
软件工程导论试题(整理)软件工程导论试题(整理)1. 什么是软件工程?软件工程是一门研究如何以系统化、规范化和可预测的方式开发和维护软件的学科。
它关注的是软件的生命周期过程,包括需求分析、设计、编码、测试、部署和维护等阶段。
2. 软件过程模型有哪些?各有什么特点?(1)瀑布模型:将软件开发过程划分为需求分析、设计、编码、测试和维护等阶段,每个阶段的输出作为下一个阶段的输入。
特点是各个阶段之间严格线性顺序,适用于需求变动较少的项目。
(2)迭代模型:将软件开发过程划分为若干迭代周期,每个迭代周期包含需求分析、设计、编码和测试等阶段。
特点是每个迭代周期都可以得到可运行的软件版本,适用于需求变动较大的项目。
(3)螺旋模型:将软件开发过程划分为若干个循环迭代阶段,每个阶段依次进行需求分析、风险评估、开发和测试等活动。
特点是针对风险进行及时评估和控制,适用于复杂或高风险的项目。
(4)敏捷模型:以个体和交互更甚于流程和工具的方式,强调灵活适应需求变化并迅速交付可用软件的开发方法。
特点是迭代、增量式开发,强调团队协作和反馈,适用于需求易变或创新性强的项目。
3. 请简述软件需求分析的过程。
软件需求分析是确定和明确用户对软件系统的需求的过程。
其主要步骤包括:(1)需求获取:通过与用户、利益相关者进行沟通、访谈、观察等方式,收集软件需求。
(2)需求分析:对收集到的需求进行整理、分类、澄清和详细化,同时识别需求之间的关联和优先级。
(3)需求建模:使用适当的技术和工具,将需求转化为可视化的模型,如用例图、活动图、状态图等。
(4)需求验证:与用户和利益相关者共同验证需求是否准确、完整、一致和可行。
(5)需求管理:在整个软件开发生命周期中,跟踪、变更和控制需求,确保满足客户的期望和项目的目标。
4. 什么是软件架构?软件架构设计的目标是什么?软件架构是指软件系统中各个组件的组织方式和相互关系,包括系统的结构、行为和属性等。
软件架构设计的目标是为了实现软件系统的可靠性、可维护性、可扩展性、可重用性和性能等方面的要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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 转换为初始化的模块结构图图中:左竖虚线表示此处为系统的逻辑输入右竖虚线表示此处为系统的逻辑输出A 57-1 )B1 2CDGM4 73 EX6H NY5 89Z 57-2 )a1dbj u102fc e 435g 67i98k xvZ1211yk2 9l 57-3 ), 专业.专注.(58) 将下面的伪码转换为PAD 和N-S 图beginS1;If x>5 then S2 else S3;w h ile y<0 do beginif z>3 then S4 else S5;while w>0 then S6;S7end;S8;If u>0 then S9;S10;End.(59) 将下面的PAD 转换为流程图startS1A1A>0A<=0A2B1While L B>0B<=0B2C1C>0C<=0C2B4 B3S2end(60) 将下面给出的伪码,转换为PAD 图和程序流程图。