面向数据流的结构化分析方法SA
- 格式:ppt
- 大小:5.97 MB
- 文档页数:80
结构化分析(SA)方法结构化开发方法(Structured Developing Method)是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。
结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD 法)及结构化程序设计方法(SP 法)构成的。
结构化分析(Structured Analysis,简称SA 法)方法是面向数据流的需求分析方法,是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
它适合于分析大型的数据处理系统,特别是企事业管理系统。
SA 法也是一种建模的活动,主要是根据软件内部的数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。
1 SA 法概述1.SA 法的基本思想结构化分析(Structured Analysis,简称SA 法)是面向数据流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
结构化分析方法的基本思想是“分解”和“抽象”。
分解:是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决。
图4 是自顶向下逐层分解的示意图。
顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个自系统的方法就是“抽象”。
2.SA 法的步骤⑴建立当前系统的“具体模型”;系统的“具体模型”就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
⑵抽象出当前系统的逻辑模型;分析系统的“具体模型”,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的“逻辑模型”。
⾯向数据流的分析⽅法外部实体位于软件系统边界之外的信息⽣产者或消费者转换变换数据流的处理过程,⼜称泡(bubble )为⼀个或多个转换提供数据源或数据存储服务的缓冲区、⽂件或数据库数据存储在转换之间定向流动的数据项或数据项集合第5章⾯向数据流的分析⽅法⾯向数据流的分析⽅法(dataflow-oriented analysis method )与⾯向对象、⾯向数据的分析⽅法,都是需求建模⽅法。
它们均有⼀组规范的语⾔表达机制,需求分析⼈员⽤来表达⽤户需求、构造软件系统模型。
此外,它们还含有⼀些规则和经验知识,指导分析⼈员提取需求信息,促进⽤户需求精确化、完全化和⼀致化。
⾯向数据流的分析⽅法是结构化分析⽅法系列中的⼀⽀,具有明显的结构化特征。
结构化分析⽅法的雏形出现于20世纪60年代后期。
但是,直到1979年才由DeMarco 将其作为⼀种需求分析⽅法正式提出。
由此,结构化分析⽅法得到了迅速发展和⼴泛应⽤。
本章主要介绍⼴为使⽤的⾯向数据流的分析⽅法及其需求分析CASE ⼯具。
5.1 数据流图与数据字典⼀个基于计算机的信息处理系统就是对数据流进⾏⼀系列加⼯的处理过程,⽽这些加⼯将输⼊数据流变换为输出数据流。
数据流图就是⽤来刻画数据流和加⼯的信息系统建模技术。
数据字典是与数据流图配套使⽤的,⽤来定义系统中数据元素的有机集合体。
5.1.1 数据流图数据流图(Data Flow Diagram ,DFD )描述输⼊数据流到输出数据流的转换(即加⼯),⽤于对系统的功能建模。
1.数据流图的基本图形元素数据流图中的基本图形元素包括:数据流、转换、数据存储以及外部实体,如图5-1所⽰。
数据流、转换、数据存储⽤于构建软件系统内部的数据处理模型;外部实体表⽰存在于系统边界之外的对象,⽤来帮助我们理解软件系统数据的来源和去向。
图5-1 数据流图的基本图形元素需要说明的是,DFD 图形元素还可以⽤其他描述符号来表⽰,如⽤圆⾓矩形表⽰转换,⽤开放箭头表⽰数据流等。
精品文档)方法结构化分析(SA是现有的软件开发方法(Structured Developing Method)结构化开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。
结构化开发方法(SP 及结构化程序设计方法法)(SA法)、结构化设计方法(SD 由结构化分析方法构成的。
法)方法是面向数据流的需求分法)结构化分析(Structured Analysis,简称SA等人提出和发及DeMarco 70 年代末由Yourdon,Constaintine 析方法,是特别是企事业管理它适合于分析大型的数据处理系统,展,并得到广泛的应用。
系统。
法也是一种建模的活动,主要是根据软件内部的数据传递、变换关系,SA 自顶向下逐层分解,描绘出满足功能要求的软件模型。
法概述1 SA1.SA 法的基本思想是面向数据流的需求分析方)简称SA 法结构化分析(Structured Analysis,并得等人提出和发展,Yourdon,Constaintine 年代由及DeMarco 70法,是到广泛的应用。
结构化分析方法的基本思想是“分解”和“抽象”。
.精品文档可分解:是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,以把大问题分解成若干小问题,然后分别解决。
是自顶向下逐层分解的示意图。
顶层抽象地描述了整个系统,底层具图4体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以这种用最本质的属性表示一个自直至涉及到最详细的内容,后再逐层添加细节,系统的方法就是“抽象”。
2.SA 法的步骤;⑴建立当前系统的“具体模型”图描系统的“具体模型”就是现实环境的忠实写照,即将当前系统用DFD 述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
;⑵抽象出当前系统的逻辑模型.精品文档分析系统的“具体模型”,抽象出其本质的因素,排除次要因素,获得用图描述的当前系统的“逻辑模型”。
结构化分析方法结构化分析方法一、需求分析与需求分析方法需求阶段是软件开发的关键阶段。
需求分析的任务:准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么;用《需求规格说明书》规范的形式准确地表达用户的需求。
需求分析阶段的工作(四方面):◆需求获取:确定系统各方面需求;全面地提炼出系统的功能性与非功能性需求。
◆需求分析:对获取的需求分析和综合,给出系统解决方案和逻辑模型。
◆编写需求规格说明书:为用户、设计人员的交流提供方便,还可作为控制软件开发进程的依据。
◆需求审评:复审需求分析阶段的工作,验证需求文档的一致性、可行性等。
1、需求获取的目的清楚地理解所要解决的问题、完整地获取用户需求。
2、需求获取的内容用户需求分类:(1)功能性需求定义了系统做什么(描述系统必须支持的功能和过程)。
(2)非功能性需求(技术需求)定义了系统工作时的特性(描述操作环境和性能目标)。
3、需求分析的步骤4、需求分析过程示意(1)通过对现实环境的调查,获得当前系统的物理模型。
(2)去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型。
(3)分析当前系统与目标系统的差别,建立目标系统的逻辑模型。
5、需求分析的方法结构化分析(传统建模方法)、面向对象分析。
二、结构化分析方法1、结构化分析方法(Structure Analysis---SA)(1)定义是面向数据流进行需求分析的方法,采用自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。
(2)结构化分析的主要步骤通过对用户的调查,以软件的需求为线索,获取当前系统的具体模型;去掉具体模型中非本质因素,抽象出当前系统的逻辑模型;根据计算机的特点分析当前系统与目标系统的差别,建立目标系统的逻辑模型;完善目标系统并补充细节,写出目标系统的软件需求规格说明。
2、结构化分析方法使用的常用工具(1)数据流图(DFD—Data Flow Diagram )①作用从数据传递和加工的角度,在需求分析阶段以图形的方式描述数据流从输入到输出的移动变换过程,为系统建立逻辑模型。
结构化分析(SA)方法结构化开发方法(Structured Developing Method)就是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点就是快速、自然与方便。
结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD 法)及结构化程序设计方法(SP 法)构成的。
结构化分析(Structured Analysis,简称SA 法)方法就是面向数据流的需求分析方法,就是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出与发展,并得到广泛的应用。
它适合于分析大型的数据处理系统,特别就是企事业管理系统。
SA 法也就是一种建模的活动,主要就是根据软件内部的数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。
1 SA 法概述1、SA 法的基本思想结构化分析(Structured Analysis,简称SA 法)就是面向数据流的需求分析方法,就是70年代由Yourdon,Constaintine 及DeMarco 等人提出与发展,并得到广泛的应用。
结构化分析方法的基本思想就是“分解”与“抽象”。
分解:就是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决。
图4 就是自顶向下逐层分解的示意图。
顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层就是从抽象到具体的逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个自系统的方法就就是“抽象”。
2、SA 法的步骤⑴建立当前系统的“具体模型”;系统的“具体模型”就就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
⑵抽象出当前系统的逻辑模型;分析系统的“具体模型”,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的“逻辑模型”。
结构化⽅法与⾯向对象⽅法之应⽤⽐较结构化⽅法与⾯向对象⽅法是最具代表性的,也是⽬前应⽤最为⼴泛的软件开发⽅法。
本⽂将分别对两者进⾏介绍和⽐较。
⼀、结构化⽅法 结构化⽅法(Structured Methodology)是计算机学科的⼀种典型的系统开发⽅法。
它采⽤系统科学的思想⽅法,从层次的⾓度,⾃顶向下地分析和设计系统。
基本思想是基于功能的分解和抽象,形成系统的模块结构,从⽽针对每个模块进⾏结构化设计及结构化编程来完成系统的开发。
结构化⽅法由结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)三者组成。
(⼀)结构化分析 结构化分析是⾯向数据流进⾏需求分析的⽅法。
采取的⼯具主要有数据流图、数据字典、实体关系图等。
数据流图(Data Flow Diagram,DFD)是⼀种分层的建⽴系统逻辑模型的⽅法,模拟系统的⼀个⼤致边界,并展⽰系统和外部的接⼝、数据的输⼊输出以及数据的存储。
它有四个基本要素:数据流、实体、数据加⼯和数据存储。
数据流图分层的思想体现为,⾸先确定系统和系统涉及到的外部实体之间的数据流,画出第0层数据流图(顶层图);其次在顶层图的基础上对系统的主要功能进⾏分析,抽象出功能作为系统的加⼯,确定实体和加⼯之间的数据流,将顶层图细化为第1层数据流图;依此类推,之后不断细化得到第2、3乃⾄更多层的数据流图,直到不能再细化为⽌。
数据字典(Data Dictionary)是⼀个包含所有系统数据元素定义的仓库。
数据元素的定义必须是精确的、严格的和明确的。
⼀个实体⼀般应包含以下⼏个部分的内容:名字、别名、⽤途、内容描述、备注信息。
实体关系图(E-R图)是数据库设计的基础,是指以实体、关系、属性三个基本概念概括数据的基本结构,从⽽描述静态数据结构的概念模式。
(⼆)结构化设计 结构化设计是指在结构化分析的基础上,映射分析模型到设计模型,得到系统的模块结构、数据库结构等。
如在数据流图的基础上,进⾏相应的变换分析和事务分析得到系统的模块结构,在ER模型的的基础上,进⾏数据库设计得到数据库结构。
IT项目需求分析与管理之结构化分析方法(一)作者:雪影发表于2012 年 5 月 5 日分类:软件架构|暂无评论1、概述结构化开发方法是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。
结构化开发方法包含三部分:•结构化分析方法(SA法):结构化分析方法是面向数据流进行需求分析的方法,适合于数据处理类型软件的需求分析。
•结构化设计方法(SD 法)•结构化程序设计方法(SP 法)SA 法建模就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件模型为止。
结构化分析方法是传统软件工程中公认的技术成熟和使用广泛的需求分析方法。
它主要借助于分层数据流图和数据字典等图形及半形式化的工具表达系统的需求。
结构化分析方法结构化分析方法(Structured Analysis,简称SA 法)是面向数据流的需求分析方法,是70 年代末由Yourdon, Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
它适合于分析大型的数据处理系统,特别是企事业管理系统。
主要应用技术和工具:数据流图(DFD);数据字典(DD);加工说明(PESPEC);实体关系图(E-R);状态变迁图(STD)等SA法的基本思想结构化分析的基本思想:“分解”和“抽象”分解:把系统的复杂性降低到可以掌握的程度,把大问题分解成若干小问题,然后分别解决。
抽象:即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容。
自顶向下逐层分解,顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。
SA 法的步骤1⑴建立当前系统的“物理模型”;系统的“物理模型”就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
SA 法的步骤2⑵抽象出当前系统的逻辑模型;分析系统的“物理模型”,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的“逻辑模型”。
C语言公共基础知识填空题1.树结构表示实体类及实体间数据模型为____。
正确答案: 层次模型。
分析:用树结构表示实体类型及实体间联系的数据模型称为层次模型,用有向图结构表示实体类型及实体间联系的数据模型称为网状模型,用二维表格结构表示实体及其联系的数据模型称为关系模型。
2.数据流图的类型有________和事务型。
正确答案: 变换型。
分析:典型的数据流类型有两种:变换型以及事务型。
变换型是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统;在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这引处理能够完成该作业要求的功能,这种数据流就叫做事务。
3.冒泡排序法最好情况下元素交换次数为____。
正确答案: 0。
分析:根据冒泡排序算法思想可知,若待排序的初始序列为“正序”序列,则只需进行一趟排序,在排序过程中进行n-1次关键字间的比较,且不移动和变换记录,这种情况是冒泡排序的最好情况,故冒泡排序算法在最好的情况下元素交换次数为0。
4.关系数据库的关系演算语言是以________为基础的DML语言。
正确答案:谓词演算。
分析:关系数据库中的关系演算包括元组关系演算和域关系演算。
二者都是由原子公式组成的公式。
而这些关系演算都是以数理逻辑中的谓词演算为基础。
5.在长度为n的有序线性表中进行二分查找。
最坏的情况下,需要的比较次数为____。
正确答案:log2n。
分析:对于长度为n的有序线性表,在最坏情况下,二分查找只需要比较log以2为底的n次,而顺序查找需要比较n次。
6.通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为____ 。
正确答案:软件生命周期。
分析:软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。
一般包括可行性研究与需求分析、设计、实现、测试交付使用以及维护等活动。
结构化分析(SA)方法结构化开发方法(Structured Developing Method)就是现有得软件开发方法中最成熟,应用最广泛得方法,主要特点就是快速、自然与方便。
结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD 法)及结构化程序设计方法(SP 法)构成得。
结构化分析(Structured Analysis,简称SA 法)方法就是面向数据流得需求分析方法,就是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出与发展,并得到广泛得应用。
它适合于分析大型得数据处理系统,特别就是企事业管理系统。
SA 法也就是一种建模得活动,主要就是根据软件内部得数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求得软件模型。
1 SA 法概述1、SA 法得基本思想结构化分析(Structured Analysis,简称SA 法)就是面向数据流得需求分析方法,就是70年代由Yourdon,Constaintine 及DeMarco 等人提出与发展,并得到广泛得应用。
结构化分析方法得基本思想就是“分解”与“抽象”。
分解:就是指对于一个复杂得系统,为了将复杂性降低到可以掌握得程度,可以把大问题分解成若干小问题,然后分别解决。
图4 就是自顶向下逐层分解得示意图。
顶层抽象地描述了整个系统,底层具体地画出了系统得每一个细节,而中间层就是从抽象到具体得逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质得属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细得内容,这种用最本质得属性表示一个自系统得方法就就是“抽象”。
2、SA 法得步骤⑴建立当前系统得“具体模型”;系统得“具体模型”就就是现实环境得忠实写照,即将当前系统用DFD 图描述出来。
这样得表达与当前系统完全对应,因此用户容易理解。
⑵抽象出当前系统得逻辑模型;分析系统得“具体模型”,抽象出其本质得因素,排除次要因素,获得用DFD 图描述得当前系统得“逻辑模型”。
结构化分析(SA)方法结构化开发方法(Structured Developing Method)是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。
结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD 法)及结构化程序设计方法(SP 法)构成的。
结构化分析(Structured Analysis,简称SA 法)方法是面向数据流的需求分析方法,是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
它适合于分析大型的数据处理系统,特别是企事业管理系统。
SA 法也是一种建模的活动,主要是根据软件内部的数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。
1 SA 法概述1.SA 法的基本思想结构化分析(Structured Analysis,简称SA 法)是面向数据流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
结构化分析方法的基本思想是“分解”和“抽象”。
分解:是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决。
图4 是自顶向下逐层分解的示意图。
顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个自系统的方法就是“抽象”。
2.SA 法的步骤⑴建立当前系统的“具体模型”;系统的“具体模型”就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
⑵抽象出当前系统的逻辑模型;分析系统的“具体模型”,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的“逻辑模型”。