跟我学UML建模工具StarUML(第10部分)——应用StarUML创建带泳道的UML活动图的创建示例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.1跟我学UML建模工具StarUML(第10部分)——应用StarUML创建带泳道的UML活动图的创建示例
1.1.1带泳道的UML活动图及实现示例
1、泳道
泳道可以将模型中的活动按照职责组织起来,这在许多场合下通常是很有应用价值的。
例如,可以将一个商业组织处理的所有活动组织起来。
这种分配可以通过将活动组织成用线分开的不同区域来表示。
由于它们的外观像泳池的泳道的缘故,这些区域被称作泳道。
(1)活动图中的活动可以被分成为几个区域,每个区域在图中用虚线分开,因此被叫做泳道。
(2)泳道是活动图的内容的组织单元
它没有内在的语义,但可以根据建模者的意愿使用。
通常,每个泳道代表真实世界组织内的一个组织单元。
2、为什么要采用泳道------普通的活动图所存在的问题
(1)首先UML活动图告诉了软件系统的分析和设计人员发生了什么,但没有告诉我们该项活动由谁来完成——参与者等方面的信息。
在程序设计中,这意味着活动图没有描述出各个活动由哪个类来完成。
而泳道解决了这一问题,并给出了明确的对象信息。
(2)在活动图中的泳道区分了其中活动的不同职责
因为在带泳道的UML活动图中,每一个活动都只能明确的属于一个泳道。
3、泳道的主要作用
(1)它将活动图的逻辑描述与顺序图、协作图的责任描述结合起来。
从而能够更加准确地描述活动、活动的产生者等方面的信息。
因此,带泳道的UML活动图能够更加直观地描述系统的各活动之间的逻辑关系,利于用户理解软件系统的业务逻辑和业务实现的过程。
(2)泳道可以用于建模某些复杂关系的UML活动图
这时,每一个泳道可以对应于一个协同,其中活动可以由一个或多个相互连接的类的对象实现。
4、泳道的UML图示
泳道用矩形框来表示,属于某个泳道的活动放在该矩形框内,将对象名放在矩形框的顶部,表示泳道中的活动由该对象负责。
由于泳道名应为对象名,既然是对象名,所以泳道名应为名词。
5、在StarUML工具软件中提供了对泳道的技术支持
由于活动图的走向可以是横向的也可以是纵向的,因此在StarUML工具软件中提供有水平泳道和垂直泳道两种不同形式的泳道支持。
(1)与泳道相关的工具按钮
(2)垂直泳道
(3)水平泳道
1.1.2应用StarUML创建带泳道的UML活动图
下面以某个网上商场系统中的团体订购业务为示例说明如何在StarUML中创建带泳道的UML活动图的实现过程。
1、新建一个名称为“团体订购业务的活动图”
(1)在模型(Design Model)中再添加一个活动图
(2)命名该活动图的名称为“团体订购业务的活动图”
2、在该活动图中添加各个泳道——拖动该泳道,然后再命名该泳道(1)购买者用户
(2)图书销售服务员
(3)库房管理员
3、在该活动图中添加各个在泳道中的对象活动项(1)请求购买图书
(2)获得订单
(3)准备图书
4、应用控制流连接各个活动项目(1)购买者用户和图书销售服务员
(2)图书销售服务员和库房管理员
5、继续添加剩余的其它活动项目
6、继续应用控制流连接各个活动项目
7、最终的结果示图。