初步看不错,不过由于引入单位细节处理,模型显得复杂,整个图有些蜘蛛网倾向,这是数据库实体建模最容易范得毛病,我们需要避免。
需要关注重点,你的核心模型是Order OrderLine ,不要将换算类跨出Product范围,去和Orderline的属性Quantity发生关联。单位换算应该只限于Prodcut这个核心模型周围,因为单位确实应该是Product的一个属性。
虽然OrderLine中会有数量单位,但是这个单位是因为Product带出的单位。
所以,建模应该对主次以及属性归属(也就是聚合关系)进行确认。不能将对象属性和对象并列在一起,打个比喻就是儿子老子并列在一起,他们是一家的。
在管理系统中,有时由于企业有各种数据表单原因,在这些表单中,对象属性被打散了作为数据并列在表单项目中,因为我们不期望发明这些表单的人有对象意识,他们只是感觉需要那个数据项目就列出来,而我们分析时,则不能这样糊涂,特别如果按照数据表实体模型来分析,看到这些数据项目正好是数据表的字段,就以讹传讹,自以为拷贝不走样放应到软件中了,实际由于没有认识到表单后面的对象本质,最后整个管理软件系统从源头就陷入浮于表面,直至难以维护和拓展。
现在很多做管理软件的公司如金碟和用友,他们吹嘘ERP和SOA很厉害,真不知道他们是按照什么分析方法来做他们软件的,软件出生之时就畸形了,再加入什么时髦概念SOA,SAAS等,又都是浮华表面,能长久吗?
btw:楼主以后问问题需要接着上一个帖子,这样给别人浏览时,能够方便学习和讨
论。
http://www.jdon.com/jivejdon/thread/32716.html
[该贴被banq于2007年09月22日 10:43修改过]