UML中数据流图介绍(doc 21页)

·单向关联

在一个单向关联中,两个类是相关的,但是只有一个类知道这种联系的存在。

一个单向的关联,表示为一条带有指向已知类的开放箭头(不关闭的箭头或三角形,用于标志继承)的实线。如同标准关联,单向关联包括一个角色名和一个多重值描述,但是与标准的双向关联不同的时,单向关联只包含已知类的角色名和多重值描述。

简单的说就是OverdrawAccountReport中包含了BankAccount属性,而BankAccount中不需要包含OverdrawnAccountsReport对象

6.聚合的表示:

聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中,部分类的生命周期独立于整体类的生命周期。你想到的问题在小组里交流,每

举例来说,我们可以想象,车是一个整体实体,而车轮轮胎是整辆车的一部分。轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中。在这个实例中,Wheel类实例清楚地独立于Car类实例而存在。然而,有些情况下,部分类的生命周期并不独立于整体类的生命周期 -- 这称为合成聚合。举例来说,考虑公司与部门的关系。公司和部门都建模成类,在公司存在之前,部门不能存在。这里Department类的实例依赖于Company类的实例而存在。

让我们更进一步探讨基本聚合和组合聚合。

注意:聚合与普通的关联的区别在于:普通的关联可能只是一个简单的“包含、引用”关系,关联和被关联类之间在逻辑概念上不一定有紧密的联系,而聚合则不同,它表示的是一种内在关系紧密,相互依存,相互包含的概念,其中的一部分是构成另外一部分的不可或缺的成分。

·基本聚合

有聚合关系的关联指出,某个类是另外某个类的一部分。在一个聚合关系中,子类实例可以比父类存在更长的时间。为了表现一个聚合关系,你画一条从父类到部分类的实线,并在父类的关联末端画一个未填充棱形。

图中清楚的表明了类Car对象包含了另一类Wheel的4个实例,这两者在概念上是密不可分的,其中的一个类是另一个类的构成成分。菱形表示“包含”,箭头表示被包含的对象,数字4表示包含的数目。

·组合聚合

组合聚合关系是聚合关系的另一种形式,但是子类实例的生命周期依赖于父类实例的生命周期。

注意:组合关系如聚合关系一样绘制,不过这次菱形是被填充的。

7.反射关联的表示:

类也可以使用反射关联与它本身相关联。起先,这可能没有意义,但是记住,类是抽象的。当一个类关联到它本身时,这并不意味着类的实例与它本身相关,而是类的一个实例与类的另一个实例相关。

图描绘的关系说明一个Employee实例可能是另外一个Employee实例的经理。然而,因为“manages”的关系角色有 0..*的多重性描述;一个雇员可能不受任何其他雇员管理。

三、UML中的对象图:

实例的记号和类一样,但是取代顶端区域中仅有的类名,它的名字是经过拼接的: Instance Name : Class Name 如 Donald : Person

因为显示实例的目的是显示值得注意的或相关的信息,没必要在你的模型中包含整个实体属性及操作。相反地,仅仅显示感兴趣的属性及其值是完全恰当的。

UML 2 也允许在实体层的关系/关联建模。绘制关联与一般的类关系的规则一样,除了在建模关联时有一个附加的要求。附加的限制是,关联关系必须与类图的关系相一致,而且关联的角色名字也必须与类图相一致。

四、UML中的角色图:

建模类的实例有时比期望的更为详细。有时,你可能仅仅想要在一个较多的一般层次做类关系的模型。在这种情况下,你应该使用角色记号。角色记号类似于实例记号。为了建立类的角色模型,你画一个方格,并在内部放置类的角色名及类名,作为实体记号,但是在这情况你不能加下划线。

注意:角色图和对象图的一个明显区别就是:对象图每个对象名称下面都加了下划线,而角色图没有

以下是:序列图

序列图主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。很象类图,开发者一般认为序列图只对他们有意义。然而,一个组织的业务人员会发现,序列图显示不同的业务对象如何交互,对于交流当前业务如何进行很有用。除记录组织的当前事件外,一个业务级的序列图能被当作一个需求文件使用,为实现

一个未来系统传递需求。在项目的需求阶段,分析师能通过提供一个更加正式层次的表达,把用例带入下一层次。那种情况下,用例常常被细化为一个或者更多的序列图。

组织的技术人员能发现,序列图在记录一个未来系统的行为应该如何表现中,非常有用。在设计阶段,架构师和开发者能使用图,挖掘出系统对象间的交互,这样充实整个系统设计。

序列图的主要用途之一,是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。序列图除了在设计新系统方面的用途外,它们还能用来记录一个存在系统(称它为“遗产”)的对象现在如何交互。当把这个系统移交给另一个人或组织时,这个文档很有用。

Java应用程序由许多类所构成,是Java实现面向对象应用程序的核心。类图主要描述Java应用程序中各种类之间的相互静态关系,如类的继承、抽象、接口以及各种关联。要利用UML设计Java应用程序,仅仅使用类图来描述这些静态关系,利用可视化工具,要实现Java应用程序的代码自动生成,是远远不够的。我们还必须描述各种类相互之间的协作关系、动态关系,如时间序列上的交互行为。其中UML序列图就是用来描述类与类之间的方法调用过程(或消息发送)是如何实现的。

一、UML中的新元素-框架:

在UML 2中,框架元件用于作为许多其他的图元件的一个基础,但是大多数人第一次接触框架元件的情况,是作为图的图形化边界。当为图提供图形化边界时,一个框架元件为图的标签提供一致的位置。在UML 图中框架元件是可选择的。

除了提供一个图形化边框之外,用于图中的框架元件也有描述交互的重要的功能, 例如序列图。在序列图上一个序列接收和发送消息(又称交互),能通过连接消息和框架元件边界,建立模型(如图 2 所见到)。

对于序列图,图的标签由文字“sd”开始。当使用一个框架元件封闭一个图时,图的标签需要按照以下的格式:图类型图名称。

UML 规范给图类型提供特定的文本值。(举例来说,sd代表序列图,activity代表活动图,use case代表用例图)。

二、UML中的序列图:

序列图主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。

在项目的需求阶段,分析师能通过提供一个更加正式层次的表达,把用例带入下一层次。那种情况下,用例常常被细化为一个或者更多的序列图。

序列图的主要用途之一,是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。序列图除了在设计新系统方面的用途外,它们还能用来记录一个存在系统(称它为“遗产”)的对象现在如何交互。

序列图的主要目的是定义事件序列,产生一些希望的输出。重点不是消息本身,而是消息产生的顺序;不过,大多数序列图会表示一个系统的对象之间传递的什么消息,以及它们发生的顺序。图按照水平和垂直的维度传递信息:垂直维度从上而下表示消息/调用发生的时间序列,而且水平维度从左到右表示消息发送到的对象实例。

1.生命线:

生命线画作一个方格,一条虚线从上而下,通过底部边界的中心(图3)。生命线名字放置在方格里。

UML 的生命线命名标准按照如下格式: 实体名:类名

生命线名称带下划线。当使用下划线时,意味着序列图中的生命线代表一个类的特定实体,不是特定种类的实体(例如,角色)。序列图的实例名称有下划线,而角色名称没有。

一个生命线能用来表现一个匿名的或未命名的实体。当在一个序列图上,为一个未命名的实例建模时,生命线的名字采用和一个命名实例相同的模式;但是生命线名字的位置留下空白,而不是提供一个例图名字。

2.消息体:

为了显示一个对象(例如,生命线)传递一个消息给另外一个对象,你画一条线指向接收对象,包括一个实心箭头(如果是一个同步调用操作)或一个棍形箭头(如果是一个异步讯号)。消息/方法名字放置在带箭头的线上面。正在被传递给接收对象的消息,表示接收对象的类实现的一个操作/方法。

返回消息是可选择的;一个返回消息画作一个带开放箭头的虚线,向后指向来源的生命线,在这条虚线上面,你放置操作的返回值。为了要画一个调用本身的对象,如你平时所作的,画一条消息,但是不是连接它到另外的一个对象,而是你把消息连接回对象本身。

三、UML中的约束:

约束的符号很简单;格式是: 【Boolean Test】

四、UML中的新元素-组合碎片(变体方案、选择项、循环):

一个组合碎片用来把一套消息组合在一起,在一个序列图中显示条件分支。

1.变体:试卷,计算机走向,据去年进行高中语文,语文试卷,计算机一项调查显示,%高

变体用来指明在两个或更多的消息序列之间的、互斥的选择。一个变体的组合碎片元件使用框架来画。单词“alt”放置在框架的namebox里。然后较大的长方形分为 UML 2 所称的操作元。操作元被虚线分开。每个操作元有一个约束进行测试,而这个约束被放置在生命线顶端的操作元的左上部。如果操作元的约束等于“true”,然后那个操作元是要执行的操作元。

识。3.使学生主动参加收集数据、整理数据等统计活动,体会统计是

图 8作为一个变体的组合碎片如何阅读的例子,显示序列从顶部开始,即bank对象获取支票金额和帐户结余。此时,序列图中的变体组合碎片接管。因为约束“[balance >= amount]”,如果余额超过或等于金额,然后顺序进行bank对象传递 addDebitTransaction 和storePhotoOfCheck 消息给account对象。然而,如果余额不是超过或等于金额,然后顺序的过程就是bank传递addInsuffientFundFee 和 noteReturnedCheck 消息给account对象,

returnCheck 消息给它自身。因为“else”约束,当余额不大于或者等于金额时,第二个序列被调用。在变体的组合碎片中,不需要“else”约束;而如果一个操作元,在它上面没有一个明确的约束,那么将假定“else”约束。文试卷,计算机,现在这个样子!为什么每一个中国人都在活着,因为每一个人

2.选择项:

一个选择项用来为简单的“if then”表达式建模。(例如,如果架上的圈饼少于五个,那么另外做两打圈饼)。

选择项组合碎片符号与变体组合碎片类似,除了它只有一个操作元并且永不能有“else”约束以外(它就是如此,没有理由)。要画选择项组合,你画一个框架。文字“opt”是被放置在框架的 namebox 里的文本,在框架的内容区,选择项的约束被放置在生命线顶端上的左上角。然后选择项的消息序列被放在框架的内容区的其余位置内。

注意:变体用于为if then else建模,选择项用于为if then建模,因为只有一个分支,所以不能出现[else],较上年底增长%,上支付用户和上银行全年用户也增长了%和%,目前用户规模

以下是:用例图:

用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块,所以是设计系统分析阶段的起点,设计人员根据客户的需求来创建和解释用例图,用来描述软件应具备哪些功能模块以及这些模块之间的调用关系,用例图包含了用例和参与者,用例之间用关联来连接以求把系统的整个结构和功能反映给非技术人员(通常是软件的用户),对应的是软件的结构和功能分解。

用例是从系统外部可见的行为,是系统为某一个或几个参与者(Actor)提供的一段完整的服务。从原则上来讲,用例之间都是独立、并列的,它们之间并不存在着包含从属关系。但是为了体现一些用例之间的业务关系,提高可维护性和一致性,用例之间可以抽象出包含(include)、扩展(extend)和泛(generalization)几种关系。

共性:都是从现有的用例中抽取出公共的那部分信息,作为一个单独的用例,然后通后过不同的方法来重用这个公共的用例,以减少模型维护的工作量。

1、包含(include)

包含关系:使用包含(Inclusion)用例来封装一组跨越多个用例的相似动作(行为片断),以便多个基(Base)用例复用。基用例控制与包含用例的关系,以及被包含用例的事件流是否会插入到基用例的事件流中。基用例可以依赖包含用例执行的结果,但是双方都不能访问对方的属性。

包含关系对典型的应用就是复用,也就是定义中说的情景。但是有时当某用例的事件流过于复杂时,为了简化用例的描述,我们也可以把某一段事件流抽象成为一个被包含的用例;相反,用例划分太细时,也可以抽象出一个基用例,来包含这些细颗粒的用例。这种情况类似于在过程设计语言中,将程序的某一段算法封装成一个子过程,然后再从主程序中调用这一子过程。

例如:业务中,总是存在着维护某某信息的功能,如果将它作为一个用例,那新建、编辑以及修改都要在用例详述中描述,过于复杂;如果分成新建用例、编辑用例和删除用例,则划分太细。这时包含关系可以用来理清关系。

2、扩展(extend)

扩展关系:将基用例中一段相对独立并且可选的动作,用扩展(Extension)用例加以封装,再让它从基用例中声明的扩展点(Extension Point)上进行扩展,从而使基用例行为更简练和目标更集中。扩展用例为基用例添加新的行为。扩展用例可以访问基用例的属性,因此它能根据基用例中扩展点的当前状态来判断是否执行自己。但是扩展用例对基用例不可见。

对于一个扩展用例,可以在基用例上有几个扩展点。

例如,系统中允许用户对查询的结果进行导出、打印。对于查询而言,能不能导出、打印查询都是一样的,导出、打印是不可见的。导入、打印和查询相对独立,而且为查询添加了新行为。因此可以采用扩展关系来描述:

4、泛化(generalization)

泛化关系:子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。在实际应用中很少使用泛化关系,子用例中的特殊行为都可以作为父用例中的备选流存在。

例如,业务中可能存在许多需要部门领导审批的事情,但是领导审批的流程是很相似的,这时可以做成泛化关系表示:

上面是我参考的一篇文章,觉得将三种关系的区别讲得很清晰,在此基础上结合自己的系统,对项目(在线购物系统)的用例做了整体的描绘。

************************************************************** ***

(1)系统整体用例图

(商品用例图)

(购买信息用例)

(用户资料用例)

按照先整体用例,后子系统用例来进行描绘的,欢迎大家提出好的建议!

转:UML中扩展和泛化的区别

泛化表示类似于OO术语“继承”或“多态”。UML中的Use Case泛化过程是将不同Use Case之间的可合并部分抽象成独立的父Use Case,并将不可合并部分单独成各自的子Use Case;包含以及扩展过程与泛化过程类似,但三者对用例关系的优化侧重点是不同的。如下:

●泛化侧重表示子用例间的互斥性;

●包含侧重表示被包含用例对Actor提供服务的间接性;

●扩展侧重表示扩展用例的触发不定性;详述如下:

既然用例是系统提供服务的UML表述,那么服务这个过程在所有用例场景中是必然发生的,但发生按照发生条件可分为如下两种情况:

⒈无条件发生:肯定发生的;

⒉有条件发生:未必发生,发生与否取决于系统状态;

因此,针对用例的三种关系结合系统状态考虑,泛化与包含用例属于无条件发生的用例,而扩展属于有条件发生的用例。进一步,用例的存在是为Actor提供服务,但用例提供服务的方式可分为间接和直接两种,依据于此,泛化中的子用例提供的是直接服务,而包含中的被包含用例提供的是间接服务。同样,扩展用例提供的也是直接服务,但扩展用例的发生是有条件的。

另外一点需要提及的是:泛化中的子用例和扩展中的扩展用例均可以作为基本用例事件的备选择流而存在。

以下是:活动图

UML 活动图记录了单个操作或方法的逻辑,单个用户案例,或者单个业务流程的逻辑。在很多方面,活动图是结构化开发中流程图和数据流程图 (DFD) 的面向对象等同体,要创建一个 UML 活动图,您需要反复执行下列步骤。

第一步,定义活动图的范围首先应该定义您要对什么建模。单个用户案例力?一个用户案例的一部分?一个包含多个用户案例的商务流程?一个类的单个方法?一旦您定义了您所作图的范围,您应该在其顶部,用一个标注添加标签,

指明该图的标题和唯一的标示符。您有可能也想要包括该图的时间甚至作者名。

第二步,添加起始和结束点每个活动图有一个起始点和结束点,因此您也要马上添加它们。在《UML 精粹》(UML Distilled) (参见参考资料),Fowler 和 Scott 认为结束点是可选的。有时候一个活动只是一个简单的结束,如果是这种情况,指明其唯一的转变是到一个结束点也是无害的。这样,当其他人阅读您的图时,他或她知道您已经考虑了如何退出这些活动。

第三步,添加活动如果您正对一个用户案例建模,对每个角色(actor)所发出的主要步骤引入一个活动(该活动可能包括起始步骤,加上对起始步骤系统响应的任何步骤)。如果您正对一个高层的商务流程建模,对每个主要流程引入一个活动,通常为一个用户案例或用户案例包。最后,如果您正对一个方法建模,那么对此引入一个活动是很常见的。

第四步,添加活动间的转变我的风格总是应该退出一个活动,即使它是转变到一个结束点。一旦一个活动有多个转变时,您必需对每个转变加以相应标示。

第五步,添加决策点有时候,您所建模的逻辑需要做出一个决策。有可能是需要检查某些事务或比较某些事务。要注意的是,使用决策点是可选的。

第六步,找出可并行活动之处当两个活动间没有直接的联系,而且它们都必需在第三个活动开始前结束,那它们是可以并行运行的。

下面的活动图描述了大学新生第一次将如何办理入学的商业逻辑。

实心圆表示活动图的起点,实际上是一个占位符,带边框的实心圆表示终点。

圆角矩形表示执行的过程或活动。在该图中,虽然您会注意到“登记研习班”用例将多次调用“登记研习班”活动,但这些活动却相当紧密地映射到用例。活动可以细致得多,特别在选择记录方法逻辑,而不是高级商业过程时。

菱形表示判定点,虽然在此示例中判定点只有两种可能结果;但即使有更

多可能结果,它也同样容易。

箭头表示活动之间的转换,各种活动之间的流动次序。

箭头上的文字表示继续转换所必须满足的条件,总是使用格式“[条件]”

来描述。我猜想,在UML的将来版本中,我们将会看到使用UML约束表示法(如“{condition}”)记录的条件。

粗线条表示可能会并行进行的过程的开始和结束;在大学里成功入学后,必须参加指定的概况介绍,还要至少登记一个研习班并交付一部分的学

费。

退出活动可能有几种方法,如您看到的“填写入学表”活动的那样。如果正确填写了表格,那么可以继续进行大学的入学手续。但是,如果表格不正确,那么必须获得帮助(可能从注册员获得帮助)以正确填写它们。

图 1. 第一次入学的 UML 活动图

这个活动图非常有趣,因为它省掉了

中标识的几个用例的逻辑。用例模型没有很好地表达处理的顺序是件好事。例如,虽然中显示的用例图为您清楚地描述了该系统所执行的功能类型,但是它没有明确地表达这些用例可能发生的顺序。但是,的活动图做到了这一点。总之,不同模型的优缺点各有不同。

图 2中标识的几个用例的逻辑。用例模型没有很好地表达处理的顺序是件好事。例如,虽然图 2中显示的用例图为您清楚地描述了该系统所执行的功能类型,但是它没有明确地表达这些用例可能发生的顺序。但是,图 1的活动图做到了

这一点。总之,不同模型的优缺点各有不同。

图 2. 大学的用例图

泳道

将模型中的活动按照职责组织起来通常很有用。例如,可以将一个商业组织处理的所有活动组织起来。这种分配可以通过将活动组织成用线分开的不同区域来表示。由于它们的外观的缘故,这些区域被称作泳道。图 7–2 表示了泳道。

图 7–2 泳道和对象流

· 2. 对象流

活动图能表示对象的值流和控制流。对象流状态表示活动中输入或输出的对象。对输出值而言,虚线箭头从活动指向对象流状态。对输入值而言,虚线箭头从对象流状态指向活动。如果活动有多个输出值或后继控制流,那么箭头背向分叉符

号。同样,多输入箭头指向结合符号。

电子商务系统UML图汇总

电子商务系统UML图汇总

1 引言 1.1 项目背景 信息化是当今世界发展的大趋势,是推动经济社会发展和变革的重要力量。随着信息化时代的到来,信息传播发生了深刻的变革,人们的工作方式、生活方式乃至思维方式都发生了前所未有的改变,各行各业都在顺应这一时代变革加强信息化建设。谁能在信息化变革时期先人一步,就能获得先机,抢占鳌头。传统的销售方式是商家把商品放在店铺里供顾客挑选,店铺的规模、位置等客观因素影响着商店的客流量,并且商品的存放与销售需要人力进行管理,雇员的工资、店面的租金等又增加了成本,顾客也不能迅速找到所需要的商品,而开一个网上商店只需要一个可以存放商品的仓库,比租一个店面能节省很多,也不需要太多的人力来管理,不会因为商店的面积影响客流量,客户足不出户就能买东西,并且很容易就能找到所需要的商品。 近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。 网上购物系统作为B2B,B2C(Business to Customer,即企业对消费者),C2C(Customer to Customer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C 的网上购物系统。 网上购物是一种具有交互功能的商业信息系统,它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易,这种全新的交易方式实现了公司间文档与资金的无纸化交换【1】。

网上购物系统详细精炼版(UML-类图-时序图-数据流图)

附件一 说明书编号:XXXXXX-01 网上商城购物系统需求说明 书 某某软件学院毕业论文精炼版 2011 年7 月20 日

目录 目录 (2) 1引言 (1) 1.1项目背景 (1) 1.2项目意义 (1) 1.3文档目的 (2) 1.4定义 (3) 2任务概述 (4) 2.1系统目标 (4) 2.2用户特点 (4) 2.3应用范围 (4) 2.4假定和约束 (4) 2.5关键性技术 (4) 3需求分析 (4) 3.1业务描述 (6) 3.2用例分析 (9) 3.3系统功能概述 . (15) 5 运行环境规定 (15) 5.1 设备 (23) 5.2支持软件 (23) 5.3控制 (24) 用户确认函 (25)

1引言 1.1项目背景 信息化是当今世界发展的大趋势,是推动经济社会发展和变革的重要力量。随着信息化时代的到来,信息传播发生了深刻的变革,人们的工作方式、生活方式乃至思维方式都发生了前所未有的改变,各行各业都在顺应这一时代变革加强信息化建设。谁能在信息化变革时期先人一步,就能获得先机,抢占鳌头。传统的销售方式是商家把商品放在店铺里供顾客挑选,店铺的规模、位置等客观因素影响着商店的客流量,并且商品的存放与销售需要人力进行管理,雇员的工资、店面的租金等又增加了成本,顾客也不能迅速找到所需要的商品,而开一个网上商店只需要一个可以存放商品的仓库,比租一个店面能节省很多,也不需要太多的人力来管理,不会因为商店的面积影响客流量,客户足不出户就能买东西,并且很容易就能找到所需要的商品。 近年来,随着Internet 的迅速崛起,互联网已日益成为收集提供信息的最 佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。 网上购物系统作为B2B,B2C(Business to Customer ,即企业对消费者),C2C(Customer to Customer ,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C 的网上购物系统。 网上购物是一种具有交互功能的商业信息系统,它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI 交易,这种全新的交易方式实现了公司间文档与资 金的无纸化交换【1】。 可行性研究 建设Web平台系统的必要性取决于需求的迫切性和实现的可能性。可行性并不

UML中数据流图介绍(doc 21页)

·单向关联 在一个单向关联中,两个类是相关的,但是只有一个类知道这种联系的存在。 一个单向的关联,表示为一条带有指向已知类的开放箭头(不关闭的箭头或三角形,用于标志继承)的实线。如同标准关联,单向关联包括一个角色名和一个多重值描述,但是与标准的双向关联不同的时,单向关联只包含已知类的角色名和多重值描述。 简单的说就是OverdrawAccountReport中包含了BankAccount属性,而BankAccount中不需要包含OverdrawnAccountsReport对象 6.聚合的表示: 聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中,部分类的生命周期独立于整体类的生命周期。你想到的问题在小组里交流,每 举例来说,我们可以想象,车是一个整体实体,而车轮轮胎是整辆车的一部分。轮胎可以在安置到车时的前几个星期被制造,并放置于仓库中。在这个实例中,Wheel类实例清楚地独立于Car类实例而存在。然而,有些情况下,部分类的生命周期并不独立于整体类的生命周期 -- 这称为合成聚合。举例来说,考虑公司与部门的关系。公司和部门都建模成类,在公司存在之前,部门不能存在。这里Department类的实例依赖于Company类的实例而存在。 让我们更进一步探讨基本聚合和组合聚合。 注意:聚合与普通的关联的区别在于:普通的关联可能只是一个简单的“包含、引用”关系,关联和被关联类之间在逻辑概念上不一定有紧密的联系,而聚合则不同,它表示的是一种内在关系紧密,相互依存,相互包含的概念,其中的一部分是构成另外一部分的不可或缺的成分。 ·基本聚合

有聚合关系的关联指出,某个类是另外某个类的一部分。在一个聚合关系中,子类实例可以比父类存在更长的时间。为了表现一个聚合关系,你画一条从父类到部分类的实线,并在父类的关联末端画一个未填充棱形。 图中清楚的表明了类Car对象包含了另一类Wheel的4个实例,这两者在概念上是密不可分的,其中的一个类是另一个类的构成成分。菱形表示“包含”,箭头表示被包含的对象,数字4表示包含的数目。 ·组合聚合 组合聚合关系是聚合关系的另一种形式,但是子类实例的生命周期依赖于父类实例的生命周期。 注意:组合关系如聚合关系一样绘制,不过这次菱形是被填充的。 7.反射关联的表示: 类也可以使用反射关联与它本身相关联。起先,这可能没有意义,但是记住,类是抽象的。当一个类关联到它本身时,这并不意味着类的实例与它本身相关,而是类的一个实例与类的另一个实例相关。 图描绘的关系说明一个Employee实例可能是另外一个Employee实例的经理。然而,因为“manages”的关系角色有 0..*的多重性描述;一个雇员可能不受任何其他雇员管理。 三、UML中的对象图:

网上购物系统详细精炼版(UML,类图,时序图,数据流图)

附件一 说明书编号:XXXXXX-01网上商城购物系统需求说明书 某某软件学院毕业论文精炼版 2011年7月20日

目录 (2) 1 引言 (1) 1.1 项目背景 (1) 1.2 项目意义 (1) 1.3 文档目的 (2) 1.4 定义 (3) 2 任务概述 (4) 2.1 系统目标 (4) 2.2 用户特点 (4) 2.3 应用范围 (4) 2.4 假定和约束 (4) 2.5 关键性技术 (4) 3 需求分析 (4) 3.1 业务描述 (6) 3.2 用例分析 (9) 3.3 系统功能概述 (15) 5 运行环境规定 (15) 5.1 设备 (23) 5.2 支持软件 (23) 5.3 控制 (24) 用户确认函 (25)

1.1 项目背景 信息化是当今世界发展的大趋势,是推动经济社会发展和变革的重要力量。随着信息化时代的到来,信息传播发生了深刻的变革,人们的工作方式、生活方式乃至思维方式都发生了前所未有的改变,各行各业都在顺应这一时代变革加强信息化建设。谁能在信息化变革时期先人一步,就能获得先机,抢占鳌头。传统的销售方式是商家把商品放在店铺里供顾客挑选,店铺的规模、位置等客观因素影响着商店的客流量,并且商品的存放与销售需要人力进行管理,雇员的工资、店面的租金等又增加了成本,顾客也不能迅速找到所需要的商品,而开一个网上商店只需要一个可以存放商品的仓库,比租一个店面能节省很多,也不需要太多的人力来管理,不会因为商店的面积影响客流量,客户足不出户就能买东西,并且很容易就能找到所需要的商品。 近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。 网上购物系统作为B2B,B2C(Business to Customer,即企业对消费者),C2C(Customer to Customer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C 的网上购物系统。 网上购物是一种具有交互功能的商业信息系统,它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易,这种全新的交易方式实现了公司间文档与资金的无纸化交换【1】。

数据流图(DFD)专题讲解

软件工程考试 之 数据流图(DFD)专题讲解及例题分析 ——解题的方法与技巧 1.首先要懂得数据流图设计要略 有时为了增加数据流图的清晰性,防止数据流的箭头线太长,减少交叉绘制数据流条数,一般在一张图上可以重复同名的数据源点、终点与数据存储文件。如某个外部实体既是数据源点又是数据汇点,可以在数据流图的不同的地方重复绘制。在绘制时应该注意以下要点: (1)自外向内,自顶向下,逐层细化,完善求精。 (2)保持父图与子图的平衡。 为了表达较为复杂问题的数据处理过程,用一个数据流图往往不够。一般按问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。根据层次关系一般将数据流图分为顶层数据流图、中间数据流图和底层数据流图,除顶层图外,其余分层数据流图从0开始编号。对任何一层数据流图来说,称它的上层数据流图为父图,在它的下一层的数据流图为子图。 顶层数据流图只含有一个加工,表示整个系统;输入数据流和输出数据流为系统的输入数据和输出数据,表明了系统的范围,以及与外部环境的数据交换关系。 底层数据流图是指其加工不能再分解的数据流图,其加工称为“原子加工”。 中间数据流图是对父层数据流图中某个加工进行细化,而它的某个加工也可以再次细化,形成子图。中间层次的多少,一般视系统的复杂程度而定。 任何一个数据流子图必须与它上一层父图的某个加工对应,二者的输入数据流和输出数据流必须保持一致,此即父图与子图的平衡。父图与子图的平衡是数据流图中的重要性质,保证了数据流图的一致性,便于分析人员阅读和理解。 在父图与子图平衡中,数据流的数目和名称可以完全相同;也可以在数目上不相等,但是可以借助数据字典中数据流描述,确定父图中的数据流是由子图中几个数据流合并而成的,也即子图是对父图中加工和数据流同时进行分解,因此也属于父图与子图的平衡,如图1所示。

DFD(数据流图)

1DFD(数据流图) (2006-09-02 14:46:15) 转载 分类:精品转载 3.3 数据流图(DFD) 数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 下图是一个飞机机票预订系统的数据流图,它反映的功能是:旅行社把预订机票的旅客信息(姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。 3.3.1 基本图形符号 数据流图有四种基本图形符号: :箭头,表示数据流; 〇:圆或椭圆,表示加工; = :双杠,表示数据存储; □:方框,表示数据的源点或终点。 (1) 数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。

(2)加工(又称为数据处理)。对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应编号。 (3)数据存储(又称为文件),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。 (4)数据源点或终点,是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。 3.3.2画数据流图的步骤 (1)首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。下图为飞机机票预订系统的顶层图。 (2)画系统内部,即画下层数据流图。不再分解的加工称为基本加工。一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取票,两部分通过机票文件的数据存储联系起来,0层数据流图如图3-4。 (3)注意事项。 ①命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。 ②画数据流而不是控制流。数据流反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。 ③一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的

数据流图&数据流程图-百度百科

数据流图 百科名片 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。 目录 编辑本段简介 数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。 数据流图英文缩写DFD(Data Flow Diagram)它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。 数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。 数据流程图包括: a.指明数据存在的数据符号,这些数据符号也可指明该数据所使用的媒体; b.指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能; c.指明几个处理和(或)数据媒体之间的数据流的流线符号; d.便于读、写数据流程图的特殊符号。 在处理符号的前后都应是数据符号。数据流程图以数据符号开始和结束(除9.4规定的特殊符号外) 编辑本段数据流

数据流是一组数据。在数据流图中数据流用带箭头的线表示,在其线旁标注数据流名。在数据流图中应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件。 加工(处理) 在数据流图中加工用圆圈表示,在圆圈内写上加工名。一个处理框可以代表一系列程序、单个程序或者程序的一个模块。 编辑本段组成元素 数据流图 数据流程图中有以下几种主要元素: →:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。 □:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。 ○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。 〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。 编辑本段分层数据流图

UML的信息流图

UML的信息流图 随着软件开发领域的不断发展,越来越多的企业和组织选择采用UML(统一建模语言)来进行项目管理和开发。UML是一种通用的建模语言,可以为软件和系统开发提供支持。其中一种UML图表就是信息流图,它可以用来显示系统中不同对象之间的信息流动情况。本文将介绍信息流图的基本概念、组成和应用。 一、信息流图的概念 信息流图是UML中的一个图表,用于显示系统中不同对象之间的信息流动。UML定义了两种不同类型的信息流图:活动图和顺序图。活动图通常用于描述业务流程或工作流程,而顺序图则用于表示任务或动作之间的流程。在信息流图中,不同的形状代表了不同的对象,而箭头则表示信息流动的方向。信息流图不仅可以用于软件设计,还可以用于概念模型和业务流程的建模。 二、信息流图的组成 1.对象

信息流图的对象是指流程中出现的所有元素,可以是人、系统、设备等。UML定义了一些标准符号来表示对象,如矩形用于表示人或系统,圆圈用于表示设备等。 2.活动 活动是流程中的一个步骤,通常代表一个动作或任务。活动可以是手动或自动执行的,也可以是并行或顺序执行的。活动用带圆角矩形的形式表示。 3.控制流 控制流用于描述流程中活动的执行顺序和控制流程的流动。控制流通常用箭头表示,箭头的方向代表了活动的执行顺序。 4.数据流 数据流用于描述信息在系统中的流动情况。数据流可以是文本、数字或其他形式的数据,通常用带箭头的直线表示。箭头的方向表示数据流动的方向。

5.决策节点 决策节点用于描述不同条件下的流程分支。决策节点通常用菱形来表示,其中每个分支对应一个不同的方向箭头。 6.合并节点 合并节点用于将不同分支的流程集成回来。合并节点通常用菱形来表示,其中每个入口对应一个不同的箭头。 三、信息流图的应用 信息流图是一种常用的UML图表,可以用于软件开发、业务流程描述和系统设计等领域。以下是信息流图的一些应用: 1.系统设计 信息流图可以用于显示不同对象之间的信息流动情况,从而帮助系统设计师设想出一个合理的结构。通过信息流图,设计师可

uml建模实例100例

uml建模实例100例 UML(统一建模语言)是一种用于软件开发的标准建模语言,它可以帮助开发人员更好地理解、设计和实现软件系统。下面是100个UML建模实例。 1. 用例图:描述系统功能和外部用户的行为。 2. 活动图:描述系统中的过程和活动,通常用来描述系统的业务流程。 3. 类图:描述系统中的类、属性和方法、关系等。 4. 对象图:描述系统中的对象及其关系。 5. 状态图:描述系统中的对象或类的状态和状态转换。 6. 序列图:描述系统中的对象或类之间的交互过程。 7. 协作图:描述系统中的对象或类之间的协作过程。 8. 构件图:描述系统的组成部分和它们之间的关系。 9. 部署图:描述系统的物理部署结构和组件之间的关系。

10. 通信图:描述系统中的对象之间的消息传递。 11. 包图:描述系统中的包和它们之间的关系。 12. 组合结构图:描述系统中的组成部分和它们之间的组合关系。 13. 时序图:描述系统中的对象或类之间的时间关系。 14. 交互概述图:描述系统中的对象或类之间的协作过程。 15. 系统顺序图:描述系统中的对象或类之间的时间关系。 16. 概念图:描述系统中的概念和它们之间的关系。 17. 数据流图:描述系统中的数据流和处理过程。 18. 流程图:描述系统中的过程和流程。 19. 参与者图:描述系统中的参与者和它们之间的关系。 20. 视图图:描述系统中的视图和它们之间的关系。

21. 规则图:描述系统中的规则和它们之间的关系。 22. 用例图扩展点:描述用例图中的扩展点和它们之间的关系。 23. 活动图扩展点:描述活动图中的扩展点和它们之间的关系。 24. 类图扩展点:描述类图中的扩展点和它们之间的关系。 25. 对象图扩展点:描述对象图中的扩展点和它们之间的关系。 26. 状态图扩展点:描述状态图中的扩展点和它们之间的关系。 27. 序列图扩展点:描述序列图中的扩展点和它们之间的关系。 28. 协作图扩展点:描述协作图中的扩展点和它们之间的关系。 29. 构件图扩展点:描述构件图中的扩展点和它们之间的关系。 30. 包图扩展点:描述包图中的扩展点和它们之间的关系。 31. UML图模板:UML图的模板,用于创建新的UML图。

软件工程导论,数据流图实验报告

软件工程导论,数据流图实验报告软件工程导论实验报告 实验项目名称: Microsoft Visio 软件的使用 实验项目名称: 软件概要设计 实验项目名称: 软件详细设计 日期11月16日地点实验中心404 实验项目名称: UML用例图的设计和制作 日期地点 实验项目名称: UML类图的设计与实现 篇二:软件工程上机实验报告(1-10) SHANGHAI UNIVERSITY 软件工程实验总结 学学姓 院计算机工程与科学学院号名 10122050 王杰陈圣波 2014.03 指导老师日 期 实验一软件工程标准化文档 一、实验目的 1(了解国家标准GB/T8567-2006

2(熟悉软件产品开发文件的基本内容二、实验内容 1. 搜索和下载国家标准GB/T8567-2006。 2. 通过阅读国家标准GB/T8567-2006,将以下文字填写完整: 3. 通过阅读国家标准GB/T8567-2006,填写以下表格: 实验2 数据流分析 【说明】某直达列车车票预售系统接受顾客的订票和取票业务。 1(顾客为了提前订票,可向系统提供个人信息及其预订购的车次和日期,系统根据个人信息是否齐全和车次是否正确来判断订票单是否合格。对于合格的订票单,系统通过查找座位表审核相应的车次是否有剩余票。如果有剩余票,则记录顾客个人信息以及订票信息,并向顾客提供取票单。 2(到了可以取票的时间,顾客向系统提供取票单,在检查单据合格的情况下,系统想顾客提供火车票。 3(售票员可以利用系统查询各车次车票的已订购、已售出和剩余情况。 【问题1】画出系统的顶层数据流图。 【问题2】对问题1的结果进行分解,画出0层和1层数据流图。 (1) 系统的顶层数据流图 (2)0层数据流图 篇三:软件工程实验报告 本科实验报告 课程名称: 软件工程 实验项目: 机票预订系统 实验地点: 软件实验楼 专业班级: 学生姓名:

《软件工程与UML》

1.软件工程。是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技 术方法结合起来,这就是软件工程。… 2.数据流图:数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被 处理的逻辑过程。 3.模块:是数据说明、可执行语句等程序对象的集合,模块可以单独被命名、而且可通过名字来访间。 4.白盒测试法:白盒测试是把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内 部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。 5.耦合性:也称为模块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块 间接口的复杂性]调用的方法及传递的信息。 软件危机:是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。 计算机软件:与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据。或软件=程序+数据+文档。 UML:统一建模语言,是面向对象软件的标准化建模语言。 1、什么是软件危机?为什么会产生软件危机 答:(1)软件危机是指软件在开发和维护过程中遇见的一系列严重问题,主要包含二方面 的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。(2)产生软件危机的原因: 一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。 2、简述结构化程序设计方法的基本要点。 答:(1)采用自顶向下,逐步求精的程序设计方法。 (2)使用三种基本控制结构构造程序,分别是顺序,选择和循环(2分) ()采用主程序员的组织形式。1分) 3.简述软件工程的目标和面临的主要问题 答:软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。包括: 付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要 较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。 面临的主要问题是:软件费用,软件可靠性,软件维护,软件生产率,软件重用 4.什么是条件覆盖并为以下程序流程图设计条件覆盖测试用例并标明程序执行路径

使用UML进行系统数据流建模与分析

使用UML进行系统数据流建模与分析 在软件开发过程中,系统数据流建模与分析是非常重要的一环。它通过使用统一建模语言(UML)来描述系统的数据流,帮助开发者更好地理解系统的功能和数据交互,从而提高开发效率和质量。 一、UML简介 统一建模语言(UML)是一种用于软件开发的标准建模语言。它提供了一套图形化的符号和规则,用于描述软件系统的结构、行为和交互。UML具有丰富的图形表示方式,包括用例图、类图、时序图、活动图等,可以满足不同层次的建模需求。 二、数据流建模 数据流建模是系统分析的重要工具之一,它主要用于描述系统中数据的流动和处理过程。在UML中,数据流建模可以通过活动图来实现。活动图使用节点、边和控制流来表示系统中的活动和数据流动。 在活动图中,节点表示系统中的活动,例如输入、输出、计算等。边表示数据的流动路径,可以是控制流或数据流。控制流用于描述活动之间的执行顺序,数据流用于描述数据的传递和处理。 通过活动图,我们可以清晰地看到系统中数据的流向和处理过程。例如,在一个订单管理系统中,我们可以使用活动图来描述订单的创建、审核和发货过程。活动图可以帮助开发者更好地理解系统的业务逻辑,从而提高开发效率。 三、数据流分析 数据流分析是通过对系统中的数据流进行分析,来推导系统的功能和需求。在UML中,数据流分析可以通过用例图和类图来实现。

用例图用于描述系统的功能和用户需求。它由参与者和用例组成,参与者表示系统的外部角色,用例表示系统的功能。通过用例图,我们可以清晰地看到系统与用户之间的交互关系,从而推导出系统的功能和需求。 类图用于描述系统的静态结构。它由类、属性和关系组成,类表示系统中的对象,属性表示对象的特征,关系表示对象之间的关联。通过类图,我们可以清晰地看到系统中的对象和它们之间的关系,从而推导出系统的数据流。 通过数据流分析,我们可以更好地理解系统的功能和数据交互,从而更好地设计和开发系统。例如,在一个学生管理系统中,我们可以使用用例图来描述学生的注册、选课和成绩查询等功能,使用类图来描述学生、课程和成绩等对象及其之间的关系。 四、总结 使用UML进行系统数据流建模与分析是软件开发过程中的重要环节。通过活动图、用例图和类图等UML图形化工具,我们可以清晰地描述系统的数据流和功能,从而更好地理解系统的业务逻辑和需求。这有助于提高开发效率和质量,确保系统能够满足用户的需求。 在实际开发过程中,我们可以根据具体的系统需求选择合适的UML图形化工具进行建模和分析。同时,我们还需要注意UML建模的规范和约束,以确保建模结果的准确性和可靠性。 综上所述,使用UML进行系统数据流建模与分析是软件开发过程中不可或缺的一环。它能够帮助开发者更好地理解系统的功能和数据交互,从而提高开发效率和质量。因此,我们应该充分利用UML工具,将其应用于实际的软件开发中。

数据流图的构成与绘制步骤(doc 10页)

数据流图的构成与绘制步骤(doc 10页)

更多企业学院: 《中小企业管理全能版》183套讲座+89700份资料《总经理、高层管理》49套讲座+16388份资料《中层管理学院》46套讲座+6020份资料《国学智慧、易经》46套讲座 《人力资源学院》56套讲座+27123份资料《各阶段员工培训学院》77套讲座+ 324份资料《员工管理企业学院》67套讲座+ 8720份资料《工厂生产管理学院》52套讲座+ 13920份资料《财务管理学院》53套讲座+ 17945份资料《销售经理学院》56套讲座+ 14350份资料《销售人员培训学院》72套讲座+ 4879份资料

第4章 1.简述需求分析中现行系统调查、新系统逻辑方案的提出等活动的详细内容、关键问题、主要成果及其描述方法。 系统调查 (1)组织机构的调查 了解组织的机构状况。即各部门的划分及其相互关系、人员配备、业务分工、信息流和物流的关系等等。组织机构状况可以通过组织结构图来反映。所谓组织机构图就是把组织分成若干部分,同时标明行政隶属关系,信息流动关系和其他关系。 (2)业务处理状况调查 为了弄清楚各部门的信息处理工作,哪些与系统建设有关,哪些无关,就必须了解组织的业务流程。系统分析人员应按照业务活动中信息流动过程,逐个调查所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清楚各个环节需要的信息内容、信息来源、去向、处理方法、提供信息的时间和信息形态等。 (3)现行系统的目标、主要功能和用户需求调查 只有充分了解现行系统的目标和功能以及用户需求,才能发现存在的问题,寻找解决问题的途径,也使新系统开发成为可能。 (4)信息流程调查 开发信息系统必须了解信息流程。业务流程虽然在一定程度上表达了信息的流动和存储情况,但仍含有物资、材料等内容。为了用计算机对组织的信息进行控制,必须舍去其他内容,把信息的流动、加工、存储等过程流抽象出来,得出组织中信息流的综合情况。描述这种情况的就是数据流图。 (5)数据及功能分析 有了数据流图后,要对图中所出现的数据和信息的属性进一步分析,包括编制数据词典、数据存储情况分析及使用情况分析。同时还要对数据流图中的各个加工逻辑进行描述。可用的工具有决策树、决策表、结构化语言等。 (6)系统运营环境分析

数据流图教程

数据流图(DFD)画法要求 一、数据流图(DFD) 1.数据流图的基本符号 数据流图由四种基本符号组成,见图5-4-1所示。 图5-4-1 数据流图的基本符号 例:图5-4-2是一个简单的数据流图,它表示数据X从源S流出,经P加工转换成Y,接着经P加工转换为Z,在加工过程中从F中读取数据。 图5-4-2数据流图举例 下面来详细讨论各基本符号的使用方法。

数据流由一组确定的数据组成。例如“发票”为一个数据流,它由品名、规格、单位、单价、数量等数据组成。数据流用带有名字的具有箭头的线段表示,名字称为数据流名,表示流经的数据,箭头表示流向。数据流可以从加工流向加工,也可以从加工流进、流出文件,还可以从源点流向加工或从加工流向终点。 对数据流的表示有以下约定: 对流进或流出文件的数据流不需标注名字,因为文件本身就足以说明数据流。而别的数据流则必须标出名字,名字应能反映数据流的含义。 数据流不允许同名。 两个数据流在结构上相同是允许的,但必须体现人们对数据流的不同理解。例如图5-4-3(a)中的合理领料单与领料单两个数据流,它们的结构相同,但前者增加了合理性这一信息。 两个加工之间可以有几股不同的数据流,这是由于它们的用途不同,或它们之间没有联系,或它们的流动时间不同,如图5-4-3(b)所示。 (a)(b)(c) 图5-4-3 简单数据流图举例 数据流图描述的是数据流而不是控制流。如图5-4-3 (c)中,“月末”只是为了激发加工“计算工资”,是一个控制流而不是数据流,所以应从图中删去。

加工处理是对数据进行的操作,它把流入的数据流转换为流出的数据流。每个加工处理都应取一个名字表示它的含义,并规定一个编号用来标识该加工在层次分解中的位置。名字中必须包含一个动词,例如“计算”、“打印”等。 对数据加工转换的方式有两种: 改变数据的结构,例如将数组中各数据重新排序; 产生新的数据,例如对原来的数据总计、求平均等值。 4.文件 文件是存贮数据的工具。文件名应与它的内容一致,写在开口长条内。从文件流入或流出数据流时,数据流方向是很重要的。如果是读文件,则数据流的方向应从文件流出,写文件时则相反;如果是又读又写,则数据流是双向的。在修改文件时,虽然必须首先读文件,但其本质是写文件,因此数据流应流向文件,而不是双向。 例如,在图5-4-3 (a)中,检查合理性加工时,只从库存帐目文件中读出库存信息与领料单核对,所以数据流从文件流出,箭头指向加工。 5.数据源或终点 数据源和终点表示数据的外部来源和去处。它通常是系统之外的人员或组织,不受系统控制。 为了避免在数据流图上出现线条交叉,同一个源点、终点或文件均可在不同位置多次出现,这时要在源(终)点符号的右下方画小斜线,或在文件符号左边画竖线,以示重复,如图5-4-4所示。

相关文档
最新文档