一. 正向工程与逆向工程说明
在前面几篇里介绍了几个PowerDesigner的常用模型,参考:
PowerDesigner 概念数据模型(CDM) 说明
http://blog.csdn.net/tianlesoftware/article/details/6871179
PowerDesigner 物理数据模型(PDM) 说明
http://blog.csdn.net/tianlesoftware/article/details/6874067
PowerDesigner 面向对象模型(OOM)说明
http://blog.csdn.net/tianlesoftware/article/details/6879229
PowerDesigner 业务处理模型( BPM ) 说明
http://blog.csdn.net/tianlesoftware/article/details/6882109
PowerDesigner 企业架构模型 ( EAM ) 说明
http://blog.csdn.net/tianlesoftware/article/details/6883772
正向工程和逆向工程就是上面几个模型相互之间转换的过程。
正向工程:
CDM—>PDM
PDM—> Database
PDM—>OOM
从CDM 到PDM 也是软件工程中推荐的一种方法,不过在实际的项目中,很少有公司会按照这个流程来走,甚至连E-R图都不画,直接上来就建表。
逆向工程:
(1)从处理语言(Process Language)逆向生成业务处理模型(BPM)
(2)从对象语言(Object Language)逆向生成面向对象模型(OOM)
(3)从数据库(Database)或数据库脚本逆向生成物理数据模型(PDM)
(4)从XML定义(XMLDifinition)逆向生成XML模型
二. 示例
在这里演示2个例子:
(1) CDM --> PDM --> Database.
(2) Database --> PDM --> CDM
2.1 正向工程:CDM –>PDM –> Database示例
PD 自带的示例CDM:
我们将这个CDM 转换称PDM: Tools --> Generate Physical Data Model.
生成的PDM 图如下:
再将我们的PDM 生成对应的SQL 脚本: Database –> Generate Database
这里有两种选择,一种是生成脚本,即Script generation,还有一种是直接在数据库里生成,即directory generate,一般都是先生成SQL 脚本,然后在数据库执行脚本。
以上就是一个典型的过程,也是软件工程中建议的一种流程。
2.2 逆向工程:Database --> PDM --> CDM
在2.1 节讲了正向工程的一些概念,即从CDMàPDM à DATABASE. 如果严格按照这个过程来执行,在后期还可以参考这些Model。但是在国内的软件开发流程中,只有少数的公司会按照这个流程来走,那么大多数情况都是拿到需求分析后直接在数据库里建表。
如果某个线上的系统,就是这么设计出来的,那么这时候,我们要得到它的PDM,就可以使用PD的逆向工程来实现。
先连上测试环境,新建一个用户,然后把我们2.1 节导入的脚本执行一遍:
脚本执行完毕后,相关的表和索引已经创建完成,现在我们使用PD 来进行逆向工程操作。
File —> Reverse Engineer –>Database
修改PDM 模块名称和 DBMS 类型,这里是Oracle 10gR2:
配置数据源:
Connection profile name: 生成连接文件名称
Directory:生成连接文件保存位置,我这里保存到桌面
Connection type:连接类型,可是使用Native(tnsnames.ora)或者JDBC。
确定之后进行reverse。具体需要的时间要根据数据库对象的多少来定。 我的这个测试,不到1分钟就搞完了。
逆向工程之后的PDM 如下图:
在将PDM 转成CDM:
最终的CDM 如下:
正向工程与逆向的工程就这么多,更多内容就各位同学自己研究了。
-------------------------------------------------------------------------------------------------------
版权所有. 文章允许转载,但必须以链接方式注明源地址,否则追究法律责任.
Blog: http://blog.csdn.net/tianlesoftware
Weibo: http://weibo.com/tianlesoftware
Email: tianlesoftware@gmail.com
DBA1 群:62697716(满); DBA2 群:62697977(满)DBA3 群:62697850(满)
DBA 超级群:63306533(满); DBA4 群:83829929(满) DBA5群: 142216823(满)
DBA6 群:158654907(满) DBA7 群:69087192(满)DBA8 群:172855474
DBA 超级群2:151508914 DBA9群:102954821 聊天 群:40132017(满)
--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请
分享到:
相关推荐
PowerDesigner16.5正向和反向工程详细图解,模拟物理模型生成表,根据表生成物理模型(SQL2008)
在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建库脚本,最后将物理数据模型生成关系数据库,现在反过来,通过逆向工程将关系数据库,生成物理数据模型。
《PowerDesigner使用教程》,作者 gzllm。本资源解压缩后可以得到《PowerDesigner使用教程.pdf》和《PowerDesigner使用教程.chm》两个版本的电子书,方便不通阅读习惯的...九、正向工程和逆向工程 十、生成报表及总结
公司培训ppt及资料.chm Power Designer概述 Power Designer模型转换 Power Designer操作说明 如何将概念模型转化为物理模型 Power Designer中的正向工程与逆向工程 Power Designer中的数据库相关...
详细介绍了PD数据库建模的流程以及数据库脚本文件的生成,正向逆向工程等等.........
运用PowerDesigner进行实体的表结构设计,然后将实体结构表生成你想要...运用数据库如Mysql先创建数据库表,在将数据库表在数据库中生成脚本,再在PowerDesigner中将生成的脚本转化成相应的实体表结构,此为逆向工程。
10.2正向工程(生成Java代码) 10.3逆向工程 习题 第11章统一软件过程RUP 11.1RUP简介 11.2RUPT作流程 11.2.1业务建模 11.2.2需求 11.2.3分析设计 11.2.4实施 11.2.5测试 11.2.6部署 11.2.7配置与变更管理...
正向工程 你能直接地从PDM产生一个数据库, 或产生一个能在你的数据库管理系统环境中运行的数据库脚本。可以生成数据库脚本,如果选择ODBC方式,则可以直接连接到数据库,从而直接产生数据库表以及其他数据库...
更重要的是,这两个工具都支持逆向工程。既支持脚本或者源代码来反向生成PDM图或UML图。 而今天的主角却不是这些“重量级”的东西。 使用过以上产品的朋友都知道,这两个产品有个致命的缺点。就是跑起来非常的耗...