结构化开发方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
结构化开发方法分析与设计提纲
一、分析阶段:
(一)收集信息
分析员通过与用户交谈或观察商业过程得到信息。
注意:使用活动图来表示工作流程
(二)定义系统需求
功能需求信息:需要系统完成什么样的工作(逻辑模型、物理模型)
非功能需求信息:技术需求、性能需求、可用性需求、安全需求
(三)划分需求优先级
确定关键问题:系统要完成的最重要的事是什么?
(四)构建可用性和发现原型
构建原型(发现原型)的主要目的是为了更好地理解用户的需求。
原型的构建不为实现所有的功能,而是用来检验商业需求某种实现方法的可行性(五)系统需求建模:
1.把所有事件罗列出来并加以分析(事件:可以描述、值得记录的在某一特定时间和地
点发生的事情。)
事件的分类:(1)外部事件:系统之外发生的事件,通常都是由外部实体或动作参与者触发的。
(2)临时(时序)事件:由于到达某一时刻所发生的事件,系统是自动产生所需要的输出结果而不需要用户进行操作。
(3)状态事件:当系统内部发生了需要处理的情况时所引发的事件。基于系统从一个状态或条件到另一个状态或条件的转变触发过程。通常状态事件作为外部事件的结果而发生
注意:确定一个事情的出现是事件还是随事件而发生的一部分交互行为,采用的方法是看二者之间是否有较长的停顿或间隔
2.关注每一个事件、利用事件表描述事件
3.事物分析
(1)考查事件列表、罗列以下事物,根据不同的分析和设计方法的要求对其加以调整。
①实实在在的事物;
②人所充当的角色;
③组织部门;
④突发事件或重要的交互行为信息
(事物构成系统存储信息的相关数据)
(2)分析事物的关系
基数/重数:发生在事物间关联的数目。
根据每件事物的关联数目来理解每种关系的本质非常重要的。
(3)分析事物的属性
•属性:有关事物的一条特定信息。
•标识符(关键字):能惟一标识事物的一个属性。
•复合属性:包括了许多相关属性的属性。
(4)分析系统需要存储其信息的事物(数据实体)
用ERD图描绘数据实体间的关系
数据的一致性
DFD 中的处理对应于RMO 事件表中的一个活动。
● DFD 的数据存储(条目可用性)信息没包含在事件表中。
● DFD 中的每一个数据存储在ERD 中代表一个数据实体。
● 在DFD 中的处理使用了在系统的ERD 中所提供的数据实体及其属性信息。 ● DFD 将事件触发的处理和在ERD 中定义的数据实体相结合。
5.DFD 的抽象水平(分层、关联图、0层图、DFD 片段)
(1) 抽象水平:把系统分解成一个逐渐细化的分层集合的建模技术。
(2) 关联图(顶层图):在单个处理符号中概括系统内所有处理活动的DFD ,
或者说
活动
触发器 来源
是描述系统抽象概念的DFD。
●每个关联图对应一个外部事件的触发器变成一个输入数据流,而其来源变成
一个外部实体。
●每一个响应变成一个输出数据流,并且其目的源变成一个外部实体。
●对应短暂事件的触发器不是数据流,所以没有对应短暂事件的数据流。
●注意:关联图DFD能够直接从事件表创建。
(3)DFD片段:用一个单一处理符号表示系统响应一个事件的DFD。
(4)DFD片段组合成0层图
6. DFD的详细描述(处理描述、数据字典)
首先,需要详细描述每一个最低层处理。(结构化的英语、决策树、决策表)
其次,系统分析员需要根据数据流包含的数据元素来定义数据流。数据存储也需要根据数据元素定义。
最后,系统分析员也需要定义每一个数据元素
数据元素定义包括以下内容:
●数据项的名称
●数据项的值域
●数据项的数据类型
●数据项的长度
对数据项的简单描述、与之相关的数据项或数据结构、处理过程等加以说明
二、系统设计阶段:
(一)采用结构化方法进行应用程序结构的设计
●模块:具有输入/输出、逻辑功能、运行程序、内部数据属性的一组程序语句。模块
的输入来源和输出去向都是同一个调用者,模块从调用者那里获得输入,然后再把
产生的数据返回给调用者;
●逻辑功能:指它能够做什么事情,表达了它把输入转换成输出的功能;
●内部数据:指属于该模块自己的数据;
●运行程序:指它如何用程序实现这种逻辑功能。
(二)系统流程图
对组成一个完整系统的各计算机程序、文件、DB,以及相关手工过程的表示。
⏹表达系统执行过程;描述所有I/O和与之有关的处理;包括所有文件的建立过程;
表达数据在系统中的流向。
⏹生成时应考虑:信息处理的步骤和内容;每一步骤所涉及的物理过程;各步骤间的
物理和逻辑关系。
⏹系统流程图用图形的方式描述哪些子系统是系统自动完成的,哪些需要人工的参与,
画出数据流和控制流。
⏹其标出整个系统的文件、程序及人工处理部分。通过确认文件媒介(磁盘、磁带)来
增加物理实现的描述。
⏹提供整个系统的总体情况。
⏹描述多层系统中层与层之间的交互。
⏹其重点放在物理对象的实现上(如可执行的程序、文件和文档等)(与DFD不同)。
3.结构图
(1)结构图:用来展示一个计算机程序模块间关系的层次图。
⏹结构图的层次描述系统每部分的功能和子功能。
⏹在结构图上用矩形框表示功能,每个矩形框代表一个模块。