数据库软考易混淆知识之软件工程

一、耦合

1、耦合性从低到高排列:非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合、内容耦合

2、常考耦合介绍:

  1)数据耦合:一个模块访问另一个模块时,彼此之间通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息

  2)标记耦合:一组模块通过数据结构本身传递

  3)公共耦合:一组模块都访问同一个公共数据环境

  4)内容耦合:一个模块直接访问另一个模块的内部数据、一个模块不通过正常入口转到另一个模块内部、两个模块有一部分程序代码重叠、一个模块有多个入口

3、模块间耦合的高低取决于模块间接口的复杂性、调用的方式、传递的信息

二、内聚

1、偶然内聚:一个模块内的各个处理元素之间没有任何联系

2、逻辑内聚:模块内执行几个逻辑相似的功能,通过参数确定该模块完成哪一个功能

3、时间内聚:把需要同时执行的动作组合在一起形成的模块

4、通信内聚:模块内所有处理元素都在同一个数据结构上操作,或者各处理使用相同的输入数据或者产生相同的输出数据

5、顺序内聚:一个模块中各个处理元素都密切相关与同一功能且必须顺序执行,前一个功能元素的输出就是下一个功能元素的输入

6、功能内聚:是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可

三、面向对象开发步骤

1、面向对象分析:为了获得对应用问题的理解,主要任务是:抽取和整理用户需求并建立问题域精确模型

2、面向对象设计:采用协作的对象、对象的属性和方法说明软件解决方案的一种方式,强调的是定义软件对象和这些软件对象如何协作来满足需求

3、面向对象实现:采用面向对象程序设计语言来实现系统

4、面向对象测试:根据规范说明来验证系统设计的正确性

四、软件设计阶段

  结构化设计方法 面向对象设计方法
概要设计阶段 进行软件体系结构的设计、数据设计和接口设计 进行体系结构设计、初步的类设计/数据设计、结构设计
详细设计阶段 进行数据结构和算法的设计 进行构件设计

结构化设计和面向对象设计是两种不同的设计方法,结构化设计根据系统的数据流图进行设计,模块体现为函数、过程及子程序;面向对象设计基于面向对象的基本概念进行,模块提现为类、对象和结构

原文地址:https://www.cnblogs.com/ykagile/p/13546150.html