用户操作
[即时聊天] [发私信] [加为好友]
林仪明ID:lins
92688次访问,排名997好友0人,关注者2
一个无知IT人的无责任空间

架构解决问题;技术服务业务;ROI高才是王道!
lins的文章
原创 66 篇
翻译 0 篇
转载 9 篇
评论 32 篇
Anders小明的公告
架构解决问题;技术服务业务;ROI高才是王道!!
Google Page Rank

Anders小明的其它博客

Google的广告



最近评论
modernmm:GOOD
zhumc:我理解的业务流程为了:1.流程页面层,收集页面的信息并展示信息;2.流程定义层,定义流程的业务模型;3.流程引挚层,控制并计算流程的各种算法.

E8.Net工作流平台 提升企业战略执行力
ITIL与ITSM QQ群3:48132184
.NET开发与工作流2 QQ群:53284682 http://www.feifanit.com.cn
xp1204:理解意思,
表叙不太清晰,哈哈,还是学习了。
xiaobingyang:请使用中国人开发的C/C++编译器、网页浏览器内核
该软件下载地址:
http://www.nila.com.cn/yczip.zip
lins:今天又仔细看了一下C# 3.0 specification,编译器能做的事还真不少。玩着各种各样的花样,又可以减少代码提高效率,特别是一些特性支持关注点的分离,有助于模型的设计。
文章分类
收藏
相册
Google Cluster
朋友的Blog
buaawhl
partech
江南白衣
超越黎明
非鱼
推荐的网站
捷道·敏捷堂
存档
订阅我的博客
XML聚合  FeedSky

原创 Domain Model的三种类型及其级别收藏

新一篇: 业务流程的层次和内容 | 旧一篇: 小议领域模型(Domain Model)补充以及更新

Author: Anders小明
(2008-1-12更新)
从以上的分析中,我们可以了解到Domain Model分为三种类型:
0. 全局常量对象
1. 长生命周期业务对象(类似保单对象);
2. 交易过程的Transaction对象,几乎没有生命周期的;
3. Request/Response对象。这类对象以前没有识别的,通常和VO混在一起;但是在IAA中以及电信业的模型是这类对象是独立存在,并被持久化的;Request对象建立在增量更新上很有用。当然他们也是几乎没有生命周期的。 
 
并非所有的业务系统都拥有这三类对象!相当一部分的业务系统,并没有显著的长生命周期对象,因而没有明确的增量变更操作类型及其规则,业务操作是直接更新业务对象,也就没有Request以及Response对象;同时此类业务系统的Transaction对象也通常不存在;

Domain Model的级别:
但不论是那种类型对象,都拥有一个属性,对象等级;对于保险系统来说,保单对象,产品对象以及组织对象是一级对象,而benefit和role等都是二级对象;这点对于设计Repository以及服务粒度都有影响。

关于VO对象的讨论:
VO对象是一种技术类型对象,存在于Web,Domain等层次,其存在的意义是提供集成能力;其意义是:1. 保护系统的信息边界,提供一种结构可以使其它系统或者组件通过编码方式获取系统内信息的方式;2. 保护系统的事务边界,领域对象技术上携带着持久化信息,通过VO可以屏蔽得以屏蔽。常见的VO对象存在于Web层和Domain层。
因此,VO对象的存在只是为了集成而存在,其是否存在的取决于两个方面:框架提供的事务边界以及对象路径访问能力。
Domain层VO对象,通常是用于不同Domain组件间的访问。但随着架构的改进,集成代码独立存在,而不再嵌入到组件内部,组件的边界问题保护不复存在;更进一步的是,框架提供自动化的接口适配映射能力的增强。因而VO对象也失去存在的意义。
Web层VO对象,以SWF为例,早在SWF 1.x时代,框架就提供了丰富的对象路径访问能力,但其Web交互是典型的MVC2方式,事务边界在view的render前关闭,因而导致需要特定的VO对象来避免持久化信息问题;而SWF 2.x时代,view的render是在事务边界内,VO不再需要。

 

发表于 @ 2008年01月08日 22:31:00|评论(loading...)|编辑

新一篇: 业务流程的层次和内容 | 旧一篇: 小议领域模型(Domain Model)补充以及更新

评论:没有评论。

发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © Anders小明