【IT168 技术文章】
powerdesigner7.0把物理数据模型、概念数据模型以及新增加的对象建模功能完美地结合在一起,为程序开发人员和数据库管理人员提供了一整套完善的应用程序建模解决方案。它不仅能够加快项目开发的进程,而且能够显著地提高软件的质量。
建议
如果用户打算购买或者升级到powerdesigner7.0,则需要先投入一部分资金进行相关人员的培训。不过,一旦公司的技术人员熟练地掌握了这种工具,他们将大大地缩短项目的开发周期,有效地降低软件维护费用。
优点
●提供一系列工具来简化物理数据模型、概念数据模型和对象模型的构造过程
●优秀的报表功能
●自动生成java或者powerbuilder代码
●具有强大的逆向工程能力
缺点
●需要先对it人员进行培训
●支持有限的运行平台
费用
●physical architect 995美元
●data architect 2995美元
●developer 2995美元
●object architect 4995美元
●studio 6495美元
●viewer 395美元
运行平台
●windows 95/98/nt
任何一个参与过大型软件项目开发的人都知道,在开始构建一个应用程序之前,如果缺乏可靠完善的设计方案,其后果就像盖房子没有打好地基一样不堪设想;如果抱着节省投资或者缩短工期的想法而忽视了软件的设计和建模过程,那么,为了能够在软件开发的后期交付一个可靠的产品,你将不得不花费更多的资金来对它进行维护,这实在是一种得不偿失的做法。
sybase公司的powerdesigner7.0是一个运行在windows平台上的系统建模工具,它可以使软件开发人员和数据库管理员协同工作,快速地建立起软件的系统模型,为开发一个稳定可靠的软件打下坚实的基础。尽管在购买powerdesigner7.0初期,公司需要先花费一定的资金用于it人员的培训,但他们一旦熟练掌握了工具的使用方法,则能够在以后各个项目的开发过程中大大地缩短项目开发的周期,显著地提高软件的质量,有效地降低软件的维护费用,从而最终为公司节省大量投资。
图1 powerdesigner7.0自动生成java代码范例
powerdesigner7.0提供了物理数据模型和概念数据模型的建模工具,新增加了对象建模功能,并提供一组实用的报表生成工具。用户还可以直接购买套装的建模工具包powerdesignerstudio,它集成了所有的建模工具,具有描述数据流图的功能。如果我们并不需要所有的建模功能,也可以根据自己的使用情况购买某些特定的powerdesigner7.0工具。但是,不论我们有什么样的设计需求,powerdesigner7.0都能很好地协助我们完成各种系统建模的工作。同市场上的其它同类工具相比,powerdesigner7.0无论在功能上还是在易用性方面都毫不逊色。例如,它的数据建模工具不次于ca公司的产品erwin,而它的对象建模功能也将对rational软件公司的拳头产品rose构成极大的威胁。
特性之一:
数据建模工具
对于数据库管理员来说,powerdesigner7.0的数据建模工具将给他们的工作带来很大的帮助。在物理数据建模过程中,数据库管理员首先定义数据库模型、数据存取策略和索引参数等基本信息,然后他们根据这些信息就可以快速准确地完成数据库的创建工作了。
通过测试,我发现使用powerdesigner7.0提供的建模工具能够非常方便地创建一个新的物理数据模型。我还可以用它直接打开powerdesigner6.0格式的数据模型文件。此外,它还可以方便地从其它建模工具(如erwin)创建的文件中引入数据模型。
而powerdesigner7.0灵活的数据库创建方式同样给我留下了很深的印象。我可以利用powerdesigner7.0来生成物理数据模型的sql脚本语言,然后直接在我的数据库中执行这些语句;同时,我还可以通过odbc,根据物理数据模型直接创建数据库。
powerdesigner7.0的物理数据建模工具不仅可以帮助用户灵活地创建数据库,而且对数据库的管理工作也有很大帮助。例如,用户可以把powerdesigner7.0的数据恢复功能作为数据库移植策略的一部分来使用。
特性之二:
逆向工程
对数据库进行逆向工程操作是powerdesigner7.0的另一特性。通过逆向工程,powerdesigner7.0可以把一个设计好的数据库(包括触发器和存储过程)转化成一个物理数据模型。然后,我们可以通过修改这个模型来快速地创建一个新的数据库管理系统,从而大大地简化了把一个原有的数据库移植到一个新的
数据库的过程。
在进行逆向工程操作时,powerdesigner7.0还支持数据库的双向同步功能,也就是说,无论我们是修改物理数据模型,还是对数据库本身进行改动,这两者之间都能始终保持同步。我在测试过程中同时修改了物理数据模型及其对应的数据库,然后使用compare/merge工具对它们进行同步操作,其结果是对任何一部分的修改都同时反映在物理数据模型和数据库中,从而达到了同步。
使用powerdesigner7.0的逆向工程操作,用户可以灵活地把物理数据模型转换成概念数据模型或者对象模型。在开发一个应用程序时,有的公司习惯于自顶向下的设计方法,从商业逻辑层逐渐过渡到实际的数据库;有的公司则更喜欢采用自底向上的设计方法,从数据库设计开始最终上升到商业逻辑层。powerdesigner7.0灵活的设计能力则能够同时满足这两种不同用户的使用需求。
特性之三:
powerbuilder代码
在创建了一个概念数据模型之后,powerdesigner7.0可以根据它创建一个物理数据模型,然后把它应用到任何一种数据库产品中;用户也可以根据这个概念数据模型生成一个用uml(unifiedmodelinglanguage)语言中的类图所表示的对象模型。
powerdesigner7.0对象建模功能是众多新增功能中值得推荐的一个。在创建一个对象模型时,开发人员使用标准的uml类图来描述应用程序的结构以及这些类之间的商业逻辑。
在创建好一个对象模型之后,powerdesigner7.0可以根据类图直接生成java代码或sybase的另一个开发工具———powerbuilder代码。通过codepreview工具,我们可以在正式代码生成之前预览这些程序代码。如图1所示,如果你选择了生成java代码,powerdesigner7.0将生成标准的java类或者javabeans。此外,我们还可以对原有的java源程序、二进制的java可执行文件以及java文档进行逆向工程操作,并可根据它们获得powerdesigner7.0中的类图。
如果你是一个powerbuilder程序员的话,你可以把powerdesigner7.0类图转换成非可视化的powerbuilder代码。通过powerbuilder的应用程序编程接口,这些新生成的代码能够自动地与powerbuilder的库函数集成在一起。同java语言一样,用户也可以对powerbuilder代码进行逆向工程操作,根据代码来生成powerdesigner7.0中的类图。
图2 powerdesigner7.0中使用报表工具范例
其它
除了建模工具之外,powerdesigner7.0还集成了一些非常实用的报表工具。如图2所示,使用这些工具,用户可以方便地创建单模型或者多模型的报表。powerdesigner提供了很多报表模板来简化报表生成工作。同时,用户也可以创建适合自己的报告模板。
用户创建的报告可以包含在任何类型的powerdesigner7.0对象之中。报告完成后,他们可以选择以rtf格式或者html格式来保存这些报告。这样,他们可以方便地把它们包含在项目管理文档或者其它参考文档中,以便在将来编写用户帮助文件时方便地从中提取信息。
小结
如果你的公司希望大幅度地提高软件的开发质量,或者迫切需要加快项目开发进程的话,powerdesigner7.0则是一项非常有益的投资。在项目开发的设计阶段把开发人员和数据库管理人员紧密联系在一起,为他们提供必要的工具来构建一个稳固的应用程序设计基础,这种严谨的软件开发方式必将在长期的软件开发、测试和维护过程中为公司节省大量的资金。