版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第页(一)基础:什么是BPM商业流程管理?CNET中国·PC
类型:转载
作者:csdn
责编:小蝎
时间:2006-10-23
BPM是流程自动化的应用,帮助企业进行业务流程的分析之外,另可利用IT技术,自动化组织内各部门的原本以人力及公文传递的流程。
根据数据整合软件供货商Ultimus的定义,BPM主要精神在于管理企业的流程。除工作流程自动化系统之外,还必需提供企业应用软件整合(EAI)与交换的功能、流程成本效率评量与绩效管理,以及流程初始设计的模型最佳化工具,用以涵盖企业管理流程中所有的必要环节。
分析师建议,决定BPM工具之前,企业必须用严谨的态度检讨目前使用的软件,决定业务角色的授权,权衡数据模型(datamodel)与分析工具(analyticalapplications),并建立未来采用BPM后的假想情境。
目前包括IBM、微软、BEA也努力催生商业模型标准,联合起草网络服务(WebServices)商业流程执行语言(BPEL4WS)。业界相信,先建立商业流程模型,再从这些流程模型中建立应用程序进而监视这些模型,将有助在企业内部的IT部门与业务主管之间建立起环环相扣的自动化流程(二)体系架构蓝图SOA和BPM的合并CNET中国·PC
类型:投稿
作者:BEA
责编:小蝎
时间:2006-10-23
面向服务的体系架构(Service-orientedarchitecture,SOA)已经成为软件工程中一个最重要的主题。无疑,随着Web服务的推广和广泛接受,以及支持基于SOA解决方案开发的case风格的IDE这一新浪潮的兴起,SOA已经成为构建企业级分布式应用程序的首选蓝图。与此同时,业务流程管理(businessprocessmanagement,BPM)作为操作灵活的新企业并为其建模的主要支持者,正在强力反弹。
面向服务的体系架构(Service-orientedarchitecture,SOA)已经成为软件工程中一个最重要的主题。无疑,随着Web服务的推广和广泛接受,以及支持基于SOA解决方案开发的case风格的IDE这一新浪潮的兴起,SOA已经成为构建企业级分布式应用程序的首选蓝图。与此同时,业务流程管理(businessprocessmanagement,BPM)作为操作灵活的新企业并为其建模的主要支持者,正在强力反弹。基础结构厂商已经使BPM成为他们出售的系列产品的主要组件,瞄准机会的厂商使用专用的BPM系统提供垂直的业务解决方案,纯使用BPM的厂商正在得到更加广泛的接受。
尽管两种趋势均显露出了征兆,它们的趋同现象仍不明显,而且关于这种现象没有统一的看法。它们是互补的表示法吗?它们会重叠吗?我该如何一起使用它们?这样做有没有另外的优点?此外,为什么80年代末期的企业流程重构(BPreengineering)失败了,而第三次BPM浪潮却将要取得成功呢?
在这一系列三篇文章中,我将解决这些问题。首先,我将讨论一个体系架构蓝图的最佳实践如何将面向服务体系架构与BPM框架合并,从而为构建健壮的企业级集成解决方案并对其建模提供可重复的方案。我描述了为什么在当今,任何使用技术支持其任务陈述需要的企业比以往更能拥有合适的体系架构蓝图。最后,我讨论了什么是实时交易的挑战,以及BPM方法如何能够实现企业灵活性、智能企业建模、系统开发和以客户为中心的运作优点。
在第二篇文章中,我将应用BPM技术来为一个支持“用于汽车保险”业务场景的软件解决方案建模和设计体系架构。我将讲述两种设计:一种纯BPM设计和一种混合型设计。我还将讲述一些新兴的建模工具和标准,并讨论一些建模和各种体系架构选择和策略方面的难题。
在第三篇(也是最后一篇)文章中,我将使用BEA的WebLogicPlatform8.1构建一个POC。我将讨论BEA的IDE新引入的可视化编程范型及其优缺点,和构建完全分布式的企业级应用程序所需的一些技术。我还将解释,为什么流行的请求/响应模式的WEB协议与基于事件的流程建模,以及它在进行架构决策时的意义不一致的原因。体系架构模式——谁需要它们?
软件工程是艺术还是科学?在科学中,我们有明确的定义、定理和证据。在艺术中,我们有工具和技术、趋势以及最佳实践。科学中提出了一些假设,其中一些变成定理,另外一些在经过数个世纪的研究之后得到验证,还有一些永远没有答案。在艺术中,新技术带来新的趋势,比如新闻和数字摄影。如果软件工程是一门科学,定义我们在日常业务语言中使用的所有术语不应该是一件困难的事情,像服务、Web服务、面向服务的体系架构、BPM和BPM系统(BPMS)。的确,我可以利用数学精度来证明一个数据库查询算法的正确性。但是,我能够以一种干脆、简洁且通常会被接受的方式来回答,J2EE中的B2B集成是与纯.NETWeb服务解决方案相对的正确答案吗?据我了解,对于我们中间的一些人来说,这不是问题。最后,任一种常见的贸易出版物的随机调查指出,每个人都可以给出自己的定义,而有些人甚至质疑IT存在的本质。我不得不得出结论,软件工程仍然是艺术多于科学。这正好是我们需要合适的最佳实践、框架和可重复过程的原因。
模式封装了最佳实践,简练地定义了域问题,描述了使问题值得关注的原因,并提出了解决方案。模式并没有解决独特的问题。专业人员结合各种模式来解决更为复杂而且有时更为独特的问题。ChristopherAlexander说:“模式同时也是发生在世界上的事件和告诉我们如何创建该事件的规则,以及我们必须创建它的时刻。它既是过程,也是事件。”我回想起我一直以来最喜欢的定义:对象是带有状态或数据及行为的数据结构。就目前来说,可以把Web服务看作带有一个方法的对象。就像BEAWebLogicPlatform8.1所实现的那样,会话式Web服务看起来更像是真正的对象:对它进行一次初始化,然后一直执行方法。万一您仍然不能肯定Web服务是粗粒度的对象,考虑:(1)IBM、BEA和Microsoft宣布了WS-Eventing规范。它就像是优秀但老式的对象观察者模式。(2)开放式网格服务体系架构(OpenGridServicesArchitecture)实现了网格服务协议的Web服务接口继承。因此,Web服务提供数据和行为(Alexander的定义中的事件和规则),而BPMS实现模式的流程组件。SOA是一个用于解决企业集成和系统开发问题的体系架构模式。
我们已经看到,SOA不是体系架构趋势的革命,而是它经过一段时间发展的演变成果。它围绕为企业构建分布式系统而发展。诚然,Web服务以一种普遍接受且无二义性的方式提供底层技术,以解决系统连接性问题。也许是头一次,Web服务成功地解决了互操作性的问题,而这是CORBA、COM、DCOM和RPC做梦也从未想过的事情。我肯定,作为中立语言,XML对此也准备一展身手。然而,SOA中包括进来的BPMS框架是一个新的、革命性的元素。HowardSmith和PeterFingar描述的第三次浪潮是指一组全新的概念、框架和主流产品。它正在显著改变企业转化的方式,从而灵活地管理和运行全局的和协作的电子商务实体。
业务流程管理的出现已经有一段时间,它更多地用于工业中,而与IT无关。并发工程和六西格玛被开发用来解决生产和流程改进中的及时协作问题,并且确实取得了相当的成功。然而,在80年代晚期,出于多方面的原因,业务流程重构管理获得的成功非常有限。但是最根本的原因是,重构是纸上谈兵。没有软件来支持这样一个复杂的任务。BPM在没有考虑IT系统的情况下设计了自适应的企业。正如DavidTaylor所写:
“对连续性流程优化的需要要求从根本上重新考虑如何设计和构建信息系统。提出解决固定问题的固定解决方案已经不再够用。”
信息系统,像它们支持的业务模型一样,必须在本质上就是自适应的。
Taylor提出一种基于OO的开发技术,作为开发自适应IT的一种方法,这种技术称为聚合工程(convergentengineering)。然而,OOP无法成功解决分布式计算和企业集成的问题。另外,负责对企业建模的业务分析人员也没有采用OO。
BPMS将流程建立为用于建模、软件设计和运行时执行的统一结构。过去,开发趋势一直在影响我们对企业建模的方式。功能式编程使功能需求技术流行起来。关系数据库带来了RDBS分析和设计的流行。面向对象的编程则为OO分析和用例开发铺平了道路。但是在大多数情况下,业务分析人员不会使用开发专门术语,因此产生了对需求可跟踪性中通常影响的另一种翻译的需要。
BPM规范正在快速演变为标准。市场中已经出现了支持业务建模、优化和运行时执行的产品。正如BEA的WebLogicPlatform8.1和其他BPMS产品所实现的那样,以流程为中心的BPMS方法用于系统开发生命周期,它消除了对运行时阻抗不匹配的业务需求。
灵活的企业拥有自适应的业务和自适应的IT系统。如果构建企业解决方案的过程中出现一个新的问题,那么它一定是需求变化的速度。它的速度之快是前所未有的。BPMS引擎添加了一个新的层到传统的开发堆栈(参见图1)中,并引入服务质量来解决企业集成中的根本问题。BPMS引擎使编程最易变的部分——集成点——的软布线变得容易。软布线是以正式语言显式描述的,并由BPMS引擎(又名有限状态机引擎)执行。正如BEAWebLogicIntegrator和其他BPMS产品所实现的那样,业务与IT资源可以同时在一个可视化的只能IDE中查看和修改流程。只需轻击鼠标,便可部署到运行时BPMS执行引擎。业务模拟可以运行,而性能工程可以在系统完成之前完成;这种方式听起来就像CASE工具。SOA和BPMS工具将灵活企业的实时执行仪表板带向主流。
(图01)
在本文余下的部分中,我将描述一个典型的金融服务企业的开发,并提出一条通向基于BPMS的SOA的迁移路径。该路径是增量的,但是它需要战略思考和对未来远景的承诺。作为回报,它将允许投资的早期回报,并将遗留企业转化为完全自适应的灵活企业。
从企业远景到组织筒仓(Silo)
企业从远景开始。CEO和董事会采用远景和行业使命陈述。C级管理人员定义策略,并适当地安排流程来管理执行(参见图1)。定义功能角色和责任,然后创建企业界线。业务分类(Lineofbusiness,LOB)在本质上可以是水平或垂直的(参见图2)。垂直LOB具有以下特征:
独立的操作域。
特有的管理和策略。
开发和维护自己的IT—自动化孤岛。
足够大以至于可以创建多种业务分类;例如,抵押贷款证券、市政公债、货币市场,等等。(图02)水平LOB具有不同的特征集合:
提供业务控制。
管理的支配和一致。
需要访问由垂直LOB管理的数据。
合适的手动流程和书面报告。
在第二个信息纪元(不要与第二次浪潮混淆)中,我们使用了各种编程技术来链接自动化孤岛,从FTP、数据库复制、EAI和消息收发开始。此方法产生了一整套新问题:·
接口的多重性:一份MorganStanleyDeanWitter报告表明,通常的金融服务客户需要维护6000个接口,为此每年花费2500万美元,而且每年还需构建900个新的点到点接口,为此需另外花费2500万美元进行构建,并且还要花费400万美元进行维护。·调停流程:必须在每一个仓库上实现,需要消耗有价值的时间和昂贵的资源。这是一项常用技术,用于检验由多个实体修改的引用数据。·
流程:在中间件中进行硬布线。在分析过程中捕捉流程所花费的时间和金钱属于浪费。企业最重要的资产——流程——隐藏在n(n-1)个意大利面式接口的迷宫中。·
开发新的水平流程:需要多个LOB的协调。·
实现特定和专用的接口:需要专门化和一次性编程。重用消失,维护方面的投入显著增加。·
异常难于跟踪:错误解析通常需要访问多个系统。人工干预和解释是不可避免的。找寻答案需要花费大量宝贵时间,并对客户满意程度和收益性方面的大致情况有着直接影响。流程无处不在。您能发现它们吗?
对于企业来说,流程可以是客户层面上的,也可以是内部的,或者可以是更大流程的组成部分。我们在同样的企业中可以找到内部流程。流程通常涉及到人与系统的交互,或者只是系统之间的交互(参见图3)。交易流程是大规模流程的一个很好的例子。行政管理部门的交易人员在他的销售订单系统中接收一个来自对冲基金管理人员的交易执行命令,或者他接到一份传真或一个电话。交易人员检查库存系统的安全性或资金,并借助他的交易对手执行交易。可以制造纸质入场券,而交易助手可能必须在下行系统中进入它。(图03)
当因为下行系统之一错误地再进入,而帮助台分析人员收到一份异常报告时,另一个内部流程启动了。然后,他在内部记事薄之一中查找数据(原始进入记录),请求来自事务部门的传真(我们假定讨论的交易超过了结算日期),而且因为他在两天内没有收到回复,也许他会再次重复同样的行为。这个流程最终当分析人员解决了问题时终止,当然,除非他调到另一个部门或者调出公司。然后,顾问们必须参与进来,跟踪问题和流程,这通常需要一大笔钱。
每月的客户声明是定期性企业范围内流程的一个传统例子,通常为水平LOB所特有。在大多数情况下,客户在被不同LOB支持的产品中拥有帐号,例如,股票、U.S.证券和外汇。在月末发送多个声明将会十分混乱。法律和一致性问题还需要交叉引用多个仓库的数据。Patriot和Sarbanes-OxleyActs(一个新的业务流程,但是不赚钱)的一个主要问题是要访问由大量LOB所拥有的数据,有时还要环绕半个世界。EAI技术和消息收发试图借助早先阐明的限制解决这些问题。通向灵活性的道路:以BPM为中心的SOA
让我们考虑带有Web服务的、以BPM为中心的SOA如何将现有的遗留企业转换为自适应性的企业。水平流程和异常管理是用于SOA启用的理想候选者,可以演示可调整的和速度快的ROI。没有经历业务流程再造的严谨,我们必须定义良好的流程图。流程图也是实行业务流程重新设计的第一步。如果使用BPMS设计工具(Proactivity,Intalio,InterfacingTechnologies),您可以把度量关联到流程和行为,例如,性能、开销、IT资源、FTE、逝去的时间、容量,等等。许多BPMS设计工具允许您运行模拟,并继续进行流程优化(运行what-if场景),但是这并非本文的重点。对于我们的重点来说,以下列出的是良好流程图的一些特征:·
考虑流程而不是功能:流程告诉您完成什么工作以及如何完成。功能描述谁在哪里来完成它。·
从客户的观点出发:考虑从外部业务事件开始的流程,例如,一次交易、一份订单、一个主张、一个报价请求。·
在更宽泛的意义上并基于不同的服务质量来划分客户类别:您生态系统中的性能、供应商、业务伙伴。·
流程反映状态变化:交易订单、现金支付。从可管理的流程数量6-10开始。记住,大多数人最多只能保留一个页面上的七样东西。·
定义核心流程和子流程:这里没有科学理论,只有最佳实践。然而,要当心P-calculus2和Petri-nets;它们将在接下来的10年内带给BPM科学的严密性。·
将流程分解为行为
下一个目标是通过分解行为来定义小单元。我们将这项工作称为ElementaryBusinessServices(EBS)。如果您从多维矢量代数开始回想,空间中的任意一点都可以被定义为单元矢量的线形组合。在我们的例子中,我们以可以通过编排EBS子集来构造任何流程的方式定义了所有EBS。正如您可能猜想的那样,我们将EBS实现为Web服务。识别EBS的正确集合和粒度水平很重要。这与设计对象的重要程度相同。相同的规则和技术——封装、状态相关性、内聚性、松散耦合和重构——同样适用,这并不使人惊奇。EBS的业务量体现出了大量实际优点:1.
它是要重用的最终指南。可以通过任何想像得到的方式编排EBS,以形成新的LOB。2.
连续性流程改进不必等到IT适应新的业务模型。3.
EBS对企业生态系统中的企业和业务伙伴可用。4.
放弃使用一个系统并不是一个一蹴而就的过程,而是一个循序渐进的过程。5.
可以以一种易于管理且性价比高的方式合并和获得IT。6.
可以几乎实时地设计和执行一个新的业务流程。
从图4中可以看出,我们可以使EBS在BEAWebLogicPlatform8.1(集成组件)的一个实例中可用。从技术上说,在BEAWebLogicIntegration中,Web服务被称为业务流程资源。我们使用IDE编排新流程,使用门户添加UI,然后将它部署为一组EJB来执行。就是这么简单!现在流程是一项IT资产了,就像数据库表、存储过程、遗留COBOL书籍和专用的计算c库。(图04)
许多金融服务机构的业务分类是水平的,管理高净值的私有客户。在启用了BPMSSOA的企业中,开发IT基础结构来支持这样的新LOB完全可以与正确放置业务模型并行完成(参见图5)(图05)
考虑A现象,它们并没有创造任何新的EBS。所有EBS位于任何其他邮件订单一览表书店中的恰当位置:定购书籍,检查库存,信用卡付帐,打印声明,准备装运,给客户发送电子邮件。但是它没有创建新流程,没有质疑已经建立好的流程,甚至不用花费什么力气。
正如HowardSmith和PeterFingar所说的那样:“在BPM的第三次浪潮中,筒仓式思考和点到点的技术集成被灵活的、基于业务流程的体系架构所代替。”此外,GartnerGroup现在声明,继续将业务逻辑硬布线到软件或中间件中或者坚持人工步骤的公司将输给部署流程管理体系架构的竞争对手。实时处理业务
退一步说,预测将来是很困难的事情,但是我们用非常科学的态度对待它,而且始终试着这么做,不管对还是错。统计和预测是关于预测将来的两门科学。投资组合评估和保险统计研究是有关预测的科学。实际上,我们的预测仅仅基于我们已经经历过的、过去的性能和趋势。实时处理业务需要预测未来的业务情况。然而,基本的业务协议和框架必须合适。今天,技术革新、BPMS和SOA是将业务目标与IT相结合的基础。流程提供一个封装了变化的新层。90年代早期,PowerBuilder和VB风格的工具使客户端/服务器和关系数据库系统的开发流行开来,通过与此相同的方式,BPMS引擎将在未来建立流程驱动的企业。事实上我预测,在我们的一生中,我们将看到对运行时流程的需求,该类流程用于实时变化或对自修改流程的需要。无疑,人类希望能够掌管该类变化,但是通过使用UDDI-š(š代表流程)找出最可能的服务契约和使用描述域专业知识和市场情况的规则进行决策,BMPS能够使这项工作更加容易。随着BPMS的普及,灵活性将被极端自适应所代替。结束语
在本文中,我描绘了合并SOA和BPM的蓝图。从一幅企业的自顶向下流程图开始,我们定义了基本业务服务的组合选择。垂直LOB拥有并部署EBS。Web服务实现它们,并使它们对企业可用。通过使用BPMS引擎的一个实例,可以设计、开发、测试新的流程,并通过结合现有的EBS,在数日内添加业务值。
在我的下一篇文章中,我将:(1)讲述用于给现实世界业务保险流程建模的BPM技术,并提出一个纯BPM解决方案和一个混合解决方案;(2)使用Web服务和JMS连接设计EBS并实现它们;(3)提出一个使用WebLogicPlatform8.1的物理基础结构;并(4)讨论面向服务体系架构中的BPMS难题和新出现的模式。
直到:流程无处不在。您能发现它们吗?(三)简单到复杂,BPM技术促进SOA发展CNET中国·PC
类型:转载
作者:csdn
责编:小蝎
时间:2006-10-23
BPM(企业流程管理,BusinessProcessManagement)与SOA(服务导向架构,ServiceOrientedArchitecture)各自历经多年的发展,越来越成为人们的焦点。众多厂商成为了SOA技术架构的推动者,其中包括IBM、BEA、HP、Oracle和SAP。
SOA可以看作是B/S模式、XML/WebService技术与管理软件的结合。它通过组合单独业务和流程实现复杂的业务应用,而这些业务功能和流程称为服务,SOA把业务流程视为独立于应用程序及其运行的平台的可复用组件。从SOA概念提出以来,越来越多的主流厂商开始了BPM与SOA的应用。今年3月,BEA收购Fuego扩展SOA到BPM软件,以此使用新的BPM升级SOA平台。2月,HP和Oracle集团宣布,HP的服务咨询和集成(ServicesConsulting&Integration)将会同Oracle的Fusion中间件,加入到它的SOA的投资组合以及HPOpenView管理软件套件,以Fusion融合SOA。去年,Oracle收购了BPM专业公司Collaxa;SAP重新设计软件,以便集成自由版本的面向BPM的中间件NetWeaver。
除平台提供商以外,开源厂商也试图占领拥有自己的SOA却缺乏服务的市场。JBoss公司在2005年10月发布的企业过程管理引擎,围绕业务过程执行语言(BusinessProcessExecutionLanguageBPEL)提供了一种可插拔的体系结构、扩展的任务管理以及新的可扩展性。BPEL虽然是用来编排Web服务的,但依然适合用来集成,而不是深入的业务逻辑。BPM无论从技术还是方法上都将促进SOA的发展。在此过程中,大型平台厂商IBM、BEA、SAP、Oracle等将会尝试建立一种新SOA标准;而开源厂商努力构建一套工具,不把自己禁锢于用一种方法构建SOA。从BPM的IT需求与SOA技术角度上看,BPM与SOA的融合也具有先天优势。BPM的范围覆盖了企业运营的各个环节,如生产、销售、物流、财务等企业经营活动,甚至延伸到供应商和经销商。其产品开发包括6个部分,从基础开始为:开发语言,如BPEL、Java等;BPM服务器,包含EAI/BPM平台产品;BPM工具,包括用户接口工具、过程建模工具、软件需求工具等;BPM套件;BPM知识架构;BPM系统和其应用。由此可见,BPM的IT需求与SOA技术具有以下相似点:1.BPM涵盖范围广泛,需要完成因事件触发的完全不相干的事件,此特点正与SOA的松散耦合特点相吻合。2.BPM需要多部门、区域的协同。在此中环境中网络环境的安全性可由SOA技术构架中的WS-Security、LDAP(LightweightDirectoryAccessProtocol-轻量级目录访问协议)、PKI(PublicKeyInfrastructure-公钥基础设施)架构和数位签章等机制来完成。3.BPM系统构成元素种类繁多而复杂,包含分布于各模块的企业逻辑和规则。而SOA可以看作是B/S模式、XML/WebService技术与管理软件的延续。
当前多数SOA环境能提供系统管理工具给系统管理员使用,协助管理SOA架构下模块的安装、移除、启动等。目前能够实现SOA的产品包括:MicrosoftBiztalkServer,webMethodsBusinessIntegrator,IBMSeeBeyond,TIBCO和Vignette。在SOA提出以前,大部分BPM产品在流程图中采用自有定义流程逻辑。4.企业BPM系统的实施往往从最简单的开始,逐渐提升为复杂的BPM系统。而SOA模块化的特性正好吻合了此特性。(四)分析:BPM与SOA之间的区别及联系CNET中国·PC
类型:转载
作者:newhappy2008
责编:小蝎
时间:2006-10-23
关于业务流程管理(BPM)和面向服务架构(SOA)之间关系的讨论热闹非凡。二者也是多年来的热门话题,但是关于它们的讨论通常都出现在互不相关的论坛上,讨论它们的人通常也属于不同的圈子。不过现在这种情况正在改变,因为这两个概念以及相关技术的使用者和提供者正日渐将二者结合起来看待。
BPM阵营通常声称,SOA对于实现BPM来说不是必需的。只需部署一个BPM套件,就可以更快地实现目标而不会带来多少复杂性。SOA阵营则注重于如何从一般意义上解决企业IT的复杂性。该阵营通常声称BPM是SOA的一个特性,但是它是SOA解决方案的一部分,而不是一个单独的东西。当SOA领域的人士谈到BPM时,该术语通常与服务编排或流程整合同义,而不强调对业务分析人员友好的建模或人员交互,而后者对BPM阵营来说非常重要。
为了澄清这些误解,我认为有必要阐明BPM与SOA的不同本质:SOA是一种架构方法;BPM则是一组协调活动。
因此,可以很容易地得到使用SOA或不使用SOA的BPM,反之亦然。我们来看看不同组合的优点。
如果部署一个不使用SOA的BPM套件,则可以获得快速创建、执行和监控/管理业务流程的能力。业务流程的模型可以由业务分析人员创建,但是其完整实现则需要与底层IT系统的集成(以及定义用户如何与该流程交互,但是现在我们暂不考虑)。BPM套件(如BEA的AquaLogicBPMSuite)支持使用各种不同的技术(面向服务的或不是面向服务的)对应用程序和数据库进行轻松访问。实现由代码和来自于并依赖于底层系统接口的元数据组成,因此,对底层数据库和应用程序的任何更改都将导致对业务流程的更改。
如果组织和IT环境规模比较小,并且由同样一组人来控制所有的系统(包括BPM套件)的话,这是完全可以的。如果底层系统完全不更改的话,这种方法同样运行良好。
但是,如果BPM套件由一个小组部署,并消费来自另一个小组的系统的服务,那么协调和管理每个小组中的更改的任务很快就会变得非常困难。这是SOA要解决的典型问题,因此,SOA可以应用于BPM套件的部署,就像应用于其它地方一样。
如果BPM作为SOA的一部分进行部署,这意味着当一个业务流程连接到底层系统时,它连接到由企业服务总线所提供的代理服务,这样就隐藏了底层应用程序和数据库的复杂性。这具有以下优点:
将业务流程连接到系统的过程会更简单,因为IT可以公开更有用的接口,比如聚合的数据服务或使用标准协议而不是专有协议的服务。这减少了实现流程所需的IT工作量,并允许流程人员将精力集中于流程,而不是粘合流程与底层系统所需的技术。
它使得实现更为健壮,因为对底层IT系统的更改不必影响流程所使用的接口。
它在BPM套件之外提供了一个独立的控制和管理层。这允许IT小组更好地管理他们所拥有和维护的服务的策略和资源。
SOA还支持从BPM套件中获得对它所连接到的系统的更好可见度。IT小组可以在服务注册库中注册服务,流程开发人员(甚至可能是业务分析师)可以在构建流程时浏览这样的注册库。这确保了服务可以被正确地使用和重用,而且通常简化了业务流程,因为使用正确的服务可以将流程本身的复杂性降至最低。
无疑,这些优点只有在IT基础架构足够复杂,并且/或者BPM项目达到一定的范围和规模时才能显现出来。因此,在很多情况下,应该首先开发出BPM,而将SOA组件留待以后考虑。
最好的方法是一开始就让业务运作团队和IT企业架构小组保持良好的对话,并针对未来进行规划,同时支持战术性执行。这就需要正确地组合产品。例如,BPM套件本身应该能够提供丰富的连通性,以便无需全面应用完善的SOA来使得BPM运行,这一点非常重要。类似地,BPM套件应该支持SOA,这样BPM与SOA才不至于存在于独立的竖井中,这也很重要。(五)OASIS总裁PatrickGannon谈SOA与开放标准CNET中国·PC
类型:转载
作者:Cnet
责编:小蝎
时间:2006-10-23
PatrickGannon:今天来给大家介绍一下SOA对产业的一些好处和标准对产业的一些影响。这一页是我的简单介绍。主要介绍一下开放标准和SOA对公司的发展有哪些影响。今后的电子商务将会搭建在SOA的平台上,现在SOA和开放标准还处于初期阶段。这一页幻灯片是介绍了一下SOA的基本情况。为了达到SOA所承诺的前景,需要建立一个共同的框架体系和标准体系。公司要在SOA投资,必须要获得一些收益,这样保证他们的资产有更好的流动性,也保证他们的资产有长期保值的能力。所谓流动性就是灵活多样的意思,也就是说SOA的标准体系和核心技术要能够满足各式各样应用的需求。SOA很重要的特性是能够让你对软件的投资有长期的保值性,能够避免重复投资,可以让你的软件模块可以重复地使用。
为了达到这些目标,有一些很基本的工作需要做。我们必须要有一个共同的体系结构和一套共同的词汇表,大家都知道每一个软件的变量代表了什么意思。现在的问题是各个行业一些主要的技术厂商,他们看的都局限于他们这个行业或者是自己的技术体系来考虑整个软件应用的问题。这个问题是不同的词汇表,不同词汇的意义和不同的表示方法都对使用软件技术的发展带来了障碍。我们的解决方法是什么?在商业业务层面创造互操作性。
其中一个方法是实现跨部门的应用互动和应用的集成。为了达到这个目标,开放标准是其中一个很重要的措施。很多公司问为什么我们需要标准?我们看到为了建立标准体系需要很多的投入,一个标准组织就是为了让业界的企业一起共同做标准的工作,降低大家分头做标准的成本。软件公司需要知道他们做什么标准、同时应该了解标准是怎么产生的,通过什么样的方式使标准有一个基本的接受情况。我们请了DelphiGroupResearch做一个标准的调研,看整个企业对标准的认识,和目前对标准研究的看法。有三个重要的调研结果。采用开放标准使得企业的软件可以重复使用,数据也可以在不同的平台上进行共享。第二个结论是采用了开放标准,企业的研发工作可以在更大的协同范围,甚至是摄入最终用户来进行共同的开发。我们看到开放标准对于WebService的使用是非常重要的。
OASIS是一个国际标准组织,主要是针对先进的结构化数据的信息标准。OASIS不光只是研究和产生标准,同时也跟其他国际组织一起合作来推动标准的采用和技术的发展。OASIS有一个非常开放的组织结构,可以让会员很容易在组织里面表达自己,目前有650个不同的企业会员,来自80个国家。OASIS在WebService、电子商务、eBusiness和文档管理方面是目前世界上权威的标准组织。通过13年的努力,OASIS已经得到广泛的承认,OASIS不仅可以直接向国际标准组织、国际电联和联合国相关标准组织直接提交标准提案。
OASIS不光只是由技术厂商参加的标准技术组织,实际上有35%的成员来自于客户,也就是说可以对甲方有影响力的部门,还有大概15%的研究单位。OASIS也是一个发展很快的组织,我来中国很重要的目的是希望能够参与快速发展的亚太地区的经济活动。
这是OASIS在亚太地区目前的成员,这是在大陆地区的会员成员,我已经参观过了书生、长风联盟和神州数码,以及互联网中心。根据我这个星期在这边的感觉,我认为很快会有更多的公司参加OASIS这个组织。我邀请大家能够参与OASIS这个组织。
OASIS是为SOA和Web服务的发展提供重要的指导作用。OASIS的工作覆盖了SOA和Web服务一些非常重要的领域。这是OASIS在SOA和Web服务里重要的领域和技术工作组所覆盖的一些SOA和Web服务的重要领域。OASIS不但是推动标准的研发和发布,也推动标准的全面采用。OASIS是有25个技术委员会在SOA领域里展开技术的研究工作。对于公司对eBusiness有兴趣的公司,有一个商业编排工作组。标准、访问权限控制也是OASIS在SOA和Web服务领域里的重要工作。
Web服务的管理也是我们一个很重要的技术研究工作。可靠的消息传输也是我们的工作之一。这是UDDI部分的工作。你们看到在OASIS里对SOA和Web服务做了大量的研究和标准建设工作,这也是很多公司参加OASIS的直接目的。大家都知道当一个公司在新技术方面做投入时都会涉及到一个潜在的风险。SOA可以帮助公司降低采用新技术的风险。企业今天可以做什么呢?一个是可以参加OASIS组织,或者是可以观察、了解一下OASIS组织能做什么。因为这些标准都是在全世界推广和采用的,所以非常重要的是要让在中国的软件企业或者是中国的最终用户能够对他们的技术需求和他们的一些要求很明确地表示出来。表示出来以后,能够影响标准的产生,而且标准是在全球范围内推动的。其中软件公司在OASIS的工作是提出新的研究方向。其中一个例子就是书生公司已经在上个星期提出了UOML在OASIS里立项。我相信肯定有很多其他的公司可以把他们创新性的技术提案通过OASIS这个平台建立起来。对于小的公司,没有很多钱来参加像这种标准组织的话,也可以多看一看标准组织能不能对你们的市场活动带来好处。
除了标准的研究工作以外也跟很多组织合办活动,把会员的一些技术在更大的范围里展示。对于最终客户来说,OASIS对他们也有很多好处。对于最终用户如果能够把他们对技术的需求明确提出来之后,可以在明确的过程中考虑进去。OASIS有很多会员是政府部门,这些政府部门参加的原因是他们希望观察标准的研究情况,对标准提出一些建议。这些政府部门也利用OASIS平台来了解哪些技术方向值得政府的资助,对参加这些研究方向的企业优先考虑进行资助。对于开放标准和SOA的研究,希望能够邀请和OASIS一起共同讨论SOA和开放标准的工作(六)业界观察:为什么SOA如此得势?【正文】
作为未来的技术趋势之一,SOA正无可争议地引领着软件业的新一轮浪潮,并在未来给软件和网络带来革命性的变化。为什么SOA如此得势?这是因为SOA改变了过去开发应用的模式,将软件按照业务需求定义成“组件”,作为共享资源,提供以服务为中心的应用软件设计方法。这种方法,能够提高IT对业务的响应能力,使企业得以实时支持业务的变化,最终帮助企业转变为服务驱动型企业。
早在2002年Gartner就预测,到2008年,SOA将成为占有绝对优势的软件工程实践方法,它将结束传统的整体软件体系架构长达40年的统治地位,届时,将有70%的企业在进行企业IT建设时会转向SOA。从技术上讲,SOA并不是一个新概念,早在20世纪90年代中期,Gartner就提出了SOA的概念,但当时的软件技术发展和信息化水平还不足以使它走入实用阶段。进入21世纪,随着Web服务等相关标准的出现和成熟,SOA开始从概念走向实用。
SOA不是某个产品,也不是某个技术,而是一种软件设计架构和方法。SOA要求开发者从服务集成的角度来设计应用软件,它将应用程序的不同功能组件定义为“服务”,通过“服务”之间的良好接口联系起来。(也就是“服务”之间的松耦合。)接口是采用中立方式进行定义的,独立于实现“服务”的硬件平台、操作系统和编成语言。而且这些构建在各种各样系统中的“服务”可以以一种统一和通用方式进行交互。保证系统灵活性,另外,还可以保证“服务”的重复利用。
由此可以看出,SOA的核心概念是“重用”和“互操作”,从而使企业的IT系统拥有极大的灵活性。SOA的另一层意义就是整合,它将企业的IT资源整合成标准的、可操作的服务,使其能被重新组合和应用。在这种架构下,IT系统的复杂性并没有增加,相反,随着系统的不断完善,整个系统的架构将变得更加清晰。
现在随着网络技术的发展,企业在信息化建设中产生了大量为满足产品或服务需要的软件系统,如:ERP、CRM、OA、SCM等一系列IT软件系统。但这些系统一般都是单独实施、独立存在的,由于数据标准不统一,接口不一致,系统间往往缺少联系与合作,这也就导致了一个系统成为一个“孤岛”。而基于SOA的理念,则使企业在需要改变IT系统时的灵活性大为增加。
SOA架构定义了搭建企业软件架构的一种新方法,它的出现使所有应用在交换数据和处理过程中,不需要考虑应用软件是用什么编程语言开发的或在什么操作系统下运行。在这种模式下,一个应用或应用的一部分其实是一种服务,其他的应用和客户都可以在无需编写大量代码的情况下使用这些服务,这一切都使一些大企业或在地理上分布范围比较广的开发队伍能够更好地合作,因为这些SOA架构下的中间件业务模块都能够被重新配置或以新方式优化来满足新的需求。正是SOA的重用性和互操作性所带来的灵活性实现了企业IT资源整合,使企业IT资源真正面向于服务。
SOA作为一种概念虽然已经成熟,并得到了国内外主流软件开发商和企业客户的认可,目前主流软件厂商均已经完成了基于SOA的改造,但在客户端大规模的应用还有许多事情要做。首先,它包括一系列技术和规范,面临诸多挑战,尤其在项目开发初始,付出的代价要比传统软件项目大得多。其次,实现SOA的Web服务技术尚不成熟,标准还处在发展之中。目前,很多企业对于SOA的认识还仅限于一种“整合”IT技术的概念,人们对于SOA认识的误区还有很多。面向服务架构(SOA)的原则Webservice已经不再是新婚的娘子。众多企业都已经创建各种实验性WebServices项目,事实证明,这项新兴的分布式计算技术确实能够降低集成和开发的成本。另外,一些关键的WebSer
vices标准纷纷制定,强安全(robustsecurity)和管理方面的产品也陆续问世。对于志向远大的企业来说,他们已经在考虑下一步了。对大多数公司来说,下一步要考虑的不再是点对点的应用,而是Webservices在企业间以及业务伙伴间更为宽广的应用。这种技术的变迁需要更松散耦合、面向基于标准的服务的架构。这样一个架构要求对IT在组织中的角色有新的观点和认识,而不仅仅是一种实现方法。通过对业务的敏捷反应,企业可以得到实实在在的回报,而要达到这一点,面向服务架构设计师的角色非常关键。除此之外,潜在的回报更是不可胜数-分布计算技术能够保证对业务需求足够灵活的反应,而这种业务上的敏捷正是各公司梦寐以求而目前还遥不可及的。分布式计算将网络上分布的软件资源看作是各种服务。面向服务架构是一种不错的解决方案。但这种架构不是什么新思想;CORBA和DCOM就很类似,但是,这些过去的面向服务架构都受到一些难题的困扰:首先,它们是紧密耦合的,这就意味着如分布计算连接的两端都必须遵循同样API的约束。打比方说,如果一个COM对象的代码有了更改,那么访问该对象的代码也必须作出相应更改。其二,这些面向服务架构受到厂商的约束。Microsoft控制DCOM自不必说,CORBA也只是一个伪装的标准化努力,事实上,实现一个CORBA架构,经常都是在某个厂商对规范的实现上进行工作。Webservices是在改进DCOM和CORBA缺点上的努力。今天应用Webservices的面向服务架构与过去不同的特点就在于它们是基于标准以及松散耦合的。广泛接受的标准(如XML和SOAP)提供了在各不同厂商解决方案之间的交互性。而松散耦合将分布计算中的参与者隔离开来,交互两边某一方的改动并不会影响到另一方。这两者的结合意味着公司可以实现某些Webservices而不用对使用这些Webservices的客户端的知识有任何了解。我们将这种基于标准的、松散耦合的面向服务的架构简称为SOA。SOA的强大和灵活性将给企业带来巨大的好处。如果某组织将其IT架构抽象出来,将其功能以粗粒度的服务形式表示出来,每种服务都清晰地表示其业务价值,那么,这些服务的顾客(可能在公司内部,也可能是公司的某个业务伙伴)就可以得到这些服务,而不必考虑其后台实现的具体技术。更进一步,如果顾客能够发现并绑定可用的服务,那么在这些服务背后的IT系统能够提供更大的灵活性。
但是,要得到种强大和灵活性,需要有一种实现架构的新方法,这是一项艰巨的任务。企业架构设计师必须要变成“面向服务的架构设计师”,不仅要理解SOA,还要理解SOA的实践。在架构实践和最后得到的架构结果之间的区别非常微妙,也非常关键。本文将讨论SOA的实践,即:面向架构的设计师在构建SOA时必须要做的事情。SOA的原则SOA是一种企业架构,因此,它是从企业的需求开始的。但是,SOA和其它企业架构方法的不同之处在于SOA提供的业务敏捷性。业务敏捷性是指企业对变更快速和有效地进行响应、并且利用变更来得到竞争优势的能力。对架构设计师来说,创建一个业务敏捷的架构意味着创建这样一个IT架构,它可以满足当前还未知的业务需求。要满足这种业务敏捷性,SOA的实践必须遵循以下原则:*业务驱动服务,服务驱动技术从本质上说,在抽象层次上,服务位于业务和技术中间。面向服务的架构设计师一方面必须理解在业务需求和可以提供的服务之间的动态关系,另一方面,同样要理解服务与提供这些服务的底层技术之间的关系。*业务敏捷是基本的业务需求SOA考虑的是下一个抽象层次:提供响应变化需求的能力是新的“元需求”,而不是处理一些业务上的固定不变的需求。从硬件系统而上的整个架构都必须满足业务敏捷的需求,因为,在SOA中任何的瓶颈都会影响到整个IT环境的灵活性。*一个成功的SOA总在变化之中SOA工作的场景,更象是一个活的生物体,而不是象传统所说的“盖一栋房子”。IT环境唯一不变的就是变化,因此面向服务架构设计师的工作永远不会结束。对于习惯于盖房子的设计师来说,要转向设计一个活的生物体要求崭新的思维方式。如下文所写的,SOA的基础还是一些类似的架构准则。SOA基础在IT行业有两个越来越普遍的发展方向,一个是架构方面的,一个是方法学方面的,面向服务的架构设计师可以从中有所收获。第一个就是MDA(模型驱动架构),由提出CORBA的OMG模型提出。MDA认为架构设计师首先要对待创建的系统有一个形式化的UML(也是由OMG提出)的模型。MDA首先给出一个平台无关的模型来表示系统的功能需求和usecases,根据系统搭建的平台,架构设计师可以由这个平台无关的模型得到平台相关的模型,这些平台相关模型足够详细,以至于可以用来直接生成需要的代码。MDA的核心就在于在设计阶段系统就已经完全描述,这样,在创建系统的时候,几乎就没有错误解释的可能,模型也就可以直接生成代码。但MDA有一些局限性:首先,MDA假设在创建模型之前,业务需求已经全部描述,而这一点,在当前典型的动态业务环境中几乎是不可能的。第二,MDA没有一个反馈机制。如果开发人员对模型有需要改动的地方,并没有提供给他们这么一个途径。SOA的另一个基础是敏捷方法(AM),其中非常有名的方法是极限编程(XP)。象XP这样的AM提供了在需求未知或者多变的环境中创建软件系统的过程。XP要求在开发团队中要有一个用户代表,他帮助书写测试来指导开发人员的日常工作。开发团队中的所有成员都参与到设计之中,并且设计要尽量小并且非形式化。AM的目标是仅仅创建用户想要的,而不是在一些形式化模型上耗费工作量。AM的核心思想就在于其敏捷性-处理需求变更的敏捷性。AM的主要弱点是其规模上的限制,例如,XP在一个小团队和中型项目中效果不错,但是当项目规模增大时,如果没有一个一致的清晰的计划,项目成员很难把握项目中的方方面面。从表面看来,MDA和AM似乎是相对立的-MDA假定需求是固定的,而AM恰恰相反。MDA的中心是形式化的模型,而AM恰恰要避开它们。但是,我们还是决定冒险把这些不同方法中的一些元素提取出来,放入到一个一致的架构实践中。在SOA中有三个抽象层次,按照SOA的第一条准则:业务驱动服务、服务驱动技术。AM将业务模型直接和实践连接起来,表现在平台相关的模型之中。MDA并没有把业务模型和平台无关模型分开来,而是把平台无关模型做为起点。SOA必须连接这些模型,或者说抽象层次,得到单一的架构方法。我们将从五个视图的架构实现方法来实现这个连接。SOA的五视图实现方法企业架构设计师发现他们的职业非常有竞争力并且值得骄傲,因为他们要从很多方面来通盘考虑IT系统。Kruchten(RUP的开发负责人)将这些方面提取出来,在应用到SOA时,我们称为五视图实现方法(five-viewapproach)。四个方框表示对一个架构的不同审视方法,分别代表不同的涉众(stakeholder)。弟五个视图,use-case视图涵盖了其它视图,在架构中扮演的是一个特殊的角色。部署视图将软件映射到底层平台和相关硬件上,是系统部署人员对架构的视图;实现视图描述了软件代码的组织,是从开发人员角度出发的视图;业务分析人员则利用过程视图进行工作,它描述的是软件系统的运行时特性。最后,逻辑视图表示的是用户的功能需求。在SOA中,面向服务的架构必须能够以use-case视图中的用例将用户连接到服务,将服务连接到底层的技术。为了表示面向对象的架构是如何工作在这些视图之上,让我们将他们置于SOA元模型的上下文之中。SOA中两个领域存在重叠:由业务模型和服务模型表示的业务领域和由服务模型及平台相关模型表示的技术领域(两个领域共享服务模型)。业务用户通过逻辑视图和过程视图处理粗粒度的业务服务,根据变化的业务需求,按照需要将它们安排在过程之中。另一方面,技术专家的工作是创建并维护服务和地层技术之间的抽象层。表示这些服务的中间模型,起到的是轴心的作用,业务以它为中心进行。SOA元模型从MDA中继承平台无关模型和平台相关模型,但是添加了AM和用户交互以及敏捷的反馈这两部分,后者通过椭圆之间的双向箭头来表现。类似地,元模型通过引入由中心的服务模型提供的中间层抽象解决了AM在伸缩性方面的问题。这样,服务模型中的任何需求的变化,都会反映到用户每天的业务处理中。同样,由于底层技术是模型驱动的,技术专家也可以根据这些变化的需求迅速而有效地作出应变。SOA实践和过去解决企业架构传统方式的不同之处就在于其对敏捷性的支持。如前所说,SOA的第三条原则就在于它总在变化之中。这种恒在的变化性环境是SOA实践的基石。如图所示,涉众(stakeholders,译者注:RUP中也有这个词,表示软件开发中涉及到的各种角色如:用户、设计人员、开发人员乃至测试人员等等。)在一个必需的基础上影响到整个架构的变化。在当技术专家在每天的日常工作中不断对变化的业务需求作出响应的这种情况下,设计阶段和运行阶段之间的界限变得模糊起来,很难清晰地分离这两个阶段。剩下的部分我们已经为面向服务的架构提供了一个高层次的框架,其中MDA和AM的元素帮助工具的使用者来创建和维护SOA。但是,SOA中还缺少一些内容-那就是软件开发商和专业的服务组织必需提供的。理想情况下,开发商必需提供面向服务的业务流程、工作流以及服务的协调工具和服务;另外,能够以一种敏捷的、平台无关的方式充分反映业务服务的建模工具也是必须的;技术专家必须配备可以从模型中自动生成代码,并在代码变化时更新模型的工具,最后,开发商必须提供支持SOA的软件,帮助面向服务的架构设计师以一种可信并且可伸缩的方式创建位于服务和底层技术之间的抽象层次。幸运的是,这方面的产品即将上市。另外,最重要的就是贯穿本文的自顶而下的SOA实现方法了。今天关于Webservices的大部分思考都是自底而上的:“这是如何创建Webservices的方法,现在,我们来使用它们集成吧”,对Webservices技术的这种方法是伟大的第一步,因为它可以惊人地降低集成的开销,这是现在的技术管理人员最乐意见到的了。但当经济进一步发展,IT走出低谷,企业会寻求IT的帮助来提高组织战略意义上的核心价值。使用面向服务的架构,IT可以提供给企业实现业务敏捷性的这样一个框架。附录资料:不需要的可以自行删除怎样提高电脑系统运行速度HYPERLINK""WindowsXP的启动速度比Windows2000要快30%左右,但相对于Windows98仍然要慢了不少,不过,我们可以通过优化设置,来大大提高WindowsXP的启动速度。加快系统启动速度主要有以下方法:尽量减少系统在启动时加载的程序与服务;对磁盘及CPU等硬件进行优化设置;修改默认设置,减少启动等待时间等。这些方法大部分既可减少系统启动的时间,又可以节省系统资源,加快电脑运行速度。1.加快系统启动速度WindowsXP的启动速度比Windows2000要快30%左右,但相对于Windows98仍然要慢了不少,不过,我们可以通过优化设置,来大大提高WindowsXP的启动速度。加快系统启动速度主要有以下方法:尽量减少系统在启动时加载的程序与服务;对磁盘及CPU等硬件进行优化设置;修改默认设置,减少启动等待时间等。这些方法大部分既可减少系统启动的时间,又可以节省系统资源,加快电脑运行速度。(1)MsconfigWindowsXP的启动速度在系统安装初期还比较快,但随着安装的软件不断增多,系统的启动速度会越来越慢,这是由于许多软件把自己加在了启动程序中,这样开机即需运行,大大降低了启动速度,而且也占用了大量的系统资源。对于这样一些程序,我们可以通过系统配置实用程序Msconfig将它们从启动组中排除出去。选择“开始”菜单中的“运行”命令,在“运行”对话框中键入“Msconfig”,回车后会弹出“系统配置实用程序”对话框,选择其中的“启动”选项卡(如图1),该选项卡中列出了系统启动时加载的项目及来源,仔细查看每个项目是否需要自动加载,否则清除项目前的复选框,加载的项目越少,启动的速度就越快。设置完成后需要重新启动方能生效。(2)BootvisBootvis是微软提供的一个启动优化工具,可提高WindowsXP的启动速度。用BootVis提升WindowsXP的启动速度必须按照正确的顺序进行操作,否则将不会起到提速的效果。其正确的操作方法如下:启动Bootvis,从其主窗口(如图2)中选择“工具”菜单下的“选项”命令,在“符号路径”处键入Bootvis的安装路径,如“C:\ProgramFiles\Bootvis”,单击“保存”退出。从“跟踪”菜单中选择“下次引导”命令,会弹出“重复跟踪”对话框,单击“确定”按钮,BootVis将引导WindowsXP重新启动,默认的重新启动时间是10秒。系统重新启动后,BootVis自动开始运行并记录启动进程,生成启动进程的相关BIN文件,并把这个记录文件自动命名为TRACE_BOOT_1_1。程序记录完启动进程文件后,会重新启动BootVis主界面,在“文件”菜单中选择刚刚生成的启动进程文件“TRACE_BOOT_1_1”。窗口中即会出现“CPU>使用”、“磁盘I/O”、“磁盘使用”、“驱动程序延迟”等几项具体图例供我们分析,不过最好还是让BootVis程序来自动进行分析:从“跟踪”菜单中选择“系统优化”命令,程序会再次重新启动计算机,并分析启动进程文件,从而使计算机启动得更快。(3)禁用多余的服务WindowsXP在启动时会有众多程序或服务被调入到系统的内存中,它们往往用来控制Windows系统的硬件设备、内存、文件管理或者其他重要的系统功能。但这些服务有很多对我们用途不大甚至根本没有用,它们的存在会占用内存和系统资源,所以应该将它们禁用,这样最多可以节省70MB的内存空间,系统速度自然也会有很大的提高。选择“开始”菜单中的“运行”命令,在“运行”对话框键入“services.msc”后回车,即可打开“服务”窗口。窗口的服务列表中列出了系统提供的所有服务的名称、状态及启动类型。要修改某个服务,可从列表双击它,会弹出它的属性对话框(如图3),你可从“常规”选项卡对服务进行修改,通过单击“启动”、“停止”、“暂停”、“恢复”四个按钮来修改服务的状态,并可从“启动类型”下拉列表中修改启动类型,启动类型有“自动”、“手动”、“已禁用”三种。如果要禁止某个服务在启动自动加载,可将其启动类型改为“已禁用”。WindowsXP提供的所有服务有36个默认是自动启动的,实际上,其中只有8个是必须保留的(见下表),其他的则可根据自己的需要进行设置,每种服务的作用在软件中有提示。4)修改注册表来减少预读取,减少进度条等待时间WindowsXP在启动过程中会出现一个进度条,我们可以通过修改注册表,让进度条只跑一圈就进入登录画面。选择“开始”菜单中的“运行”命令,在“运行”对话框键入“regedit”命令后回车,即可启动注册表编辑器,在注册表中找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters,选择其下的EnablePrefetcher键,把它的键值改为“1”即可。(5)减少开机磁盘扫描等待时间当Windows日志中记录有非正常关机、死机引起的重新启动,系统就会自动在启动的时候运行磁盘扫描程序。在默认情况下,扫描每个分区前会等待10秒钟,如果每个分区都要等上10秒才能开始进行扫描,再加上扫描本身需要的时间,会耗费相当长的时间才能完成启动过程。对于这种情况我们可以设置取消磁盘扫描的等待时间,甚至禁止对某个磁盘分区进行扫描。选择“开始→运行”,在运行对话框中键入“chkntfs/t:0”,即可将磁盘扫描等待时间设置为0;如果要在计算机启动时忽略扫描某个分区,比如C盘,可以输入“chkntfs/xc:”命令;如果要恢复对C盘的扫描,可使用“chkntfs/dc:”命令,即可还原所有chkntfs默认设置,除了自动文件检查的倒计时之外。2.提高系统运行速度提升系统运行速度的思路与加快启动的速度类似:尽量优化软硬件设置,减轻系统负担。以下是一些常用的优化手段。(1)设置处理器二级缓存容量WindowsXP无法自动检测处理器的二级缓存容量,需要我们自己在注册表中手动设置,首先打开注册表,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”,选择其下的“SecondLevelDataCache”,根据自己所用的处理器设置即可,例如PIIICoppermine/P4Willamette是“256”,AthlonXP是“384”,P4Northwood是“512”。(2)提升系统缓存同样也是在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”位置,把其下的“LargeSystemCache”键值从0改为1,WindowsXP就会把除了4M之外的系统内存全部分配到文件系统缓存中,这样XP的内核能够在内存中运行,大大提高系统速度。通常来说,该优化会使系统性能得到相当的提升,但也有可能会使某些应用程序性能降低。需要注意的是必须有256M以上的内存,激活LargeSystemCache才可起到正面的作用,否则不要轻易改动它。(3)改进输入/输出性能这个优化能够提升系统进行大容量文件传输时的性能,不过这只对服务器用户才有实在意义。我们可在中新建一个DWORD(双字节值)键值,命名为IOPageLockLimit。一般情况下把数据设置8~16MB之间性能最好,要记住这个值是用字节来计算的,例如你要分配10MB的话,就是10×?1024×1024,也就是10485760。这里的优化也需要你的机器拥有大于256M的内存。(4)禁用内存页面调度在正常情况下,XP会把内存中的片断写入硬盘,我们可以阻止它这样做,让数据保留在内存中,从而提升系统性能。在注册表中找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”下的“DisablePagingExecutive”键,把它的值从0改为1即可禁止内存页面调度了。(5)关闭自动重新启动功能当WindowsXP遇到严重问题时便会突然重新开机,可从注册表将此功能取消。打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\”将AutoReboot键的Dword值更改为0,重新启动后设置即可生效。(6)改变视觉效果WindowsXP在默认情况下启用了几乎所有的视觉效果,如淡入淡出、在菜单下显示阴影。这些视觉效果虽然漂亮,但对系统性能会有一定的影响,有时甚至造成应用软件在运行时出现停顿。一般情况下建议少用或者取消这些视觉效果。选择桌面上“我的电脑”图标,单击鼠标右键,在弹出的快捷菜单中选择“属性”命令,打开“系统属性”对话框。选择“高级”选项卡,在其中的“性能”栏中单击“设置”按钮,会弹出“性能选项”对话框(如图4),可选择“调整为最佳性能”单选框来关闭所有的视觉效果,也可选择“自定义”然后选择自己需要的视觉效果。(7)合理设置页面虚拟内存同样也是在“性能选项”对话框中,选择“高级”选项卡,在其中的“虚拟内存”栏中单击“更改”按钮,接下来选择虚拟内存为“自定义大小”,然后设置其数值。一般情况下,把虚拟设为不小于256M,不大于382M比较合适,而且最大值和最小值最好一样。(8)修改外观方案WindowsXP默认的外观方案虽然漂亮,但对系统资源的占用也多,可将其改为经典外观以获得更好的性能。在桌面空白位置单击鼠标右键,从弹出的快捷菜单中选择“属性”命令,会打开“显示属性”对话框,在“主题”选项卡选择主题为“Windows经典”,即可将外观修改为更为经济的Windows经典外观。(9)取消XP对ZIP支持WindowsXP在默认情况下打开了对zip文件支持,这要占用一定的系统资源,可选择“开始→运行”,在“运行”对话框中键入“regsvr32/uzipfldr.dll”,回车确认即可取消XP对ZIP解压缩的支持,从而节省系统资源。(10)关闭Dr.WatsonDr.Watson是WindowsXP的一个崩溃分析工具,它会在应用程序崩溃的时候自动弹出,并且在默认情况下,它会将与出错有关的内存保存为DUMP文件以供程序员分析。不过,记录DUMP文件对普通用户则毫无帮助,反而会带来很大的不便:由于Dr.Watson在应用程序崩溃时会对内存进行DUMP记录,将出现长时间硬盘读写操作,要很长一断时间程序才能关闭,并且DUMP文件还会占用大量磁盘空间。要关闭Dr.Watson可打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug”分支,双击其下的Auto键值名称,将其“数值数据”改为0,最后按F5刷新使设置生效,这样就取消它的运行了。同样,我们可以把所有具备调试功能的选项取消,比如蓝屏时出现的memory.dmp,可在“系统属性”对话框中选择“高级”选项卡,单击“启动和故障恢复”栏中的“设置”按钮,并在弹出的“启动和故障恢复”对话框中选择“写入调试信息”为“无”(如图5)。(11)启动硬盘/光驱DMA模式打开“系统属性”对话框,选择“硬件”选择卡中的“设备管理器”按钮,打开“设备管理器”窗口,在设备列表中选择“IDEATA/ATAPI控制器”,双击“主要IDE通道”或“次要IDE通过”,在其属性对话框的“高级设置”选项卡中检查DMA模式是否已启动,一般来说如果设备支持,系统就会自动打开DMA功能,如果没有打开可将“传输模式”设为“DMA(若可用)”。(12)关掉不用的设备WindowsXP总是尽可能为电脑的所有设备安装驱动程序并进行管理,这不仅会减慢系统启动的速度,同时也造成了系统资源的大量占用。针对这一情况,你可在设备管理器中,将PCMCIA卡、调制解调器、红外线设备、打印机端口(LPT1)或者串口(COM1)等不常用的设备停用,方法是双击要停用的设备,在其属性对话框中的“常规”选项卡中选择“不要使用这个设备(停用)”。在重新启动设置即可生效,当需要使用这些设备时再从设备管理器中启用它们。(13)关闭错误报告当应用程序出错时,会弹出发送错误报告的窗口,其实这样的错误报告对普通用户而言几乎没有任何意义,关闭它是明智的选择。在“系统属性”对话框中选择“高级”选项卡,单击“错误报告”按钮,在弹出的“错误汇报”对话框中,选择“禁用错误汇报”单选项,最后单击“确定”即可。另外我们也可以从组策略中关闭错误报告:从“运行”中键入“gpedit.msc”,运行“组策略编辑器”,展开“计算机配置→管理模板→系统→错误报告功能”,双击右边设置栏中的“报告错误”,在弹出的“属性”对话框中选择“已禁用”单选框即可将“报告错误”禁用。(14)关闭自动更新“自动更新”功能对许多WindowsXP用户而言并不是必需的,可将其关闭以节省系统资源。在“我的电脑”上单击鼠标右键,从快捷菜单中选择“属性”命令,选择“系统属性”对话框中的“自动更新”选项卡,勾选“关闭自动更新,我将手动更新计算机”单选框,单击“确定”按钮即可关闭自动更新功能。如果在“服务”已经将“AutomaticUpdates”服务关闭,“系统属性”对话框中的“自动更新”选项卡就不能进行任何设置了。(15)去掉菜单延迟去掉菜单弹出时的延迟,可以在一定程度上加快XP。要修改的键值位置在“HKEY_CURRENT_USER\ControlPanel\Desktop”。修改其下的“MenuShowDelay”键,把默认的400修改为0,按F5刷新注册表即可生效。(16)清除预读文件WindowsXP的预读设置虽然可以提高系统速度,但是使用一段时间后,预读文件夹里的文件数量会变得相当庞大,导致系统搜索花费的时间变长。而且有些应用程序会产生死链接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年蒙城县社区工作者招聘考试参考题库及答案解析
- 2026年象山县医疗事业单位人员招聘笔试备考题库及答案解析
- 2026年巴里坤哈萨克自治县中小学幼儿园教师招聘考试模拟试题及答案解析
- 2026年依安县带编教师招聘笔试备考题库及答案解析
- 2026年阳信县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年夏县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年山阳县医疗事业单位人员招聘考试备考题库及答案解析
- 2026年泽普县中小学幼儿园教师招聘考试备考题库及答案解析
- 2026年鸡东县医疗事业单位人员招聘考试模拟试题及答案解析
- 2026年临沭县医疗事业单位人员招聘考试参考题库及答案解析
- 2026年武胜县社区工作者招聘笔试模拟试题及答案解析
- 从大模型到Agent:AI+金融进入智能体时代
- 2026秋小学湘美版美术一年级上册(新教材)教学计划附教学进度表
- 2026新版五上道德与法治第三单元教学设计详案(含教学反思)
- 边检专业真题试卷含答案
- 2026秋季开学教师大会政教(德育)副校长讲话:立德树人守初心笃行实干启新程
- 二年级综合实践活动课件与好习惯交朋友
- 2026年种子质量检验站考试真题及答案
- 招聘5人!海北藏族自治州应急管理局公开招聘煤矿专职技术检查员考试备考试题及答案详解
- 2026年秋季大学开学第一课:学术诚信与规范
- 2026-2027学年苏教版新教材小学数学三年级上册教学计划及进度表
评论
0/150
提交评论