面向服务的企业业务流程应用架构研究
2024-06-10
来源:飒榕旅游知识分享网
2008年l2月 中国管理信息化 China Management Informationization Dec.,2008 Vo1.1 1,No.23 第11卷第23期 面向服务的企业业务流程应用架构研究 吴应良,高海军 (华南理工大学经济贸易学院,广州510006) [摘要]本文分析了信息系统的发展,并对各阶段的特点进行比较;随后,介绍SOA的基本原理,论述业务流程框 架的发展及传统业务框架的局限性;最后,提出基于SOA的企业业务流程应用架构。 [关键词】信息系统;面向服务架构(soA);业务流程;应用架构 [中图分类号]F270.7 [文献标识码]A [文章编号]1673—0194(2008)23—0067—04 0引 言 表1 信息系统发展示意 现今条件下,企业信息系统不仅是一个技术系统,信 系统阶段 组织结构 理念 息系统要想获得彻底的成功,不仅要强调技术,更要强调 电子数据处理系统 面向功能 EDP 用户需求,而当今的竞争现实和快速多变的环境对企业或 集成化应用系统 跨职能、面向流程 ERP 组织提出了越来越多有关业务方面的要求。因此,业务流 企业应用集成扩展系统 跨企业、面向流程 EI Ⅱ 程成为信息系统服务的对象。虽然企业IrI’系统已经经历 实时动态 基于流程、面向服务 SOA 多年建设,但是也存在一些突出的共性问题,如集成效果 不理想、适应业务变化的能力差等。为了解决上述问题,设 2面向服务的架构SOA 计人员依次采用了结构化、客户机 匣务器、3层、N层、分 2_1 SOA概述 布式对象、组件等多种信息系统架构 】,这些架构虽然在一 面向服务构架是一种面向服务的企业应用体系结构. 定范围、一定程度上减轻了问题的压力,但并没有从根本 灵活性与松耦合性是它最突出的两个特性。首先,对比传 上解决问题。面向服务架构(SOA,Service--Oriented Ar- 统的3层客户服务器体系结构.具有一个灵活而功能强大 chitecture)是敏捷性的面向服务的体系结构,它把业务逻 的服务层,它能把各个应用的功能抽象成服务,通过请求/ 辑和具体实现技术这二者分离开来圆,它的出现为解决信 服务的方式来获取跨应用的功能调用和数据获取。其次, 息系统与业务之间的矛盾提供了一种方案。 面向服务构架SOA是一种强内聚松耦合、延展性与兼容 1信息系统架构发展概述 性强的分布式信息体系。它不同于市场上许多打包应用, 随着信息技术的发展,信息系统架构也不断变化,以 而是可以通过标准化的组件,根据业务的需求搭建出企业 适应多变的需求环境,大致经历了结构化、客户机服务器、 所需的系统。并且可以方便地按照业务需求的改变而改 3层、N层、分布式对象、组件等多种信息系统架构阶段。但 变。SOA架构元素如图1所示。 其弊端日益凸现,而在面向服务的应用示范中,独立的、来 自不同开发商的系统或COTS(Commercial Off-The-Shelf) 产品被视为可以动态共享的服务.使用这些共享的服务要 求能够屏蔽系统与服务间的差异踟.最终满足基于面向服 务、面向流程的应用。 如表1所示,信息系统经历了各个发展阶段。从信息 系统的功能上来看,经历了从部门的简单应用到系统的复 杂处理;从信息系统涉及的范围来看,从单个部门的业务 处理发展到跨越部门甚至是跨越企业的应用:从其涉及对 图1 SOA架构元素脚 象来看,从面向功能的思想经历面向企业流程到现今的面 向服务的理念。 2.2 SOA基本结构 SOA的基本结构如图2所示[5]。 [收藕日期]2008—05--05 (1)服务 【基金项目】国家自然科学基金项目(70440011);教育部人文社会 科学研究项目(07JC630045);广州市科技计划项目(HD07GY034)。 由Web服务描述语言(Web Service Description [作者简介】吴应良(1963一),华南理工大学经济贸易学院教授, Language,WSDL)来描述;WSDL把服务抽象地描述为一 博士,主要研究方向:信息系统与信息管理、知识工程与知识管理。 组包含在面向文档或面向过程信息的消息上执行操作的 CHINA MANAGEMENTlNFoRMAT【oNIZATloN|67 企业管理信息化 图2 SoA结构 端点的集合:多个相关的具体端点结合在一起就构成了服 务。 (2)Jll ̄务提供方 服务提供者是一个可通过网络寻址的实体;它接受和 执行来自使用者的请求。它将A的服务和接口契约发布到 图3企业应用集成嘲 服务注册中心;以便服务使用者可以发现和访问该服务。 3.2业务流程平台ERPI1 (3)服务请求方 ERPII是由Gartner Group提出的.它是一个跨企业面 服务使用者是一个应用程序、一个软件模块或需要一 向流程的架构。其主要目的是消除系统信息孤岛,实现系统 个服务的另一个服务。它发起对注册中心中的服务的查 的整合,使系统全面支持业务流程。对比ERP和ERPII,在 询;通过传输绑定服务;并且执行服务功能。服务使用者根 其基础之上进一步扩展,延伸到了企业的外部,可以支持 据接口契约来执行服务。 和优化企业内外的协同流程。具体如图4所示。 (4)服务注册库 服务注册中心是服务发现的支持者。它包含一个可用 服务的存储库:并允许感兴趣的服务使用者查找服务提供 声 者接口。 (5)Web服务的操作 它是与Web服务相关的操作,主要有:发布、查找、绑 定、调用。 2 3 SOA范围中的服务 在面向服务体系结构中,映射到业务功能的服务是在 业务流程分析过程中确定的。服务可以是细粒度的,也可 以是粗粒度的,这取决于业务流程。每个服务都有定义良 好的接口,通过该接口就可以发现、发布和调用服务。企业 可以选择将自己的服务向外发布到业务合作伙伴。也可以 选择在组织内部发布服务。服务还可以由其他服务组合而 图4业务流程平台EFIP11嘲 成。 3.3传统业务框架局限性 3业务流程框架的发展 (1)集成基本都是面向功能 3.1企业应用集成 该情况都是基于功能定义的设计方式。只注重从技术 由于电子数据处理系统的应用局限性,随着集成化数 和内容去分类,偏重于各自实现的功能,没有强调各类集 据库的要求提出,一个跨越职能部门、面向流程的新视角 成间的相互关系和相互影响。以及作为一个整体对企业IT 产生了。集成化的应用系统包括两个集成方向:横向和纵 和业务的影响。难以形成灵活配置和扩展的体系架构,管 向。横向集成是指沿着企业的价值链跨越部门将办公系统 理上也不能提供适应多变的业务需求。 和业务系统连接起来.而纵向集成则强调将办公系统和业 (2)忽略流程的设计和集成 务系统的数据提供给计划和控制系统,即集成化的信息系 在进行系统设计时,只是简单直接地套用现有的具体 统转向遵循面向流程的设计思想。 业务流程,一旦流程变更或者增加就重新去开发新的流程 如图3所示,集成系统基于面向流程的基本原则,几 控制逻辑,使现有资源未被重用,造成资源的浪费。 乎覆盖了企业所有的管理功能。在横向上,实现了跨越各 (3)灵活性、适应性、可扩展性较差 个职能部门来处理经营管理任务,从而使得业务流程更好 很多都是针对特定的软硬件或者特定的应用环境去 地面向客户需求;在纵向上,实现了同价值创造密切相关 开发的,系统的自适应能力差;面向特定应用,体系结构与 的业务活动和面向价值创造的流程的集成。 整个组织关系不大,流程管理作用无法充分发挥。 企业管理信息化 (4)缺乏合理的粒度规则 统边界,可以更好地实现流程化。 各组件要与现有应用程序匹配,就要选择合适的粒度 4.2基于SOA业务流程应用的优点 进行系统分析和设计,难度较大且缺乏灵活性。 企业正在处理两个问题:迅速改变的能力和降低成本 由以上论述可知,如何根据当前环境要求,把分布在 的要求。为了保持竞争力,企业必须快速地适应内部因素 如兼并和重组)和外部因素(in竞争能力和顾客要求)。需 网络中的各种核心流程整合在一起。以客户为中心设计方 (rI'基础设施来支持企业。基于SOA业务 案,提高企业的核心能力就摆在企业的面前。S0A理念和 要经济而灵活的I技术的成熟为这种需求的实现提供了可能,下文将着重论 流程应用有以下优势: 述基于SOA的业务流程应用框架。 (1)可利用现有的资产 SOA提供了一个抽象层,通过这个抽象层,企业可以 4基于SOA的业务流程应用框架 4.1基于SOA的业务流程应用 继续利用它在IT方面的投资,方法是将这些现有的资产 从图5中可以看出。基于SOA的业务流程应用框架 包装成能提供企业功能的服务。组织可以继续从现有的资 的主要特点是在传统架构基础上增加流程管理器和业务 源中获取价值,而不必重新从头开始构建。(2)敏捷和管理复杂性 服务层。 SOA使核心业务逻辑和流程控制逻辑分离开来,首先 程张穗饔糍 提高了敏捷性.可以比较顺利地更改现有流程或引入新的 流程,因为更改仅限于表示流程控制的服务中;其次,该方 法允许封装关键状态代码,这意味着在更改一个流程时, 不会影响其他流程;最后,由于只需一次性实现业务逻辑, 寝懈蕊溉 缀簧箍l i 函 图5基于SOA的业务流程应用框架 故可以减少冗余,避免出现不一致的情况。 (3)更快的响应和上市速度 快速从现有的服务组合新的服务.为现代企业提供了 独特的优势。通过利用现有的组件和服务,可以减少完成 软件开发生命周期(包括收集需求、进行设计、开发和测试) 所需的时间。这使得企业可以快速地开发新的业务服务, 并允许组织迅速地对改变作出响应和减少上市准备时间。 (4)增加重用和易维护 业务服务层由特定的业务服务族、可复用的服务以及 Web Service平台组成。其中业务服务族是针对特定业务 领域的一些服务及其相应的数据模型。可复用的服务是指 SOA采用适当粒度的对象模式,并使用松散耦合的组 能够在不同业务领域共享的一些服务。Web服务平台则为 服务的定义和使用提供一个独立于业务应用平台和技术 平台的环境。 件接口,减少复杂性,能够有效重用,易于维护。 (5)易于使用 SOA业务流程是由一系列业务服务组成的。可以更轻 松地创建、修改和管理它来满足不同时期的需要。SOA提 供了灵活性和响应能力,这对于企业的生存和发展来说是 事务管理器和连接器框架等部分。一般首先采用图形方式 至关重要的。 建立业务流程模型,再存储于块模型中(如BPEL4WS或 5结论 BPML),并由流程引擎执行。其核心是流程引擎,引擎创建 基于S0A的业务流程应用框架能够实现更多的复用 和解释正式流程定义的运行时实例。流程定义(开发时)和 和集成.流程的自动化不仅使业务流程更加流畅,还加快 流程实例(运行时)存储在库中,系统提供适当的接口,以 了流程的周转时间。而且提供了一个灵活、方便的流程集 设计、部署和配置流程定义,并监控和管理流程实例阴。 成机制。采用面向服务的架构,使企业业务流程能够灵活 流程管理器包括流程引擎、流程定义库、流程实例库、 地适应外界变化。因而具有很高的业务敏捷性和投资回报 率;使其控制的系统不受外部变化的影响,并提供一个更 射成业务流程中的任务;服务描述则为业务服务族提供了 准确、更有适应能力的可扩展架构,对企业信息化建设具 定义明确合理的接口,从而使业务流程不必了解业务应用 有一定的参考价值。 和技术平台的细节就可方便调用:业务服务层中的服务注 一业务服务层和流程管理器之间通过服务紧密联系在 起。业务服务族提供了粗粒度的业务功能,它们能够映 册处确保业务流程层可以在必要的时候动态地定位和访 问所需服务。服务之间的通讯采用XML格式的数据,独 立于业务应用系统。组合应用通过统一的接口如Web服 务来访问分布式组件,向用户提供一个完整韵面向流程的 方法。来管理企业的各种任务。通过在业务层面上消除系 主要参考文献 [1]Patterns.Service—Oriented Architecture and Web Services[EB/ OL].http://www.IBM.com/Redbooks. [2]麻志毅,陈泓洁.一种面向服务的体系结构参考模型[J].计算机 CHINA MANAGEMENTINFORMATIONIZATION,69 2oo8年l2月 中国管理信息化 Dec.,2008 第11卷第23期 China Management Informationization Vo1.11.No.23 信息系统建设项目风险因素识别探讨 郭捷,刘淑芹 (中央民族大学管理学院,北京100081) [摘要]技术因素只是信息系统成败的原因之一,管理和组织的因素往往起到更大的作用。因为系统建设过程正 是一个组织变动的过程。探讨信息系统的建设风险因素,提供优化的项目管理策略,减少延期,低质量,高成本一直 是人们所关注的问题。本文针对大量的信息系统由于没有取得预期的效果或者根本不能用而被判为失败的现状,分 析信息系统开发成败的因素。 [关键词]信息系统;风险因素 [中图分类号】F270.7;TP165 [文献标识码]A [文章编号]1673—0194(2008)23—0070—03 在企业面临着全球化市场竞争的同时。很多企业把信 过问题域建立系统时许多因素必须抽象和简化,因此问题 息技术作为一种战略资源。通过采用先进的信息技术和信 域中的不确定性常常隐含于或者不再出现于系统中,这样 息系统改造企业的组织结构、管理方式、生产和销售运作 就与系统的假设或者前提发生了矛盾,而人工系统却无法 流程,以达到降低成本、提高质量、扩展市场,使企业能够 对其进行控制。如果信息技术项目还涉及现实的硬件或机 在快速的变化环境中适应市场的目标。I,I’和IS正从各层 械部件.则这些客观现实也是产生不确定性的来源。 面推动着社会从工业经济到信息经济的变迁,改变着信息 需求分析包括对问题域和问题的研究,问题域的研究 经济时代的市场竞争规则。 产生企业的信息系统战略规划,问题的研究产生信息系统 但同时,我们看到的是,信息系统的效益和风险同在, 项目的需求规格说明。由于只有变化是不变的,所以信息 并且,信息系统规模越大,投资越多,对于企业的变革就越 系统规划阶段面临未来投资和收益的多方面不确定性。信 大,那么其风险也随之增加。信息系统开发成功意味着按 息系统项目本身的不确定性,对于新软件系统的需求,只 既定要求交付符合用户和组织需求的系统。历史上伦敦股 有用户使用过以后才能完全得到。具体来说: 票交易所信息系统的失败不是个别的现象,几乎在每个组 (1)用户需求难以确定。不仅不同的用户对同一信息 织的信息系统建设中都不同程度地遇到过类似的问题:如 可能有不同的理解和解释,从而会产生不同的需求,有时 花费了比预期计划多很多的金钱和时间。使公司投资收回 同一用户也会因时间、地点的不同而提出不同的要求,使 难以实现;系统不能正确地实现设计功能,使组织中的问 得用户需求的定义难以具体地确定。 题不能获得有效的解决等。 (2)-1-_作量难以确定。用户需求不确定是引起工作量 信息系统开发项目需要有效的管理,由于项目实施中 难以确定的原因之一,更重要的原因是迄今为止仍然缺少 有相当多的不确定因素和人为因素,使得这一过程的管理 有效的技术与方法事先估算系统分析与系统设计所需要 变得异常困难。如果管理不当,就会造成许多后果,如投资 的时间。理论研究与教学中只是分析了一些比较简单的小 严重超过预算;工期大大地超出了计划;技术缺陷导致得 系统,大系统的估算仍然缺少方法。实践经验也难以借鉴, 不到预期的效果。信息系统项目开发中存在许多不确定性 因为信息技术发展很快,许多大型甚至小型系统也都是 因素,大体来自于以下3个方面。 “首次开发”.并且没有先期经验可供借鉴。估算的计划往 一、项目需求的不确定性 往与实际相差很大。不准确的计划会直接影响到实施过程 信息系统项目开发系统通常都以一个或多个真实世 的控制。导致时间的拖期、预算的突破,甚至系统的失败。 界为背景,这里所依据的客观世界范围称为问题域,由于通 二、项目设计实施的不确定性 [收稿日期】20o8-o5一o5 如果系统实施过程管理不善,信息系统开发的各个阶 [作者简介]郭捷(1976一),女,中央民族大学管理学院副教授,博 段都有可能出现风险。表1列出的是一些典型问题。 士,主要研究方向:项目风险管理,信息经济和信息系统,知识管理。 (1)技术风险。信息系统项目的现实性要求严格绝对 学报。2006,29(7). 与实现[J].计算机应用,2007,27(5). [3]徐罡,黄涛,刘绍华,等.分布应用集成核心技术研究综述[J].计 [6]Auguest—Wilhelm Scheer等.下一代业务流程管理[M].黄官伟, 算机学报,20o5,28(4). 武亚平,译.上海:同济大学出版社,2007:7-13. [4]李学军,张明玉.基于SOA的物流信息系统架构研究[J].物流技 [7]Dirk Krafzig,Karl Banke,Dirk Slama.Enterprise SOA中文版—— 术,2007,26(1). 面向服务架构的最佳实践[M].韩宏志,译.北京:清华大学出版 [5]方江雄,何红波,李义兵.基于SOA和BPM的ERP系统的研究 社.2006:79—81. 70|CHINA MANAGEMENTINFORMATIONIZATION