你的位置:首页 > ASP.net教程

[ASP.net教程]基于 UML 的业务建模举例


简介:

对于管理流程咨询项目、大型信息化建设项目和套装管理软件实施项目,对业务环境的分析和理解对项目的成功至关重要。系统、全面理解 IT 系统所处的业务环境,可以帮助 IT 系统能提供正确系统功能,并加速 IT 系统的部署和推广,从而实现 IT 和业务的一致性。统一建模语言(Unified Modeling Language, UML)作为完备的、标准化的建模语言,可应用于业务系统建模。

本文将基于一个技术评审管理流程范例来阐述如何利用 UML 进行业务建模,并介绍如何在大型业务建模项目中应用 IBM Rational 建模工具和团队协作工具。

概述

在当前,由于 IT 系统和业务之间的联系越来越密切,对业务进行系统、全面的理解和分析对 IT 系统需求定义和套装软件的部署以及信息化建设越来越重要。传统的业务分析方法更多基于文档或图形,不能对信息进行结构化抽取和组织,不便于发现业务系统中的问题,更不能快速重用于 IT 系统开发和实施环节,最后导致 IT 系统实现的功能并不能很好满足业务需求,或者花了大量精力输理的流程文档不能得以贯彻落实。

本文将介绍基于 UML 的业务建模方法,该方法通过规范化的图形化标记语言,从人员、信息、活动、流程等方面对业务系统进行全面的、结构化的抽象和描述。此外,本文还将介绍 Rational Software Architect 如何支持该业务建模方法,实现业务模型的有效组织,模型度量和报告生成,以及如何利用 Rational Team Concert 支持团队建模。该 UML 业务建模方法可应用于套装软件(如项目管理软件、企业资源规划软件)的实施、大型信息系统的需求调研以及管理流程再造项目。

UML 业务建模方法

UML 业务建模方法是指对业务系统从静态和动态两个方面进行抽象,并利用 UML 标记语言记录下来。根据业务系统的特点,UML 业务建模方法主要包括业务角色、业务实体、业务活动和业务流程等建模元素以及业务实体关系图、业务流程活动图和业务流程状态图等图形表示。

很多人认为建模就是画图,甚至认为业务流程梳理就是画流程图,这个观点是不正确的。建模的本质是通过抽象获得被建模对象的关键要素,然后基于特定的目的和视角利用图形把模型元素展示出来。图和建模元素之间是关联关系,而不是包含关系。下图描述了进行业务建模时的核心建模元素和图形。后续章节将详细介绍这些建模元素和图形。

图 1. 业务建模元素和图形

建模元素

任何业务系统都涉及人员、信息、活动和流程,与之对应业务系统建模要素是业务角色(Business Role)、业务实体(Business Entity)、业务活动(Business Activity)和业务流程(Business Process)。下表总结了业务建模元素的图示、定义和范例。

表 1. 业务建模元素

业务角色

在确定业务角色时,一种方法是业务角色直接对一个组织定义的岗位,该方法不足是当组织机构发生调整时,流程需要进行调整;另外一种方法是根据管理流程的本质来定义业务角色,该方法让流程定义能更好适应组织机构变化。我建议采取第二种思路来定义业务角色,下表描述了技术评审管理业务流程的业务角色。

表 2. 技术评审管理流程业务角色

业务实体

业务实体是业务角色在进行业务活动时使用或产生的事物,在表现形式上可以是一个文档,或者是一个物品的一部分。比如在技术评审管理流程中,评审申请人将提交评审申请材料,专家将对评审材料提出评审意见,因此我们可确定的业务实体是“评审申请”和“评审意见”。每个业务实体通常具有特定的属性,比如“评审申请”业务实体具有的属性包括:申请人、评审类型、评审材料等信息。
在进行业务流程梳理时,经常会忽视对业务实体的分析。要让业务流程落地,通常需要借助信息系统,而业务实体对信息系统的建设至关重要。业务实体分析的成果是逻辑数据模型,该模型将指导信息系统的建设以及不同信息系统的整合。
下表简要描述了技术评审管理流程中涉及的业务实体以及属性信息。

表 3. 技术评审管理流程业务实体

业务活动

业务活动是由特定业务角色进行的,并具有明确输入和输出的任务。为了描述的一致性和准确性,业务活动名称尽量采取动宾结构。比如技术评审管理流程所涉及的业务活动包括:起草评审申请、提交评审申请、初审评审申请等活动。

在经常业务流程梳理时,应该首先明确业务活动,然后再去画业务流程活动图,这样可以帮助发现冗余的业务活动和在不同业务流程中重用的业务活动。

表 4. 技术评审管理流程业务活动

业务流程

由一组业务角色通过完成一系列业务活动来操作业务实体,从而给外界提供有价值的、可感知的服务或成果。通常通过如下字段信息描述一个业务流程。

表 5. 技术评审管理流程描述

模型图示

为了能直观描述业务系统,可借助 UML 图来描述业务系统的静态和动态特性,提高流程的沟通效率。

业务实体关系图

业务实体关系图是通过 UML 类图(Class Diagram)来描述业务实体之间的相互关系。业务实体之间的常用关系包括包含关系、关联关系和泛华关系。对于技术评审管理流程,一个技术评审可能对应多个专家提的评审意见,因此“技术评审”业务实体和“评审意见”业务实体之间是包含关系。

图 2. 技术评审管理流程业务实体关系图

业务流程活动图

业务流程活动图采用 UML 的活动图(Activity Diagram)描述不同的业务角色如何进行特定业务活动来完成业务流程。为了业务流程活动图便于理解,该图中涉及的业务活动尽量不要超过 10 个。如果业务流程涉及的业务活动的确太多,可把相关的连续执行的业务活动封装成为一个业务活动,让业务流程活动图具有层次。下图描述了技术评审管理流程的活动图。

图 3. 技术评审管理流程活动图

业务流程状态图

为了对业务流程的执行进行跟踪、控制和统计分析,需要描述业务流程核心处理对象的状态图。业务流程跟踪是指能及时获得流程的处理阶段,业务流程控制是指只有完成特定的业务活动后,才能进行后续的业务活动,业务流程统计分析是指需要获得在不同阶段的业务实体的数量。状态图描述了业务对象的状态以及实现状态转换的动作。下图描述了技术评审管理流程的状态图,其中节点表示状态,通常采用副词,箭头表示动作,通常采用动词。比如对于处于“已提交”状态的技术评审,可通过“通过评审”动作转换到“已通过初审”状态。

图 4. 技术评审管理流程状态图

如何利用 IBM Rational 工具进行业务建模

对于简单的单一流程业务建模项目,利用 Microsoft PowerPoint 或 Visio 就可以应用 UML 业务建模方法完成业务梳理工作。但对于管理流程咨询项目、大型信息化建设项目和套装管理软件实施项目,由于涉及的业务角色、业务实体、业务活动以及业务流程多,为了保证业务模型的完备性和准确性,需要专业的 UML 建模工具来进行业务建模。此外,当业务建模项目由多个业务分析师共同完成时,如何合并建模成果以及进行团队协作是业务建模项目面临的重要挑战。

Rational Software Architect 是 Rational 的专业的 UML 建模工具,提供完备的 UML 建模功能以及模型分析功能;Rational Team Concert 是 Rational 新一代的版本管理和团队协作功能,可帮助管理多人进行的业务建模项目以及工作成果。

UML 建模工具 Rational Software Architect

Rational Software Architect 是 IBM Rational 新一代的 UML 建模工具,除提供标准的 UML 支持外,还提供了大量的扩展功能来实现 SOA 建模和部署建模等功能。与以前的 Rational Rose 相比,Rational Software Architect 提供了更好的易用性、继承性和扩展性。下图是 Rational Software Architect 的建模界面。

图 5. Rational Software Architect 建模界面

通过利用 Rational Software Architect 对业务系统进行建模,可实现模型分析功能,比如能获得特定业务角色所参加的所有业务流程,从而能快速进行业务角色、业务实体、业务活动以及业务流程之间的相关性分析。此外,Rational Software Architect 还提供自定义格式的报告生成功能,便于模型信息的发布和传播。下图是根据 Rational Software Architect 中的技术评审管理流程模型所生成的 PDF 格式的报告。

图 6. 利用 RSA 形成的 PDF 格式报告

团队建模管理工具 Rational Team Concert

对于一个复杂的业务建模项目,当需要多人共同参与时,可利用 Rational Team Concert 进行模型的集中管理和版本控制。同时 Rational Team Concert 还提供了模型的图形化比较和合并功能,确保多人进行的业务建模项目能顺利进行。下图是利用 Rational Team Concert 来比较模型文件的两个版本之间的差异。

图 7. 利用 Rational Team Concert 比较模型文件不同版本之间差异

总结

由于目前业务和 IT 的联系日益密切,业务分析对改善企业或组织的管理水平,有效地进行信息化非常重要,并催生了业务分析师(Business Analyst)这一新兴职业,并成立了业务分析师国际协会(International Institute of Business Analysis, IIBA, http://www.theiiba.org/)。基于 UML 的业务建模方法对业务进行结构化的抽象,并利用 UML 标记语言进行图形化展示,可确保对业务系统的全面、正确的理解,其成果并可被信息技术人员理解和重用。该方法已包含在业务分析知识体系(Business Analysis Body of Knowledge,BABOK)中,成为业务分析师的一个基本技能。对于大型的业务分析项目,Rational Software Architect 可帮助实现业务建模成果的模型化,而 Rational Team Concert 可有效管理多人参与的业务分析项目。

原文地址:http://www.uml.org.cn/oobject/201105301.asp