UML软件工程组织

 

 

基于 UML 的集成企业建模
 
作者:湖南省烟草公司 蔡 喆 来源:tobacco
 

摘 要: 在国家 863 烟草行业信息化 CIMS/ERP 项目中,我们严格按照 863CIMS 的规范和标准实施项目并已经取得了阶段性的成功。但 CIMS 系统的建模分析和设计方法是在面向对象技术出现之前的标准,且 IDEF 方法是面向结构的分析方法,与面向对象的方法、技术和工具存在一定的“代沟”。本文从企业模型的完整性和一致性入手,通过分析企业模型的作用和它们之间的关系,探讨了以 UML 为基础,过程模型(工作流模型)为核心,其他模型为辅的集成化企业建模方法。

关键词: 烟草行业信息化 企业模型  UML  集成建模

1 引言

当前企业组织结构、产品研发和业务流程需要适应市场竞争的激烈变化,伴随着企业应用集成范围的不断扩大,集成度的不断提高。怎样实现企业活动中三要素(人、经营、技术)和三流(物流、信息流、价值流)的集成与优化,从而改善企业的 T 、 Q 、 C 、 S ,提高竞争能力?烟草行业信息化经历了从业务的电算化、管理的规范化到集成的数字化的阶段。在实现“数字烟草”的过程中,怎样实现由信息集成、过程集成以及到企业间的集成?这些方面是诸如 CIMS 、 ERP 等信息化项目必须解决的关键问题。

企业模型是人们为了解企业而经过抽象得到的对于企业某个或某些方面进行的描述 [1] 。企业建模作为实施企业信息化的必经途径,能更好地理解企业的生产经营,有效地控制企业业务过程,实现面向业务过程的企业组织结构的转变,是企业集成和企业性能优化的重要前提和基础。但传统的面向过程的企业建模,一方面不能反映现代企业基于业务流程的动态变化;另一方面,面向过程建立的企业模型与面向对象的设计和编程实现存在障碍——需求、设计和代码不能实现无缝连接和平滑过渡。

研究人员在描述企业模型方面做了许多工作:提出各种企业建模方法、对企业模型的各个侧面进行了详细阐述等,这为我们的研究提供了基础。但目前不同的企业视图模型通常采用不同的建模方法与工具,还没有一个比较有效的模型集成与一致性保证方法 [1] 。如何解决各种模型视图的一致性和完整性、模型的整合机制以及业务工程向软件过程的转变等方面还有很多研究课题。本文结合国家 863 烟草行业 CIMS/ERP 项目实践,针对企业模型各种视图(功能模型、信息模型、组织模型、资源模型、过程模型)的完整性和一致性展开研究,通过分析企业模型的作用和它们之间的关系,探讨了“以 UML 为基础,过程模型(工作流模型)为核心,其他模型(功能、信息、组织、资源)为辅”的集成化企业建模方法。

2 企业建模概念以及建模目的

企业是为社会生产产品、提供相应服务 , 并获取利润的社会经济组织 [2] ,它是一个非常复杂的社会、经济、物理系统。而模型是实际对象或系统的抽象及简化的表示,是抽取服务于研究目标的对象的本质特征,忽略或精简了一些次要的非本质的影响因素后的对象表示法 [2] 。因此一般不可能用一个模型全面地、清晰地描述企业,企业模型的一个显著特点是通常由一组模型组成,每个子模型完成企业某个局部特性的描述,按照一定的约束和连接关系将所有的子模型组成在一起构成整个企业模型。

企业建模是根据有关企业建模的知识、以前的模型、企业的参考模型、领域的本体论和模型表达语言来建立全部或部分企业模型的一个过程 [1] 。企业模型的建立是从企业当前模型及参考模型出发,应用建模语言对企业的业务进行描述、改进的过程。企业建模一方面可以清晰地描述企业流程、可视化定义应用的结构和行为,达到“可视化”、“文档化”大型系统的目的;另一方面企业模型的建立为 BPR 或业务流程优化提供依据和基础。通过模型抽象降低了系统复杂性,不但有助于分析设计者和各种用户以及系统相关者进行交流,而且有助于开发小组成员之间的信息交流。

我们将企业模型分为功能模型、信息模型、组织模型、资源模型、过程模型五个视图。功能模型的主要目的是描述企业功能,说明企业中需要完成的工作或任务;信息模型说明了企业处理的业务对象中所包含的信息,即执行具体功能的活动的输入、输出数据以及这些数据之间的逻辑关系。功能模型确定了企业业务功能的逻辑结构和相互关系,信息模型提供了建立高效可靠的企业业务数据结构的基础,这两个模型是相互补充的。过程模型是一种通过定义组成活动及其活动之间的逻辑关系来描述工作流程的模型。资源模型是一个通过定义企业资源之间的逻辑关系和资源的具体属性,从而描述企业资源结构的模型。组织模型是用来定义企业中人的组织形式的模型,它描述了企业的组织对象、组织对象间的联系以及与其他视图模型间的关系等。 现有企业建模方法: CIM-OSA ( Computer Integrated Manufacturing-Open System Architecture )、 IDEF ( ICAM DEFinition )、 DEM ( Dynamic Enterprise Modeling )、 ARIS ( Architecture of Integrated Information System )、 PEAR 、 GRAI/GIM 、 GERAM 、 IEM 等方法。

3 企业建模方法比较

我们对 ARIS 、IDEF 和 UML 三种企业建模方法进行比较:

3.1 ARIS : Architecture of Integrated Information System ,是一组基于过程的企业建模、仿真分析的工具集,可与 S A P 等 E R P 商业套件集成在一起,提供 B P R 、 E R P 系统实施、企业流程监控及持续改善等一体化的 解决方案。它通过构建组织结构、过程、功能、数据、产品 / 服务五大类模型,把与企业有关的诸多对象,按照对象间存在的各类关系有机地关联起来,并采用直观简洁的图形化方式,将企业流程的每一活动过程分层次地、由粗到细地描述 出来。 ARIS 的方法是:先构建组织模型,在此前提下,为实现企业活动的全过程构建过程模型,并且围绕过程的描述,将过程中涉及的功能、事件及数据信息加以归类和描述,分别构建功能模型和数据模型。模型建立的过程又是个可分层次、由粗到细、由浅入深的过程。一旦模型建立后,便进入对现有流程模型细化、分析评估的阶段,即根据企业需求对现有流程中不合理部分予以改进,快速配置出企业需要的业务流程,之后继续深入下去对未来流程加以分解和详细描述,以利于流程配置、分析,最终明确企业目标和未来流程,进行 B P R 、 E R P 的实施。

ARIS 是 SAP 采用的建模方法,其方法和技术有很大程度的厂商垄断性,形成对开放式的行业标准的阻碍;其功模型用 Nassi/shneiderman 的 Structdiagram 来描述功能如何执行的、数据模型主要采用 Chen 的 E-R 模型来描述事件和条件、控制模型运用面向对象的方法,以 Raumbaugh 的对象图,建立数据 - 控制 - 功能 - 组织之间的连接,因此这种方法不能很好地解决模型的一致性问题。

3.2 IDEF 系列: IDEF 的基本概念是在七十年代提出的结构化分析方法基础上发展起来的。结构化分析方法在许多应用问题中发挥了很好的作用。特别是在降低开发费用,减少系统错误,促进交流的一致性以及加强管理等方面都产生了积极的作用。该方法分为 15 个部分, IDEF0 描述系统的功能活动及其联系,建立功能模型,其基本内容是 SADT ( System Analysis and Design Technology )的活动模型方法,基本思想是结构化分析思路。 IDEF1x 描述系统信息及其联系,建立信息模型作为数据库设计的依据。

根据国家 863CIMS 项目标准,我们采用 IDEF0 建立功能模型,进行需求分析;采用 IDEF1x 建立信息模型。在 IDEF 系列中虽然有相关支持面向对象的特点,但其通用性不强;而且没有提供对动态企业特征的企业建模的支持。 IDEF 方法有许多个层次针对不同的模型有不同的语义、语用、语法模型,对于模型之间的一致性、 IDEF 之间的集成和一致性等方面的问题一直是研究的重点。 CIMS 系统的建模分析和设计,是在面向对象技术出现之前的 CIMS 建模标准,且 IDEF 方法是面向结构的分析方法。

3.3 UML , Unified Modeling Language 统一建模语言。在美国己经有 700 多家公司采用 UML 作为建模语言。 UML 于 1997 年被 OMT 组织批准作为标准。它是由世界著名的面向对象专家 Grady Booch 、 James Rumbaugh 和 Ivar Jacobson 发起,分别在 Booch 方法、 OMT 方法、 OOSE 方法的基础上修改完成的,它集成了几种建模语言的优点。

UML 可以对任何大型的系统包括软件、机械系统、企业过程、复杂的信息系统、实时系统、分布系统、商业系统等进行建模。 UML 方法的类和模型图是一个整体,可以采用任何一种模型图或者其组合实现可视化和面向对象技术的建模。针对前两者的不足和 UML 的特点,我们选择了后者,并在下面展开详细论述。

4 基于 UML 集成建模分析与实例

4.1 基于 UML 的企业建模

UML 共包括 5 类 9 种模型 ( 现在版本是 UML1.4 ,即将正式推出 UML2.0 版本 ) 。 UML 包括用例图、类图、对象图、状态图、顺序图、协作图、活动图、构件图、配置图等。用例图( Use Case Diagram )描述了一组用例和参与者以及他们之间的关系,描述系统提供的功能,显示了系统的外部角色以及他们与系统所提供的用例之间的关系(由“谁”提供了哪些功能或哪些服务)。类图( Class Diagram )显示了一组类、接口、协作以及他们之间的关系,描述了系统中类的静态结构,定义了系统类的内部结构属性和操作。对象图( Object Diagram )显示了一组对象以及他们之间的关系。状态图( State Diagram )显示了一个由状态、转换、事件和活动组成的状态机,描述类的对象所有可能的状态以及事件发生时状态的转移条件。顺序图( Sequence Diagram )描述对象之间的动态协作和消息传递,强调消息的时间次序的交互图。协作图( Collaboration Diagram )描述对象之间的协作关系,强调收发消息的对象的结构组织的交互图。活动图( Active Diagram )显示了系统从活动到活动的流以及活动之间的约束关系。构件图( Component Diagram )显示了程序代码的物理结构。配置图( Deployment Diagram )显示了软件在硬件环境中的配置关系。

采用 UML 建立企业模型时,在企业的功能建模方面采用例图 (Use Case Diagram) ;组织建模方面采用对象图 ( Object Diagram) ;在信息建模方面采用类图,建立表结构以及表结构之间关系的描述;在过程建模(工作流建模)方面采用活动图( Active Diagram )或状态图 (Statechart Diagram) 描述业务流程;在资源建模方面采用类图构成企业的资源分类树。同时吸收 IDEF 建模 “逐步求精” 的思想,在信息流方面逐层分解,并根据企业业务的特点,可适当利用 UML 扩展机制建立扩展版型。

UML 企业建模为充分认识、完整表达和准确分析企业模型提供了依据和基础。一方面实现了业务建模与软件建模的横向统一;另一方面 UML 贯穿系统开发的整个过程,实现了从需求分析、设计、实施、部署过程的纵向统一,如为实施阶段的代码实现提供框架( Link concepts to executable code), UML 对于构件、软件体系结构、配置实施等在大型复杂项目中的建模能力等,较好地实现了以业务工程为中心向 IT 为中心的过程转变。

采用 UML 的面向对象建模方法,可使问题空间结构和解空间结构保持一致,随着人们认识事物的逐步深入,模型容易被修改、扩展、重用和维护, UML 模型提供了良好的模型结构,较好地解决了模型的“转化与优化”的问题。 UML 提供了可视化建模技术和面向对象技术的结合,使企业建模、面向对象的设计和编程实现了无缝连接和平滑过渡,其丰富的建模元素和可扩展机制为企业模型的语义、语用、语法完整性和一致性等方面提供了保障。

4.2 以过程模型为核心,其他模型为辅的企业模型

在开发集成信息系统时,需要仔细分析企业的业务流程,分析理解各部门的功能及它们之间的信息流动。一个系统可认为是由实体、活动以及它们之间联系组成的。任何模型从数据 ( 信息 ) 或活动 ( 功能 ) 的角度来描述系统则只能反映一个侧面,不能对整个系统作清晰、明确的描述。建立任何模型都要有它的目的和立足点,目的是建立模型要能解决什么问题,建立什么样的模型,反映什么状态。立足点是要能揭示企业各部门间的相互联系和相互制约关系。

功能模型侧重于静态的结构化描述,过程模型则侧重于动态的行为描述;功能模型用于从宏观上描述做什么,过程模型则具体描述怎样做。过程模型区别于功能模型:业务过程建模不仅要描述做什么 ( 功能模型 ) ,还要描述由哪个部门 ( 组织模型 ) 管理,靠什么 ( 资源模型 ) 、及业务过程中的物流、信息流 ( 信息模型 ) 等,由此看来,业务模型可以牵涉到其他各种模型。

在企业建模的过程中我们不能也没有必要将五种模型同等对待。“以过程模型为核心,其他模型为辅”,就是在需求调研时从业务流程出发,以过程模型为中心,将包含丰富语义的过程模型映射到其他模型,过程模型的变更会引起其他模型的变更,同样其他模型的变更,在语法、语义、语用合理的情况下,也能反映到过程模型中。这 从一个侧面反映了 ERP 中根据业务流程决定组织机构和资源配置的理念。 这种机制在解决企业模型完整性的同时,能较好地解决模型之间一致性问题,为企业建模提供正确的模型结构和关系,为开发人员和用户提供正确的企业视图。他们之间的关系如下图所示:


(图1 几种视图之间的关系)[1]

结合项目实践,我们列举了烟草行业(工业)业务的 UML 建模 实例:


  (图 2  过程图)
  
  (图 3  用例图)

5 结束语

企业模型是设计信息系统的开端,然而如果企业模型的对象和信息系统设计的对象不同时就很难由企业模型生成设计模型。企业的系统模型可以通过定义企业的工作流模型、功能模型、信息模型、组织模型、资源模型五个角度来定义。集成化的企业建模视图结构,是以工作流模型为核心,其它模型 ( 功能模型、信息模型、组织模型、资源模型 ) 为辅的集成建模。这与 Rose 从用例视图、逻辑视图、组件视图、发布视图四个角度进行软件系统建模的思想非常相似。

总而言之,以 UML 为基础,过程模型(工作流模型)为核心,其他模型(功能、信息、组织、资源)为辅的集成化企业建模,提供了企业建模的方法和工具,较好地满足了系统对可扩展性、重用性和通用性的要求;较好地解决了系统的完整性和一致性问题;为软件系统的复用、重构、集成、协同奠定了良好的基础;解决了模型的“转化”与“优化”问题,实现了业务工程向软件工程的平滑过渡,最终形成柔性化的动态企业模型。在子系统的建模过程中,我们使用了该方法并达到了预期的目的,提出这种方法,希望能给企业建模提供参考和借鉴。

参考文献

[1] 范玉顺 王刚等 企业建模理论与方法学导论 清华大学出版社 2001.10

[2] 陈禹六 , 谢 斌 , 董亚男 . 计算机集成制造 ( CIM ) 系统设计和实施方法论 [ M ]. 北京 : 清华大学出版社 ,1996

[3] www.sap.com

[4] www.baan.com

 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号