《本科自考02333软件工程课后习题答案-2011版》完整版 下载本文

《本科自考02333软件工程课后习题答案-2011版 王立福》

第1章 绪论

1、解释术语

(1)软件: 软件是指计算机系统中的程序及其文档。P16

(2)软件工程:软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科。P15

(3)软件危机:软件生产率、软件质量远远满足不了社会发展的需求,成为社会,经济发展的制约因素,人们通常把这一现象称为“软件危机”。P15 2、 简答题

(1) 简述软件开发的本质。

答:软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。P19

(2) 简述实施软件开发的基本途径。

答:实施软件开发的基本途径是系统建模。所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。P19 (3) 简述何谓模型以及软件开发中所涉及的模型。

答:模型是一个抽象。该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。 软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。P19 (4).简述软件开发所涉及的两大类技术。

答:软件开发所涉及的两大类技术为:一是求解软件的开发逻辑,二是求解软件的开发手段。P17

第2章 软件需求与软件需求规约

1、解释术语 (1)软件需求

软件需求以一种技术形式,描述了一个产品/系统应该具有的功能、性能和其它性质。P23 (2)功能需求

功能需求规约了系统或系统构件必须执行的功能。P24 (3)非公能需求

非公能需求是性能、外部接口、设计约束和质量属性这4类需求的统称。P23 (4) 需求规约

需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。P28

2、简述需求与需求规约的基本性质。 答:需求的基本性质:

1) 必要的,该需求是用户所要求的。 2)无歧义的,该需求只能用一种方式解释。 3)可测的,该需求是可进行测试的。

4)可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。 5)可测量的,该需求是可测量的。P23 需求规约的基本性质:

1)重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级。 2)可修改的:在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。

3)完整的:没有被遗漏的需求。 4)一致的:不存在互斥的需求。P28

3、简述软件需求的分类。

答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可分为性能需求,外部接口需求、设计约束和质量属性需求。P23 4、举例说明功能需求和非功能需求之间的基本关系。 答:非功能需求可作用于一个或多个功能需求,例如

功能需求1 功能需求2 功能需求3 ?? 作用于

非功能需求1 非功能需求2 其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。P24

5、有哪几种常用的初始需求发现技术?

答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。P26 6、简述需求规约的3种基本形式。

(1) 非形式化的需求规约。非形式化的需求规约即以一种自然语言来表达需求规约,如同使用一种自然语言写了一篇文章。

(2) 半形式化的需求规约。半形式化的需求规约即以半形式化符号体系(包括术语表、标准化的表达格式等)来表达需求规约。

(3)形式化的需求规约。形式化的需求规约即以一种基于良构数学概念的符号体系来编制需求规约,一般往往伴有解释性注释的支持。 P29

7、简述软件需求规约的内容和作用。

答:软件需求规约的内容有:引言、总体描述、特定需求、附录、索引。P28 需求规约的作用可概括为以下4点:

1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。

2)对于项目的其余大多数工作,需求规约是一个管理控制点。

3)对于产品/系统的设计,需求规约是一个正式的、受控的起始点。 4)需求规约是创建产品验收测试计划和用户指南的基础。P31

8、简述需求规约在项目开发中的基本作用。 答:需求规约的作用可概括为以下4点:

1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。

2)对于项目的其余大多数工作,需求规约是一个管理控制点。 3)对于产品/系统的设计,需求规约是一个正式的、受控的起始点。 4)需求规约是创建产品验收测试计划和用户指南的基础。P31

9、简述需求规约和项目需求的不同。

答:需求规约和项目需求是两个不同的概念。需求规约是软件开发组织和用户之间一份事实上的技术合同书,即关注产品需求,回答“交付给客户的产品/系统是什么”;而项目需求是客户和开发者之间有关技术合同——产品/系统需求的理解,应记录在工作陈述中或其他某一项目文档中,即关注项目工作与管理,回答“开发组要做的是什么”。P30

第三章 结构化方法 1.基本概念

需求分析:一般来说,分析是系统地使用信息,对一个问题的估算。软件需求分析是这一概念的特化,即系统化地使用“数据流”、“加工”、“数据存储”、“数据源”和“数据潭”等术语所表达的信息,对待建系统“是什么”给出一个估算――系统概念模型 软件设计:在需求分析的基础上,定义满足需求所需要的结构,即针对给定的问题,给出该问题的软件解决方案,确定“怎么做”的问题

数据流图:表达功能模型的工具,即数据流图(Dataflow Diagram) 简称DFD图,简单的说,DFD图是一种描述数据变换的图形化工具,其中饮食的元素可以是数据流、数据存储、加工、数据源和数据潭等

变换型数据流图:具有较明显的输入部分和变换(主加工)部分之间的界面变换部分和输出部分之间界面的数据流图

事务型数据流图:数据到达一个加工T,该加工T根据输入数据的值,在其后的基干动作序号(称为一个事务)中选出一个来执行

模块:执行一个特殊任务的一个过程以及相关的数据结构

1.简答题

2.何谓模块耦合?简述模块耦合的类型。 答:耦合是不同模块之间相互依赖程序的度量

内容耦合:当一个模块直接修改或操作另一个模块的数据,或一个模块不通过正常入口而转入到另一个模块时,

公共耦合:两个或两个以上的模块共同引用一个全局数据项

控制耦合一个模块通过气喘吁吁向另一个模块传递一个控制信息,接收信号的模块根据信号值进行适当的动作

标记耦合:若一个模块A通过接口向两个模块B和C传递一个公共参数 数据耦合:模块之间通过参数来传递数据

3.何谓模块内聚?简述模块内聚的类型。

答:指一个模块内部各成分之间相互关联程度的度量 偶然内聚:一个模块的各成分之间基本不存在任何关系 逻辑内聚:几个逻辑上相关的功能被放在同一个模块中

时间内聚:一个模块完成的功能必须在同一时间内执行,但这些功能只是因为时间因素关联在一起