当前位置: 首页 > news >正文

河南省鹤壁市住房和城乡建设局网站seo顾问什么职位

河南省鹤壁市住房和城乡建设局网站,seo顾问什么职位,互联网教育网站开发,app可以申请专利吗DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 《分析模式》中模型图的UML改编,之前也有人做过,Martin Fowler网站上给出了部分改编成果。 这些改编成果只覆盖了部分章节,而且只是把类型图&#…

DDD领域驱动设计批评文集

做强化自测题获得“软件方法建模师”称号

《软件方法》各章合集


《分析模式》中模型图的UML改编,之前也有人做过,Martin Fowler网站上给出了部分改编成果。

这些改编成果只覆盖了部分章节,而且只是把类型图(Type Diagram)改编成类图。书中的动态模型图,包括交互图(Interaction Diagram)、事件图(Event Diagram)和状态图(State Diagram)没有改编。

网络上其他地方也未搜到把书中的动态模型图改编成UML模型图的尝试。

之前的改编只是把类型图(Type Diagram)改编成类图,原因可能是这个相对来说比较容易,而动态模型图的改编更难一些。

动态模型图中,交互图和UML序列图的对应,状态图和UML状态机图的对应还是比较直接的,事件图又更复杂一些。

2024中译本(可能要到2025年初出版)将用UML改编全部模型图,覆盖全部章节,包括静态模型图和动态模型图。

**********

下面,我们来展示如何把事件图转成UML的活动图。

全书第一张事件图是图3.15: 

图片

图1 《分析模式》图3.15

Fowler在书中说,他是遵循James Odell的用法,并给出了参考书:James Martin和James Odell的Object-Oriented Methods: A Foundation(1995)。

UML1中的活动图来源是比较复杂的。以下文字摘自Martin Fowler的UML Distilled第2版(1999):

the activity diagram combines ideas from several techniques: the event diagrams of Jim Odell, SDL state modeling techniques, workflow modeling, and Petri nets.

可以看到,UML1的活动图参考了Odell的事件图、SDL状态建模、工作流建模和Petri网。

UML2的活动图做了大变革,改为基于Petri网的语义,解除了和其他表示法的绑定。

**********

我们先给出改编后的结果: 

图片

图2 原书图3.15的UML改编

并把图3.15的活动参数类型和图3.14的类图上的类对应: 

图片

图3 图3.15的活动图和图3.14类图的对应

改编后的图3.15看起来比原图复杂,但更严谨一些。

几个值得一提的地方:

(1)事件改为数据

下图是《分析模式》中给出的事件图规范: 

图片

图4 《分析模式》中给出的事件图规范

Odell的事件图上,结点是操作,是动词,输出是事件类型(event type,区分于事件发生event occurrence),还是动词。名词(对象、数据)呢?这个定义是有问题的。

Fowler可能也觉察到了这一点。图1给出的原图3.15中,Fowler在输出的地方写的是associated observation concepts(关联观察概念),这怎么看也不像是“事件类型”的命名,更像是输出的数据。 

图片

图5 associated observation concepts怎么看也不像“事件类型”

(2)把evaluate proposal(评估提案)合并到“提议观察”中

根据图4的事件图规范,菱形处应该是一个布尔表达式,这是合理的。但《分析模式》原图3.15中,菱形处所标的evaluate proposal看起来像是行为,不是一个条件表达式,这应该是Fowler的问题。 

图片

图6 《分析模式》原图3.15的菱形处看起来不像条件表达式

在UML活动图改编中,我们把evaluate proposal变成更合适的条件表达式。即使Fowler可能有这样的原意,想在evaluate proposal中包含一些行为,也应该把这些行为合并到Propose Observation中。

(3)添加了一个datastore(数据存储)结点

“做观察”活动应该有两个输出,一个是关联的观察概念(一个“观察概念”的对象集合),另外还应该产生观察的结果(一个“观察”的对象集合)。

前者Fowler原图有表达,并作为“提议观察”的输入;后者Fowler原图没有表达,所以添加一个datastore(数据存储)结点接收“做观察”产生的观察结果数据及令牌。

(4)钉耙符号

改编的图3.15中,结点图标右下角有一个钉耙形状的符号,说明这是一个Action(动作),是对Activity(活动)的调用,而不是Activity本身。 

图片

图7 图上是Action,不是Activity

Activity(活动)是定义。Activity Diagram(活动图)描述活动的实现,活动图上并没有“活动”,只有活动的调用(Action),调用的活动可以是其他活动,也可以是自己(递归)。

所以,平时我们见到的“流程图”或“活动图”,很多是不严谨的,把定义和使用混在了一起。

**********

一些参考:

(1)2002年4月,James J. Odell在UMLChina做的交流

交流实录在:umlchina.com/Chat/odell.htm

图片

翻译整理发表在《非程序员》2002年第5期,所有各期《非程序员》杂志的pdf下载:umlchina.com/xprogrammer/index1.html

图片

图片

(2)“水蒸馏器”案例

如果想深入学习活动图,可以参考此案例,里面大量而且深入地使用了活动图。

umlchina.com/url/video.html,里面的SYS-001番号。

图片

http://www.tj-hxxt.cn/news/129541.html

相关文章:

  • 什么网站做ppt推广代理平台
  • 个性网站建设网站重庆seo网络推广优化
  • 网站建设美国人工智能的关键词
  • 拓者设计吧免费获取注册码seo关键词排名优化矩阵系统
  • 外贸网站程序xp优化大师
  • 公司网站维护要做什么模板自助建站
  • 西宁网站建设排名seo优化费用
  • 通辽市北京网站建设什么是搜索引擎优化推广
  • 蓝色 网站最近时事热点新闻评论及点评
  • 怀柔网页公司制作seo优化多久能上排名
  • 烟台网站推广效果好住房和城乡建设部
  • 成都网站建设名录长尾关键词挖掘
  • 二七区做网站google google
  • 小卖部做网站谷歌独立站推广
  • 设计网页的快捷网站培训班招生方案有哪些
  • 易无忧建站影视网站怎么优化关键词排名
  • 公众号开发中心免费培训seo
  • 中天建设集团有限公司重庆分公司济南seo优化外包
  • wordpress 审批网络优化工具app手机版
  • 思淘网站建设茶叶营销策划方案
  • 网站开发教育培训100个常用的关键词
  • 青岛信息网官网优化外包服务公司
  • 广州网站建设新际百度seo排名优化技巧分享
  • 青岛网站建设首选江门网站建设
  • 昆明网站建设推广优化专业竞价托管哪家好
  • 介绍一个做美食的网站营销渠道策划方案
  • 望城警务督察网站建设今日新闻头条新闻摘抄
  • 无锡网站推广优化公司中文域名注册管理中心
  • 空间主机 建网站seo推广怎么学
  • 2018春节放假安排 网站建设长尾关键词搜索