第六章:结构化开发方法
结构化开发方法
考点分析(下午题:数据流图)
补充数据流图的缺失部分(补充数据流、补充外实体、补充数据存储)、数据流图的改错(包括正数据流名称、数据流的起点与终点、删除多余数据流)、与数据流相关的概念简答题
系统分析与设计概述
系统分析概述
系统分析:对当前系统进行详细调查,收集数据;建立当前系统的逻辑模型;分析现状,提出意见和新目标;建立新系统的逻辑模型;编写系统方案说明书。
系统分析报告作用:描述目标系统的逻辑模型,作为用户与开发人员之间的协议或合同,作为目标系统验收和评价的依据。
系统分析报告内容:组织情况概述,现行系统概述,系统逻辑模型,新系统在各个业务处理环节拟采用的管理方法、算法或模型,与新系统相配套的管理制度和运行体制的建立,系统设计与实施的初步计划,用户领导审批意见。
系统设计的基本原理
系统设计基本原理:抽象,模块化,信息隐蔽,模块独立(耦合:模块之间联系的紧密程度;内聚:模块内部各元素之间联系的紧密程度)。
系统总体结构设计
1)系统结构设计原则:分解-协调,自顶向下,信息隐蔽、抽象,一致性,明确性,模块间耦合尽可能小、内聚尽可能高,模块的扇入、扇出系数要合理,模块的规划适当。
2)子系统划分的原则:要具有相对独立性,之间的数据依赖性要尽可能小,结果应使数据冗余较小,应考虑今后管理发展的需要,应便于系统分阶段实现,应考虑各类资源的利用。
3)模块(组成系统的基本单位)四要素:输入和输出,处理功能,内部数据,程序代码。
4)模块结构图:
模块调用示例:
模块数据传递与转接符(注:A调用B,转接符用在内容存放不下时进行图之间的连接):
结构化分析方法
结构化分析方法概述
结构化分析方法(自顶向下逐层分解):数据流图,数据字典,小说明,补充材料
数据流图
数据流图也称数据流程图(Data Flow Diagram,DFD),它是一种便于用户理解、分析系统数据流程的图形工具。它摆脱了系统的物理内容,精确地在逻辑上描述系统的功能、输入、输出和数据存储等,是系统逻辑模型的重要组成部分。通常,数据流名可用名词或形容词加名词来描述;加工名可以用动词或及物动词加宾语来描述;数据存储名可以用名词来描述;外部实体可以用实际的人员身份或组织的名称来命名。
数据流图的基本图形元素:
数据流图举例:
数据字典(DD)
数据流图描述了系统的分解,但没有对图中各成分进行说明。数据字典就是为数据流图中的每个数据流、文件、加工,以及组成数据流或文件的数据项做出说明。其中,对加工的描述称为“小说明”,也可以称为“加工逻辑说明”。 数据字典有以下4类条目:数据流条目,数据存储条目,数据项条目,加工条目。加工逻辑也称为“小说明”,常用的加工逻辑描述方法有结构化语言、判定表和判定树3种。
结构化设计方法
结构化设计的步骤
结构化设计大致可以分为两步进行,第一步是建立一个满足软件需求规约的初始结构图,第二步是对结构图进行改进。功能模块的分解应满足自顶向下、逐步求精、信息隐蔽、高内聚低耦合等设计准则,模块的大小应适中。
数据流图到软件体系结构的映射
结构化设计是将结构化分析的结果(数据流图)映射成软件的体系结构(结构图)。根据信息流的特点,可将数据流图分为变换型数据流图和事务型数据流图,其对应的映射分别称为变换分析和事务分析。变换分析(从变换流型的DFD导出程序结构图):确定输入流和输出流、分离出变换中心,第一级分解,第二级分解,事务分析。
WebApp分析与设计
WebApp的特性
WebApp的特性:网络密集性、并发性、无法预知的负载量、性能、可用性、数据驱动
WebApp需求模型
WebApp需求模型:内容模型、交互模型、功能模型、导航模型、配置模型
WebApp设计
WebApp设计:架构设计、构件设计、内容设计、导航设计
用户界面设计
用户界面设计的黄金原则
1)用户操纵控制
以不强迫用户进入不必要的或不希望的动作的方式来定义交互模式、提供灵活的交互、允许中断和撤销用户交互、当技能级别增长时可以使交互流线化并允许定制交互、使用户与内部技术细节隔离开来、设计应允许用户与出现在屏幕上的对象直接交互。
2)减轻用户的记忆负担
减少对短期记忆的要求、建立有意义的默认、定义直观的快捷方法、界面的视觉布局应该基于真实世界的象征、以不断进展的方式揭示信息。
3)保持界面一致
允许用户将当前任务放入有意义的环境中、在应用系统家族内保持一致性、如果过去的交互模型已经建立起了用户期望,除非有不得已的理由,否则不要改变它。
用户界面的分析与设计
用户界面的分析与设计过程是迭代的,包括4个不同的框架活动:界面分析及建模、界面设计、界面构造和界面确认。
用户界面设计问题
在进行用户界面设计时,几乎总会遇到以下4个问题:系统响应时间、帮助设施、错误信息处理、菜单和命令标记。