今
日
一
码
一、流程表示工具
程序流程图:无关于语言,都由 顺序、选择和循环结构 组合或嵌套而成。
IPO图描述流程输入、输出和数据加工。(数据流图也是IPO的一种)
N-S图 不适合复杂程序设计,具有强烈的结构化特性,当问题复杂的时候,这个图可能非常大。
问题分析图(PAD):结构化程序设计,具有清晰逻辑结构、标准化。(结构化、结构化,不是原型化)
业务流程重组BPR:(革命化改革)
BPR是对企业业务进行根本性的在思考和彻底性再设计。
三个层面包括:
以流程为中心,以人为本,以客户为导向。
业务流程管理BPM(manage):
是一种规范化的构造端到端的卓越业务流程为中心,提高组织业务绩效为目的的系统方法。
流程管理并不是对现有流程再构造,而是基于现在进行规范化管理。
三个层面包括:
规范流程、优化流程和再造流程。
二、系统设计
系统设计方法:
结构化设计方法 和 面向对象设计方法。
主要内容是 概要设计 和 详细设计。
概要设计:系统总体结构设计,确定模块与模块之间关联关系。形成软件模块结构图,即系统结构图。
详细设计:详细算法,数据库物理设计,代码输入输出,编写详细说明书。
系统设计基本原理:
抽象化;自顶向下,逐步求精;信息隐蔽;模块独立(高内聚低耦合)。
信息隐蔽就是封装的意思。
系统设计原则:
保持模块大小适中,尽可能减少调用深度,多扇入少扇出,单入口单出口,模块作用域在模块之内,功能应该是可预测的。
多扇入,少扇出:意思别人多调用我,我少调用别人。(意思价值大,复用价值高)
耦合性和内聚性,模块和模块之前的联系就是耦合,所以耦合越低越好,高内聚则是模块内部,内部的功能点越紧密越好。
内聚如下:
偶然内聚:一个模块各个之间没有任何关系。(无直接关系)
逻辑内聚:模块内执行若干逻辑相似功能,通过参数确认该模块的功能。(逻辑相似,参数决定)
时间内聚:同时执行的组合在一起。
过程内聚:按照指定过程顺序执行。(过程顺序)
通信内聚:模块内所有元素都在 一个数据结构上操作,相同的输入输出。(同一数据结构操作)
顺序内聚:顺序执行,前一个输出是下一个的输入。(输入 为 下一个输出)
功能内聚:共同完成一个功能,缺一不可。(共同内聚,缺一不可)
耦合如下:
无直接耦合:两个模块之间无任何关系。
数据耦合:两个模块之间有调用关系,传递数据值。
标记耦合:两个模块传递数据结构。
控制耦合:一个模块调用另一个模块,传递控制变量,通过变量确定某一个功能。(通过变量,控制某一个功能)
外部耦合:模块通过软件之外的环境,如I/O输入输出。(软件外部环境)
公共耦合:一个公共数据环境。(公共数据结构)
内容耦合:当一个模块直接使用另一个模块内部数据,或通过非正常入口转入另一个模块内部时。