结构化系统详细设计精品PPT课件
合集下载
结构化系统设计 ppt课件

模块设计中模块控制域与作用域的设计原则:
1.对于任何一个内部存在判断调用的模块,它的判
断作用的范围应该是其控制范围的一个子集。 2.存在判断调用的模块,所在层次不要与那些属于判
断作用范围的模块所在的层次相隔太远。
4、模块的扇入和扇出原则
模块的扇出 模块扇出的原则 模块的扇入 模块的扇入原则 模块扇出扇入总原则
数据耦合
sum(int a,int b) {int c; c=a+b; return(c); } main() { int x,y; printf(“x+y=%d”,sum(x,y))}
控制耦合
模块之间交换信息中包含有控制信息(有时控制信息以数 据的形式出现)
void output(flag) {if (flag) printf(“ok!”);
else printf(“no!”); } main() { int flag;
output(flag); }
公共耦合
如果两个或多个模块都和同一个公用数据域有关 1)系统可理解性降低(模块间存在错综复杂的连系) (2)系统可维护性差(修改变量名或属性困难) (3)系统可靠性差(公共数据区及全程变量无保护措施)
标准:
1.信息系统的功能:是否满足用户的需求 2.系统的效率:响应时间、操作的方便性 3.系统的可靠性:抗干扰能力、故障恢复 4.系统的工作质量:准确性、使用效果 5.系统的可变更性:修改和维护的难易程度 6.系统的经济性:系统收益与支出比
结构化系统设计的特点:
(1) 对一个复杂的系统,应用自顶向下、逐步求精的方法 予以分解和化简。
的直属下级模块的控制范围模 块。扇出系数是指其直属下级模块的个数。 扇出原则: -模块的扇出直接影响着系统的宽度 -模块的扇出过大,控制与协调困难,模块的聚合可能较低 -模块的扇出过小,说明上下级模块或本身过大,应进行分解 -一个系统的平均扇出系数通常是3至4,一般不应超过7
结构化详细设计ppt课件

第8章 结构化详细设计
结构化详细设计的结构和特点 结构化详细设计工具 人机交互界面设计 数据库设计 编码实现
1
8.1详细设计
详细设计就是在概要设计的基础上决定如何具 体实现各模块的内部细节,直到对系统中的每 个模块给出足够详细的过程描述。
在编码实现阶段就可以完全按照详细设计的细 节过程来映射到代码,最终实现整个系统。
用先全局后局部、先整体后细节、先抽象后具体的逐步求精 过程开发出的程序有清晰的层次结构,因此容易阅读和理解。
仅使用单入口单出口的控制结构,使得程序的静态结构和它 的动态执行情况比较一致。因此,程序容易阅读和理解,开 发时也比较容易保证程序的正确性,即使出现错误也比较容 易诊断和改正。
控制结构有确定的逻辑模式,编写程序代码只限于使用很少 几种直截了当的方式,因此源程序清晰流畅,易读易懂而且 容易测试。
15
PAD图举例
P1
P2 P3
C P4
P5
P6
until C2
11
盒图符号
A B
a.顺序
FPT BA
FPT A
b.IF-THEN-ELSE 选择
S Do until p
d.do-until 循环
P
=1 =2
=n
A1 A2
An
e.多分支选择
Do while p S
c.do-while 循环
12
PAD图
PAD是问题分析图(Problem Analysis Diagram)的英文缩写,自1973年由日本日 立公司发明。
4
结构化详细设计的结构
三种基本结构
顺序结构 选择结构 循环结构
5
A
结构化详细设计的结构和特点 结构化详细设计工具 人机交互界面设计 数据库设计 编码实现
1
8.1详细设计
详细设计就是在概要设计的基础上决定如何具 体实现各模块的内部细节,直到对系统中的每 个模块给出足够详细的过程描述。
在编码实现阶段就可以完全按照详细设计的细 节过程来映射到代码,最终实现整个系统。
用先全局后局部、先整体后细节、先抽象后具体的逐步求精 过程开发出的程序有清晰的层次结构,因此容易阅读和理解。
仅使用单入口单出口的控制结构,使得程序的静态结构和它 的动态执行情况比较一致。因此,程序容易阅读和理解,开 发时也比较容易保证程序的正确性,即使出现错误也比较容 易诊断和改正。
控制结构有确定的逻辑模式,编写程序代码只限于使用很少 几种直截了当的方式,因此源程序清晰流畅,易读易懂而且 容易测试。
15
PAD图举例
P1
P2 P3
C P4
P5
P6
until C2
11
盒图符号
A B
a.顺序
FPT BA
FPT A
b.IF-THEN-ELSE 选择
S Do until p
d.do-until 循环
P
=1 =2
=n
A1 A2
An
e.多分支选择
Do while p S
c.do-while 循环
12
PAD图
PAD是问题分析图(Problem Analysis Diagram)的英文缩写,自1973年由日本日 立公司发明。
4
结构化详细设计的结构
三种基本结构
顺序结构 选择结构 循环结构
5
A
结构化系统分析与设计概述-课件

三、数据字典
数据字典是在新系统数据流程图的基础上,对所有数据项进一步定 义和描述的工具。
– 数据元素
– 数据结构
– 数据流
– 数据存储
17
第三节 系统分析
四、处理过程
处理过程的表达工具通常有判断树、判断表、结构式 语言等。
五、需求分析报告
组织情况调查 系统目标 业务流程描述 数据描述
18
判定树的例子
21
第四节 系统设计
一、系统设计的任务
根据经批准的系统需求报告,考虑计算机软硬件的要求,将用户 的需求转换成具体的实施方案,解决“怎么做”的问题,它将系 统分析阶段建立的逻辑模型转化为物理模型。 总体设计:又称为“概要设计”或“初步设计”,其主要内容包 括新系统总体结构框架设计、代码设计、输入/输出设计和处理流 程及模块功能的设计等。 详细设计:则是对每一个模块进行进一步的细化,描述每一个模 块采用何种算法和实现步骤,编制每一模块的详细设计说明书。
查询库存量
库存量≥出库量
库存量<出库量
进入出库登记
库存量>0
库存量=0
按出库量登记出库
修改领料单 进入出库登记
退出出库登记
按出库量登记出库
19
②判定表:使用表格形式表达逻辑判断过程的一种工具
不同的条件组合 1
条件与加工
234
库存量≥出库量
YYNN
库存量>0
பைடு நூலகம்
Y NY N
按出库量登记出库 √
按库存量登记出库
精品
结构化系统分析与设计概述
第一节 结构化系统分析与设计概述
一、软件的开发方法
结构化开发方法(生命周期法)→基本的软件 开发方法 原型法 面向对象开发方法
Chapter_5_2 结构化方法-结构化设计精品PPT课件

软件结构图是总体设计阶段的主要描述工具, 它描述了构成系统的基本元素—模块及模块之间的 调用关系,模块之间的数据传递关系。
10
2.1 软件结构的基本概念
软件结构表示软件系统的构成,是软件模块间关系的表 示,下图则为软件结构示意图。
一、模块(Module)
A
模块是程序对象有名字的集 合。例如,过程、函数、子程序 、宏等,是构成软件系统结构的 基本元素。
5
1 结构化设计步骤
2.详细设计
对模块图中每个模块的过程进行描述,常用的描 述的方式有:伪代码, 流程图,N-S图,PAD图等。
6
1 结构化设计步骤
首先做概要设计,将软件需求转化为数据结 构和软件的系统结构。然后是详细设计,即过程 设计。通过对结构表示进行细化,得到软件详细 的数据结构和算法。
修改
(3) 变换部分的求精:根据设计准则,对模块进行合并或调 整。
32
5 变换分析设计
2号 C 中心 D 3号
加工
加工
加工
B 1号
输
转换流
输
E 4号
加工 入
出 加工
A
流
流F
M C CD D
CI
CT
CO
B
B CC D D E E
取B 转换B 处理C
A
B
A
取A
转换A
转换D 送E
E
F
F
转换E
送F
变换分析技术
35
内容提纲
➢结构化设计步骤 ➢软件结构与软件结构图 ➢数据流图类型 ➢结构化设计过程 ➢变换分析设计 ➢事务分析设计 ➢SD方法应用示例
36
6 事务分析设计
对于具有事务型特征的DFD,则采用事务分析的设计方法。 结合图4,说明该方法的设计过程。
10
2.1 软件结构的基本概念
软件结构表示软件系统的构成,是软件模块间关系的表 示,下图则为软件结构示意图。
一、模块(Module)
A
模块是程序对象有名字的集 合。例如,过程、函数、子程序 、宏等,是构成软件系统结构的 基本元素。
5
1 结构化设计步骤
2.详细设计
对模块图中每个模块的过程进行描述,常用的描 述的方式有:伪代码, 流程图,N-S图,PAD图等。
6
1 结构化设计步骤
首先做概要设计,将软件需求转化为数据结 构和软件的系统结构。然后是详细设计,即过程 设计。通过对结构表示进行细化,得到软件详细 的数据结构和算法。
修改
(3) 变换部分的求精:根据设计准则,对模块进行合并或调 整。
32
5 变换分析设计
2号 C 中心 D 3号
加工
加工
加工
B 1号
输
转换流
输
E 4号
加工 入
出 加工
A
流
流F
M C CD D
CI
CT
CO
B
B CC D D E E
取B 转换B 处理C
A
B
A
取A
转换A
转换D 送E
E
F
F
转换E
送F
变换分析技术
35
内容提纲
➢结构化设计步骤 ➢软件结构与软件结构图 ➢数据流图类型 ➢结构化设计过程 ➢变换分析设计 ➢事务分析设计 ➢SD方法应用示例
36
6 事务分析设计
对于具有事务型特征的DFD,则采用事务分析的设计方法。 结合图4,说明该方法的设计过程。
信息系统分析与设计第6章结构化系统分析PPT课件

30
6.3.1 数据字典的各类条目
数据字典中有六类条目:
可被重用的条目: 1. 数据元素 2. 数据结构
DFD图中的元素: 3. 数据流(可引用定义好的数据结构) 4. 数据存储(可引用定义好的数据结构) 5. 外部实体 6. 处理过程
31
一、数据元素
数据元素是最小的数据组成单位,也就是不可 再分的数据单位,如学号、年龄、性别等。
合格订单
编辑
计算
定货单
应收款
编制财 务报表
经理
14
储户
存取单பைடு நூலகம்存折 存折
业务 处理
储户
存取单 存折
业务 处理
账户
账户
15
4.数据存储
数据存储表示某种数据保存后的地方。不是指保存数据 的物理地点或物理介质,而是指数据存储的逻辑描述。 指向数据存储的箭头,表示送数据到数据存储; 从数据存储发出的箭头,表示从数据存储读取数据;
34
数据结构条目
35
三、数据流
需要描述以下属性:
(1)数据流的来源 (2)数据流的去处 (3)数据流的组成 (4)数据流的流通量 (5)高峰时的流通量
D2 产品
D5 职工
D2 产品
计算 销售量 销售量
累计销售量单价
D2 产品销售帐
计算销售总额
商品编号#_
16
其他图形表示
数据流图中的图形元素有不同的画法,本书使 用Gane-Sarson画法
存取要求
业务
储户
存折
处理
帐目
17
6.3.2 数据流图的画法
下面我们以高等学校学籍管理系统为例说明画数据流图的 方法
同时进行的业务活动要尽量画得靠近一些。 图中票据、账单要有始有终。初始状态的
6.3.1 数据字典的各类条目
数据字典中有六类条目:
可被重用的条目: 1. 数据元素 2. 数据结构
DFD图中的元素: 3. 数据流(可引用定义好的数据结构) 4. 数据存储(可引用定义好的数据结构) 5. 外部实体 6. 处理过程
31
一、数据元素
数据元素是最小的数据组成单位,也就是不可 再分的数据单位,如学号、年龄、性别等。
合格订单
编辑
计算
定货单
应收款
编制财 务报表
经理
14
储户
存取单பைடு நூலகம்存折 存折
业务 处理
储户
存取单 存折
业务 处理
账户
账户
15
4.数据存储
数据存储表示某种数据保存后的地方。不是指保存数据 的物理地点或物理介质,而是指数据存储的逻辑描述。 指向数据存储的箭头,表示送数据到数据存储; 从数据存储发出的箭头,表示从数据存储读取数据;
34
数据结构条目
35
三、数据流
需要描述以下属性:
(1)数据流的来源 (2)数据流的去处 (3)数据流的组成 (4)数据流的流通量 (5)高峰时的流通量
D2 产品
D5 职工
D2 产品
计算 销售量 销售量
累计销售量单价
D2 产品销售帐
计算销售总额
商品编号#_
16
其他图形表示
数据流图中的图形元素有不同的画法,本书使 用Gane-Sarson画法
存取要求
业务
储户
存折
处理
帐目
17
6.3.2 数据流图的画法
下面我们以高等学校学籍管理系统为例说明画数据流图的 方法
同时进行的业务活动要尽量画得靠近一些。 图中票据、账单要有始有终。初始状态的
《结构化的设计》PPT课件

a页 Page30
4)加工逻辑词条描述
加工名: 加工编号:反映该加工的层次 简要描述:加工逻辑及功能简述 输入数据流: 输出数据流: 加工逻辑:简述加工程序,加工顺序
a页 Page31
5)源点及汇(终)点词条描述
名称:外部实体名 简要描述:什么外部实体 有关数据流: 数目:
a页 Page32
复查系统规模和目标。
访问
分析
关键人员 有关材料
报告书 复查确认
切忌:模糊词的描述(等,各项,可能 大概等)
a页 Page5
研究目前正在使用的系统。
分析
现有系统
文档资料 使用手册
旧系统完成 的功能
旧系统存在 的问题
旧系统与其 他系统的接口
手工系统
旧系统的 高层
系统流程图
a页 Page6
导出新系统的高层逻辑模型。
a页 Page47
导出新系统的逻辑模型
分层的数据流图 数据字典
主要的处理算法
修正系统的开发计划
重新估计系统的成本和进度,修正以前制定的开发计划。
开发原型系统
a页 Page48
需求分析的过程
(1) 问题识别
从系统的角度来理解软件并评审软件范围 是否恰当
确定对目标系统的综合要求,即软件的需 求
1.系统流程图:
在可行性研究阶段使用系统流程图来对现有的系 统(旧系统或手工系统)进行描述表示。
系统流程图用来表达信息在系统各部件(包括程 序、文件、数据库、表格、人工过程等)之间的流 动情况,而不是对信息进行加工处理的控制过程的 描述。
系统流程图与程序流程图是不同的。
a页 Page11
符号:
系统流程图:
a页 Page14
4)加工逻辑词条描述
加工名: 加工编号:反映该加工的层次 简要描述:加工逻辑及功能简述 输入数据流: 输出数据流: 加工逻辑:简述加工程序,加工顺序
a页 Page31
5)源点及汇(终)点词条描述
名称:外部实体名 简要描述:什么外部实体 有关数据流: 数目:
a页 Page32
复查系统规模和目标。
访问
分析
关键人员 有关材料
报告书 复查确认
切忌:模糊词的描述(等,各项,可能 大概等)
a页 Page5
研究目前正在使用的系统。
分析
现有系统
文档资料 使用手册
旧系统完成 的功能
旧系统存在 的问题
旧系统与其 他系统的接口
手工系统
旧系统的 高层
系统流程图
a页 Page6
导出新系统的高层逻辑模型。
a页 Page47
导出新系统的逻辑模型
分层的数据流图 数据字典
主要的处理算法
修正系统的开发计划
重新估计系统的成本和进度,修正以前制定的开发计划。
开发原型系统
a页 Page48
需求分析的过程
(1) 问题识别
从系统的角度来理解软件并评审软件范围 是否恰当
确定对目标系统的综合要求,即软件的需 求
1.系统流程图:
在可行性研究阶段使用系统流程图来对现有的系 统(旧系统或手工系统)进行描述表示。
系统流程图用来表达信息在系统各部件(包括程 序、文件、数据库、表格、人工过程等)之间的流 动情况,而不是对信息进行加工处理的控制过程的 描述。
系统流程图与程序流程图是不同的。
a页 Page11
符号:
系统流程图:
a页 Page14
第1章结构化系统分析与设计方法课件

某 企
出库通知
业
出库
出库单
财务 科
成 品
销
销售台帐
销售
售
科
管
发货
统计
理 业
务
发货单
流
不能供货
程
订单
销售统计表
厂办
图
用户
订货合同
签订合同
订货单
(订单)
合同台帐
例5:某生产企业物资管理系统业务流程图
车间
领料单 用料计划
未批准领料单
领料通知
出库
供货 单位
缺货通知
订货单(合同) 补充订货单 催货单
发货单
订货
系图对功能体系进行描
述。
销售合同管理
合 同 有 效 性 检 查
合 同 执 行 情 况 分 析
合 同 登 记 和 变 更
销售系统管理
销售核算与统计
销销销 售售售 收利统 入润计 核核分 算算析
成品库管理
出 入 库 管 理
库 存 统 计
市场预测
市
市
场
场
预
分
测
析
1.2.3 业务流程分析
业务流程分析可以帮助我们了解某项业务的具体处理 过程,发现和处理系统调查工作中的错误和疏漏,修改和 删除原系统的不合理部分,促成在新系统基础上优化业务 处理流程。
报表输或单据入给某个处理后,产生的输出应是新报表、帐 册或单据。由原单据到新的报表单据之间,一定要存在一个 处理环节。单据报表送出、传递与接收应标出相应的人员或 部门。
不要有两个报表单据、两个部门或个人、两个处理之间的直 接箭头连接。也就是不应出现由单位到单位或由处理到处理 或由报表到报表的情况。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 易存取Accessibility :很容易被使用 • 及时Timeliness • 适当Relevance :有使用价值 • 正确Accuracy • 可用Useability :有合适的格式
输出设备和输出介质
输出设备 输出介质
• Printers(打印机) • Video Display Unit(显示器) • Plotters(绘图仪) • COM Equipment(串行端口设备) • Speakers(喇叭)更…多…或异想天开
输入/输出设计
• 哪些地方需要进行输入/输出设计呢?
–输出设计:当DFD图中有数据流从系统流出到外 部实体的地方。
– 报表、人机交互的查询、发送邮件等 – 到其它系统(消息、数据库、文件等) –输入设计:外部实体的数据流进入到系统的地方。 – 本系统操作人员的输入 – 来自于其它系统的输入(其它的数据库或文件、
提高录入速度、节省存储空间(使用代码作 数据库的主键PK、外键FK)…
代码的特性
唯一化
为事物提供一个概要而不含糊的 认定,便于数据的存储和检索。
规范化
即编码要有规律,符合某一类事 物的聚集,提高处理的效率和精度。
系统化 也即标准化,符合国家或行业标 准,提高数据全局一致性。
代码的种类
代码
无实义代码
– 界面中采用下拉表选择,不需要键盘输入
3. 利用数据库中的代码表对照检查(数据量多)
– 代码量很多时,下拉选择不可取,可在数据库中 为代码及其含义建立数据表,手工输入后,在数 据库中进行查询,如果存在则可显示详细内容, 否则表示输入有误。如学生学号
4. 代码中设置校验位(上述方法都不适用时)
– 代码自身具有一定的验证功能,如身份证号
代码中的校验位
校验码的生成过程如下:
(1)对代码本体的每一位加权求和: 设代码本体为:C 1C 2…C n 权因子为:P 1P 2…P n 加权求和:S=∑ C i P i
(2)以模除和得余数: R=S mod(M)
(3) 运算后得校验位(如模减去余数): Cn+1 =M-R
身份证中的校验位
比如:341001
• 选择输出设备与介质:常用的输出设备有显示终
端、打印机、磁带机、磁盘机、绘图仪、缩微胶卷 输出器、多媒体设备。输出介质有纸张、磁带、磁 盘、缩微胶卷、光盘、多媒体介质等等。
• 确定输出格式:输出文字、报表或图形,清晰直
观,满足用户的管理需求和习惯,符合行业标准
什么是高质量的输出设计
以下因素确定了输出质量:
代码设计必须遵循以下基本原则:
1. 唯一性 2. 合理性 3. 可扩充性(千年虫问题) 4. 简单性 5. 适用性 6. 规范性 7. 系统性
代码设计的步骤
• 代码设计可按下列步骤进行:
– 确定代码对象 – 考查是否已有标准代码 – 根据代码的使用范围、使用时间,根据实际情况
选择代码的种类与类型。 – 考虑检错功能 – 编写代码表
其它系统的实时响应结果) – 高度自动化的输入(条码扫描仪、传感器等)
7.6 输出设计
• 系统中的数据输出到人、组织、其它系统
报表
经理
商品查询结果 顾客
付款信息
信用卡 系统
输出设计的内容
• 确定输出内容:首先确定用户在使用信息方面的
要求,包括使用目的、输出速度、频率、数量、安 全性要求等等。然后设计输出信息的内容、信息形 式(表格、图形、文字)、数据结构、数据类型、 位数及取值范围等等。
有实义代码
顺序码
无序码
排序码
逻辑码
系列 顺序码
字母 顺序码
层次码
特征 组合码
矩阵码 自检码
代码的类型
• 代码的类型指代码符号的表示形式,一般有:
– 数字型:结构简单,使用方便,也便于排序,但 对象特征的描述不直观
– 字母型:便于记忆,人们有使用习惯。与同样长 度的数字码相比,容量大得多。但会出现重复和 冲突
∑(ai×Wi) =21+36+0+25+16+16+2+9+48++0+0+9+0+5+0+0+2) ∑(ai×Wi)(mod 11) = 189 Mod 11 = 2
余数:
0 1 2 3 4 5 6 7 8 9 10
校验码: 1 0 X 9 8 7 6 5 4 3 2
得出:341001X
代码设计的原则
第7章 结构化系统设计
本章主要内容
• 系统设计的任务 • 总体设计
– 结构化设计的概念、基本原则 – 从数据流图导出结构图
• 详细设计
– 代码设计 – 输出设计 – 输入设计 – 人机对话设计 – 模块详细设计 – 数据库设计、网络设计
• 系统设计说明书
7.5 代码设计
• 什么是代码?
– 用来表征客观事物的一个或一组有序的符号,它 应易于计算机和人识别与处理。
– 一般用数字、字母或它们的组合来表示。 – 代码设计是科学管理的体现。 – 代码无处不在:车牌号码、商品编码、身份证号、
学号、专业代码
代码的作用
为什么需要代码? 1. 鉴别功能:唯表女… 3. 排序:数字、字母容易排序,而汉字按照拼
音排序通常不符合管理需要 4. 专用含义 其他可能的好处:
• Paper(纸)
邮件、手机短信、 脉冲、传感器……
• Video Screen(屏幕)
• Microfilm/Microfiche(胶片)
• Air Waves/Sound(声音)
• Disk(存储设备)
• IC卡……
∑(ai×Wi) mod 11
i: 表示号码字符从由至左包括校验码在内的位置序号
Ai:表示第i位置上的号码字符值
Wi:示第i位置上的加权因子
Ai 3 4 0 5 2 4 1 9 8 0 0 1 0 1 0 0 1 ?
Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
根据公式进行计算:
– 数字字母混合型:兼有前两种代码的优点。但是 其组成形式复杂,计算机输入不便,人工录入效 率低,错误率高(要避免出现:I和1,0和o…)
代码举例
• 身份证号 • 国际书号 • 会计科目 • 考研报考的学校代码、专业代码 • ...
如何保证代码输入的正确性
代码输入不能出错,那么如何避免代码错误: 1. 输入技术(如条码扫描、磁卡、IC卡/读卡器) 2. 列表选择输入(用于数据量少的情况)
输出设备和输出介质
输出设备 输出介质
• Printers(打印机) • Video Display Unit(显示器) • Plotters(绘图仪) • COM Equipment(串行端口设备) • Speakers(喇叭)更…多…或异想天开
输入/输出设计
• 哪些地方需要进行输入/输出设计呢?
–输出设计:当DFD图中有数据流从系统流出到外 部实体的地方。
– 报表、人机交互的查询、发送邮件等 – 到其它系统(消息、数据库、文件等) –输入设计:外部实体的数据流进入到系统的地方。 – 本系统操作人员的输入 – 来自于其它系统的输入(其它的数据库或文件、
提高录入速度、节省存储空间(使用代码作 数据库的主键PK、外键FK)…
代码的特性
唯一化
为事物提供一个概要而不含糊的 认定,便于数据的存储和检索。
规范化
即编码要有规律,符合某一类事 物的聚集,提高处理的效率和精度。
系统化 也即标准化,符合国家或行业标 准,提高数据全局一致性。
代码的种类
代码
无实义代码
– 界面中采用下拉表选择,不需要键盘输入
3. 利用数据库中的代码表对照检查(数据量多)
– 代码量很多时,下拉选择不可取,可在数据库中 为代码及其含义建立数据表,手工输入后,在数 据库中进行查询,如果存在则可显示详细内容, 否则表示输入有误。如学生学号
4. 代码中设置校验位(上述方法都不适用时)
– 代码自身具有一定的验证功能,如身份证号
代码中的校验位
校验码的生成过程如下:
(1)对代码本体的每一位加权求和: 设代码本体为:C 1C 2…C n 权因子为:P 1P 2…P n 加权求和:S=∑ C i P i
(2)以模除和得余数: R=S mod(M)
(3) 运算后得校验位(如模减去余数): Cn+1 =M-R
身份证中的校验位
比如:341001
• 选择输出设备与介质:常用的输出设备有显示终
端、打印机、磁带机、磁盘机、绘图仪、缩微胶卷 输出器、多媒体设备。输出介质有纸张、磁带、磁 盘、缩微胶卷、光盘、多媒体介质等等。
• 确定输出格式:输出文字、报表或图形,清晰直
观,满足用户的管理需求和习惯,符合行业标准
什么是高质量的输出设计
以下因素确定了输出质量:
代码设计必须遵循以下基本原则:
1. 唯一性 2. 合理性 3. 可扩充性(千年虫问题) 4. 简单性 5. 适用性 6. 规范性 7. 系统性
代码设计的步骤
• 代码设计可按下列步骤进行:
– 确定代码对象 – 考查是否已有标准代码 – 根据代码的使用范围、使用时间,根据实际情况
选择代码的种类与类型。 – 考虑检错功能 – 编写代码表
其它系统的实时响应结果) – 高度自动化的输入(条码扫描仪、传感器等)
7.6 输出设计
• 系统中的数据输出到人、组织、其它系统
报表
经理
商品查询结果 顾客
付款信息
信用卡 系统
输出设计的内容
• 确定输出内容:首先确定用户在使用信息方面的
要求,包括使用目的、输出速度、频率、数量、安 全性要求等等。然后设计输出信息的内容、信息形 式(表格、图形、文字)、数据结构、数据类型、 位数及取值范围等等。
有实义代码
顺序码
无序码
排序码
逻辑码
系列 顺序码
字母 顺序码
层次码
特征 组合码
矩阵码 自检码
代码的类型
• 代码的类型指代码符号的表示形式,一般有:
– 数字型:结构简单,使用方便,也便于排序,但 对象特征的描述不直观
– 字母型:便于记忆,人们有使用习惯。与同样长 度的数字码相比,容量大得多。但会出现重复和 冲突
∑(ai×Wi) =21+36+0+25+16+16+2+9+48++0+0+9+0+5+0+0+2) ∑(ai×Wi)(mod 11) = 189 Mod 11 = 2
余数:
0 1 2 3 4 5 6 7 8 9 10
校验码: 1 0 X 9 8 7 6 5 4 3 2
得出:341001X
代码设计的原则
第7章 结构化系统设计
本章主要内容
• 系统设计的任务 • 总体设计
– 结构化设计的概念、基本原则 – 从数据流图导出结构图
• 详细设计
– 代码设计 – 输出设计 – 输入设计 – 人机对话设计 – 模块详细设计 – 数据库设计、网络设计
• 系统设计说明书
7.5 代码设计
• 什么是代码?
– 用来表征客观事物的一个或一组有序的符号,它 应易于计算机和人识别与处理。
– 一般用数字、字母或它们的组合来表示。 – 代码设计是科学管理的体现。 – 代码无处不在:车牌号码、商品编码、身份证号、
学号、专业代码
代码的作用
为什么需要代码? 1. 鉴别功能:唯表女… 3. 排序:数字、字母容易排序,而汉字按照拼
音排序通常不符合管理需要 4. 专用含义 其他可能的好处:
• Paper(纸)
邮件、手机短信、 脉冲、传感器……
• Video Screen(屏幕)
• Microfilm/Microfiche(胶片)
• Air Waves/Sound(声音)
• Disk(存储设备)
• IC卡……
∑(ai×Wi) mod 11
i: 表示号码字符从由至左包括校验码在内的位置序号
Ai:表示第i位置上的号码字符值
Wi:示第i位置上的加权因子
Ai 3 4 0 5 2 4 1 9 8 0 0 1 0 1 0 0 1 ?
Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
根据公式进行计算:
– 数字字母混合型:兼有前两种代码的优点。但是 其组成形式复杂,计算机输入不便,人工录入效 率低,错误率高(要避免出现:I和1,0和o…)
代码举例
• 身份证号 • 国际书号 • 会计科目 • 考研报考的学校代码、专业代码 • ...
如何保证代码输入的正确性
代码输入不能出错,那么如何避免代码错误: 1. 输入技术(如条码扫描、磁卡、IC卡/读卡器) 2. 列表选择输入(用于数据量少的情况)