powerdesigner2
pd有cdm(概念模型),pdm(物理模型),oom(对象模型),bpm(业务过程模型),其中前3个是可以相互转换的。但是在实际操作中10有8,9是转不成功,原因可能是有些东西不规范
visio,rose中也有logic model和data model与之对应,但是visio和rose中似乎没有cdm的概念,visio和rose都是直接将logic模型建好之后直接生成sql语句或者物理的数据库结构
不知道erwin有什么功能
visio,rose中也有logic model和data model与之对应,但是visio和rose中似乎没有cdm的概念,visio和rose都是直接将logic模型建好之后直接生成sql语句或者物理的数据库结构
不知道erwin有什么功能
一个概念模型的组成:
diagram,bussiness rule,entity,domain,dataitem,relationship,inheritance,association
diagram,bussiness rule,entity,domain,dataitem,relationship,inheritance,association
业务规则:在cdm是用语言描述一个业务如何进行操作,它最终要用客户端或服务器端的代码实现
它分为6种类型:
formula(公式:总价=单价x数量)
constraint(限制:儿子的年龄老子的年龄)
definition(定义:书由isbn,书名,图书号唯一确定)
fact(事实:作者写书)
requirement(需求:这个实体的目的是为了将多对多的转成一对多)
validation(有效型:由数据库直接处理,如年龄0)
在pdm它成为有表达式或函数。
entity:实体,就是对象
domains:一种属性或数据项所有可能出现的值,domain的价值体现在它的检查约束,
dataitem:从某种意义上说,数据项是最小的信息单位。
relationship:既然是关系数据库,呵呵...,不过它的关系图示太丑
inheritance:继承,和面向对象的继承是一样的,在物理模型中是没有这中概念的,它只有实体的数据项,就象抽象类不能被实例化一样,如一个活动activity有开始时间和结束时间,而任务和项目都继承这个activity,但他们都有自己的其它属性,在数据库中,还是会有task和project 2个表,但不一定有activity这个表
association:我还不怎么明白
domains:一种属性或数据项所有可能出现的值,domain的价值体现在它的检查约束,
dataitem:从某种意义上说,数据项是最小的信息单位。
relationship:既然是关系数据库,呵呵...,不过它的关系图示太丑
inheritance:继承,和面向对象的继承是一样的,在物理模型中是没有这中概念的,它只有实体的数据项,就象抽象类不能被实例化一样,如一个活动activity有开始时间和结束时间,而任务和项目都继承这个activity,但他们都有自己的其它属性,在数据库中,还是会有task和project 2个表,但不一定有activity这个表
association:我还不怎么明白
疑惑:code是什么意思?概念模型、逻辑模型、物理模型有没有规范的定义?
个人结论:
从做数据库的角度来讲,powerdesigner是的确比visio和rose有一定的优势,它在数据库方面做的更细,但是从一个项目的整体来考虑,rose中比pd更适合,因为rose在做业务需求和系统需求的时候就能够带出很多表,另一方面在rose中数据库表只是整个系统的一部分,是一种永久性实体而已。而在pd中数据库就是它的全部了。
相对于二者,visio似乎价廉物美,应用广泛、无所不能但对于专注于软件开发的人来说,似乎不是太专业,而且不够连贯。
从做数据库的角度来讲,powerdesigner是的确比visio和rose有一定的优势,它在数据库方面做的更细,但是从一个项目的整体来考虑,rose中比pd更适合,因为rose在做业务需求和系统需求的时候就能够带出很多表,另一方面在rose中数据库表只是整个系统的一部分,是一种永久性实体而已。而在pd中数据库就是它的全部了。
相对于二者,visio似乎价廉物美,应用广泛、无所不能但对于专注于软件开发的人来说,似乎不是太专业,而且不够连贯。