本节书摘来自华章计算机《Power Designer系统分析与建模实战》一书中的第1章,第1.1节,作者:谢星星,朱婵著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.1 软件建模
在软件工程的整个实施过程中都采用模型而非文字来描述,这样的实现过程称为软件全程建模。
软件全程建模的特点如下:
1)模型相互之间是有关联的,模型代替文字和图形等成为软件工程过程各阶段展现的主体,通过建模的方式将原来纯文字加图形描述的各种文档模型化,使从需求到代码能够统一起来,实现需求的变动直接影响代码的变化,提高代码对需求的有效性联系。
2)解决过去经常出现的“编码改动, 文档就失效”的问题。
随着软件工程理论研究的深入和软件技术的不断发展,软件建模也日益完善。尽管不同的软件建模平台的建模工作存在差异,但大体可以把软件建模分成3类,即业务建模、数据建模和应用程序建模。
1.1.1 业务建模
业务建模(business modeling)是以软件模型方式描述企业管理和业务涉及的对象和要素,以及它们的属性、行为和彼此关系,业务建模强调以体系的方式来理解、设计和构架企业信息系统。
业务建模的目的是对业务进行建模,主要包括对业务流程建模、对业务组织建模、改进业务流程、领域建模等方面。Power Designer提供的企业架构模型和业务处理模型等都属于业务建模的范畴。
1.1.2 数据建模
数据建模是指对现实世界各类数据的抽象组织,确定数据库需管辖的范围、数据的组织形式等,直至转化成现实的数据库。
数据建模大致分为3个阶段,分别为概念建模阶段、逻辑建模阶段和物理建模阶段。其中,概念建模和逻辑建模阶段与数据库厂商没有关系,换言之,与MySQL、Oracle、Informix、DB2或SQL Server等数据库没有关系。物理建模阶段和数据库厂商存在很大的联系,因为不同厂商对同一功能的支持方式不同,如高可用性、读写分离、索引和分区等。
Power Designer的概念数据模型对应概念建模阶段,在概念建模阶段,主要做3件事:
1)客户交流。
2)理解需求。
3)形成实体。
Power Designer的逻辑数据模型对应逻辑建模阶段。在逻辑建模阶段,需要将实体细化成具体的表,同时丰富表结构。该阶段的产物是,可以在数据库中生成的具体表及其他数据库对象,如主键、外键、属性列、索引、约束、视图和存储过程等。
Power Designer的物理数据模型对应物理建模阶段。在物理建模阶段,可以将在逻辑建模阶段创建的各种数据库对象进一步细化,生成相应的SQL代码,以便用于创建具体数据库对象(大多数建模工具都可以自动生成DDL SQL代码)。但是这个阶段不仅仅需要创建数据库对象,针对业务需求,设计人员也可能进行数据拆分(水平或垂直拆分)等操作。
1.1.3 应用程序建模
统一建模语言或标准建模语言(Unified Modeling Language,UML)是始于1997年的一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,再到构造和配置。面向对象的分析与设计方法的发展在20世纪80年代末至20世纪90年代中出现了一个高潮,UML是这个高潮的产物。它不仅统一了Booch、Rumbaugh和Jacobson的表示方法,而且对其做了进一步的发展,并最终统一为大众所接受的标准建模语言。
应用程序日渐复杂,而且重要性也与日俱增。为了帮助管理这种复杂性,需要为 Web 应用程序建模。可以使用UML对应用程序建模,Power Designer的面向对象建模中提供用例图、时序图、类图和包图等UML图形用于对应用程序建模。