1、软考信息系统信息系统项目管理工程师考试知识点资料知识点知识点SaasSaaS是Software-as-a-service(软件即服务)的简称,是随着互联网技术的发展和应用软件的成熟,而在21世纪开始兴起的一种完全创新的软件应用模式。它与“on-demand software”(按需软件),the application service provider(ASP,应用服务提供商),hosted software(托管软件)所具有相似的含义。它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的
2、服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其定购的软件和服务。对于许多小型企业来说,SaaS是采用先进技术的最好途径,它消除了企业购买、构建和维护基础设施和应用程序的需要。 在这种模式下,客户不再象传统模式那样花费大量投资用于硬件、软件、人员,而只需要支出一定的租赁服务费用,通过互联网便可以享受到相应的硬件、软件和维护服务,享有软件使用权和不断升
3、级,这是网络应用最具效益的营运模式。 Piece2、SaaS的特征 SaaS服务模式与传统的销售软件永久许可证的方式有很大的不同,她是未来管理软件的发展趋势,相比较传统服务方式而言SaaS具有很多独特的特征: SaaS不仅减少了或取消了传统的软件授权费用,而且厂商将应用软件部署在统一的服务器上,免除了最终用户的服务器硬件、网络安全设备和软件升级维护的支出,客户不需要除了个人电脑和互联网连接之外的其它IT投资就可以通过互联网获得所需要软件和服务。此外,大量的新技术,如Web Service,提供了更简单、更灵活、更实用的SaaS。 另外,SaaS供应商通常是按照客户所租用的软件模块来进行收费的,
4、因此用户可以根据需求按需订购软件应用服务,而且SaaS的供应商会负责系统的部署、升级和维护。而传统管理软件通常是买家需要一次支付一笔可观的费用才能正式启动。 SaaS将会有很大的发展。Think战略调研机构的最新调查结果显示,有三分之一的人有打算要在2006年使用SaaS。既然得到了这么多人的接受,SaaS已成为软件产业的一个重要力量。只要SaaS的品质和可信度能继续得到证实,它的魅力就不会消退。 SaaS不仅适用于中小型企业,所有规模的企业都会从SaaS中获利。新一代的SaaS能够使用户在小范围的实施中测试应用程序的可靠性和适用性。 SaaS不仅适用于CRM,而且正在慢慢的用于处理几乎每个管
5、理软件的需求。 Piece3、SaaS模式与传统购买传统软件永久许可模式的区别 ERP这样的企业应用软件,软件的部署和实施比软件本身的功能、性能更为重要,万一部署失败,那所有的投入几乎全部白费,这样的风险是每个企业用户都希望避免的。通常的ERP、CRM项目的部署周期至少需要一两年甚至更久的时间,而SaaS模式的软件项目部署最多也不会超过90天,而且用户无需在软件许可证和硬件方面进行投资。传统软件在使用方式上受空间和地点的限制,必须在固定的设备上使用,而SaaS模式的软件项目可以在任何可接入Internet的地方与时间使用。相对于传统软件而言SaaS模式在软件的升级、服务、数据安全传输等各个方面
6、都有很大的优势。 Piece4、SaaS模式的发展趋势 SaaS模式正在成为应用软件市场令人兴奋的发展趋势。IDC的研究报告表明,在2004年,以SaaS方式发布的软件已经达到42亿美元的销售额。在未来5年内,该数字将以26%的年度复合增长率持续增长,到2008年整个市场规模将达到72亿美元。 在欧美等IT业发达地区,用户已经开始对SaaS模式给予了高度的认同,并已经取得良好发展。AMR Research公司在2005年11月发表的一份针对美国地区用户的调查报告显示,在美国的各主要垂直行业和不同规模企业中,超过78%的企业目前使用或考虑使用SaaS服务。只有18%的企业暂时没有使用SaaS的计
7、划。 软件服务化(SaaS)虽然在中国还是个刚刚兴起的新生事物,但是由于国内具有非常良好的生长土壤,目前备受业界的关注。据统计我国约有1200万家中小企业,这是一个数量非常庞大的软件服务化(SaaS)消费群体。我国的中小企业由于受到IT预算少、缺乏专业的技术支持人员、决策时间长等问题的困扰,企业的信息化普及率一直不高。而另一方面,中小企业灵活多变、发展迅速等特点,又急需专业的IT系统和服务来帮助其提高工作效率、提升管理质量、降低运营成本,以增强其核心竞争能力。软件服务化(SaaS)正是解决这些矛盾的最佳途径,用户可以根据自己的应用需要从服务提供商那里定购相应的应用软件服务,并且可以根据企业发展
8、的变化来调整所使用的服务内容,具有很强的伸缩性和扩展性,同时这些应用服务所需要的的专业维护与技术支持也都是由服务商的专业人员来承担。 在客户通过软件服务化(SaaS)获得巨大收益的同时,对于软件厂商而言就变成了巨大的潜在市场。因为以前那些因为无法承担软件许可费用或者是没有能力配置专业人员的用户,都变成了潜在的客户。同时,软件服务化模式还可以帮助厂商增强差异化的竞争优势,降低开发成本和维护成本,加快产品或服务进入市场的节奏,有效降低营销成本,改变自身的收入模式,改善与客户之间的关系。 软件服务化(SaaS)无论是对客户还是对厂商而言,都具有强大的吸引力,将会给客户和厂商之间带来双赢的大好局面。
9、Piece5、SaaS的客户价值 SaaS服务提供商为中小企业搭建信息化所需要的所有网络基础设施及软件、硬件运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购买软硬件、建设机房、招聘IT人员,只需前期支付一次性的项目实施费和定期的软件租赁服务费,即可通过互联网享用信息系统。服务提供商通过有效的技术措施,可以保证每家企业数据的安全性和保密性。企业采用SaaS服务模式在效果上与企业自建信息系统基本没有区别,但节省了大量用于购买IT产品、技术和维护运行的资金,且像打开自来水龙头就能用水一样,方便地利用信息化系统,从而大幅度降低了中小企业信息化的门槛与风险。具体来说saas可以为客户带
10、来如下的价值: a) 服务的收费方式风险小,灵活选择模块,备份,维护,安全,升级 b) 让客户更专注核心业务 c) 灵活启用和暂停,随时随地都可使用 d) 按需定购,选择更加自由 e) 产品更新速度加快 f) 市场空间增大 g) 实现年息式的循环收入模式 h) 有效降低营销成本 i) 准面对面使用指导 j) 在全球各地,7*24全天候网络服务 k) 不需要额外增加专业的IT人员 l) 大大降低客户的总体拥有成本 SaaS模式搅局中国软件产业 SaaS(软件即服务)已经为越来越多的中小企业所熟知,通过租赁的方式享受软件服务,对许多中小企业来说是应用先进技术的最好途径。它不仅降低了企业的软件服务拥
11、有成本,缩短了信息化建设周期,还大大减少了中小企业的运维成本。SaaS的出现彻底颠覆了传统软件的运营模式。 SaaS六大表现 搅局中国软件产业 SaaS的出现让本就百家争鸣的中国软件产业又添新军,SaaS的运营模式、价格优势、服务方式让传统软件模式为之一震,SaaS何以“搅局”中国软件产业,主要表现在: 1、SaaS对传统软件带来价格冲击。 SaaS改传统软件的买Licence为租用服务,让企业的拥有成本降到最低。拿中小企业用的比较多的 “进销存”软件来说,传统软件下,五个人使用的一套进销存软件需要壹万元以上,而一些基于SaaS模式的在线“进销存”只需两千多元,大大降低了中小企业信息化的实施门
12、槛。 最近,以在线租用CRM的而名声鹊起XToolsCRM更是把CRM的价格进行到底,五用户一年的CRM租用价格低于千元,让业界惊呼“传统CRM何去何从”。 2、颠覆传统软件交付模式。 在SaaS的领域中,客户已看不到软件的影子,变成了100%的服务。软件供应商与客户的关系发生了彻底的转变:从售卖关系转变为服务关系,SaaS彻底革了传统软件交付模式的命,改变了人们对买软件的认识。 3、“先试后买”降低了信息化实施风险。 SaaS让软件供应商与客户之间的沟通更加透明,在保证价格和功能公开公正的同时,为潜在用户提供“先试后买”的消费体验,在实施之前先使用,让用户提前评估使用后的效果,大大降低了企业
13、信息化的实施风险。这在传统软件中简直难以想象。 4、促进软件与互联网融合。 2007年刚刚开始,阿里巴巴就宣布进军软件行业,要通过SaaS的模式提供软件服务。不仅有越来越多的软件企业开始通过互联网提供软件服务,同时越来越多的互联网也加入到了SaaS服务中来,加速了软件与互联网的融合。互联网给企业带来的不仅仅是发布和收集信息的窗口,更为企业的数据管理和信息应用提供了丰富的信息资源。通过SaaS把这些信息管理起来,成就了互联网和软件的融合。 5、Ajax把互联网技术引入软件。 Ajax(Asynchronous JavaScript and XML)结合了Java、XML以及JavaScript等
14、编程技术,可以让开发人员构建基于Java技术的Web应用,并打破了使用页面重载的惯例。让用户享受SaaS应用服务的同时可以实现页面的局部刷新,使用基于浏览器的B/S软件像象使用传统的C/S软件一样习惯、流畅。像Ajax这样的应用正不断透过SaaS使用到软件行业中来。 6、普及软件思想,促进整个市场发展。 有人说SaaS对于传统软件来说是洪水猛兽,但笔者认为不然。在线租用模式可以使整个企业信息化的门槛降到最低,让那些高不可攀的信息化应用成为可能,SaaS还可以让那些不知道什么是CRM,不知道什么是ERP的企业主能够试用、并切实了解到信息化的好处和作用,使信息化的普及成为可能。很多实例证明,Saa
15、S服务商在推广SaaS应用的同时,也帮助了传统软件的应用和推广。 SaaS为中国信息化带来收获 SaaS在颠覆传统软件运营模式的同时,也为中国信息化建设带来了意外收获: 1、通过SaaS政府服务中小企业信息化服务实现落地。 近些年来,政府服务中小企业信息化建设的决心越来越大,但是苦于找不到合适的方法和措施,使政府的重视与企业的需求之间无法实现顺利对接。SaaS的出现成功解决了政府服务中小企业信息化的落地。去年,为推动北京市商业的发展,促进中小企业的信息化水平的提升,北京市科委开展了基于ASP(应用服务提供)模式的中小企业信息化示范工程。该项工作通过组织实施企业联盟搭建了信息化公共平台,为北京中
16、小企业(特别是商业中小企业)引入了“低成本、快实现”的信息化解决方案。 2、没有软件只有服务,SaaS让盗版无版可盗。 SaaS没有软件只有服务,用户只为服务付费。软件则沦为SaaS服务商的少量需求,没有了大量的软件需求市场,盗版软件便没有了生存的根本。同时SaaS服务通过互联网升级和正版认证,也让盗版无版可盗。 越来越多低使用成本的SaaS应用逐渐覆盖了传统Licence模式的软件,也让盗版市场无利可图。Google在2006年发布了自己的在线Office,正式发起对微软Office的挑战,相信随着SaaS的发展在线OS、在线播放器、在线IM、在线OA等软件应用将越来越多,低廉的使用价格将让
17、盗版无处生存。 3、使用软件无需额外付费。 传统企业软件应用中,客户所要购买的其实是软件的功能,但是却不得不为软件而配备了硬件、维护人员甚至是专门的IT部门,并且极有可能会陷入软件升级的陷阱无法自拔。但是SaaS的方式降低软件应用门槛,且无需额外支出任何费用。面向服务的构架 (SOA)来自ITwiki,开放的信息技术大百科Jump to: navigation, <jumptoSearch>面向服务的体系结构(Service-Oriented Architecture,SOA,也叫面向服务架构)是 指为了解决在Internet环境下业务集成的需要,通过连接能完成特定任务的独立功能实
18、体实现的一种软件系统架构。 SOA是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。 从计算模型上讲,软件服务是SOC/SOA的基本实体,较对象、构件又有了新的发展,具有较高的抽象级别、更大的粒度与更强的独立性与可用性,更加便于使用者直接使用。在此基础上,基于软件服务的SOC/SOA借助了开放的社会系统中较为成熟的基于服务的松耦合运营模式的理念,以服务为基本单元封装各类网络资源,以服务集成为基
19、本手段提供开放环境下的资源共享与集成的高层次抽象模型,以服务交互和协同为基本支撑,提供松耦合的计算模型。 传统的Web(HTML/HTTP)技术有效的解决了人与信息系统的交互和沟通问题,极大的促进了B2C模式的发展。WEB服务(XML/SOAP/WSDL)技术则是要有效的解决信息系统之间的交互和沟通问题,促进B2B/EAI/CB2C的发展。SOA则是采用面向服务的商业建模技术和WEB服务技术,实现系统之间的松耦合,实现系统之间的整合与协同。WEB服务和SOA的本质思路在于使得信息系统个体在能够沟通的基础上形成协同工作。 对于面向同步和异步应用的,基于请求/响应模式的分布式计算来说,SOA是一场
20、革命。一个应用程序的业务逻辑(Business Logic)或某些单独的功能被模块化并作为服务呈现给消费者或客户端。这些服务的关键是他们的松耦合特性。例如,服务的接口和实现相独立。应用开发人员或者系统集成者可以通过组合一个或多个服务来构建应用,而无须理解服务的底层实现。举例来说,一个服务可以用.NET或J2EE来实现,而使用该服务的应用程序可以在不同的平台之上,使用的语言也可以不同。SOA的生命周期SOA的生命周期由于SOA涉及到业务的诸多方面,因此需要从一开始就对SOA项目进行细心的规划和设计。需要考虑项目的整个生命周期,从最初的阶段到第一个实现,再一直到可能的修订和重用。 现在让我们看看S
21、OA 生命周期,如图中所示。此部分概略说明了在生命周期的各个阶段发生的事项,并详细介绍了实现生命周期的各个步骤。 建模 组装 部署 管理 控制 SOA具有的特性SOA服务具有平台独立的自我描述XML文档。Web服务描述语言(WSDL, Web Services Description Language)是用于描述服务的标准语言。 SOA 服务用消息进行通信,该消息通常使用XML Schema来定义(也叫做XSD, XML Schema Definition)。消费者和提供者或消费者和服务之间的通信多见于不知道提供者的环境中。服务间的通讯也可以看作企业内部处理的关键商业文档。 在一个企业内部,S
22、OA服务通过一个扮演目录列表(Directory listing)角色的登记处(Registry)来进行维护。应用程序在登记处(Registry)寻找并调用某项服务。统一描述,定义和集成(UDDI, UniverSAl Description, Definition, and Integration)是服务登记的标准。 每项SOA服务都有一个与之相关的服务品质(QoS, Quality of Service)。QoS的一些关键元素有安全需求(例如认证和授权),可靠通信(译注:可靠消息是指,确保消息“仅且仅仅”发送一次,从而过滤重复信息。),以及谁能调用服务的策略。 SOA三大基本特征独立的功能
23、实体在Internet这样松散的使用环境中,任何访问请求都有可能出错,因此任何企图通过Internet进行控制的结构都会面临严重的稳定性问题。SOA非常强调架构中提供服务的功能实体的完全独立自主的能力。传统的组件技术,如.NET Remoting,EJB,COM或者CORBA,都需要有一个宿主(Host或者Server)来存放和管理这些功能实体;当这些宿主运行结束时这些组件的寿命也随之结束。这样当宿主本身或者其它功能部分出现问题的时候,在该宿主上运行的其它应用服务就会受到影响。 SOA架构中非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的技术,比如事务处理(Transaction),消
24、息队列(Message Queue),冗余部署(Redundant Deployment)和集群系统(Cluster)在SOA中都起到至关重要的作用。 大数据量低频率访问对于.NET Remoting,EJB或者XML-RPC这些传统的分布式计算模型而言,他们的服务提供都是通过函数调用的方式进行的,一个功能的完成往往需要通过客户端和服务器来回很多次函数调用才能完成。在Intranet的环境下,这些调用给系统的响应速度和稳定性带来的影响都可以忽略不计,但是在 Internet环境下这些因素往往是决定整个系统是否能正常工作的一个关键决定因素。因此SOA系统推荐采用大数据量的方式一次性进行信息交换。
25、 基于文本的消息传递由于Internet中大量异构系统的存在决定了SOA系统必须采用基于文本而非二进制的消息传递方式。在COM、CORBA这些传统的组件模型中,从服务器端传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来完成某些功能;但是在Internet环境下,不同语言,不同平台对数据、甚至是一些基本数据类型定义不同,给不同的服务之间传递对象带来的很大困难。由于基于文本的消息本身是不包含任何处理逻辑和数据类型的,因此服务间只传递文本,对数据的处理依赖于接收端的方式可以帮忙绕过兼容性这个的大泥坑。 此外,对于一个服务来说,Internet与局域网最大的一个区别就是在Inter
26、net上的版本管理极其困难,传统软件采用的升级方式在这种松散的分布式环境中几乎无法进行。采用基于文本的消息传递方式,数据处理端可以只选择性的处理自己理解的那部分数据,而忽略其它的数据,从而得到的非常理想的兼容性。 编辑面向服务架构(SOA)的原则SOA的强大和灵活性将给企业带来巨大的好处。如果某组织将其IT架构抽象出来,将其功能以粗粒度的服务形式表示出来,每种服务都清晰地表示其业务价值,那么,这些服务的顾客(可能在公司内部,也可能是公司的某个业务伙伴)就可以得到这些服务,而不必考虑其后台实现的具体技术。更进一步,如果顾客能够发现并绑定可用的服务,那么在这些服务背后的IT系统能够提供更大的灵活性
27、。但是,要得到种强大和灵活性,需要有一种实现架构的新方法,这是一项艰巨的任务。企业架构设计师必须要变成“面向服务的架构设计师”,不仅要理解SOA,还要理解SOA的实践。在架构实践和最后得到的架构结果之间的区别非常微妙,也非常关键。本文将讨论SOA的实践,即:面向架构的设计师在构建SOA时必须要做的事情。 编辑SOA的原则SOA是一种企业架构,因此,它是从企业的需求开始的。但是,SOA和其它企业架构方法的不同之处在于SOA提供的业务敏捷性。业务敏捷性是指企业对变更快速和有效地进行响应、并且利用变更来得到竞争优势的能力。对架构设计师来说,创建一个业务敏捷的架构意味着创建这样一个IT架构,它可以满足
28、当前还未知的业务需求。 要满足这种业务敏捷性,SOA的实践必须遵循以下原则: 编辑业务驱动服务,服务驱动技术从本质上说,在抽象层次上,服务位于业务和技术中间。面向服务的架构设计师一方面必须理解在业务需求和可以提供的服务之间的动态关系,另一方面,同样要理解服务与提供这些服务的底层技术之间的关系。 编辑业务敏捷是基本的业务需求SOA考虑的是下一个抽象层次:提供响应变化需求的能力是新的“元需求”,而不是处理一些业务上的固定不变的需求。从硬件系统而上的整个架构都必须满足业务敏捷的需求,因为,在SOA中任何的瓶颈都会影响到整个IT环境的灵活性。 一个成功的SOA总在变化之中SOA工作的场景,更象是一个活
29、的生物体,而不是象传统所说的“盖一栋房子”。IT环境唯一不变的就是变化,因此面向服务架构设计师的工作永远不会结束。对于习惯于盖房子的设计师来说,要转向设计一个活的生物体要求崭新的思维方式。如下文所写的,SOA的基础还是一些类似的架构准则。 SOA基础在IT行业有两个越来越普遍的发展方向,一个是架构方面的,一个是方法学方面的,面向服务的架构设计师可以从中有所收获。第一个就是模型驱动架构(MDA),由提出CORBA的OMG模型提出。MDA认为架构设计师首先要对待创建的系统有一个形式化的UML(也是由OMG提出)的模型。MDA首先给出一个平台无关的模型来表示系统的功能需求和Use Cases,根据系
30、统搭建的平台,架构设计师可以由这个平台无关的模型得到平台相关的模型,这些平台相关模型足够详细,以至于可以用来直接生成需要的代码。 MDA的核心就在于在设计阶段系统就已经完全描述,这样,在创建系统的时候,几乎就没有错误解释的可能,模型也就可以直接生成代码。但MDA有一些局限性:首先,MDA假设在创建模型之前,业务需求已经全部描述,而这一点,在当前典型的动态业务环境中几乎是不可能的。第二,MDA没有一个反馈机制。如果开发人员对模型有需要改动的地方,并没有提供给他们这么一个途径。 SOA的另一个基础是敏捷方法(AM),其中非常有名的方法是极限编程(XP)。象XP这样的AM提供了在需求未知或者多变的环
31、境中创建软件系统的过程。XP要求在开发团队中要有一个用户代表,他帮助书写测试来指导开发人员的日常工作。开发团队中的所有成员都参与到设计之中,并且设计要尽量小并且非形式化。AM的目标是仅仅创建用户想要的,而不是在一些形式化模型上耗费工作量。AM的核心思想就在于其敏捷性处理需求变更的敏捷性。AM的主要弱点是其规模上的限制,例如,XP 在一个小团队和中型项目中效果不错,但是当项目规模增大时,如果没有一个一致的清晰的计划,项目成员很难把握项目中的方方面面。 从表面看来,MDA和AM似乎是相对立的MDA假定需求是固定的,而AM恰恰相反。MDA的中心是形式化的模型,而AM恰恰要避开它们。但是,我们还是决定
32、冒险把这些不同方法中的一些元素提取出来,放入到一个一致的架构实践中。 在SOA中有三个抽象层次,按照SOA的第一条准则:业务驱动服务、服务驱动技术。AM将业务模型直接和实践连接起来,表现在平台相关的模型之中。MDA 并没有把业务模型和平台无关模型分开来,而是把平台无关模型做为起点。SOA必须连接这些模型,或者说抽象层次,得到单一的架构方法。我们将从五个视图的架构实现方法来实现这个连接。 编辑SOA的五视图实现方法企业架构设计师发现他们的职业非常有竞争力并且值得骄傲,因为他们要从很多方面来通盘考虑IT系统。Kruchten(RUP的开发负责人)将这些方面提取出来,在应用到SOA时,我们称为五视图实现方法(five-view appr
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1