软件工程学(清华大学出版社)习题
- 格式:doc
- 大小:451.67 KB
- 文档页数:8
三、名词解释
1. 软件工程
是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前最好的技术方法结合起来,这就是软件工程。
2.软件危机
在计算机硬件技术得以发展后,软件开发技术的进步未能满足发展的需要,在软件开发中遇到的问题找不到解决的办法,使问题越积越多,形成了尖锐的矛盾,因而导致了软件危机。
软件危机指的是软件开发和维护过程中遇到的一系列严重问题。
概括地说,软件危机包含下述两方面的问题:如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的已有软件。
3. 软件生存周期模型
描述软件开发过程中各种活动如何执行的模型
是软件工程思想的具体化,是实施于过程模型中的软件开发方法和工具,是软件开发实践中总结出来的软件开发方法和步骤。总的来说,它是跨越整个软件生命周期的系统开发、运作、维护所实施的全部工作和任务的结构框架。P13
4. 信息隐蔽
是在设计和确定模块时,使一个模块内包海宁的信息(过程和数据)对于不需要这些信息的构件来所是不能访问的。它通过定义一组独立的模块来实现有效的模块化。P71
5. 抽象
是人类在认识复杂现象的过程中使用的强有力的思维工具。在现实世界中一定事物、状态或过程之间总是存在某些共性,把这些共性集中和概括起来,暂时忽略它们之间的差异,这就是抽象。抽象就是抽出事物的本质特性而暂时不考虑它们的物理细节。
6、数据流图P55
解:简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具.是一种功能模型
7. 数据字典
数据字典是关于数据信息的集合,对数据流图中的各个元素作完整的定义与说明,是数据流图的补充工具。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
8、模块 P69
在软件系统设计中,模块指这样一组程序语句集合,包括输入输出和逻辑处理功能、内部信息及其运行计划。模块指可独立命名且可通过名字访问的过程、函数、子程序或宏调用。通常说的模块就是构建的一种具体形式。模块式一个拥有明确定义的输入输出和特性的程序实体。
9. 模块化P70
模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
是将软件系统划分成若干个独立命名又可独立访问的模块的过程,其中每个模块完成一个特定子功能,每个模块既是相对独立的,又是相互联系的,它们共同完成系统指定的各项功能。
10. 耦合、内聚 P72
耦合又称块间联系,是软件系统结构中各模块间相互联系紧密程度的一种度量。模块间联系越紧密,其耦合性越高,模块的独立性越差。模块间耦合高低取决于模块间接口的复杂性、调用的方法和传递的信息。
内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量
耦合:指各模块之间相对独立性的度量,即一个模块与其他模块之间的联系紧密度的度量。也称块间联系。
内聚:指模块功能强度的度量,即模块内部各个成分之间彼此结合的紧密程度的度量,也称快内联系。
11、完善性维护、适应性维护、改正性维护、预防性维护
在软件正常使用过程中,用户还会不断地提出新的需求,为了满足用户新的需求而增加软件功能的活动称为完善性维护
12.结构化程序设计
.结构化程序设计基本要求要点是什么?
a.采用自顶向下、逐步求精的程序设计方法
b.使用三种基本程序控制结构构造程序
1).用顺序方式对过程分解,确定各部分的执行顺序。
2).用选择方式对过程分解,确定某个部分的执行条件。
3).用循环方式对过程分解,确定某个部分重复的开始和结束的条件。
c.主程序员组的组织形式。
13. 类、子类、父类、超类
在面向对象的软件技术中,类就是对具有相同数据和相同操作的一组相似对象的定义,也就是说,类是对具有相同属性和行为的一个或多个对象的描述,通常在这种描述中也包括对怎样创建该类的新对象的说明。
14. 多态性、封装性、继承性
指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。或(不同的对象,收到同一消息可以产生不同的结果。)
15.调试
调试的目的是发现错误的位置并改正错误。简单调试、演绎调试、递归调试、回溯调试。
16.软件质量
软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。
17.软件维护P287
软件维护有哪些内容?
a、校正性维护
b、适应性维护
c、完善性维护
d、预防性维护
18.软件可维护性P293
软件的可维护性:软件能够被理解、校正、适应及增强功能的容易程度。
可维护性的度量的特性是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
19. 对象、消息、方法
对象P146
在面向对象的方法中把面向对象发出的服务请求称作消息。消息用来请求对象处理或回答某些信息的要求。消息应含有下述信息:提供服务的对象标识、服务标识、输入信息和回答信息。
20.E-R图P62
E-R图也称实体-联系图,提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
21. 黑盒测试、白盒测试P253 P258
黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程。黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性。黑盒测试又称为功能测试。
白盒测试法的前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作,白盒测试又称为结构测试。
22、集成测试
将模块组合起来成为一个完整的系统对其进行测试。
23、投资回收期
解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间。
四、简答
1. 简述软件工程过程。
软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问