非常感谢您选择了本书,希望您通过阅读本书能够掌握使用IBM Rational Software Architect建模的方法。.
大千世界纷繁复杂,把事物通过可以理解的方式抽象并展现出来,进而寻找其中的规律,已经被证明是认识现实并解决问题的有效方法。模型就是对现实世界中事物或概念的一种抽象表示,即被构建的真实事物的近似代表。在构建复杂系统之前,可以使用模型来分享设计理念、强调重要的设计方面、评估并作出权衡。与建模完毕的系统相比,模型的构造和研究成本都较低,因此能够降低与最终实现相关的风险和成本。
当今软件系统的复杂性丝毫不逊于几百米高的摩天大楼,重要的软件系统上运行并管理着和我们生活息息相关的每一件事情,小到水电煤气取暖费,大到企业合并、股票交易、神六发射和“嫦娥”奔月。软件系统的建模可以从特定的角度观察问题,有助于降低系统的复杂性,减小构建复杂系统的风险。
1997年,OMG组织(Object Management Group,对象管理组织)发布了统一建模语言(Unified Modeling Language,UML)。在随后的几年中,UML逐渐成为了建模软件应用的标准描述语言。UML的推广使用离不开优秀工具的支持,很多年以来Rational Rose一直是主要的建模工具。随着建模技术的不断发展,特别是模型驱动方法的出现使得建模与系统构建之间的关系日益紧密,软件架构师和高级开发人员需要的是一个集成的软件开发平台而不是单独的建模工具和开发工具。IBM推出的 Rational Software Architect(RSA)正是这样的一个开发平台。基于Eclipse平台的RSA是一个从设计到开发的完整集成开发环境(Integrated Development Environment,IDE),它提供了丰富的UML建模功能,同时支持EMF模型、GMF模型、数据建模和模型驱动开发等建模相关的活动。RSA集建模与开发于一身的特点可以将软件设计和开发的各个方面统一起来,提供对软件开发全流程的支持,架构师和高级开发人员不再需要使用不同的工具。
作为IBM中国开发中心的开发人员,本书的作者几乎在RSA刚问世的时候就开始使用RSA开发和建模。我们在每天的接触中积累了一些经验和有效的技巧,这些都将通过本书呈现给读者。
读者对象和讨论范围
本书的前半部分讨论RSA建模的基础功能,包括创建基本的UML模型、数据模型等。具有一定建模知识的读者即可通过阅读本部分掌握使用RSA建模的方法。
本书的后半部分涉及一些建模的高级话题,包括模型驱动开发、模型重用、模式开发、服务建模等。这部分适合于比较有建模经验的软件设计人员和开发人员,希望了解RSA的高级建模功能的读者,或者已经阅读了本书前半部分的读者。
本书的组织结构
第一部分为介绍篇,回顾了建模以及IBM建模工具的发展历史,介绍了RSA的功能,并且给出了详细的安装运行过程。通过阅读本篇,读者可以对RSA有个全局的了解,并且能够安装运行RSA,迅速地进入RSA建模的世界。以下为第一部分各章节的内容:..
第1章IBM建模工具的发展,概要介绍了建模的发展,以及IBM建模工具Rational Rose和XDE。
第2章RSA简介,详细介绍RSA的新特性。
第3章RSA的安装和运行,详细介绍RSA的安装过程、运行步骤和更新方法。
第二部分为RSA建模入门篇,介绍RSA基本的建模功能。对于希望从头了解建模的原理,以及怎样按照RUP设计流程建模的读者,可以从第4章开始阅读。如果读者对于建模有一定的了解,希望学习RSA建模的具体操作,可以直接阅读第5章。
第4章RSA模型,介绍了建模的价值,并且介绍了RSA建模和Rational统一过程的关系。然后对RSA的各种模型进行了详细的介绍。
第5章RSA建模,介绍了如何使用RSA创建、操作UML元素和模型的具体操作。
第6章RSA数据建模,介绍了如何使用RSA对数据库进行建模。
第三部分为RSA建模高级篇,将讨论一些与建模相关的高级话题。
第7章RSA与模型驱动开发,介绍模型驱动开发的方法,主要是模型驱动开发的业务推动因素及方案生命周期和上下文环境,并且详细介绍如何在RSA中应用模型驱动开发。
第8章可重用模型,介绍了重用的思想,讲解如何在RSA中使用基于模式的开发来构建可重用模型,以及如何打包模型成可重用组件。
.第9章面向服务的架构,介绍了面向服务建模的方法及RSA对此的支持,并且给出了一个服务建模的例子。
附录包括了UML简介,Eclipse简介及不同的IBM建模工具之间模型文件的迁移。
本书所介绍的思想和技术是作者在多年软件开发及建模工作中的经验的总结,并不代表IBM公司的观点。由于作者水平有限,加之时间紧迫,谬误在所难免。我们恳请您指出书中需要改进的地方,另外也非常欢迎您对本书提出宝贵意见。
致谢
本书写作过程中,各位作者都花费了大量时间精力,这里我们真诚地感谢家人一贯的理解和支持。我们还得到了许多IBM同事,领导的帮助。在此表示由衷的感谢。
感谢阎小兵一直以来对于本书写作的支持和鼓励。
感谢金千里,甘志仔细阅读本书初稿并提出了许多宝贵意见。
感谢Ken Tsai、宋歌、常红平、李清在工作中给予的支持和帮助,使本书得以完成。...