文档库 最新最全的文档下载
当前位置:文档库 › 软件工程作业答案

软件工程作业答案

软件工程作业答案
软件工程作业答案

软件工程网上作业题

第1 章软件工程学概述

、选择题

1. 软件危机具有下列表现()

1. 对软件开发成本估计不准确

II 、软件产品的质量往往不可靠

III 、软件常常不可维护

IV 、软件成本逐年上升

A. I、II 和III B . I、III 和IV

C.II 、III 和IV D .以上都正确

答案:D

2. 产生软件危机的原因可能有()

I 、用户需求描述不精确、不准确

II、对大型软件项目的开发缺乏有力的组织与管理

III 、缺乏有力的方法学和工具的支持

IV、软件产品的特殊性和人类智力的局限性

A.I 和II B.I、II 和IV

C.II 、III 和IV D .以上都正确

答案:D

3. ()分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。

A. 增量模型 B ?喷泉模型C ?原型模型D.螺旋模型答案:A

4. 为了克服软件危机,人们提出了用()的原理来设计软件,这就是软件工程诞生的基础。

A. 数学

B. 软件学

C. 运筹学

D. 工程学

答案:D

4、TURBO PASCAL 是()软件。

A. 系统软件

B. 人工智能

C. 事务软件

D. 应用软件

答案:D

6.具有风险分析的软件生存周期模型是()

A. 瀑布模型

B. 喷泉模型

C.螺旋模型

D.增量模型

答案:C

7. 瀑布模型的关键不足在于()

A .过于简单

B .不能适应需求的动态变更

C .过于灵活

D .各个阶段需要进行评审

答案:B

8 .软件危机是指( )。 A.软件遭到破坏 C. 软件维护出现困难 答案: B

9. 软件的复杂性是( ),它引起人员通信困难、开发费用超支、开发时间超时等问题。 A. 固有的 B. 人为的 C. 可消除的 D. 不可降低的 答案: A

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

A. 软件过程

B. 软件测试 C .软件生存周期 D .软件工程 答案: D 11 .软件的主要特性是 ( )。

A. 高性能

B. 高成本

C. 包括程序和文档

D. 可独立构成计算机系统

答案: B

12 .软件开发方法的主要工作模型有 ( )

A. 螺旋模型

B. 循环模型

C. 瀑布模型

D. 专家模型 13 .软件工程三要素是 (

)。

A. 高技术人员、方法和工具

B. 方法、工具和过程

C. 方法、对象和类

D. 过程、模型、方法 答案: B 14 .软件工程的目标有 (

)。

A. 易于维护

B. 低的开发成本

C. 高性能

D. 短的开发期 答案: B 15 .软件工程学的目的和意义是 (

)。

A. 应用科学的方法和工程化的规范管理来指导软件开发

B. 克服软件危机

C. 做好软件开发的培训工作

D. 以较低的成本开发出高质量的软件 答案: D

16. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( )

A. 软件工程

B. 软件周期

C. 软件危机

D. 软件产生 答案: C 17. 快速原型模型的主要特点之一是

( )

A. 开发完毕才见到产品

B. 及早提供全部完整的软件产品

C. 开发完毕后才见到工作软件

D. 及早提供工作软件

答案: D

18 .瀑布模型的存在问题是(

)

A ?用户容易参与开发 B

.缺乏灵活性

C .用户与开发者易沟通

D .适用可变需求

答案: B

19 、软件生存周期模型不包括: (

)

A. 瀑布模型

B. 对象模型

C. 增量模型

D. 喷泉模型

答案: B

B. 软件开发和维护过程中遇到的问题 D. 软件不能正常运行系列问题

20. 下列哪个不属于软件工程的内涵之一 ( ) A.

应用完善的科学与工程原理 B.经济地开发软件 C. 高薪聘请软件高手 D. 开发既可靠又能有效运行的软件

答案: C

21 .在瀑布模型中, 将软件划分为若干个时期, 软件项目的可行性研究一般归属于 ( )

。 A. 维护时期

B.计划时期

C.运行时期

D.开发时期

答案: B

22. 下列哪个办法不属于解决软件危机的途径之一 ( )

A. 研制新一代智能计算机

B. 大力扶持软件企业

C. 采用软件工程的解决途径

D. 采用面向对象的软件设计方法

答案: B

23 .下面哪一项不属于快速原型模型的优点。 A ?可及早为用户提供有用的产品。

B. 可保证在开发后期,全面发现错误给以纠正。

C. 减少技术应用风险,缩短开发时间,减少费用、提高生产率。

D. 促使用户主动参与开发活动,促进各类人员的协调,适应需求变化。 答案: B 24 .下列哪个不属于瀑布模型与传统的程序设计的不同之处( )。

A. 传统的程序设计开发人员只开发程序 ,不写文档?

B. 传统的程序设计重点在问题求解和算法

,并只有自己才能读懂 .

C. 瀑布模型的各阶段要第三方介入审察

D. 传统的程序设计规定各阶段必须写文档 . 答案: D

25 .下面哪个模式不属于软件工程的开发模式

二、填空题

1. 软件工程学的内容可包括( )、结构、( )、( )、环境、管理、规范等。

答案:理论 方法 工具

2. 软件生存周期一般可分为问题定义、 ( )、( )、设计、( )、测试、运行与维护阶段。

答案:可行性研究 需求分析 编码 3. 软件=()+ ()。

答案: 程序 文档

4. 软件危机的事实使人们意识到:计算机要推广使用,其关键在于( )技术的革

新。 答:软件开发

5. 开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( )。

答:软件危机

6.软件危机出现于 _____ ,为了解决软件危机,人们提出了用 ______ 的原理来设计软件,这是 软

件工程诞生的基础。 答: 60 年代末 工程学

A.基于瀑布模型的开发模式 C. 基于人机对话的开发模式

答案: C

B. 基于原型模型的开发模式 D. 基于关系数据库的开发模式

7 .瀑布模型把软件生存周期划分为软件定义、软件开发和可细分为若

三个阶段,而每一阶段又

干个更小的阶段。

答:运行及维护

三、判断改错题

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

2 .瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。( ) x文档驱动

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

x两者无关

4 .软件危机的主要表现是软件的需求量迅速增加,软件价格上升。( )

x软件危机的主要表现:一方面是无法满足日益增长的对软件的需求;另一方面是难以满足对已有的软件系统维护的需要。

5.RCP 法与RSP 法的主要区别是,前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。( )

V

四、简答题

1. 当沿着螺旋模型的过程流路径向外移时,你认为正在开发或维护的软件发生了什么变化?

答:

在使用螺旋模型开发软件的过程中,从核心开始,螺旋的第一圈可能产生软件的规格说明,接下来的螺旋可能用于开发一个原型,随后是软件的更完善的版本。经过计划区域的每一圈是为了调整项目计划,基于从用户评估得到的反馈,调整费用和进度。沿螺旋线自内向外每旋转一圈,便开发出一个更为完善的、新的软件版本。

2. 快速原型模型有几种?各有何特点?

答:

根据原型的不同作用,有三类原型模型:⑴探索型原型。这种类型的原型模型是把原型用于开发的需求分析阶段,目的是要弄清用户的需求,确定所期望的特性,并探索各种方案的可行性。它主要针对开发目标模糊,用户与开发着对项目都缺乏经验的情况,通过对原型的开发来明确用户的需求。⑵实验型原型。这种原型主要用于设计阶段,考核实现方案是否合适,能否实现,对于一个大型系统,若对设计方案心中没有把握时,可通过这种原型来证实设计方案的正确性。⑶演化型原型。这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统的框或者包含系统的主要功能。在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统,它将原型的思路扩展到软件开发的全过程。

3.试说明"软件生存周期"的概念。

答:

软件生存周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。

(1 )计划阶段:确定待开发系统的总体目标和范围,研究系统的可行性和可能的解决方案,对资源、成本及进度进行合理的估算。软件计划的主要内容包括所采用的软件生命周期模型、开发

人员的组织、系统解决方案、管理的目标与级别、所用的技术与工具,以及开发的进度、预算和资源分配。

(2 )分析阶段:分析、整理和提炼所收集到的用户需求,建立完整的分析模型,将其编写成软件需求规格说明和初步的用户手册。通过评审需求规格说明,确保对用户需求达到共同的理解与认识。需求规格说明明确地描述了软件的功能,列出软件必须满足的所有约束条件,并定义软件的输入和输出接口。

(3 )设计阶段:设计阶段的目标是决定软件怎么做,设计人员依据软件需求规格说明文档,确定软件的体系结构,进而确定每个模块的实现算法、数据结构和接口等,编写设计说明书,并组织进行设计评审。

(4 )实现阶段:实现阶段是将所设计的各个模块编写成计算机可接受的程序代码,与实现相关的文档就是源程序以及合适的注释。

(5 )测试阶段:在设计测试用例的基础上,测试软件的各个组成模块。然后,将各个模块集成起来,测试整个产品的功能和性能是否满足已有的规格说明。

(6 )维护阶段:一旦产品已交付运行之后,对产品所做的任何修改就是维护。维护是软件过程的一个组成部分,应当在软件的设计和实现阶段充分考虑软件的可维护性。维护阶段需要测试是否正确地实现了所要求的修改,并保证在产品的修改过程中,没有做其他无关的改动。

5. 软件产品的特性是什么?

答:

a. 软件产品是一种逻辑产品。

b. 软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。

c. 软件产品不会用坏,不存在磨损、消耗问题。

d. 软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是"定做"的。

e. 软件费用不断增加,成本相当昂贵。

6. 什么是软件危机?其产生的原因是什么?

答:

软件危机:软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。

在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现在以下几个方面:

a. 经费预算经常突破,完成时间一再拖延。

b. 开发的软件不通满足用户要求。

c. 开发的软件可维护性差。

d. 开发的软件可靠性差。

软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引

起的:

a. 软件的规模越来越大,结构越来越复杂。

b. 软件开发管理困难而复杂。

c. 软件开发费用不断增加。

d. 软件开发技术落后。

e. 生产方式落后。

f. 开发工具落后,生产率提高缓慢。

7. 什么是软件工程?它的目标和内容是什么?

答:软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标:

a. 付出较低的开发成本;

b. 面到要求的软件功能;

c. 取得较好的软件性能;

d. 开发的软件易于移植;

e. 需要较低的维护费用;

f. 能按时完成开发任务,及时交付使用;

g. 开发的软件可靠性高;软件工程的内容:

1)软件开发技术:软件开发方法、软件开发过程、软件开发工具和环境。

2)软件开发管理:软件管理学、软件经济学、软件心理学。

8. 软件工程面临的问题是什么?

答:

软件工程面临的问题:

a. 软件费用。

b.软件可靠性。

c.软件维护。

d.软件生产率。

e.软件重用。

9. 什么是软件生存周期?它有哪几个活动?

答:软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。

软件生存周期包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等.

10. 什么是软件生存周期模型?有哪些主要模型?

答:

软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。(模型:是为了理解

事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。)

软件生存周期主要模型:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等

五、问答题

第 2 章可行性研究

、选择题

1. 系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括( )。

A ?软件环境可行性、技术可行性、经济可行性、社会可行性

B ?经济可行性、技术可行性、操作可行性

C ?经济可行性、社会可行性、系统可行性

D ?经济可行性、实用性、社会可行性

答案:B

2.研究开发所需要的成本和资源是属于可行性研究中的( ) 研究的一方面。

A.技术可行性

B. 经济可行性

C. 社会可行性

D. 法律可行性

答案:B

3.设年利率为i,若不计复利,n 年后可得钱数为 F ,则这些钱现在的价值是( )

A.F ( 1+in )

B. ( 1+ni) /F

C.F/ ( 1+ni)

D. F/ ( 1+n/ i )

答案:C

4. 在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于( )。

A. 维护时期

B.计划时期

C.运行时期

D.开发时期

答案:B

5 ? 数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成( )。

A. 数据说明条目、控制流条目、加工条目、数据存储条目

B. 数据流条目、数据项条目、数据存储条目、加工条目

C. 数据源条目、数据流条目、数据处理条目、数据文件条目

D. 数据流条目、数据文件条目、数据池条目、加工条目答案:B

6. DFD 图不反映出系统( )

A. 系统做什么

B. 系统功能如何实现

C. 系统由谁来做

D. 系统实现的约束条件答案:B

7. 下列模型属于成本估算方法的有( )

A. COCOMO 模型

B.McCall 模型

C.McCabe 度量法

D. 时间估算法答案:A

8. 软件项目计划一般不包括以下哪项内容( )

A 培训计划

B 人员安排

C 进度安排

D 软件开发标准的选择和制定答案:D

9. 可行性研究的目标是( ) 。

A. 开发项目

B. 项目值得开发否

C. 规划项目

D. 维护项目答案:B

10. 分层DFD 图是一种比较严格又易于理解的描绘方式,它的顶层图的作用在于( ) 。

A. 描绘了系统的实现细节

B. 表明了被开发系统的范围以及它和周围环境的数据交换关系

C. 描绘了系统的抽象

D. 描绘了软件实现的作者和绘制的时间答案:B

11. DFD 主要用来描述()。

A. 系统的信息及其联系

B. 系统做什么

C. 系统模拟的动态模型

D. 系统功能如何实现答案:B

12. 对软件复杂性进行度量时,采用代码行度量法,下列说法不正确的是()。

A. 每行代码的出错率与源程序行数之间不存在简单的线性关系

B. 对于少于100 行语句的小程序,源代码行数与出错率是线性相关的

C. 代码行度量法只是一简单的,估计的很粗糙的方法

D. 随着程序的增大,出错率以线性方式增长答案:D

13. 软件项目计划范围内容是对软件项目的综合描述,定义其所要做的工作以及性能限制。下列不属于软件项目计划范围内容的有()。

A. 硬件资源

B. 成本估算

C. 系统接口

D. 进度安排答案:C

14 .DFD 图反映系统()

A.怎么做 B .对谁做 C .何时做 D .做什么

答案:D

15 . 经济可行性研究的范围包括()

A .资源有效性

B .管理制度

C .效益分析

D .开发风险

答案:C

华南农业大学2008年第一学期工程制图试卷

华南农业大学期末考试试卷(A卷) 2008学年第一学期考试科目:工程制图 考试类型:(闭卷)考试时间:120 分钟 一.如图,补全直线AB、CD、EF的三面投影,并判别直线的空间位置。(9分) 二.在指定位置画出A-A,B-B,C-C移出断面图。(10分)

三、选择题。(13分) 1.在下列五组视图中,正确的两组视图是()。(4分) 2. 已知:轴的主视图和三个移出断面图的三种表达方案, 选择:正确的移出断面图。(在正确的移出断面图下方画√)(6分) (a) (b) (c) (a) (b) (c) (a) (b) (c)

3.选择正确的螺栓连接画法(在正确的图下方画√)(3分) (1) (2) (3) (4)四.补全下列各剖视图中漏画的图线。(17 分) 1.已知:组合体的部分投影, 补全:所缺的图线。(5分)

2.分析下列四组投影,指出哪些组投影有漏线,并补出。(6分) 3.看懂所给视图,分析立体的内外形状,根据剖视图画法的规定,补画出剖视 图中漏画的图线。(6分) 五.标注该组合体的尺寸,尺寸数值按1︰1从图中量取后取整数。(11分)

六.根据给出物体的主视图和俯视图,在指定位置将主视图画出半剖视图,左视图画出全剖视图。(18分)

七.看懂以下的零件图,回答下列问题:(22分) 1.该零件的名称为,材料是;该零件共用了个图形表达,它们是。(5分) 2.轴上键槽的长度和宽度分别是和,键槽的定位尺寸是。(2分) 3.中的¢30是,+0.015是, -0.002是,公差是。(3分)4.该零件有处倒角,尺寸为;有处砂轮越程槽,尺寸为。(3分) 5.说明主视图中标注的含义 。(3分)6.解释M12×1-6H的含义: 。(6分)

软件工程导论基础试题

一、填空 1、计算机软件不仅仅是程序,还应该有一整套(文档资料). 2、软件定义时期的最后一个工作阶段是(需求分析)阶段。 3、(快速原型)模型的基本特性是“快速”和“容易修改”。 4、信息流的类型主要包括(事务流)和(变换流)。 5、(判定表)适用于表示多重嵌套的条件选择。 6、我们通常采用的调试途径包括(蛮干法,回溯法和原因消除法)。 7、程序流程图中的箭头代表(控制流) 8、内聚程度较低的是(偶然)内聚。 9、软件工程方法学三要素(方法,工具,过程). 10、可行性分析至少应从(经济,技术,操作)三方面研究每种解法的可行性。 11、(可行性研究)的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否 能够开发,是否值得开发。

12、在大型数据处理系统的功能分析与设计中,同时进行数据分析和数据设计。数据 库的“概念设计”与“逻辑设计”分别对应于系统开发中的(总体设计)和(需求分析 )阶段,而数据库的物理与模块的(详细设计)相对应。 13、模块之间联系越紧密,其耦合性就越(高),模块的独立性就越(低) 。 14、要把数据流图转换成软件结构,必须首先研究数据流图的类型,一般可分为事务 流和变换流两类。 15、动态测试方法中,根据测试用例设计方法的不同,分为(白盒测试和黑盒测试)。 16、软件产品在交付使用前一般要经过以下四步测试:(单元测试,集成测试,确认测 试和系统测试).对一些关系重大的系统,交付后并不立即投入生产性运行,还要经过 (平行运行)阶段

17、驱动模块的作用是用来模拟被测试模块的(上级调用模块),它只完成接收测试数 据,并把这些测试数据传送给被测试的模块,并且接收测试模块的(结果) 并输出。 18、桩(存根)模块用来代替被测试模块(所调用的模块),它的作用是返回被测试模 块所需信息。 19、软件结构是以(模块)为基础而组成的一种控制层次结构。 20.软件维护的内容包括(改正性维护,适应性维护,完善性维护和预防性维护). 二、选择 1.需求规格说明书的作用不应该包括(D )。 A、软件设计的依据 B、用户与开发人员对软件要做什么的共同理解 C、软件验收的依据 D、软件可行性研究的依据 2.软件测试方法中的静态测试方法之一为(A )A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析

软件工程导论期末考试题

一、单项选择题 1.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

软件工程导论课后习题答案95829882

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成” 是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 3.什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机? 软件工程是知道计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够

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

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 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. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

《工程制图》期末考试题(B卷)答案

《工程制图》期末考试题(B卷)答案 \班级:姓名:学号:_____________ 题目一二三四五六七总分登分签名得分 一、根据已知视图补画缺线:(每小题分,共10分) 二、根据立体图和主视图,补画俯、左视图所缺图线,未 知尺寸可在立体图上图上量取,取整数:(共10分)得分评卷员得分评卷员

三、(一)将主视图改画为全剖视图,左视图画为半剖视 得分评卷员图:(共15 分)

(二)补齐遗漏尺寸(按1:1的比例从图中量取后取整) (10分) 四、填空(每小题1分,共5分) 得分评卷员 1)画在视图之内的断面图称为重合断面图。 2)标题栏位于图纸的右下角。 3)内、外形都需要表达,而形状又基本对称时,采用半剖视图。半剖视图的标注方法与全剖视图相同。 4)为了把物体上某些结构在视图上表达清楚,可以将这些结构用大于原图形所采用的比例画出,这种图形称为局部放大图。

五、找出图中的错误, 并改正(画在图指定的位置上:(共10 分) 外螺纹内螺纹 六、看图回答问题(共40分) (一)选出正确的移出断面(2分) ( a )( d ) 得分评卷员 得分评卷员

(二) 上图所示零件上有 3 个螺纹孔和 2 几锥形孔;零件长、宽、高三个方向的最大尺寸是230 、30 、270 ;A-A剖视图是用 2 个平行剖切平面剖切后得到的全剖视图;主视图①处所指两个圆的直径分别是Ф104和Ф20。(10分) (三)看懂下面所示的油缸下盖零件图,完成下列问题:(8分) 1、主视图采用旋转剖切方法,右边的图形是左视图; 2、零件右右两端面比较,加工精度较高的是右端面; 3、主视图图内下部画出的阶梯孔,其大孔直径为14 ,深度为8 ;小孔直径为9 ,这种孔共有 4 个。 4、图中尺寸 50r6,查表可知其上下偏差为+0.0 5、+0.034,其公差为0.016 。

软件工程导论部分课后习题答案

第一章 1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 1-3 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。 1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 目前使用得最广泛的软件工程方法学(2 种): 1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 1-6 什么是软件过程?它与软件工程方法学有何关系? z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型 1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。 软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 瀑布模型的缺点:1.在软件开发初期,指明用户全部需求是困难的;2.需求确定后,经过一段时间才得到软件最初版本;3.完全依赖规格说明,导致不能满足用户需求。适用中小型项目。 快速原型模型的优点:1满足用户需求程度高;2用户的参与面广;3返工现象少快速原型模型的优点:不适用大型软件的开发适用于小型项目。 增量模型的优点:1短期内可以交付满足部分用户需求的功能产品;2逐步增加功能可以让用户去适应新产品;3开放式的软件可维护性比较好;4开始第一构件前,已经完成需求说明。 增量模型的缺点:1对现有产品功能造成破坏;2意义上的矛盾适用于中型软件的开发 螺旋模型的优点:1集成了瀑布模型、快速原型模型、增量模型的优点;2支持用户需求动态变化;3需求分析与软件实现紧密联系相互依赖;4原型作为刑式的可执行的需求规格说明,即利用用户和开发人员共同理解,又可作为后续开发的基础;5为用户参与决策提供方便;6提高目标软件的适应能力;7降低风险;8在大型软件开发过程中充分发挥优势。螺旋模型的缺点:1迭代次数影响开发成本,延迟提价时间;2找不到关键改进点,人才、物力、财力时间引起无谓消耗;3成于风险分析,败于风险分析。适用于内部开发的大规模软件项目。 1-8:为什么说喷泉模型叫好的体现了面向对象软件开发过程无缝和迭代的特性?

软件工程导论-期末题库(完整版)

1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符号表达了系统中各种元素之间的_____信息流动_____情况。 4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。 5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合”的原则,提高模块的_独立性。11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。 14.软件工程三要素包括_方法_、__工具___和__过程___,其中, _过程_支持软件开发的各个环节的控制和管理。 15.类构件的重用方式有_实力重用__、__继承重用______和_ 多态重用__三种。16.能力成熟度模型分为5个等级:初始级、____可重复____级、__已定义___级、____已管理__级和__优化____级。 2.判断题 1. 向滞后的项目中增加人手会使得项目更加滞后。(T)

工程制图期末考试试卷及答案

XXXXXXXXXXX2012-2013学年第(一)学期考试试卷 课程代码: 课程名称: 考试时间: 分钟 题号 一 二 三 四 五 总成绩 得分 阅卷教师签字: 一、填空题(总分 分,每空 分) 圆规是用来画 及 的工具。 投影的分类分为 投影和 投影两大类。 三面正投影图的作图方法中三等关系是 、 和 。 两点的相对位置是指空间两个点的 、 、 的关系。 投影面垂直线的投影特性:垂直于某一投影面,与另外两投影面都 的直线。 求平面立体截交线的方法有 和 两种。 局部投影图只是基本视图的一部分,其断裂边界应当用 表示。 建筑形体的尺寸分为 、 、 三类。 坐标系统有 坐标系统和 坐标系统两种形式。 建筑详图可分为 、 和构配件详图三类。 二、作图题(总分 分) 已知空间点 的坐标是( ),求作 点的三面投影。( 分)。 已知点的两面投影,求作第三面投影。( 分) 班 级 学 号 姓 名 密封装订线 密封装订线 密封装订线

已知直线的两面投影,求作第三面投影。( 分) 已知平面的两面投影,求作第三面投影。 分 已知四棱柱表面上 点的正面投影,求其另外两个投影。( 分)

已知物体的三视图,画出它的正等轴测图。( 分) 已知凹槽的三视图,画出它的正等轴测图。( 分)

已知物体的三视图,画出它的正等轴测图。( 分) 已知物体的三视图,画出它的斜二轴测图。( 分) 已知物体的两视图,补画第三视图。( 分)

工程制图( )卷参考答案 一、填空题(总分 分,每空 分) 圆 圆弧 中心 平行 长对正 高平齐 宽相等 上下 左右 前后 平行 交点法 交线法 波浪线 定形尺寸 定位尺寸 总体尺寸 测量 建筑 节点详图 房间详图 二、作图题(共 分) 分) ( 分)

软件工程导论第五章课后答案

软件工程导论第五章课后 答案 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第五章习题答案 1、为每种类型的模块耦合举一个具体例子。 答:耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的复杂程度,进入或访问某一模块的点,以及通过接口的数据,一般模块之间可能的连接方式有7种,构成耦合的7种类型,它们之间的关系为: 下面举例说明以上各种耦合: a.非直接耦合(Nondirect Coupling)在这种情况下,两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。例如在实数的运算中,有两个模块分别完成几个实数的求和,求乘积功能,这两个模块之间没有直接联系,只有在主模块调用中有执行的前后顺序而已,这个例子即属于非直接耦合。 b.数据耦合(Data Coupling)即一个模块访问另一个模块时,彼此之间是通过数据参数来交换输入,输出信息的,这种耦合为数据输入,输出信息的这种耦合为数据耦合。如有两个模块,其中A完成两个烽的比较,求出其中最大的并返回该值,模块B是完成了个数的比较,求出其中最大的并返回该最大值,为完成四个数的比较,模块B调用模块A即可完成,在这种调用关系中,模块A的运算结

果作为一个参烽参加B的运算,这两个模块之间即发生数据耦合。数据耦合是松散的耦合,模块间的独立性比较强。 c.标记耦合(Stamp Coupling),即一组模块通过参数传递记录信息,这就是标记耦合。事实上,这组模块共享了这个记录,它是某一数据结构的子结构,而不是简单变量。 d.控制耦合(Control Coupling)即一个模块通过开关标志,名字等控制住处明显的控制,选择另一模块的功能,这就是控制耦合,如下图所示,这一种耦合实质是在单一接口上实现选择多功能模块中的某项功能,如程序设计中用到多路选择结构即是最好的例子。e.外部耦合(External Coupling)即一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递全局数据结构,而且不是通过参数表传递全局变量的信息。如C语言中都访问被说明为extern类型的外部变量的各个模块之间即发生外部耦合。外部耦合引起的问题类似于下面要介绍的公共耦合,区别在于外部耦合中不存在依赖于一个数据结构内部各项的物理安排。f.公共耦合(Common Coupling)若一组模块都访问同一个公共数据环境,则它们之间的耦合就是公共耦合。公共的数据环境可以是全局的数据结构,共享的通信区,内存的公共覆盖区等。如几个模块对同一个数据库的查询就属于这种耦合。公共耦合可以分为松散的公共耦合和紧密的公共耦合,其中松散的公共耦合是单向操作,如两个或多个模块对同一个文件的读操作;而紧密的公共耦合是双

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

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)软件测试是软件件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?

软件工程导论期末考试简答题

简答题 1、什么是软件工程?它目标和内容是什么? 软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。软件工程内容:包括开发技术和开发管理两个方面。 2、软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发? 软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。 其中喷泉模型、统一软件过程适用于面向对象的软件开发。 3、什么是结构分析方法?该方法使用什么描述工具? 结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。 4、什么是软件概要设计?该阶段的基本任务是什么? 把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或结构设计。 基本任务:⑴设计软件系统结构⑵进行数据结构及数据库的设计⑶编写概要设计的文档⑷评审 5、软件维护有哪些内容? (1)校正性维护。在软件交付使用后,一些隐含的错误在某些特定的使用环境下会暴露出来。为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。 (2)适应性维护。为了使应用软件适应计算机硬件、软件环境及数据环境的不断发生的变化而修改软件的过程称为适应性维护。 (3)完善性维护。为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。 (4)预防性维护。为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。 6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系? 软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试。 单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计文档。 集成测试是为了检查与设计相关的软件体系结构的有关问题,也就是检查概要设计是否合理有效。 确认测试主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。 系统测试是把已确认的软件与其他系统元素(如硬件、其他支持软件、数据、人工等)结合在一起进行测试。以确定软件是否可以支付使用。 7、什么是软件生存周期?它有哪几个活动? 软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。 包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。 8、衡量模块独立性的两个标准是什么?各表示什么含义? 内聚和耦合。内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。 耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。 9、什么是结构分析方法?结构化分析方法通过哪些步骤来实现? 结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。实现的步骤:⑴了解当前系统的工作流程,获得当前系统的物理模型。⑵抽象出当前系统的逻辑模型。⑶建立目标系统的逻辑模型。⑷作进一步补充和优化。

吉林大学,土木工程制图试卷A

吉林大学2012-2013学年度上学期 《土木工程制图 》期末考试试题A (考试时间:90分钟) 题号 一 二 三 总分 分数 20 20 60 得分 1.图样上的尺寸由 、 、 、 组成。 2.正投影规律的三个重要关系为 、 、 。 3.两倾斜平面相交,求交线的方法有 和 等。 4.如图1.4所示,直线AB 的坡度i= ,直线AB 的间距l= ,直线AB 上点C 的标高为 。 5.补作出图1.5的直线AB 的第三投影,该直线的位置名称为 。 6.如图1.6所示,B 点在A 点的右方20,前方10,上方15.作出B 点的三面投影,B 点的坐标为 。 7.补作出图1.7的平面ABC 的第三投影,该平面的位置名称为 。 得分 评卷人 一、填空 (每空1分,共20分) 学号 专业 姓名

8.三面投影图为正面投影、 和 。 1.点的投影变化规律是什么? 2.平行投影的基本性质是什么? 3.投影面垂直线的投影特性是什么? 4.直线的刻度、直线的坡度及平面的坡度比例尺的概念。 1.如图3.1所示,设正平线AB 距V 面为10,B 点在A 点右上方,α=30°,实 长30,;铅垂线CD 距W 面为5,D 点在C 点下方,实长为20.作AB 和CD 的三面投影。(6分) 得分 评卷人 二、简答 (每题5分,共20分) 得分 评卷人 三 作图 (共60分)

2.如图 3.2所示,作交叉直线AB 和CD 的公垂线MN ,并标明两交叉直线的距离。(6分) 3.如图3.3所示,补全平面五边形ABCDE 的两面投影。(6分) 4.如图3.4所示,求作两平面的交线,并判别可见性。(7分) 5.如图3.5所示,求直线MN 与平面ABC 的交点K ,并判别可见性。(7分)

软件工程导论作业答案

学号_31009210** 姓名_朱某某班级_软件10* 作业一 1.什么是软件危机?它有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产速率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面比较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价俱增。在软件“已经完成”时再引入变动,当然付出的代价更高。一个故障时代码错误造成的,有时这种错误时不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。 3.什么是软件工程?他有哪些本质特征?怎样用软件工程消除软件危机? 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效的维护它,这就是软件工程。 本质特征: 软件工程关注于大型软件的构造 软件工程的中心课题是控制复杂性 软件经常变化 开发软件的效率非常重要 和谐地合作是开发软件的关键 软件必须有效支持它用户

软件工程导论期末试题A(带答案)

评阅教师得分四川大学期末考试试题(闭卷)(2014~2015学年第1学期) 课程号: 311078040 课程名称:软件工程导论(A卷)任课教师:洪玫,刘东权,李旭伟等 适用专业年级:软件工程 2013级学号:姓名: 2. 请将答案全部填写在本试题纸上; 3. 考试结束,请将试题纸、添卷纸和草稿纸一并交给监考老师。 ????????????????????????????? 一、单项选择题(本大题共20小题,每小题1分,共20分) 提示:在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在 下表中。错选、多选或未选均无分。 1. Software is the collection of ( ). (A) Programs (B) Data (C) Documents (D) All of above 2.Which of the items listed below is not one of the software engineering layers? ( ) (A) Process (B) Methods (C) Tools (D) Manufacturing 3.The prototyping model of software development is ( ). (A) A reasonable approach when requirements are well defined. (B) The best approach to use for projects with large development teams. 注:试题字迹务必清晰,书写工整。本题共11页,本页为第1页

【信息化-精编】软件工程导论课后习题详细答案

软件工程导论课后习题详细答案

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。(2)软件产品的质量往往靠不住。(3)一般软件很难维护。(4)软件生产效率很低。(5)软件开发成本越来越大。(6)软件成本与开发进度难以估计。(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.为什么会产生软件危机? (1)开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3)尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 3.怎样克服软件危机? (1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2)推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3)根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。 5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。 5-1。(1)在1985年对计算机存储容量的需求,估计是 如果字长为16位,则这个存储器的价格是 ● ●(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。 ●在1985年一名程序员每天可开发出10条指令,如果每月有20个工作日,则每人每月可开发出10×20条指令。 ●为了开发出4474263条指令以装满存储器,需要的工作量是: ●程序员的月平均工资是4000美元,开发出4474263条指令的成本是 ●(3)在1995年对存储容量的需求估计为: ● 7 4080e =4472.0048.01974 1985??=-P )19601995(28.04080-=e M

软件工程导论试题

软件工程导论试题 一.选择 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.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的(信息流动)情况。 [解析]系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 [解析]成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和(宽度优先策略)。 [解析]渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块。它从主控模块开始,按照软件的控制层次结构,以深度优先或宽度优先的策略,逐步把各个模块集成在一起。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 [解析]在基本路径测试中,以详细设计或源程序为基础,导出控制流程图的拓扑结构——程序图,在计算了程序图的环路复杂性之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。 25.汇编语言是面向(机器)的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 [解析]汇编语言属于低级语言,是一种面向机器的语言,它与高级语言相比有许多优越性:如操作灵活,可以直接作用到硬件的最下层,完成与外部设备的接口工作等,是能够利用计算机硬件特性直接控制硬件设备的唯一语言。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 [解析]JSP方法是面向数据结构的设计方法。它定义了一组以数据结构为指导的映射过程,根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,在JSP方法中解决结构冲突的具体办法是引入中间数据结构或中间文件,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 [解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。 28.所有软件维护申请报告要按规定方式提出,该报告也称(软件问题)报告。 [解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。

相关文档
相关文档 最新文档