程序结构设计

系统的系统结构图
在这里插入图片描述
如何判断是否是一个考得系统结构图:好的系统结构图是两端窄中间宽的结构
模块化。能够把一个大而复杂的软件系统划分为简单的易理解的软件结构,原则抽象化
抽象化:
抽象化的三重抽象层次
(1)用问题说出环境的属于描述这个软件(高层次的抽象)
(2)任务需求的细化和描述,未给出怎么做的信息,不能直接实现
(3)程序的过程表示,编程阶段

数据抽象:在不同层析上描述数据对象的细节,定义与该数据的相关的操作
**事务(**Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)

事务系统结构图:
在这里插入图片描述
(1)接受一项任务,根据事务处理的特点和性质选择分派一个适当的处理单元。
变换分析步骤
(2)重画数据流图
(3)区分有限的输入,有效的输出和中心变换的部分。
(4)进行一级分解,设计上层模型
(5)进行二级分解,设计输入,输出的部分

事务分析:从定向下分析数据结构
分析流程
(1)识别事务源
(2)规定适当的事务型结构
(3)识别各种对实物的分析和定义
(4)注意利用公共模块
(5)对每一事务或对联系密切的一组实物建立一个事务处理模块
(6)对操作模块规定它的全部细节模块

软件模块结构的改进:

模块功能的完善化:
完整的模块应该有以下几部分
(1)执行规定的功能部分
(2)出错处理部分
(3)给他的调用者返回一个结束状态的信息
消除重复的功能改善软件的结构:
(1)完全相似
(2)局部相似
原则:模块的作用范围不许再控制范围之内
尽量的减少高扇出结构,随着深度的增加扇出增加
避免或者减少使用病态联接
减少三种并病态联接:
在这里插入图片描述
(1)直接病态联接
(2)公共数据域病态联接
(3)通信模块病态联接
模块的大小适中
规定行数在50~100左右

数据设计

:数据设计的原则
(1)用于软件的系统化方法也适用于数据
(2)确定所有的数据结构和在美中数据结构上施加的操作
(3)应当建立一个数据字典并用它来定义数据和软件的设计
(4)底层的数据设计的决策应该推迟设计过程的后期进行
(5)数据结构的表示只限于那些必须直接使用该数据结构内数据的模块才能知道
(6)应当建立一个存放有效 数据结构及相关操作的库
(7)软件设计和层序设计语言应当支持抽象数据类型的定义和实现

文件设计

文件的逻辑设计
(1)整理必须得数据元素
(2)分析数据间的关系
(3)确定文件的逻辑设计
(4)理解文件的特性
(5)确定文件的组织方式
(6)确定文件的存储介质
(7)确定文件的记录格式
(8)估计存取时间和存储容量

过程设计

(详细设计,不是编程)
程序流程图:
在这里插入图片描述(过早的考虑控制流,是程序的控制不是特别的好所以不建议使用数据流程图)

N-S图
在这里插入图片描述
特点:循环的次数隐含

问题分析图(PAD)(PAD)
在这里插入图片描述
优点:
(1)设计的程序一定是结构化的程序
(2)流程图清晰
(3)表示的程序结构清晰易懂
(4)很方便的转化为高级语言
(5)容易表示数据结构
(6)PDL是一种用于描述功能模块的算法设计和加工的细节的语言,简称为设计程序用语是一种伪码

猜你喜欢

转载自blog.csdn.net/weixin_40486955/article/details/85193923