前言

为什么要写这本书

本书出版之时,正逢我大学毕业临近十年之际。初出茅庐时,也曾以为十年很遥远,未曾想转眼已迫在眉睫。在男性比例远超女性的IT领域,作为IT女的我居然已摸爬滚打十年,与Power Designer这款优秀的建模工具的缘分,也得追溯到十年前,特以此书作为毕业十年的纪念。

初识Power Designer,是因其在数据建模领域声名鹊起,笔者只是将其作为一款简单易用的数据建模工具,主要用于概念数据建模和物理数据建模,后来慢慢接触Power Designer的需求建模、业务处理建模、面向对象建模和企业架构建模等,愈发感受到Power Designer这款建模软件的强大之处,它不但在数据建模领域独领风骚,更不愧为软件建模领域一款优秀的全程建模工具,在建模领域与Rational Rose平分秋色。

但是,目前在IT图书领域,却是建模软件Rational Rose一枝独秀,专讲Power Designer的书籍寥寥无几,屈指可数的几本主要讲解基本知识,而高级功能、经验分享和案例讲解内容甚为缺乏。因此,亟待出现一本Power Designer的精通书籍,给广大软件设计人员和开发人员带来福音,这正是笔者写作本书的意图。

本书针对这些问题,从入门篇入手,而后讲解基础知识,再深入研究,同时结合实际的综合案例由浅入深地讲述。

本书分为入门篇、基础篇、高级使用篇和综合案例篇,从四个方面展开介绍。其中,高级使用篇是本书的一大亮点,它偏重于经验分享,放眼同类的图书,能在经验分享方面着墨较多的并不多;综合案例篇是实际案例的分析和总结,通过实际案例,使读者能有身临其境的感觉,并从中获取处理问题的思路和技巧。

本书是作者多年系统建模实践工作的经验和总结,既可以供初学者参考学习,也可以帮助有一定基础的中高级设计人员和开发人员进阶学习,使不同层次的读者都能从中受益。

读者对象

本书主要面向软件开发人员和设计人员,以及高校计算机及相关专业师生。

阅读本书,读者不但能通过Power Designer熟练创建和使用软件过程的各种模型,还能普及UML软件建模的理论知识,并且能参考本书案例掌握Power Designer建模的要点和注意事项,快速上手将这款优秀的建模工具运用到实际的各类项目中。

如何阅读本书

本书最大的特点是注重实践,注重理论与实际相结合,介绍完一个知识点后,一般都附有实例作为对知识点的补充,并且每个章节都是一个独立的知识块,读者可以选择从中间阅读,也可以从头依次阅读。

本书特点

·循序渐进:本书遵循软件过程顺序,逐步讲解Power Designer中各种模型建模的理论知识、方法和实践知识,从易到难、深入浅出,使读者系统地掌握基础知识、技术、技能,以及科学的实践方法。

·融会贯通:本书深度剖析Power Designer作为全程建模工具的方方面面,通过3个完整的案例将各章节知识点融会贯通。

·案例丰富:每章都结合案例进行讲解,比同类书籍更注重实践,“综合案例篇”更进一步运用理论和软件使用经验。也正因为本书的丰富案例,读者能快速上手,将Power Designer更快地用于自己的项目设计过程中。

本书主要内容

本书主要分为4篇,总计14章,基本结构如下。

入门篇(第1章)

入门篇着墨不多,主要对Power Designer进行简单介绍。

第1章首先对软件建模概念和分类进行简单介绍,接着介绍常用的建模工具Power Designer的发展历程、新特性、功能模型和主窗口,最后将Power Designer与另外两款常用的建模工具Rational Rose和Visio进行比较。

基础篇(第2章~第9章)

基础篇讲解Power Designer中的9种常用模型,并以“餐饮在线点评系统”为例,讲解各种模型,使得读者能对各种模型的知识点融会贯通,快速上手各种模型的建模过程,并了解各种模型的注意事项。

第2章首先讲解需求模型(Requirements Model,RQM)的基本概念,包括如何开展需求采集和需求分析工作,以及如何利用Power Designer进行需求建模,接着讲解Power Designer创建和管理需求模型的方法。

第3章介绍业务处理模型(Business Process Model,BPM)的概念以及图形分类,如何在Power Designer中创建、编辑和管理BPM,以及BPM与其余模型的转换方法。

第4章介绍概念数据模型(Conceptual Data Model,CDM)的作用以及基本术语,如何在Power Designer中创建、编辑(实体、属性、联系、关联、关联链接、继承、数据项、域)和管理CDM(模型选项设置、有效性检查),以及CDM的模型转换(转换为新的CDM,或LDM、PDM和OOM)。

第5章介绍逻辑数据模型(Logical Data Model,LDM)的相关概念、作用和基本术语,如何在Power Designer中创建LDM模型,如何创建实体、实体属性、主标识符、一对一联系、一对多联系、多对一联系、多对多联系、继承和域,以及如何设置模型选项、有效性检查和模型转换。

第6章介绍物理数据模型(Physical Data Model,PDM)的概念、作用以及基本术语,如何在Power Designer中创建和编辑PDM(包括表、列、主键、索引、视图、存储过程、存储函数、触发器等)和管理PDM(设置显示参数、生成数据库或SQL脚本、从数据库或SQL脚本逆向生成PDM),以及PDM与其余模型的转换(新PDM、XML模型、OOM、LDM或CDM)。

第7章介绍XML和XML模型(XSM)的相关概念、特点、应用场合、简单实例,如何在Power Designer中创建、编辑和管理XSM,以及XSM与其余模型的转换。

第8章介绍面向对象模型(Object-Oriented Model,OOM)的概念,Power Designer中OOM的强大设计能力,如何在OOM中创建常用的UML图,如用例图、时序图、类图和包图,以及如何使用Power Designer管理OOM。

第9章首先介绍企业架构模型(Enterprise Architecture Model,EAM),包括概念、与其他模型的关系,并通过实例讲解企业架构模型中的多种图形,包括进程图、组织结构图、业务通信图、城市规划图、面向服务图、应用架构图和技术基础架构图。接着介绍数据移动模型(Data Movement Model,DMM),及其创建和编辑的方法。

各章最后都以“餐饮在线点评系统”作为案例,使读者巩固各种模型的相关知识和注意事项。

高级使用篇(第10章~第12章)

高级使用篇是本书的一大亮点,主要讲解如何生成模型报告、高级功能,以及建模原则和模型优化建议。

第10章讲解如何通过报告向导、报告编辑器和报告模板3种方式生成单模型报告,如何创建多模型报告,模型报告模板和对象的管理,以及模型报告的属性配置。

第11章讲解Power Designer提供的诸多高级功能,对版本管理、创建模型自定义扩展属性进行详细讲解,并对Power Designer中的常见问题及其解决方案进行汇总,以便读者快速查阅。

第12章讲解数据库建模时的优化建议和面向对象建模中用例图的优化建议,供广大建模设计人员参考。

综合案例篇(第13章和第14章)

综合案例篇也是本书的重点,通过“社交通信系统”和“在线音乐系统”综合案例全面讲解Power Designer的建模思路和具体方法,提高读者对Power Designer的实际操作能力。

第13章和第14章分别以“社交通信系统”和“在线音乐系统”作为综合案例,重点讲解的模型包括:需求模型、业务处理模型、概念数据模型、逻辑数据模型、物理数据模型和面向对象模型,并讲解如何生成代码数据库脚本或数据库、应用程序代码,以及生成模型报告的方法,使读者熟悉利用Power Designer进行系统分析和建模的整体过程,从而在今后的系统建模过程中游刃有余。

勘误和支持

由于作者的水平有限,编写的时间也很仓促,因此书中难免会出现一些错误或不准确的地方,不妥之处恳请读者批评指正。

本书的修订信息会发布在笔者的技术博客中,地址为 http://www.blogjava.net/amigoxie 。笔者会在该博客不定期更新书中的遗漏之处,当然,也欢迎读者将遇到的疑惑或书中的错误在博客留言中提出。如果您有更多的宝贵意见,也欢迎发送邮件至笔者的邮箱(xiexingxing1121@126.com),期待能够得到您的真挚反馈。

致谢

首先要感谢我的家人,感谢他们不断给我信心和力量,是他们的鼓励和默默的支持,让我坚持写完了本书。

感谢与我合作编写本书的朱婵老师,是她的通力协作才让本书能尽早地与读者见面,也感谢她对本书提出的诸多宝贵意见。

感谢机械工业出版社华章公司的编辑们,此书的出版离不开他们的辛苦付出,他们是本书的幕后功臣。

感谢关注我技术博客的众多IT朋友、我编著的所有IT图书的读者,以及鼓励过我的各位IT同仁,你们的肯定是我持续写下去的动力。

“少有人走的路,曲径通幽。”将这句我很喜欢的话送给大家!有幸,有大家的鼓励陪我一起走着这条路。我们都在路上,彼此陪伴,不再孤单!

谢星星(阿蜜果)

2015年1月于广州