文档库 最新最全的文档下载
当前位置:文档库 › 第2章 软件过程(习题与参考答案)

第2章 软件过程(习题与参考答案)

第2章 软件过程(习题与参考答案)
第2章 软件过程(习题与参考答案)

https://www.wendangku.net/doc/d89405404.html,/c?m=9f65cb4a8c8507ed4fece763105392230e54f7396b95c7150995d55f93130a1c1871e3cc7 67e0d4289842b7a41f80801adb067252a546ae0db99d30b8afa8f2838885076264892044f934fa0dc3652d6569b4d98 ad0e93cce733e3b9a3a3c82454dd22046df4f59c5b7003ba6fe76441f4a7e95f642907c99c27648f4e072e885246a146 89f7426510f580ca2c4dd45ba17610e7b844b62961b404d21d0c5532b74dc11f2723279744308f372a75e6fc5c973d08 3334c643a4cfc0a19a499bdd9a26e8fddcde29826196d29bfc66357b458a51a9dfb9&p=c9759a44c79201ee34be9b7f5 b&user=baidu

第2章软件过程(习题与参考答案)

[选择题]

1. ( )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明,软件

设计与开发,软件确认,软件改进等活动组成.(A)

A. 软件过程

B. 软件工具

C. 软件产品

D. 软件工程

2. 软件过程的基本活动是( ).(A)

A. 分析,设计,实现,测试,演化

B. 沟通,计划,建模,构造,部署

C. 计划,分析,设计,实现,调试

D. 沟通,风险管理,度量,产品化,评审

3. ( )软件需求规格说明书在软件开发过程中具有重要的作用,它是软件可行性分析

的依据.(B)

A. 真

B. 假

4. 软件开发的瀑布模型是( ).(A)

A. 适用于需求被清晰定义的情况

B. 一种需要快速构造可运行程序的好方法

C. 最适合于大规模团队开发的项目

D. 已不能用于现代环境的过时模型

5. 软件开发的增量模型是( ).(B)

A. 适用于需求被清晰定义的情况

B. 一种需要快速构造核心产品的好方法

C. 最适合于大规模团队开发的项目

D. 一种不适用于商业产品的创新模型

6. 快速原型开发模型是( ).(B)

A. 适用于客户需求被明确定义的情况

B. 适用于客户需求难以清楚定义的情况

C. 最适合于大规模团队开发的项目

D. 很难产生有意义产品的一种冒险模型

7. 演进式软件过程模型( ).(D)

A. 本质上是迭代的

B. 可以很容易适应需求的变化

C. 通常不会抛弃所产生的系统

D. 以上所有选项

8. 螺旋模型( ).(C)

A. 在软件产品发布时结束

B. 比增量模型更加混乱

C. 在每一次迭代过程中包含项目风险评价

D. 以上所有选项

9. 基于组件的开发模型( ).(C)

A. 只适用于计算机硬件设计

B. 不能支持可重用组件的开发

C. 在面向对象技术获得支持的情况下应用得更好

D. 增加了开发风险和成本

10. 形式化方法模型是将数学方法用于( ).(D)

A. 定义计算机系统的规格说明

B. 开发无错误的计算机系统

C. 验证计算机系统的正确性

D. 以上所有选项

11. 下面的( )不是RUP模型的阶段.(D)

A. 启动阶段

B. 精化阶段

C. 构造阶段

D. 确认阶段

[练习题]

1. 请简要说明软件过程的概念和基本元素.

答案要点:

软件过程是软件工程人员为了获得软件产品在软件工具支持下实施的一系列软件工程活动,它

应该明确定义以下元素:

『过程中所执行的活动及其顺序关系

『每一个活动的内容和步骤

『团队人员的工作和职责

2. 请描述快速原型过程模型的各个阶段.

答案要点:

快速原型方法的目的是解决软件需求不明确给开发带来风险的问题,其关键在于尽可能"快速"

地建造原型,通过用户对原型的评价最终确定系统的需求.

快速原型过程模型包括以下阶段:

『原型需求分析:分析和提炼所收集到的客户需求;

『原型开发:基于初步的需求快速建造一个可以运行的软件原型,实现客户或未来的用户与

系统的交互;

『原型评价:由用户或客户对该原型进行评价,需要的话再进一步细化待开发软件的需求,

并继续调整原型直至需求确定下来为止.

3. 对于下列每一个过程模型,分别列举一个可以适用的具体软件项目,并说明在

开发中如何应

用该模型.

(1) 瀑布模型

(2) 快速原型模型

(3) 增量模型

(4) 形式化方法模型

(5) 基于组件的开发模型

答案要点:

(1) 瀑布模型

项目举例:某项目需要在一种新型机器上,为一种已知语言开发一个普通的编译器.

选用分析:由于该项目的语言是已知的,需求是明确的和稳定的,整个系统属于中小规模,

因此适合采用瀑布模型进行软件开发.

阶段说明:略.

(2) 快速原型模型

项目举例:某公司需要给火车站开发一个交互式火车车次查询系统,这是火车站首次使用该

系统.

选用分析:本项目的主要问题在于用户需要方面,该系统与最终用户的交互是十分关键的,

但是在项目初期用户的需求基本上是不知道的,因此适合采用快速原型方法来确定用户需

求,在需求确定的基础上再开发最终系统.

阶段说明:略.

(3) 增量模型

项目举例:某公司开发一个通用CAD软件产品,产品需求是逐步完善的,某些需求在一定

范围内是明确的,某些需求需要进一步细化,但是迫于市场竞争的压力产品需要尽快上市.

选用分析:通用CAD软件产品具有一定的成熟度,总体需求和软件系统结构是可以确定的,

但是实现该产品所有功能需要比较长的开发周期.为了尽快上市可以采用增量模型实行多版

本的发布策略,既可以很快占领市场又可以为后续版本的需求定义奠定基础. 阶段说明:略.

(4) 形式化方法模型

项目举例:某公司开发一个汽车防抱死刹车控制系统.

选用分析:由于该系统对安全性和可靠性要求极高,需要在系统运行之前进行相关性能的检

验,因此适合采用形式化方法开发该系统.

阶段说明:略.

(5) 基于组件的开发模型

项目举例:某公司开发企业管理ERP系统,包括销售,库存,生产,财务,物流,人力

源等部分,在系统实施过程中不同的企业具有一定的需求差异.

选用分析:企业ERP系统具有组件化的结构,在不同企业实施时应该尽量重用已有的组件,

因此适合采用基于组件的开发模型开发该系统,在直接应用或者修改使用的基础上,最终进

行组件开发和系统集成.

阶段说明:略.

4. 在螺旋模型中,风险分析的作用是什么

答案要点:

在螺旋模型中,软件开发是在风险等级的指导下进行的.首先确定该阶段的目标,完成这些目

标的选择方案及其约束条件;其次从风险角度分析方案的开发策略,努力排除各种潜在的风险,在

需求不适当的情况下可能需要建造原型系统;如果某些风险不能排除,该方案可能立即终止,否则

继续启动下一步的软件开发和验证工作,并再次通过风险分析规定过程遵循的策略;最后,评价该

阶段的结果,并规划下一个迭代.

从上述过程中可以看出,风险分析的作用是通过识别项目中的高风险问题,使开发人员制定适

当的开发策略消除这些风险.

5. 某大学准备开发一个新的学生注册选课系统,以替换一个现有的系统.请设计一个适用于该

系统开发的过程模型,并进一步描述该模型.

答案要点:

假设原有的学生注册课程系统是由学生手工提交书面选课单,教师手工提交成绩单,教务管理

人员在客户端录入学生选课结果和课程成绩;而在新的选课系统中,所有用户在自己的计算机上通

过Internet访问和操作该系统,该软件系统需要更新服务器和数据库等系统,并扩充一些新功能和

提高系统性能.

从该系统的具体情况来看,系统的需求是比较容易明确的,整个系统的结构需要重新设计,但

是原有的遗留系统中有些部分是可以重用的,因此我们可以采用组件模型实施软件开发:

『系统需求分析:由于该系统是现有系统的扩展,因此首先可以经过一个简单的需求分析阶

段,从而确定新系统的需求.

『遗留系统分析:在需求确定的基础上,开发人员分析遗留系统并研究新系统的总体结构,

选择重用原有的课程信息管理部分,重新开发选课部分,必要时适当修改系统需求,最终

确定系统需求和总体结构.

『设计开发阶段:开发人员进一步设计相关子系统,将原有的课程信息管理部分封装为子系

统,重新开发学生选课子系统,并实现与外部付费系统的接口.

『系统测试阶段:开发人员将所有子系统集成在一起,交给测试人员开始全面的功能测试和

性能测试.根据所报告的测试问题,开发人员调试和修改程序.

『系统交付阶段:测试通过后,开发人员将系统及其相关文档交付用户验收.

6. 请举例说明不同的过程模型组合使用的情况.

答案要点:

在前面提到的企业管理ERP系统项目中,可以将快速原型方法,组件开发模型和增量模型组

合在一起使用,即在需求分析阶段采用原型方法确定需求,采用组件化的结构设计整个系统,并采

用增量方式逐步交付整个系统.

常用工具软件课后习题及答案

模块一工具软件概述 一、选择题 1. 以下哪一种软件属于系统软件( B ) A. 办公软件 B. 操作软件 C. 图形图像软件 D. 多媒体软件 2. 以下哪一种软件不属于办公软件( A ) A. MySQL Server B. 金山WPS C. 永中Office D. 红旗贰仟RedOffice 3. 以下哪一种软件版本不属于正在测试的版本( C ) A. Alpha版 B. Beta版 C. Cardware版 D. Demo版 4. 以下哪一种软件授权允许用户自行修改源代码( D ) A. 商业软件 B. 共享软件 C. 免费软件 D. 开源软件 5. 保护软件知识产权的目的不包括(D)。C A. 鼓励科学技术创新 B. 保护行业健康发展 C.与国际接轨 D. 保护消费者的利益 二、思考题 1.系统软件都包括哪些类别为每个类别举出一个实例。 【参考答案】系统软件的作用是协调各部分硬件的工作,并为各种应用软件提供支持,使计算机用户和其他软件将计算机当作一个整体,不需要了解计算机底层的硬件工作内容,即可使用这些硬件实现各种功能。系统软件主要包括操作系统和一些基本的工具软件。 (1)操作系统,如Windows XP (2)编译软件,又被称作集成开发环境,如Microsoft Visual Studio (3)其他系统软件,除了操作系统和编译软件外,如Windows优化大师、Norton Ghost、 【参考答案】版本号就是版本的标识号。每一个软件都有一个版本号。版本号能使用户了解所使用的软件是否为最新的版本以及它所提供的功能与设施。每一个版本号可以分为主版本号与次版本号两部分。目前流行的版本号主要包括3种风格。 ① GNU(一种开源和自由软件的计划)风格 版本号格式:主版本号.子版本号[.修正版本号[编译版本号]] 示例 : , build-13124。 ② Windows风格 版本号格式:主版本号.子版本号[修正版本号[.编译版本号]] 示例 :如 2build-3300 ③ .NET Framework风格 版本号格式:主版本号.子版本号[.编译版本号[.修正版本号]] 示例 : 3.大多数软件在安装过程中都包括哪些步骤 【参考答案】在获取软件之后,即可安装软件。在Windows操作系统中,工具软件的安装通常都是通过图形化的安装向导进行的。用户只需要在安装向导的过程中设置一些相关的选项即可。大多数软件的安装都会包括确认用户协议、选择安装路径、选择软件组件、安装 【参考答案】专有软件,又称非自由软件、专属软件、私有软件等,是指由开发者开发

软件测试技术习题参考答案

第1章软件测试概述 1、简述软件缺陷的含义。 答:软件缺陷是软件开发过程中潜在的缺陷,这些缺陷可能在软件运行后出现,因而使软件的性能和可靠性等方面与系统的设计需求不符。 2、说明软件缺陷、软件错误和软件失败的关系。 答:缺陷、缺点、偏差统称为缺陷,是软件故障的根源;错误、谬误、问题、异常、矛盾等统称为错误,软件错误出现的原因是软件缺陷所致;失败、事故、灾难统称失败,失败的直接原因是软件系统存在软件错误。 14、“软件测试是有风险的工作”,试解释这种说法的含义。 答:软件不测试,就会有风险;软件测试,同样也会有风险。因为,软件是个复杂的系统,其复杂性体现在软件实现的内容复杂性、开发过程的复杂性和组织工作的复杂性等方面。而软件测试的目的是为了发现故障,并加以排除。对一个复杂的软件系统来说,故障的排除往往可能又带来新的软件缺陷。所以,软件测试又会带来一定的风险。 第2章软件测试基础 2、条件覆盖是否高于判断覆盖的逻辑覆盖程度如果不是,请给出反例加以说明。答:条件覆盖是高于判断覆盖的逻辑覆盖程度。 a、用条件覆盖所设计的测试用例可使得程序中的每一个判断的每一个条件的可能取值至少执行一次。 b、用判断覆盖所设计的测试用例可使被测程序中的每个判断的真分支和假分支至少经历一次。 每个判断语句可能包含多个条件(比如,if(A>3 && B<7)……)。条件覆盖针对判断语句的每一个条件的所有可能取值编写测试用例;判断覆盖只针对每一个判断语句整体的所有可能取值编写测试用例。所以,条件覆盖的逻辑覆盖程度高于判断覆盖。 4、已知某种计算机程序设计语言的标识符语法规则规定“标示符是由非数字开头的,有效字符数为32个,最大字符数为128个的任意符号串”。试用等价类划分法设计测试用例。 答:(1)等价类划分

软件工程课后习题参考答案

1.简述软件开发的本质。 答:软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。P19 2.简述实施软件开发的基本途径。 答:实施软件开发的基本途径是系统建模。所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。P19 3.简述何谓模型以及软件开发中所涉及的模型。 答:模型是一个抽象。该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。 软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。 4.简述软件开发所涉及的两大类技术。 答:软件开发所涉及的两大类技术为:一是求解软件的开发逻辑,二是求解软件的开发手段。 5、简述需求与需求规约的基本性质。 答:需求的基本性质:1) 必要的,该需求是用户所要求的。2)无歧义的,该需求只能用一种方式解释。3)可测的,该需求是可进行测试的。4)可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。5)可测量的,该需求是可测量的。 需求规约的基本性质:1)重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级。2)可修改的:在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。 3)完整的:没有被遗漏的需求。4)一致的:不存在互斥的需求。 6、简述软件需求的分类。

答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可 7、举例说明功能需求和非功能需求之间的基本关系。 答: 非功能需求可作用于一个或多个功能需求,例如 非功能需求可作用于一个或多个功能需求 其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。P24 8、有哪几种常用的初始需求发现技术 答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。P26 9、简述需求规约的3种基本形式。 (1) 非形式化的需求规约。非形式化的需求规约即以一种自然语言来表达需求规约,如同使用一种自然语言写了一篇文章。(2) 半形式化的需求规约。半形式化的需求规约即以半形式化符号体系(包括术语表、标准化的表达格式等)来表达需求规约。(3)形式化的需求规约。形式化的需求规约即以一种基于良构数学概念的符号体系来编制需求规约,一般往往伴有解释性注释的支持。 P29 10、简述软件需求规约的内容和作用。 答:软件需求规约的内容有:引言、总体描述、特定需求、附录、索引。P28 需求规约的作用可概括为以下4点:1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。2)对于项目的其余大多数工作,需求规约是一个管理控制点。3)对于产品/系统的设计,需求规约是一个正式的、受控的起始点。4)需求规约是创建产品验收测试计划和用户指南的基础。P31 11、简述需求规约在项目开发中的基本作用。 答:需求规约的作用可概括为以下4点:1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。2)对于项目的其余大多数工作,需求

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

第一章 1.计算机系统是由计算机硬件系统和软件系统这两个密不可分的部分组成的。 2.计算机软件系统通过运行程序来实现各种不同应用,包括用户为自己的特定目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序运行的系统程序、管理和控制机器系统资源的程序等。 3.在软件工程学中,软件开发技术包括软件开发方法学、软件工具和软件工程环境。 4.在软件工程层次结构中,包括工具层、方法层、过程、技术层和质量保证层。 5.在面向对象概念中,消息传递是其与外部世界相互关联的唯一途径。 第三章 1.软件需求分析,可以把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础。 2.软件需求工作基本上包括收集用户、市场等方面对项目的需要,经过分析建立解题模型,细化模型,抽取需求。 3.结构化分析方法的基本步骤是采用由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,绘制数据词典和加工说明;最终写出软件需求和规格说明书。 4.面向对象分析方法总是从理解系统的“使用实例”开始,基本步骤是:定义系统的用例,在领域分析的基础上建立问题域的类(对象模型),然后开始建立对象——关系和对象——行为模型。 5.需求分析评审过程由以下5个步骤组成:规划、准备、召开审查大会、修改缺陷、重审。 第四章 1.与软件需求分析一样,软件设计也有两种主要设计方法:以结构化设计为基础的结构化软件设计和面向对象方法指导的面向对象软件设计。 2.传统的软件设计任务通常分两个阶段完成。第一个阶段是概要设计,包括体系结构设计

和接口设计,并编写概要设计文档;第二阶段是详细设计,其任务是确定各个软件的数据结构和操作,产生描述各软件组件的详细设计文档。 3.结构化的软件设计方法是一种面向数据流的设计方法,在面向数据流的方法中,数据流是考虑一切问题的出发点。 4.在数据流图中所代表的结构化设计模型中,所有系统均可纳入两种典型的形式,因此系统结构图也有两种类型:变换型系统结构图,事务型系统结构图。 5.Jackson表示法包括图形描述(Jackson图)和文本描述(Jackson伪代码)两种形式。 第五章 1.与结构化设计一样,面向对象设计也是将分析阶段所建立的分析模型转变为软件设计模型,应用数据设计(对象属性设计)、接口设计(消息模型开发)以及过程设计(子系统级设计)。 2.当两个子系统相互通信时,可以建立客户机/服务器连接或端对端连接。 3.系统设计不仅包括主要的业务需求子系统设计,还包括用户界面子系统设计、任务管理子系统设计、数据管理子系统设计。 4.对象设计强调从问题域的概念转换成计算机领域的概念,通过对象的描述、算法和数据结构设计、程序构件和接口,实现相关的类、关联、属性和操作。 5.在面向对象设计中系统设计的主要目标是表示软件体系结构。对象设计着重于对象及其交互的描述 第八章 1.软件程序测试的目的是发现程序中的错误,其主要任务是通过在计算机上执行程序,暴露

计算机硬件和计算机软件习题及答案

计算机硬件和计算机软件习题及答案 一、单选题 1. 硬件系统由五大功能部件组成,即运算器、控制器、______、输入设备和输出设备。 A 存储器 B 处理器 C 输入设备 D 输出设备 2. ______是计算机的指挥中心。它的功能是取出指令、翻译并分析指令、将指令转化为各种电信号,从而使各个部件协同工作。 A 处理器 B 控制器 C 运算器 D 存储器 3. 总线是各个部件共享的传输介质,它由许多______和相关的控制电路组成,也是计算机系统中的一个比较复杂的部件。 A 传输电路 B 传输线 C 传输电缆 D 传输光缆 4. 按照总线中传输的信息的不同,系统总线分为地址总线、数据总线、______三类。 A 信息总线 B 通信总线 C 指令总线 D 控制总线 5. CPU是计算机系统的核心部件。它的主要任务是执行指令,它按照指令的要求完成对数据的运算和处理。CPU主要由运算器、控制器和______三部分组成。 A 存储器 B 缓冲器 C 寄存器组 D 译码器 6. 只读存储器(Reading Only Memory ,ROM)。它的特点是______,是能够永久性(或半永久性)地保存存储信息的存储器,属于非易失性存储器件,通常用来储存那些经常使用的固定不变的程序和数据。 A 只能读不能写、断电信息不消失 B 只能读不能写、断电信息消失 C 不能读只能写、断电信息不消失 D 既能读又能写、断电信息不消失 7. 读写存储器(Random access Memory ,RAM),它的特点是______,属于易失性存储器件,用来储存平常那些可以发生改变的程序和数据。 A 既能读又能写、断电信息不消失 B 既能读也能写、断电后信息会消失 C 只能读不能写、断电信息不消失 D 只能读不能写、断电信息消失 8. 辅助存储器也称为外部存储器。与内存相比,具有______、速度慢、成本低、可以脱机保存信息的特点。 A 效率低 B 技术含量高 C 容量大 D 容量小 9. 光盘存储器由光盘和光盘驱动器组成,按照其存取方式分为只读型和可记录型,按照记录

软件测试方法和技术练习题与答案

一、判断题 1.测试是调试的一个部分(╳) 2.软件测试的目的是尽可能多的找出软件的缺陷。(√) 3.程序中隐藏错误的概率与其已发现的错误数成正比(√) 测试是验收测试的一种。(√) 5.测试人员要坚持原则,缺陷未修复完坚决不予通过。(√) 6.项目立项前测试人员不需要提交任何工件。(╳) 7.单元测试能发现约80%的软件缺陷。(√) 8.测试的目的是发现软件中的错误。(√) 9.代码评审是检查源代码是否达到模块设计的要求。(√) 10.自底向上集成需要测试员编写驱动程序。(√) 11.测试是证明软件正确的方法。(╳) 12.负载测试是验证要检验的系统的能力最高能达到什么程度。(√) 13.测试中应该对有效和无效、期望和不期望的输入都要测试。(√)验收测试是由最终用户来实施的。(√) 14.测试人员要坚持原则,缺陷未修复完坚决不予通过。(√) 黑盒测试也称为结构测试。(╳) 集成测试计划在需求分析阶段末提交。(╳)15.软件测试的目的是尽可能多的找出软件的缺陷。(√) 16.自底向上集成需要测试员编写驱动程序。(√) 17.负载测试是验证要检验的系统的能力最高能达到什么程度。(╳) 18.测试程序仅仅按预期方式运行就行了。(╳) 19.不存在质量很高但可靠性很差的产品。(╳) 20.软件测试员可以对产品说明书进行白盒测试。(╳) 21.静态白盒测试可以找出遗漏之处和问题。(√) 22.总是首先设计白盒测试用例。(╳) 23.可以发布具有配置缺陷的软件产品。(√)24.所有软件必须进行某种程度的兼容性测试。(√) 25.所有软件都有一个用户界面,因此必须测试易用性。(╳) 26.测试组负责软件质量。(╳) 27.按照测试实施组织划分,可将软件测试分为开发方测试、用户测试和第三方测试。(√) 28.好的测试员不懈追求完美。(×) 29.测试程序仅仅按预期方式运行就行了。(×) 30.在没有产品说明书和需求文档的条件下可以进行动态黑盒测试。(√) 31.静态白盒测试可以找出遗漏之处和问题。(√) 32.测试错误提示信息不属于文档测试范围。(×) 33.代码评审是检查源代码是否达到模块设计的要求。(√) 34.总是首先设计黑盒测试用例。(√) 35.软件测试是有风险的行为,并非所有的软件缺陷都能够被修复。(∨) 36.软件质量保证和软件测试是同一层次的概念。(x) 37.程序员兼任测试员可以提高工作效率。(x) 38.在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。(∨) 39.传统测试是在开发的后期才介入,现在测试活动已经扩展到了整个生命周期。(∨)40.传统测试以发现错误为目的,现在测试已经扩展到了错误预防的范畴。∨ 41.软件测试的生命周期包括测试计划、测试设计、测试执行、缺陷跟踪、测试评估。(∨)42.软件生存周期是从软件开始开发到开发结束的整个时期。(x) 43.测试用例的数目越多,测试的效果越好。(x) 44.只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。(x) 45.单元测试属于动态测试。(∨) 46.验收测试是以最终用户为主的测试。(∨) 47.没有发现错误的测试是没有价值的。(∨) 48.可以把不合格的开发人员安排做测试。(x)

软件工程课后习题(含答案)

第一章练习题 一、填空题 1、软件工程三要素是:方法、工具、过程。 2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。 二、名词(术语)解释: 1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。 2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。 三、问答题 1、面向对象方法的优点是什么? 答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。 (2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。 2、可视化开发方法的优点有哪些? 答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。 (2)软件开发简单,易学、易上手。 (3)专业或非专业人员都能参与软件开发活动。 第二章练习题 一、填空题: 1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工 程活动。 2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。 3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。 4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。 二、简答题: 1、瀑布模型的优点有哪些? 答:1、强迫开发人员采用规范的技术方法; 2、严格地规定了每个阶段必须提交的文档; 3、每个阶段结束前必须正式进行严格的技术审查和管理复审。 2、瀑布模型的缺点是什么? 答:1、在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。 2、在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。 3、作为整体开发的瀑布模型,由于不支持产品的演化,缺乏灵活性,对开发过程中很 难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。

常用工具软件考试题及答案

一.判断题(每小题1分,共10分) 3. 压缩文件管理工具WinRAR只能压缩文件,不能对文件进行解压。(错) 4. Internet上所有电子邮件用户的E-mail地址都采用同样的格式:用户名@主机名。(对) 5. Adobe Acrobat Reader可以解压缩文件。(错) 6. ACDSee是目前最流行的数字图像处理软件,它能广泛应用于图片的获取、管理、浏览、优化,甚至和他人的分享。(对) 10. 系统长时间使用之后,会留下一堆堆垃圾文件,使系统变得相当臃肿,运行速度大为下降,但是系统不会频繁出错甚至死机。(对) 二.选择题(每小题2分,共40分) 1、下列不属于媒体播放工具的是() A、暴风影音 B、千千静听 C、Realone Player D、WinRAR 2、以下几种方法中()不能正常退出工具软件。 A、执行【文件】︱【关闭】命令 B、双击标题栏左侧的系统标 C、单击标题栏右侧的关闭按钮 D、双击标题栏 3、CuteFTP具有网际快车不具备的功能是:() A、视频播放 B、下载文件 C、断点续传 D、上传文件 4、WinRAR不可以解压下列哪些格式的文件() A、RAR B、ZIP C、CAB D、RSB 5、Adobe Acrobat ReadeR可以阅读的文件格式() A、doc B、pdf C、dbf D、txt 6、ACDSee不能对图片进行下列哪种操作() A、浏览和编辑图像 B、图片格式转换 C、抓取图片 D、设置墙纸和幻灯片放映 7、Windows优化大师提供的文件系统优化功能包括() ①优化磁盘缓存②优化桌面菜单③优化文件系统。 A、①② B、②③ C、①②③ D、①③ 8、关于Symantec Ghost软件,下列说法中错误的是:() A、可以创建硬盘镜像备份文件 B、备份恢复到原硬盘上 C、不支持UNIX系统下的硬盘备份 D、支持FAT16/32、NTFS、OS/2等多种分区的硬盘备份 10、分区魔术师PartitionMagic不具有的功能是( )。 A、创建系统备份 B、创建新分区 C、调整分区大小 D、合并分区 11、下列哪一个软件属于光盘刻录软件( A ) A、Nero-Buring Room B、Virtual CD C、DAEMON Tools D、Iparmor 15、用ACDSee浏览和修改图像实例时,用户可以对图片进行修改的类型为() A、颜色、透明度 B、颜色、形状及文件格式 C、颜色、透明度、形状及文件格式 D、透明度、形状及文件格式 17、不属于计算机病毒的特征是:() A、破坏性 B、潜伏性 C、隐蔽性 D、预知性 20、关于Windows优化大师说法不正确的是:( C ) A、可检测硬件信息 B、可备份系统驱动 C、可制作引导光盘镜像文件 D、可清理系统垃圾 三.填空题(每小题2分,共20分) 1、根据工具软件使用的领域不同,但是一般都包含有标题栏、菜单栏、( )、状态栏、工作区。 2、在进行实验操作时,为了不破坏现有的操作系统以及相关设置,我们可以使用()软件。 3、在使用虚拟机的时候,按键盘右边的()可以在虚拟机和宿主机之间切换。 4、CuteFTP是一个基于()客户端软件。 5、虚拟光驱是一种模拟()工作的工具软件,它能在操作系统中模拟出新的光盘驱动器,是对物理光驱的一种仿真。 6、利用()可以备份windows操作系统。 7、常见的压缩格式ZIP格式、()、CBA格式、ACE格式。 8、利用()软件可以上传网站文件。 9、Deamon Tools是一个优秀的( )工具。 10、虚拟光驱工具可以将光盘文件复制到硬盘上并虚拟成( )。 四、简答题(每小题10分、共30分)。 1、Ghost目前可以作哪些备份操作? 1,可以进行分区间的备份 2,可以进行硬盘对硬盘间的备份 3,可以通过网络进行多机备份 3、列举出一些常用的磁盘操作工具及其主要功能(最少列出四个)? 1、分区魔术师,对硬盘进行分区操作 2、Ghost克隆软件,对系统备份及还原操作 3、光盘虚拟工具,对光盘文件进行虚拟操作 4、光盘刻录工具,对数据文件进行刻录

软件测试技术基础课后习题答案[1]

第1章软件测试概述 1.简述软件测试的意义。 解:随着计算机技术的迅速发展和广泛深入的应用,软件质量问题已成为开发和使用软件人员关注的焦点。而由于软件本身的特性,软件中的错误是不开避免的。不断改进的开发技术和工具只能减少错误的发生,但是却不可能完全避免错误。因此为了保证软件质量,必须对软件进行测试。软件测试是软件开发中必不可少的环节,是最有效的排除和防治软件缺陷的手段,是保证软件质量、提高软件可靠性的最重要手段。 2.什么是软件缺陷?它的表现形式有哪些? 解:从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需实现的某种功能的失效或违背。 它的表现形式主要有以下几种:(1)软件未达到产品说明书中已经标明的功能;(2)软件出现了产品说明书中指明不会出现的错误;(3)软件未达到产品说明书中虽未指出但应当达到的目标;(4)软件功能超出了产品说明书中指出的范围;(5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。 3.简单分析软件缺陷产生的原因,其中那个阶段引入的缺陷最多,修复成本又最低? 解:软件缺陷产生的主要原因有:需求规格说明错误;设计错误;程序代码有误;其他。其中在需求分析阶段引入的缺陷最多,修复的成本又最低。 4.当用户登录某网站购物完毕并退出后,忽然想查查购物时付账的总金额,于是按了浏览器左上角的“退回”按钮, 就又回到了退出前的网页,你认为该购物软件有缺陷吗?如果有,属于哪一类? 解:有缺陷。其所属类别与软件产品说明书的要求有关。 5.什么是软件测试?简述其目的与原则。 解:软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期,对软件产品(包括阶段性产品)进行验证和确认的活动过程。 测试目的:(1)证明:获取系统在可接受风险范围内可用的信心;尝试在非正常情况和条件下的功能和特性;保证一个工作产品是完整的并且可用或可被集成。(2)检测:发现缺陷、错误和系统不足;定义系统的能力和局限性;提供组件、工作产品和系统的质量信息。(3)预防:澄清系统的规格和性能;提供预防或减少可能制造错误的信息;在过程中尽早检测错误;确认问题和风险,并且提前确认解决这些问题和风险的途径。 测试过程中应注意和遵循的原则:(1)测试不是为了证明程序的正确性,而是为了证明程序不能工作。(2)测试应当有重点。(3)事先定义好产品的质量标准。(4)软件项目一启动,软件测试也就开始,而不是等到程序写完才开始进行测试。(5)穷举测试是不可能的。(6)第三方进行测试会更客观,更有效。(7)软件测试计划是做好软件测试工作的前提。(8)测试用例是设计出来的,不是写出来的。(9)对发现错误较多的程序段,应进行更深入的测试。(10)重视文档,妥善保存一切测试过程文档。 6.件测试阶段是如何划分的? 解:软件测试的阶段划分为:规格说明书审查;系统和程序设计审查;单元测试;集成测试;确认测试;系统测试;验

软件工程习题答案参考

软件工程 绪论 1.什么是软件危机为什么会产生软件危机 答:软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题。(1).软件维护费用急剧上升,直接威胁计算机应用的夸大。 (2).软件生产技术进步缓慢 2.什么是软件生产工程化工程化生产方法与早期的程序设计方法主 要差别在哪里 答:结构化程序设计地出现,使许多产业界认识认识到必须把软件生产从个人化方式改变为工程化。采用工程的概念、原理、技术和方法开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程,同时这也是工程化生产方法。 3.分别说明(1)软件开发方法与开发工具;(2)软件技术与软件管 理的相互关系。 答:(1)工具和方法,是软件开发技术的两大支柱,它们密切相关。当一种方法提出来并证明有效后,往往随之研制出相应的工具,来帮助实现和推行这种方法。新方法在推行初期,总有人不愿接受和采用。若将新方法融合于工具之中,使人们通过使用工具来了解新方法,就能更快促进新方法的推广。(2)在工业生产中,即使有先进的技术和设备,管理不善的企业也不能获得良好的效益。软件在生产中不能按质按时完成计划,管理混乱往往是其中的重要原因。所以对于

一个理想的软件工程环境,应该同时具备技术和管理两个方面。 4.试从你的亲身实践,谈谈软件工具在软件开发中的作用。 答:用C++开发一个软件,是校园一卡通的模块。首先,要在编辑程序支持下在计算机中输入源程序。然后编译程序,把源程序翻译成目标程序。如果发现错误,就重新调入编辑程序对源程序进行修改。编译通过后,再调用连接程序吧所有通过了编译目标程序连同与之有关的程序连接起来,构成一个能在计算机上运行的可执行软件。编译程序,编辑程序,连接程序以及支持他们的计算机操作系统,都属于软件工具。离开这些工具,软件开发就是去了支持,变得十分困难和低效,甚至不能运行。 5.什么是软件工程环境谈谈你对环境重要性的认识。答:方法与工具相结合,再加上配套的软、硬件支持就形成环境。例如在批处理时代,用户开发的程序是分批送入计算机中心的计算机的,有了错误,就得下机修改。程序员对自己写的程序只能继续地跟踪,思路经常被迫中断,效率难于提高。分时系统的使用,使开发人员从此能在自己的终端上跟踪程序的开发,仅此一点,就明显提高了开发的效率。 6. 何谓面向对象软件工程简述它与传统软件工程在各型软件开发中的作用。 答:以面向对象程序设计为基础。 7. 软件按规模大小可分成哪几类简述软件工程中各型软件开发中的作用。 答:按规模分为极小、小、中、大、甚大、极大。(1)中小型软件:

软件测试练习题及答案

一、判断 (01)测试是为了验证软件已正确地实现了用户的要求。错 (02)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。对 (03)白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求。错 (04)程序员兼任测试员可以提高工作效率。错 (05)黑盒测试的测试用例是根据应用程序的功能需求设计的。对 (06)当软件代码开发结束时,软件测试过程才开始。错 (07)据有关数据统计,代码中60%以上的缺陷可以通过代码审查发现出来。对(08)无效等价类是无效的输入数据构成的集合,因此无需考虑无效的等价类划分。错(09)软件本地化就是将一个软件产品按特定国家或语言市场的需要翻译过来。错(10)在压力测试中通常采用的是黑盒测试方法。对 (11)软件测试员无法对产品说明书进行白盒测试。对 (12)功能测试工具主要适合于回归测试。对 (13)测试人员说:“没有可运行的程序,我无法进行测试工作”。错 (14)自底向上集成需要测试员编写驱动程序。对 (15)测试是可以穷尽的。错 (16)自动化测试相比手工测试而言,能发现更多的错误。错 (17)软件测试自动化可以提高测试效率,可以代替手工测试。错 (18)语句覆盖法的基本思想是设计若干测试用例,运行被测程序,使程序中的每个可执行语句至少被执行一次。对 (19)Beta测试是验收测试的一种。对 (20)软件开发全过程的测试工作都可以实现自动化。错 (21)软件只要经过严格严谨的内部测试之后,可以做到没有缺陷。错 (22)结构性测试是根据软件的规格说明来设计测试用例。错 (23)软件测试工具可以代替软件测试员。错 (24)通过软件测试,可以证明程序的正确性。错 (25)在单元测试中,驱动程序模拟被测模块工作过程中所调用的下层模块。错(26)软件缺陷可能会被修复,可能会被保留或者标识出来。对 (27)测试用例是由测试输入数据和对应的实际输出结果这两部分组成。错(28)单元测试通常由开发人员进行。对 (29)现在人们普遍认为软件测试不应该贯穿整个软件生命周期,而应在编程完毕之后再进行,这样可以降低成本。错 (30)文档的错误不是软件缺陷。错 (31)Junit只是单元测试工具,并不能进行现回归测试。错 (32)判定表法是一种白盒测试方法。错 (33)白盒测试不考虑程序内部结构。错 (34)在单元测试中,桩程序模拟被测模块工作过程中所调用的下层模块。对(35)在测试中发现缺陷多的地方,还有更多的缺陷将会被发现。对

软件工程课后参考答案

第一章 1.1什么是计算机软件?软件的特点是什么? 计算机软件是指计算机系统中的程序及其文档 软件的特点: ●软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。 ●软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可, 但其维护的工作量大。 ●软件的使用没有硬件那样的机械磨损和老化问题。 1.2简述软件的分类,并举例说明 1.系统软件 系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。例如:编译软件、操作系统。 2.支撑软件 支撑软件是支撑软件的开发和维护的软件。例如:数据库管理系统、网络软件、软件工具、软件开发环境。 3.应用软件 应用软件是特定应用领域专用的软件。例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。 1.3简述软件语言的分类,并举例说明。 1.需求定义语言 是用于书写软件需求定义的语言。例如:PSL/PSA。 2.功能性语言 是用于书写软件功能规约的语言,通常又称为功能规约语言。例如:广谱语言、Z 语言。 3.设计性语言 是用于书写软件设计规约的语言。例如:PDL。 4.实现性语言 也称为程序设计语言,是用于书写计算机程序的语言。例如:C、java、PROLOG、FORTRAN、COBOL、Modula。 5.文档语言 是用于书写软件文档的语言。通常用自然语言或半形式化语言书写。 1.4什么是软件工程? 软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。 1.5简述软件工程的基本原则。 软件工程原则包括围绕工程设计、工程支持和工程管理所提出的以下4条基本原则。 1.选取适宜的开发模型 必须认识需求定义的易变性,采用适宜的开发模型,保证软件产品满足用户的要求。 2.采用合适的设计方法

《软件》课后习题答案

第一章 1.什么是程序,程序有哪些特性? 程序:是一个用计算机语言描述的某一问题的解决步骤,它的表示是静态的。 特性:静态与动态属性,由程序语言抽象的符号表达,是对数据施行算法的过程,是分层嵌套的。2.软件有哪些特性? 特性:功能、性能相对完备的程序系统,具有使用性能的软设备,软件是信息商品,易大批量生产、成本低,是极具竞争性的商品,投入的资金主要是人工费,是只有过时而无“磨损”的商品。 3.什么是群件,目前常见的群件产品有哪些? 群件:是近几年开发的一种基于电子邮件的应急系统软件,它拓 宽了电子邮件的的内涵,涵盖了很多通信协调功能。目前常见的群件产品有:IBM公司的lotus Note、Microsoft公司的Exchange Server 、Novell公司的Group Wise等 4.计算机的软件是由哪几部分组成的,各自的作用是什么? 软件由:软件程序(解题步骤)+数据(描述事物的属性和状态)+文档(功能性能的说明性信息)组成。 5.什么是程序开发环境,常见的开发环境有那些? 程序开发环境:即现在作用到的编程语言,一般以一个集成环境的形式出现。 此环境中包含了语言编辑器,调试工具,编译工具,运行工具,图标图像制作工具等。 6.常见的Internet工具有哪些? Web服务器软件、web浏览器、文件传送工具FTP、远程访问工具Telnet、邮件软件、网络聊天、多媒体等。 7.操作系统的作用(功能)是什么? 1、处理器管理 2、存储器管理 3、设备管理 4、文件管理 5、作业管理。 8.文件系统足以支持程序运行,数据库的作用是什么? 克服文件系统的缺陷。 9.软件开发的核心是编制可运行的程序,还有比这跟重要的工作么? 系统分析和数据分析。 10.程序设计语言本身是软件么? 是,而且是系统软件。 第二章 1.程序设计语言有哪两种实现方式,各有什么优缺点? 方式一:编译(优:可进行优化,目标码效率很高。缺:费时)方式二:解释(优:可以逐句读入源代码,比较灵活,小巧。解释器不大,工作空间也不大,且能根据程序的执行情况决定下一步需做什么。缺:一句一句的难于优化,效率低) 2.结构化程序设计语言有那几种基本控制结构? 顺序、选择、循环。 3.为什么要引进过程,过程和函数的区别有哪些? 引进了过程或函数可以让程序语言更清晰,可以多次调用。使用过程还可以降低程序的复杂性,使程序结构变得清晰明了。过程是不带返回值,函数是带返回值。 4.什么是全局变量,什么是局部变量? 全局变量:出了程序便失去定义,作用范围,整个程序。 局部变量:局部的程序块中有定义。 5. 什么是指针变量? 指向数据的地址的变量。 6.过程参数传递的方式有哪几种,各有什么特点? 传值:优:很安全,不会改变全局变量的值。缺:占用双倍存储单元,传值时不能带回值。 引用:优:能带返回值,存储空间小。缺;局部有可能改变全局变量的值。

软件工程习题答案

软件工程习题及答案 一、选择题: 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/6 B、1/5 C、1/4 D、1/3 7. 变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,然后将结果送出是属于。 A、变换型 B、事务型 8. PAD(Problem Analysis Diagram)图是一种工具。 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、规划

软件工程课后习题答案

第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。 软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 三、什么是软件工程?它有哪些本质特征?怎样用软件工程消除软件危机? 1993年IEEE的定义:软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径。 软件工程的本质特征: (1) 软件工程关注于大型程序(软件系统)的构造(2) 软件工程的中心课题是分解问题,控制复杂性(3) 软件是经常变化的,开发过程中必须考虑软件将来可能的变化 (4) 开发软件的效率非常重要,因此,软件工程的一个重要课题就是,寻求开发与维护软件的更好更有效的方法和工具 (5) 和谐地合作是开发软件的关键(6) 软件必须有效地支持它的用户 (7) 在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人(完成一些工作)消除软件危机的途径: (1) 对计算机软件有一个正确的认识(软件≠程序) (2) 必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目 (3) 推广使用在实践中总结出来的开发软件的成功技术和方法 (4) 开发和使用更好的软件工具

软件项目管理课后习题参考答案

第一章项目管理概述 一.选择题 1.项目是(D)。 A.一个实施相应工作围的计划 B.一组以协作式管理、获得一个期望结果的主意 C.创立独特的产品或服务所承担的临时努力 D.必须在规定的时间、费用和资源约束条件下完成的一次性任务 2.你刚被指派在你的公司的一个不同的部门中管理一个大的项目。你正试图了解项目是关于什么的,谁是主要的项目干系人,为了管理好此项目,你首先应该做(C)。 A.所有的项目计划 B.会见以前的项目经理,以找出他离开的原因 C.与你的老板见面,了解他对项目的看法 D.与你的新项目团队见面,认识他们和了解他们对项目的看法 3.不属于项目的活动是(B )。 A.一种新型罐头产品的开发 B.罐头产品的生产 C.罐头产品的试制 D.罐头产品的营销策划 4.项目是一个特殊的将被完成的有限任务,它是在一定的时间,满足一系列特定目标的多项相关工作的总称。此定义实际包含的含义有(D)。 A.项目是一项有待完成的任务,且有特定的环境与要求 B.在一定的组织机构,利用有限资源(人力、物力、财力等)在规定时间完成任务C.任务要满足一定性能、质量、数量、技术指标等要求

D.项目的实施具有一定的风险

第二章项目实施的环境与过程 一.选择题 1.项目管理中应用最广泛的组织形式是(C )。 A.项目式B.职能式C.矩阵式D.网络式 2.下面有关矩阵式组织环境的描述,不正确的是( A )。 A.项目的经理必须是职能部门领导,这样才能取得公司总经理对项目的信任B.项目经理和职能经理必须就谁占主导地位达成共识 C.矩阵式项目组织能够充分利用人力资源 D.矩阵式项目组织能够对客户的要求作出快速响应 3.在下列组织结构形式中,团队建设最困难的是( C )。 A.直线式结构B.职能式结构C.矩阵结构D.项目结构4.职能式项目组织形式中项目经理的权限( A )。 A.很小B.有限C.中等D.很高 5.项目在哪种组织中最不被重视(D)。 A.平衡矩阵型B.强矩阵型C.项目协调员型D.职能型6.下面各种类型的组织中,哪种最常发生冲突( B )。 A.职能型组织B.矩阵型组织 C.项目型组织D.项目协调员型组织 7.传统组织结构的不利因素是(B)。 A.与客户接触渠道单一B.对客户需求反应缓慢 C.项目领导拥有太多的正式权力D.直接项目报告太多

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