第4章 智慧政府与云计算
4.1 智慧政府与云计算概述
4.1.1 云计算的基本定义
云计算的使用模式即服务化。所谓服务化,即消费者只需提供服务的请求,并提交服务的输入,而不关心服务的实现方法、技术和流程,直接得到服务的结果。云计算的服务模式包括:将软件作为服务SaaS(Software as a Service)、将平台作为服务PaaS(Platform as a Service)和将基础设施作为服务IaaS(Infrastructure as a Service)等模式。
4.1.2 云计算与信息化十二五规划
在《国家电子政务“十二五”规划》工信部规(2011)567号文中,云计算在电子政务建设中的作用和定位被明确的以较大篇幅提出。十二五规划提出了“统筹协调发展、主要应用全覆盖、提升公共服务管理成效、全面共享协同、加强技术服务能力、提升安全保障能力”等规划目标。与之相对应出台了六大发展方向和应用重点。其中针对加强技术服务能力,给出了基于云计算完善电子政务公共平台的实践方向。
对于如何建设完善政府信息化建设的公共平台,国家信息化十二五规划中进行了具体规划。
(1)完成以云计算为基础的电子政务公共平台顶层设计。积极研究云计算模式在电子政务发展中的作用,全面分析新技术对电子政务公共平台发展的影响和全方位业务协同、信息资源共享及信息安全保障对电子政务公共平台发展的需求。
(2)积极研究云计算模式在电子政务发展中的作用。全面分析新技术对电子政务公共平台发展的影响和全方位业务协同、信息资源共享及信息安全保障对电子政务公共平台发展的需求,鼓励电子政务建设的运行维护走市场化、专业化的道路。
(3)制定电子政务云计算标准规范。加快研究制定基于云计算的电子政务标准规范,主要包括系统架构、技术标准等技术性标准规范,应用分类服务标准、应用迁移标准等。
(4)鼓励向云计算模式迁移。以效果为导向,推行“云计算服务优先”模式,制定电子政务公共平台建设和应用行动计划,明确相关部门的职责和分工,共同推动电子政务公共平台运行和服务。
4.1.3 云计算对智慧政府的影响和作用
我国电子政务建设的高速发展始于2002年中共中央办公厅(以下简称“中办”)发布的17号文,从这里开启了国家政府信息化建设的引擎。通过政务内网和外网建设,人口、法人单位、空间地理和自然资源、宏观经济等四个基础数据库建设,金关、金税、金财、金盾、金审等“十二金”业务系统建设,将政府信息化从最初的办公自动化建设推向部门职能业务信息化建设道路。我国政府信息化建设经过十年发展,以集约化思想为指导,初步实现了以统一机房部署、统一运维管理、统一应用支撑为特征的一体化建设模式。
在过去十年的政府信息化发展进程中,也暴露出很多问题。
(1)信息化建设的绩效问题。信息化工程实施的目的是为了提高服务型政府的主观能动性,更好的服务社会,提升执政能力。因此下阶段要努力提升政务与技术之间的融合程度。
(2)分散建设、重复建设问题。重点是加强统筹规划,用科学的发展机制,减少低水平重复建设以及投资浪费。
(3)条块分割,资源利用不足问题。重点是通过加强顶层设计,促进业务协同和资源共享。
(4)如何通过电子政务建设拉动产业发展。
(5)提高应用安全保障水平。
如何建设智慧政府?如何解决我们在过去十年发展中面临的问题?在新一轮的电子政务建设中,侧重于做好统筹规划设计、实现资源共享利用、统一基础框架服务、广泛采用开放标准、促进产业发展、明确应用绩效。云计算具有服务化、标准化、产业联盟、资源共享等显著特征,为智慧政府的管理变革提供了最强有力的抓手。
4.1.4 基于云计算的智慧政府总体框架
基于云计算的智慧政府总体框架如图4-1所示。
图4-1 智慧政府云计算总体应用框架图
基于云计算的智慧政府建设以信息化服务体系建设为核心。服务由谁开发?服务如何提供?谁来消费这些服务?通过对云计算在智慧政府建设中的总体应用架构分析,我们来描述这三个问题。
1.服务开发
云计算重视标准体系建设,云架构提供了一个开放平台,所有开发者、软件供应厂商、服务供应厂商可以在统一的云架构体系中进行服务开发、服务发布、服务维护。各种服务按照建设标准规范和安全管理要求,有序接入到云服务管理体系中。
2.服务提供
云服务基于标准规范体系和安全保障体系建设。云服务包括IaaS、DaaS(将资源作为服务)、PaaS、SaaS等不同种类。不同的服务由专业厂商提供,同时由具备该领域专业管理能力的机构来运营维护。服务定价、使用计费、运行管理、体验申请等管理环节通过服务运营体系来提供。
3.服务消费
云服务的消费者可以是个人或用户单位,他们直接使用SaaS层提供的智能办公、智能监管、智能服务、智能决策等各种业务功能;也可以是一个信息系统,它调用PaaS平台提供的各种Webservice接口服务,实现系统间的互联互通;也可以是业务开发厂商,通过PaaS平台的基础开发框架或基础应用中间件,快速构建业务系统;也可以是系统集成厂商,通过IaaS、DaaS、PaaS、SaaS的各种服务,集成、组装出用户需求的业务应用。
4.2 智慧政府PaaS公共应用支撑平台
伴随云计算的发展和开放标准的推广,应用支撑技术领域逐渐细分,公共应用支撑平台作为智慧政府公共基础设施,成为持续研究和深入应用的热点。
本节将详细阐述基于SOA(Service-Oriented Architecture,面向服务架构)技术的智慧政府公共应用支撑平台的设计与实现。公共应用支撑平台包括应用服务运行管理框架、组织身份服务组件、访问控制服务组件、单点登录服务组件、消息服务组件等重要部分组成。从我国智慧政府的发展现状、面临问题、解决思路等背景出发,深入研究应用支撑技术的发展方向,提出基于SOA技术实现智慧政府公共应用支撑平台的设计思路。在系统设计中采用服务化、模块化、标准化设计思想;应用SOA、微内核等新技术;参考国家相关技术规范对公共应用支撑平台的总体逻辑结构、系统功能、接口标准规范等进行了设计分析。在系统实现过程中,构建了组织机构模型;提出了访问控制的权限计算算法与代码实现;对五个重要组件的功能、接口、界面进行了描述。在应用实例章节中,以海淀区协同办公公共应用支撑平台工程项目为例,采用公共应用支撑平台实现政务资源统一管理、应用系统统一支撑、短信邮件等异构系统有序整合的目标。
智慧政府公共应用支撑平台可以支撑业务系统建设,并且不断接入整合其他应用软件。公共应用支撑平台是一个可以不断扩展的应用支撑服务体系。本节中对公共应用支撑平台的研究与设计为智慧政府建设提供了实践路径。
4.2.1 基于云计算的PaaS公共应用支撑平台
1. PaaS的概念和特点
PaaS平台就是指云环境中的应用基础设施服务,也可以说是中间件服务。PaaS平台在云架构中位于中间层,其上层是SaaS,其下层是IaaS。在传统部署方式下,应用基础设施即中间件的种类非常多,有应用服务器、数据库、ESB、BPM、Portal、消息中间件、远程对象调用中间件等。对于PaaS平台,可分为两类:一类是应用部署和运行平台APaaS(Application Platform as a Service),另一类是集成平台IPaaS(Integration Platform as a Service)。PaaS为企业提供了进行定制化研发的中间件平台。用户或者厂商基于PaaS平台可以快速开发自己所需要的应用和产品。同时,PaaS平台开发的应用能更好地搭建基于SOA架构的企业应用。
PaaS的出现加快了SaaS的发展,尤其是加快SaaS应用的开发速度。PaaS的开放、共享、标准化等特征使得更多的软件开发商可以在同一个平台环境中提供多元化的SaaS应用服务。PaaS平台极大提升了SaaS的个性化、灵活性。基于PaaS平台可以实现按订单生产和在线交付,用户不再需要任何编程即可开发包括CRM、OA、HR、SCM、进销存管理等任何管理软件,而且不需要使用其他软件开发工具并立即在线运行。未来大量传统软件企业在与云平台运营机构的合作过程中,通过与PaaS平台的整合,可以快速实现云化与SaaS化改造。
2.应用支撑技术理论发展趋势
(1)平台向中间件发展趋势。
在技术发展趋势方面,业界一致认为基于云计算的PaaS平台以日趋发展成熟的SOA技术为核心。SOA技术被誉为软件开发的下一个里程碑,有成为电子政务软件架构的趋势。SOA的核心理念是使应用摆脱面向技术解决方案的束缚,轻松应对业务变化、发展需要。应用系统开发技术的发展历程如图4-2所示。
图4-2 应用系统开发技术的发展历程
从软件平台的技术发展趋势看,最初无论是单机版还是C/S版的应用都是直接在操作系统上开发。随着时间推移,大量的应用开始移植到B/S架构下,中间件获得飞速发展,造就了BEA等一批中间件公司。在过去十多年的发展过程中,政务应用逐渐构筑在应用支撑平台之上。在此期间,应用服务器为应用提供了技术性支撑,应用支撑平台则为应用提供了业务性支撑。
在SOA架构体系出现以后,通用应用服务被再次封装。业务系统基于公共应用支撑平台中间件构建,公共应用支撑平台中间件为各种业务应用提供基础身份、访问控制、单点登录、流程、电子表单等服务,以及对服务的注册、管理功能。公共应用支撑平台中间件使支撑平台与应用系统的耦合性降低,为各类分布式应用软件共享基础资源提供了支撑。公共应用支撑平台中间件能够更加灵活、高效地帮助用户开发和集成复杂应用软件。
(2)平台产业化合作趋势。
政府信息化进入智慧型发展新时期,如何加强资源整合利用是工程的难点。由于政府职能部门存在条块分割现状,互联互通和资源共享利用一直面临困难。为了向公众提供更便捷高效的服务,政府部门必须更加合理配置资源。从而使参与信息化建设的厂家之间的产业合作需求日益突出。各厂家共同建设的模式如图4-3所示。
图4-3 基于标准多厂家共同建设平台示意图
目前,参与国内电子政务建设的厂商普遍存在同质化竞争现象。各个厂商开发的产品,标准化程度低、互操作弱、恶性竞争,产业发展环境不良。但随着应用支撑技术的发展和智慧政府公共应用支撑平台建设理念的变化,由开放标准带来的产业合作将促进软件产业链的形成。
3.公共应用支撑平台产生背景
在过去的十几年中,我国地方政府信息化迅猛发展,在经济管理监控、社会管理、政府公共服务水平和内部自身管理运行能力建设等各个方面都取得了显著成效。同时,对于信息化项目建设、推进方式、技术路线选择等方面也在大胆探索,逐步形成中央、地方、行业、跨部门联合业务等不同发展模式。
在智慧政府发展的新阶段,政府电子业务向着应用更加智能、互联互通更加深入、使用更加便捷发展。“十二五”期间,将会大力推进地方电子政务发展方式的转变,政府信息化进入了深化应用和突出成效的关键转型期。这一时期,以云计算为代表的新一代技术信息技术、产业、应用不断涌现,深刻改变了政府信息化发展技术环境及条件。
未来五年,云计算将在智慧政府建设中发挥重要作用,利用已有的网络资源、机房资源、存储资源、信息资源、公共应用支撑平台资源,发挥云计算虚拟化、高可用、快速、按需、弹性服务的特点。在近年的发展中,基于云计算的PaaS公共应用支撑平台为政府信息化提供新的建设模式。而公共应用支撑平台为云计算提供了基础支撑软件、中间件软件、应用开发环境、应用集成环境、信息资源管理调用、系统运行保障、信息安全等各种公共应用服务。
4.公共应用支撑平台与公共应用服务
PaaS公共应用支撑平台提供公共应用服务。从广义上讲,公共应用服务可以定义为提供给用户满足其应用需求的有形或无形的所有活动。这里所指的公共服务可以是一种软件产品、一组特定地业务操作、一项应用功能、一个数据接口等各种形态。公共应用服务可以直接被用户使用,具有可见的操作界面。公共应用服务也可以被程序调用,以服务接口的模式注册在系统中。
从软件技术开发的角度上讲,公共应用服务是政府信息化应用系统中公共的、可定义的、可注册的和可调用的功能单元。公共应用服务作为公共的服务,在更高层的基础上提供软件复用和业务复用,可通过应用服务元数据明确定义,可通过应用服务框架发布并注册在服务库中,可将第三方发布好的服务注册在服务库中,可通过应用服务框架进行监控和管理,可随时透明地被本地或远程查找和调用。
公共应用服务应该满足如下技术要求之一:
(1)为多用户提供的、可以共享使用的应用软件资源。
(2)以API和Web服务的形式提供服务。
(3)公共应用服务都是无状态的,每次对应用服务的调用都具有完整语义,与上下文无关。
(4)消息传输基于HTTP/1.1(RFC 2616)或JMS协议。
(5)采用W3C的SOAP 1.2作为消息封装格式。
(6)采用W3C的WSDL 1.2作为服务描述规范。
公共应用支撑平台实现对公共应用服务的管理。公共应用支撑平台提供基础开发框架、服务运行管理框架、应用集群服务、服务器应用环境、基础支撑服务、基础应用服务、数据服务等。
基础支撑服务为所有信息系统的建设提供基础支撑,包括组织身份服务、访问控制服务、单点登录服务、统一消息服务、身份同步服务等。基础支撑服务通过“统一用户管理系统”、“统一资源及权限管理系统”、“服务管理系统”等为管理员提供操作维护软件工具。
基础应用服务,通常可以解决某类共性业务需求,政府信息化中常见的基础应用服务由工作流、电子表单、统计报表等中间件软件产品提供。在智慧政府的建设实践中,基础应用服务通常是多厂家共同建设的成果,基础应用服务通常与具体业务建设有直接关联,是逐步滚动建成的。基础应用服务通过基础支撑服务整合为一个整体,为业务间的互联互通提供基础。
5.公共应用支撑平台在国内外发展状况
2002年,中办发布17号文,内容是国家信息化领导小组关于我国电子政务建设的指导意见。当时提出了以一站、两网、四库工程、十二金建设工程为核心的国家电子政务建设框架。四年后,国办发布了国家电子政务总体框架。在这个框架的指导下,要求各地政府根据地方信息化发展状况,制定相应的电子政务总体框架并规划各自的应用支撑体系。这一时期,北京、上海、福建等各个省市分别出台了地方电子政务总体框架,制定了应用支撑体系建设规划,公共应用支撑平台快速发展。
2010年10月,国家信息化主管部门在“十二五”规划中提出了以进一步加强基础信息资源的开发利用,加强资源共享,加强信息互联互通,加强公共基础设施及网络建设,强化政府服务和管理能力为目标的新一期五年规划。“十二五”推动我国电子政务向更高标准、更深入应用发展。公共应用支撑平台在共性资源统一建设、信息共享利用、应用系统互联互通等方面起着更加重要的作用。公共应用支撑平台作为智慧政府公共基础设施在发展中的地位更加突出。
以公共应用支撑平台为代表的支撑技术在国外也是电子政务规划重点。欧盟制定了统一电子政务互操作框架。英美等国制定了本国电子政务框架。亚洲国家新加坡的电子政务框架颇有借鉴意义。抽取几个国家的电子政务框架如表4-1所示。
表4-1 各国电子政务互操作框架
4.2.2 SOA与云计算
1.采用SOA技术实现云平台部署
SOA和云计算是业界关注的热点领域,对于两者之间的关系,不同的机构和研究者观点不同。这些观点具有一定的合理性,但也存在一定的主观性。SOA和云计算都有丰富而复杂的内涵,产生不同的观点也就不足为奇。随着Internet环境下业务发展的需要,有一种普遍的观点认为云计算是SOA的实现。这种观点以IBM WebSphere部门的首席技术官Jerry Cuomo为代表。他认为SOA是构建应用程序的一种架构风格,是松散耦合的,允许合成的。云计算是一个面向服务的基础设施,它采用了SOA的架构原则并且把这个原则应用在基础设施上。
云计算和SOA具有很多的共性特点。云计算和SOA都以构建可再利用的组件为目标,以服务为关键特性。两者间又有明显的差别。SOA关注于采用服务的架构设计并构建系统,而云计算侧重于服务的提供和使用。
对于软件企业来讲,采用SOA技术,可以降低软件的开发及维护的成本。云计算是根据资源的使用来进行按需分配,从这点上讲,它可以为客户带来立竿见影的利益。因此,采用SOA技术实现云平台的部署,使开发商与客户实现双赢。
2. SOA基本概念及特性
SOA全称Service-Oriented Architecture,中文翻译为面向服务的架构。SOA可以理解为一个组件模型。这个组件模型将应用程序的不同功能模块用定义良好的接口联系起来。这里的功能单元可称之为服务。这里的接口是中立的,支持跨平台、跨操作系统、跨编程语言。从而在不同应用系统中,采用各式各样技术开发的服务可以使用统一的方式交互。
SOA是一种架构模型,是一种构建应用系统的方法。SOA主要用于构建信息系统基础结构,组合业务功能。通过SOA架构,可以根据需求将松散的应用服务(业务功能)实现分布式部署,组合使用。SOA的主要特性包括松耦合、服务调用、跨平台。松耦合是指它可以分布部署;服务调用是指功能模块间通过标准接口通讯;跨平台是指它与开发语言和底层技术环境无关。SOA采用XML进行自我描述。SOA采用Web服务进行服务的交互。对于SOA的交互服务的描述遵循WSDL标准(Web Services Description Language)。SOA服务用消息进行通信,该消息通常使用XML Schema来定义(XML Schema Definition, XSD)。消费者和提供者或消费者和服务之间的通信多见于不知道提供者的环境中。
SOA通过服务的高重用性来降低开发的成本;通过服务的粗粒度、松耦合的特性来屏蔽复杂的业务逻辑,从而降低业务流程复杂度;通过组织专业分工,使得软件开发的大规模化成为可能。因此,SOA作为构建新型应用系统的解决方案,有着巨大的优势。
3. SOA的发展历史及现状
SOA的概念最早由Gartner公司在1996年提出,当时并未引起人们的关注。其原因是,在当时的技术发展水平和市场环境下并不具备实施条件。但随着互联网业务的蓬勃发展,许多企业将自己的核心业务转移到网络上开展。在此阶段电子商务高速发展,各个企业为了让自己的业务能够快速打包、升级以及更好地同其他业务系统通讯,提出了Web服务。Web服务的提出是SOA发展的真正开端。
伴随Web服务的出现,数量众多、各式各样基于不同语言和技术开发的服务组件出现在互联网上。如何才能实现这些异构系统、功能的互联互通?如何才能适应交错纷呈的不断升级?这时,人们发展面向服务的分布式架构可以很好地对这些服务组件进行管理,可以使不同的组件服务进行交互,可以使企业发布的服务组件具有良好的重用性,并且服务组件可以有效管理、安全可控。SOA成为满足上述需求的最佳实现途径,开始真正迅速发展。SOA的发展分为XML起步阶段、Web服务兴起阶段、2005年以后的高速发展阶段三大步,每个阶段都产生了一些影响至今的重要技术标准。
(1)以XML为标志的起步阶段。这一阶段以XML(Extensibl Markup Language, XML)技术为标志,时间大致从20世纪90年代末到本世纪初。XML是一种低成本的通用交互语言格式。开发人员可以将任何文档、数据转化为XML格式。XML奠定了SOA的应用基础。通过XML规定了服务交互、数据交互的格式及结构,使得不同应用系统之间可以方便地进行数据传输。数据的完整性和有效性由XSD Schemas保障,不同数据之间的映射转化通过XSLT保障。
(2)以Web服务三剑客为标志的兴起阶段。2000年以后,Web服务的概念产生了。通过Web服务将对外交互的接口按照统一的标准规范进行封装,从而实现跨平台、跨语言的交互。有三个被广泛认可和采用的标准产生了,被称为Web服务三剑客。这三项技术标准极大地推动了Web服务的普及和发展。它们是SOAP、WSDL和UUDI。SOAP的英文全称是Simple Object Access Protocal,中文是简单对象访问协议。WSDL的英文全称Web Services Description Language,中文是Web服务描述语言。UUDI的英文全称是Universal Discovery Description and Integration,中文是通用服务发现和集成协议。
随着Web服务的快速发展,各个电子商务企业、互联网运营公司纷纷将自己的业务打包成服务或者将对外接口进行服务化封装。Web 2.0的重要特征之一就是Web服务的广泛应用。
(3)快速成长阶段。2005年是SOA迅速推广的开始,IBM等软件行业的领军企业和高等学院、研究机构、政府信息化主管部门、技术媒体都在研究、开发、实施采用SOA技术的产品、项目。SOA成为技术发展的焦点。此阶段,SOA对应用的影响已经扩展到安全保障、业务协作、事务处理等各个系统架构领域,不再是简单的Web服务。
SOA松耦合的特性解决了企业信息化建设中的两大难题。借助SOA技术,可以在构建新业务时采用组件化的方式,对现有服务进行组合利用,节约了信息化投资。同时以服务方式发布新业务、升级服务,满足快速业务变化的需求,使系统的扩展性更强、灵活性更高。SOA使企业能够对业务变化快速做出反应,企业可以高效利用现有资源和现有基础架构来解决新的业务需求,实现一个可以持续发展的框架。
4.2.3 PaaS应用支撑平台设计思路
1.公共应用支撑平台核心设计思想
在公共应用支撑平台的设计中,我们充分考虑了先进性、经济性、适用性、安全性和可持续发展性等要素,确定采用服务化、模块化、标准化三个核心设计思想来实现基于SOA技术的智慧政务公共应用支撑平台设计。
采用服务化设计,对应用服务进行注册、发布、管理、监控,形成可扩展的服务机制;采用模块化设计,形成可扩展、松耦合的技术架构;采用标准化设计,形成切实可行的技术规范,用统一标准开展研究设计。
(1)服务化设计。采用SOA,提供服务的集成和注册管理,能够整合各种软件。在SOA技术快速发展的今天,不同软件产品生产厂商遵循相同技术规范开发服务和接口。任何一个复杂的电子政务应用支撑平台都可由不同的软件厂商协作完成。因此,从电子政务资源共享、应用系统集成整合、软件产业化发展的需要出发,对公共的、可定义的、可注册的和可调用的应用服务功能单元进行定义,对具有共性的应用服务进行抽象设计。
从长远发展看,不同类型的软件厂商会提供不同的专业产品,从工作流软件、内容管理软件、短信系统软件、即时消息系统软件、邮件系统软件到CA认证软件、门户整合软件等。软件厂商向着专业化方向发展,主打研发设计某一个或几个产品。不同产品遵循相同的SOA标准规范,以产业协作的模式共存,低水平、重复性、同质化的竞争变少,整个软件产业链向着更健康的方向发展。
因此,采用服务化思想实现智慧政务公共应用支撑平台设计是符合未来发展趋势的选择。
(2)模块化设计。采用微内核(OSGI)实现系统的模块化设计。模块化设计具有扩展性强、健壮稳定的优点。模块化开发使每一个系统功能组件边界清晰、接口标准。同时,可以用不同的模块,以搭积木方式构建新的业务需求,具有高效、复用的优点。另外,在系统开发和维护过程中,可以对单个模块进行升级维护,而不会影响其他模块的运行,使得系统可管理性更强。
微内核具有松耦合和高稳定的特点。OSGI采用高内聚低耦合的原则,使用微内核+系统模块+应用模块设计,微内核保证了髙一致性,基于模块的设计保证了松耦合。使得系统更加稳定、更加健壮,模块的崩溃不会影响到整个平台。也就是说基于OSGI的系统不会受到运行在其中的Bundle的影响,不会因为Bundle的崩溃而导致整个系统的崩溃。
(3)标准化设计。采用开放标准设计公共应用支撑平台,使框架具有更加强壮的生命力。回顾软件发展历程,无数采用Java技术的软件企业受益于J2EE的开放标准。首先,任何一个软件厂商必须遵循基本的技术标准、网络协议、通讯协议。其次,在这个基础上发展、创新,软件产业得以持续发展,专业化的软件产品走向成熟精深。我国在信息化建设规划中,非常重视开放标准的发展。工信部下属标准化研究院牵头成立了中国最权威的软件信息化标准组织“信标委”。SOA标准规范的编制是信标委的一项重要工作。2008年深圳市质监局率先发布了电子政务应用服务标准规范,最早提出了应用服务概念。
在公共应用支撑平台的设计实现中,应遵循标准先行原则,采用相关国际、国内标准对电子政务公共应用支撑平台进行详细设计,后续的开发和实践完全按照定义好的标准规范执行。
2.公共应用支撑平台设计原则
(1)先进性原则。公共应用支撑平台设计遵循架构先进性原则,在坚持实用、可扩展和安全的前提下,尽量采用比较先进和稳定的技术架构体系,主要包括:
● 采用SOA架构技术,采用组件化、面向对象的设计,将各功能模块封装为服务,采用细粒度、松耦合架构,便于今后系统的扩展与升级。
● 支撑平台采用Java语言开发,采用了OSGI微内核核心技术,通过搭积木方式构建系统。系统的各模块之间完全独立,模块可以单独开发、单独发布。模块的崩溃不会影响到整个平台。模块动态部署、卸载、更新、停止、启动,动态改变系统的行为。
(2)实用性原则。公共应用支撑平台设计遵循实用性设计原则,要力求最大限度满足智慧政务信息化工程中实际工作的需要,从实用性角度出发,在充分理解电子政务信息化现状、特点基础上,结合电子政务业务需求,制定详细、可行的设计方案。在实用性方面主要方便如下应用:
● 服务调用更简单:基于统一公共应用支撑平台,通过标准的Web Service形式对外提供服务调用,使服务的接入、获取和使用变得更为简单和实用。
● 应用整合更规范:遵循统一的技术标准,使基础组件的技术接口更为规范和标准,也使得电子政务的业务系统在应用整合方面更为规范和简便。
(3)兼容性原则。公共应用支撑平台设计遵循开放标准设计原则,以便于与应用系统的互联和扩展,同时易于向今后的先进技术实现迁移,充分保护电子政务建设中的已有投资,其综合反映在可移植性、互操作性、系统独立性和集成性上。
(4)可扩展原则。公共应用支撑平台设计遵循可扩展设计原则,能够适应电子政务应用不断扩大的需要,强调系统的工具化和对其他业务系统集成的方便性:
● 组件化技术:采用微内核动态化结构设计,体系结构灵活且扩展性强,能够将各功能模块以组件化的形式进行管理,并能够基于这些组件以搭积木方式构建各业务系统。
● 标准化接口:通过制定统一的接口标准规范,约束系统建设时技术接口的规范化程度,从而保障系统在建成后的标准化和可扩展化。
● 服务化调用:以服务的形式对系统中的各类资源进行服务化管理,在整合和扩展方面简化服务的调用工作,实现服务资源的远程访问和调用,并能够适应政府机构的业务扩展、机构扩展和人员扩展。
(5)简便性原则。公共应用支撑平台设计遵循简便性原则,设计将最大程度的保证用户的人性化应用需求,在界面设计、应用操作和后台管理方面尽可能的使用户减少操作步骤,最大程度减少单击按钮和文字输入的次数。所体现的简便性包括界面简洁和操作简便等方面。
● 界面简洁:系统页面在设计时尽可能地做到简洁、美观,为用户直观的提供最大程度的人性化操作环境。实现复杂的用户界面操作的简单化,保持界面风格高度统一,使应用系统具有高度互动性。
● 操作简便:在操作上满足业务处理要求的同时,做到输入输出方便,检索查询简单快捷,为用户提供人性化的检索服务。
3.公共应用支撑平台逻辑结构
公共应用支撑平台包括组织机构、单点登录、访问控制等基础、共性服务组件,并且其微内核和模块化的设计结构可以不断整合、接入在行业或领域中应用的通用软件,如短信系统、邮件系统、工作流中间件、电子表单中间件等,这些内容会进一步充实公共应用支撑平台服务。具体内容参见如图4-4所示的总体逻辑结构。
图4-4 总体逻辑结构图
如图4-4所示,公共应用支撑平台由底层基础开发框架、应用支撑平台集群服务、应用服务运行管理框架、基础支撑服务组件和基础应用服务组件构成。公共应用支撑平台是支撑层的共性基础设施,为公共服务组件集成、业务集成提供支撑。
4.公共应用支撑平台技术架构
公共应用支撑平台采用SOA技术架构,选择B/S结构,J2EE作为开发平台,定位于对智慧政务中特定资源(部门、用户、岗位、角色、服务、资源)进行统一配置和管理;解决用户统一身份管理、统一访问控制、统一单点登录、统一消息集成等问题;提供各种服务管理利用的环境,提供可视化的接口服务管理。公共应用支撑平台从功能上包括应用服务运行管理框架、组织身份服务组件、访问控制服务组件、单点登录服务组件、消息服务组件。公共应用支撑平台支持在多种数据库、多种操作系统上部署,支持集群部署。在工程实践中,可用于构建智慧政府公共应用支撑平台,为新建应用开发提供公共基础支撑服务;也可用于构建应用整合服务平台,为已建成的、第三方的应用系统提供整合支撑服务。
在统一的公共应用支撑平台上注册发布的服务不仅能够提供给本次项目中已建业务系统使用,还可以提供给后续新建的业务系统使用。通过公共应用支撑平台提供的各类服务不仅可以满足本次项目的应用支撑,还将为其他异构业务系统提供标准化的整合服务。
(1)采用J2EE技术作为开发平台
公共应用支撑平台采用J2EE平台实现SOA应用架构的开发。J2EE技术体系为SOA架构的实现提供了解决方案,J2EE提供了对EJB、Servlet、JSP、XML等标准的全面支持。J2EE具有良好的可靠性、灵活性、扩展性、易维护性,使用J2EE可以简化企业解决方案的开发、部署和管理等复杂问题。J2EE有系列开放标准,为SOA应用提供支持,包括将XML文档定位到Java类的JAXB,规范对UDDI注册表操作的JAXR,调用远程服务的XML-RPC。J2EE开发者可以很容易实现跨平台的服务调用。J2EE已经成为企业级开发的工业标准和首选平台。
(2)采用SOA架构实现应用服务运行管理框架
采用SOA架构实现应用服务运行管理框架的设计。通过SOA技术实现了服务的注册、查找、管理、监控。通过研究,我们认为服务分为两种:一种由内部组件提供,成为内部服务,包括组织身份服务、访问控制服务等;另一种由外部注册到服务仓库的服务构成,例如会议系统提供的会议室查询服务,此类服务称之为外部服务。
参考SOA架构的系统将不同的服务通过服务之间定义良好的接口和契约联系起来。服务独立于实现服务的操作系统和编程语言之外,接口采用中立的方式进行定义。构架在各种系统中的服务通过统一且通用的方式进行交互,保证了电子政务业务的互联互通。采用SOA技术构建的应用系统可以非常方便地实现业务整合、接口整合、信息整合、UI整合。SOA具有松耦合、标准化服务调用、跨平台等灵活特性,很好的规避了系统信息孤岛的产生。
(3)采用微内核技术实现组件化开发
采用微内核结构实现系统的构建开发。微内核是指采用OSGi开放标准、搭积木方式构建系统。OSGi采用高内聚低耦合的原则,使用微内核+系统模块+应用模块设计,微内核保证了髙一致性,基于模块的设计保证了松耦合,使得系统更加稳定、更加健壮,模块的崩溃不会影响到整个平台。
采用微内核技术构建的系统具有模块化和动态化特点。模块化是指通过规范设计,将应用功能单元设计为可重用、可积累的模块。模块可以单独开发、单独发布,具有独立结构,不存在类似Jar包依赖这样的关联关系,能够隔离运行时类的可见性。动态化是指采用微内核技术开发的系统支持动态更新,可以对模块进行动态部署、卸载、更新、停止、启动。新增、修改模块时不必重新启动平台,运行于平台的其他模块不受影响。
(4)采用SNA架构实现集群部署
在性能保障方面采用了SNA的无共享集群架构(Share-Nothing Architecture)。在这样的集群中,每个节点具备完全相同的功能,并且不需要知道其他节点存在与否。负载均衡器(Load Balancer)来完成如何将请求分发给这些后台的服务器实例。由于负载均衡器只是做一些简单的工作,例如分派请求、健康检查和保持Session,因此负载均衡器很少会成为瓶颈。如果后端的数据库系统或其他的信息系统足够的强大,那么通过增加更多的节点,集群的计算能力可以得到线性的增长。
SNA架构的优点非常明显,因为不需要知道其他节点的存在,节点相互之间完全独立,可以保持每一个节点的结构简单,并且更加稳定可靠。同时,SNA架构具有基本线性增长的能力,如果后端的数据库系统或其他的信息系统足够的强大,只需要增加前端的应用处理服务器就可以基本线性的提升系统的整体处理能力。
SNA架构的集群服务组件,提供并行处理、负载均衡、分布式缓存、失败转移和容错管理等集群服务功能,能够支持大规模服务器集群和平滑可扩展,在双链路网络的支持下,能够支持99.9%的高可用性,实现一年停机时间小于8小时。
4.2.4 PaaS公共应用支撑平台与标准规范
随着智慧政府的提出和发展,政府电子业务向着应用更加智能、互联互通更加深入、使用更加便捷。这一时期,以云计算为代表的新一代技术信息技术、产业、应用不断涌现,深刻改变了政府信息化发展技术的环境及条件。公共应用支撑平台为信息化建设提供基础设施、支撑软件、应用系统、信息资源、运行保障、信息安全等各种公共应用服务。
公共应用服务标准规范的制定具有重大意义和深远影响。对公共应用服务基础标准的研究工作,将规范并指导区域政府实现基于云计算的电子政务公共平台及业务系统的建设,突破技术垄断、带动产业发展,成为区域政府和行业厂商在地方发展、企业发展中获取竞争优势的一个重要手段。以电子政务公共应用服务为对象的标准研究将是云计算、云服务时代的热点。
1.平台标准符合性发展趋势
基于公共应用支撑平台构建电子政务应用体系的设计架构中,支撑平台是关键性建设内容。政务业务具有发展变化的特点,支撑平台本身也应该具备可扩展、可延拓的特性。
从基于标准多厂家共同建设平台的模式中,可分析得出:平台和业务系统不是某一个厂家一次性建设的成果。按照发展趋势预测,未来智慧政务中的公共应用支撑平台一定是多厂商在多期工程中,持续建设的成果。因此,公共应用支撑平台必须是开放的、基于标准的,可以不断整合多厂商的优势产品,保持持续发展,为业务系统建设提供服务。
2.相关国际标准研究
在公共应用支撑平台的研究与实践中,标准框架体系的制定应广泛采用业界国际标准。与公共应用服务相关的标准集合包括XML相关标准、网络传输标准、消息传递标准、服务描述标准、可靠性标准、安全性标准、互操作标准,如表4-2所示。采用SOA技术构建电子政务公共应用支撑平台,其中Web服务相关标准的应用是重点。
表4-2 采纳相关国际技术标准
通过采纳标准,实现云平台的互操作性,实现不同开发语言、不同开发平台的互操作调用。云平台PaaS服务也遵循下列标准,支持采用不同技术进行远程调用,包括J2EE、.Net、Delphi等。采纳的相关国际技术标准如表4-2所示。
3.相关国家标准研究
以电子政务为业务目标的公共应用支撑平台研究与实践,应充分考虑我国电子政务的特点。我们研究了全国信息技术标准化技术委员会编制的《信息技术面向服务的体系架构(SOA)总体技术要求》和《国家电子政务标准化指南 第五部分 支撑技术》两项国家电子政务标准,并以此为基础设计基于SOA技术的电子政务公共应用支撑平台的标准规范体系。采纳国家标准规范设计公共应用支撑平台,能够符合国标中对SOA技术及业务领域的要求,能够更好地实现平台的开放性、可扩展性、互联互通性。
智慧政府公共应用支撑平台可以参考《国家电子政务标准化指南 第五部分 支撑技术》规定的国家电子政务应用支撑技术参考模型。
如图4-5所示,基础支撑层的信息表示、数据访问、展示技术以及消息、事务、目录、安全、管理等服务为电子政务应用系统建设提供公共基础支撑。应用支撑层为应用系统建设提供组织身份、访问控制、单点登录、工作流、电子表单等公共应用服务。应用支撑层汇聚各种应用支撑中间件,为上层业务系统建设提供应用支撑。领域支撑层是针对电子政务特定应用领域的可扩展、可定制、可复用的业务组件,具有针对性,可减少应用系统开发工作量,提高软件的复用。
图4-5 电子政务应用支撑技术参考模型
在采用SOA技术方面,可以参考《信息技术 面向服务的体系架构(SOA)总体技术要求》规定的SOA应用技术参考模型,其对SOA应用技术参考模型中每个实现部分的内容进行了约定。
如图4-6所示,SOA应用技术参考模型主要包括IT基础设施、SOA资源、SOA支撑技术与服务、业务公共服务等方面,包含SOA全生命周期从构建到运行到管理的各个环节。SOA的运行环境以及未来可扩展环境在IT基础设施层阐述相关技术要求。应用系统构建过程中的数据资源、服务资源、应用资源是资源层的内容,具有相应的技术要求。资源层的服务和数据构成了信息系统建设的基础资源。应用支撑层提供构建应用系统的基础共性服务,这些服务具有可复用、可共同的特点,通过服务管理进行注册、发布、监控。业务层提供的是面向行业应用的服务的集合,以此满足特定的领域应用需求。
图4-6 SOA应用技术参考模型
4.公共应用支撑平台标准体系
公共应用服务存在不同分类,这里我们重点对基础支撑类服务标准进行分析。基础支撑服务技术规范包含:应用服务运行管理框架规范、组织身份服务规范、访问控制服务规范、单点登录服务规范、消息服务规范等。公共应用支撑平台规范是一系列技术标准,以下章节选取部分内容列举说明。
这里以智慧政务为研究领域,以SOA技术为研究背景,以公共应用支撑平台的设计与实践为研究目标,具有比较宽泛的外延。因此,参考《信息技术 面向服务的体系架构(SOA)总体技术要求》、《国家电子政务标准化指南 第五部分 支撑技术》两项国家电子政务标准,设计了一个完整的采用SOA技术的电子政务应用支撑标准体系架构。以公共应用支撑平台的标准为核心,同时描述了与资源、应用服务等外延标准规范之间的关系。
如图4-7所示,在电子政务公共应用支撑平台标准体系架构中,公共应用支撑平台是支撑层的基础设施,同时也是SOA参考模型中提供基础服务的关键部分,是构建任何一个电子政务应用所必须的服务。在向下扩展的资源规范中,与支撑层直接相关的是组织身份模型的数据规范,它是应用构建、系统整合、服务提供的基础,因此单独列出。在向上扩展的公共支撑服务中,包括了具有一些通用业务属性的公共服务,如工作流、短信等,可以为具体应用提供支撑。电子政务应用支撑标准体系的面向对象包括信息化管理人员、公共服务组件提供商和系统集成商。
图4-7 公共应用支撑平台基础服务接口规范
(1)应用服务运行管理框架规范
应用服务运行管理框架规范适用于构建共性的、基础的、开放的业务和公共应用支撑平台。规范规定了应用服务的元数据构成和定义。通过元数据可以更加准确地对应用服务进行发布和查找,并且提供了元数据的扩展原则和方法。
应用服务运行管理框架规范给出运行管理框架的组成部分、工作原理以及各部分的技术要求。在应用服务运行管理框架规范中,我们对应用服务、应用服务运行管理框架、服务模块、服务组件进行了明确定义,具体如下:
● 应用服务:应用服务是电子政务应用系统中公共的、可定义的、可注册的和可调用的功能单元。应用服务作为公共服务,在更高层的基础上提供软件复用和业务复用,可通过应用服务元数据明确定义,可通过应用服务框架发布并注册在服务库中,可将其他系统发布好的服务注册在服务库中,可通过应用服务框架进行监控和管理,可随时透明地被本地或远程查找和调用。
● 应用服务运行管理框架:应用服务运行管理框架是应用服务运行的基础框架,提供了对应用服务的注册、寻址、查询、编排等功能,通过应用服务的元数据信息可对应用服务进行管理,并且可监控、管理应用服务的运行状况。同时,通过应用服务运行管理框架可以直接发布应用服务、调用本地或远程应用服务,直接发布的应用服务可支持分布式应用和负载均衡,对于在本地运行环境中的服务可以采用本地方法调用,对于在远程的应用服务会自动转换为Web服务方式调用。在不同的应用服务框架之间,采用对等的分布式调用机制,可注册远程的服务库到本地。可通过应用服务框架之间的互操作调用,实现互联互通。应用服务框架本身不提供访问控制的功能,但可借助访问控制服务模块实现对应用服务的认证、授权和访问控制。应用服务框架作为软件基础设施,通过部署在上面的服务模块,以标准的Web服务协议发布服务,将软件功能和业务逻辑在更高层次上实现复用,并可将原有应用系统中可重用、可共享的功能单元服务化,利于应用系统整合。应用服务框架具有可集成、可扩展能力,通过标准Web服务协议进行服务接口描述和相互调用,屏蔽不同软件开发平台之间的差异,能够透明地进行互操作。
● 服务模块:服务模块是可进行部署软件包,也可以是第三方系统提供的应用服务的集合,是用于满足某特定领域功能需求相关应用服务的集合,是可进行部署的最小单位。可通过元数据描述文件描述服务模块,并通过API或者Web界面部署在应用服务运行管理框架上,由应用服务运行管理框架实行统一的监控和管理。
● 服务组件:服务组件是提供应用服务功能实现的具体单元,是构成服务模块的基本组成元素,其功能以应用服务的形式体现,以标准的Web服务协议的形式提供。由一个或多个服务组件及其相应的配置信息构成服务模块。通过配置信息可以设置或调整服务组件的功能,或者改变服务组件的行为。
主要应用服务运行管理框架规范包括服务组件管理接口、服务模块管理接口、应用服务管理接口、服务库管理接口、获取应用服务接口等大类。
(2)组织身份服务规范
组织身份服务规范规定了应用系统中组织身份的各种实体的操作接口、实体间关系的操作接口和实体查询的标准接口。另外,还规定了组织身份服务的服务注册接口以及同其他系统的数据同步接口。
组织身份服务适用于在电子政务组织模型基础上,通过定义组织身份管理接口、信息接口和同步接口,使应用系统以统一的方式获取组织身份信息。应用系统只需关注业务流程及业务逻辑的设计,认证、组织身份信息均可以由组织身份服务接口获得。本部分也适用于指导基于组织模型构建的各类应用系统对组织模型相关接口的调用,实现组织身份统一管理。
主要组织身份服务接口规范包括身份信息认证、身份信息同步、身份信息获取、身份信息管理等服务接口。
(3)访问控制服务规范
访问控制服务规范定义了权限管理模型,给出了访问控制框架的组成部分和各部分的技术要求。访问控制服务能够提供应用系统的资源权限控制和数据权限控制,提供权限管理服务。访问控制服务接口规范可用于指导各类应用系统对访问控制相关接口的调用。
访问控制是只允许在授权范围内访问资源的限制措施。访问控制就是决定主体能够对客体进行哪些操作。访问控制的主体包括人员、计算机、系统进程等,访问控制的客体可能是文件、磁盘等,也可能仅仅是一个逻辑标识或者抽象映射,可以进行的操作包括读取、写入、查询、签批、盖章等。由主体、客体、操作这三者组成的三元关系,描述了谁能给访问系统的何种资源以及如何使用这些资源。访问控制能够限制未经授权的用户或者系统进程越权获取数据,或者越权执行操作。
主要访问控制服务接口规范包括权限访问接口、权限管理接口和数据集权限接口三大类。
(4)单点登录服务规范
单点登录服务规范规定了单点登录服务接口,定义了单点登录票据的模式。对需要登录认证的各应用系统提供统一的一次登录、全网通行的登录服务标准。单点登录服务以组织身份模型为数据基础,以组织身份服务为运行支撑。实现单点登录服务的前提是,各应用系统采用统一的组织身份数据模型。单点登录服务中用户信息的获取及认证均应调用组织身份服务接口。
主要单点登录服务接口规范包括单点登录认证、应用系统二次认证、获取系统单点登录票据、单点登录注销、应用系统本地注销服务接口等。
(5)消息服务规范
消息服务规范规定了消息服务接口,描述与统一消息中心进行集成整合工作中所需的消息格式和参数,具体定义了如何获取消息及消息的传输格式信息,为第三方厂商与消息中心进行消息传输、获取和调用提供了标准化参照和规范化描述。
消息服务包括消息注入服务、消息更新服务、消息删除服务、消息推送服务、消息查询服务等类别。消息管理是指消息中心对消息信息的统一管理,包括消息的增加、删除,消息状态的更新,消息队列的管理等。消息管理功能只在消息中心内部使用。消息查询分为结果集查询和单一实例查询两种。结果集查询主要用于列表形式显示消息信息,支持自定义查询项、分页数据显示功能。单一实例查询用于获取消息对象实例。
主要消息服务接口规范包括消息推送服务、消息查询服务、消息注入服务、消息对象获取服务等接口。
4.2.5 PaaS公共应用支撑平台基础功能
PaaS公共应用支撑平台为应用系统建设提供支撑。PaaS公共应用支撑平台由服务运行管理框架、底层基础开发框架、应用支撑平台集群服务、基础支撑服务、基础应用服务等构成。其中基础支撑服务是指任何系统构建均需用到的组织身份服务、访问控制服务、身份同步服务、单点登录服务、消息服务、Java运行环境。基础应用服务是指构建业务应用的各种中间件工具软件,包括工作流中间件、电子表单中间件、统计报表中间件等。本节将对共性特点最突出的PaaS公共应用支撑平台基础环境和基础支撑服务进行阐述。
1.服务运行管理框架
服务运行管理框架是PaaS公共应用支撑平台的基础运行环境,提供身份认证服务、同步服务、消息服务以及其他数据交换接口服务的统一管理。平台中的每一个基础功能、数据交换接口都是可插拔的组件。所有组件均提供可被第三方应用系统调用的标准Web服务。服务运行管理系统提供应用服务发布、注册、查询、调用的全生命周期管理。主要功能包括以下方面:
(1)组件化管理。采用SOA架构,提供组件化,可扩展的应用服务。
(2)服务注册发布。采用XML可配置方式发布服务,实现服务的自动发布和自动注册。自动发布是将服务的描述配置在XML文件中,即可自动发布为标准的Web服务,发布的服务具有有效的WSDL地址。自动注册是在服务的成功发布之后,自动将其在服务库中进行注册。可注册第三方应用系统发布的Web服务。
(3)跨平台调用。服务可重用、可编排,系统之间松散耦合、随时可用。提供的服务支持不同编程语言、不同开发平台,可以实现跨平台调用访问。
(4)动态发布。提供服务的按需发布能力,Web服务在发生调用时按需、动态的进行发布。在系统启动时,并不需要将部署的服务全部发布为Web服务,在发生服务调用时,再将对应的实现即时发布为服务。
(5)透明调用。提供服务的透明调用功能,调用本地服务和远程服务使用同一接口,此接口返回服务的代理对象,只有在实际执行调用时,才会根据应用服务的位置,发起本地调用或远程调用。
(6)审计日志。提供服务的可管理性。服务可注册、可配置、可授权,有详细的调用日志用于审计、排错、性能优化。
2.底层基础开发框架
通过PaaS公共应用支撑平台的底层基础开发框架为第三方应用开发和平台二次开发提供敏捷快速的基础开发架构。主要功能包括:提供采用OSGi+Spring+Struts+Hibernate的企业级应用基础开发框架;基于OSGi开放标准,以搭积木的方式构建系统;整合Spring、Struts、Hibernate等Java开源技术为应用系统开发提供敏捷快速的基础开发框架。
3.应用支撑平台集群
公共应用支撑平台的集群服务实现多台应用服务器的集群部署。任何一台或多台服务器出现故障,在集群中冗余的服务器可以处理新到的请求,保证服务依然可用。集群服务提供高可用性、负载均衡、会话保持、分布式缓存,主要功能如下:
(1)高可用。支持服务器集群,任何一台或多台服务器出现故障,在集群中冗余的服务器就可以处理新到的请求,这样就保证了服务依然可用。但是在服务器失败的那一刻,正在被处理的请求就可能无法得到正确的数据。
(2)负载均衡。通过增加节点,线性提升集群的计算能力。每个节点具备完全相同的功能,并且不需要知道其他节点存在与否。负载均衡器来完成如何将请求分发给这些后台的服务器实例。
(3)会话保持。支持用户在任何一台服务器上登录后,集群将在多台服务器上保持会话信息,当这台服务器出现故障后,会由负载均衡交换机的健康检查机制将用户切换到其他服务器上,将能够保持用户的会话信息,不需要重新登录,用户不会发现后台的服务器已经更换了。
(4)分布式缓存。为实现SNA架构的集群,支持用户访问任何一台服务器都获得相同的结果,必须保证从集群服务器之外获取的信息一致,如数据库、文件、LDAP、JNDI等。支持在多台服务器之间同步状态信息,通过底层内置的分布式缓存来实现。
4.嵌入式应用服务
嵌入式应用服务为公共应用支撑平台提供Java运行环境。部署应用支撑平台时将不再需要购置WebLogic之类的商业应用服务器中间件产品。嵌入式应用服务的主要功能包括:为应用支撑平台提供内置嵌入式的高性能Web服务器Jetty,提供平台服务器端的Java运行环境;基于J2EE的开放技术标准,提供丰富的Http服务器和Web容器功能,支持采用Ajax的Web 2.0应用程序,采用NIO和Continuation机制来处理大量的用户请求以及时间比较长的连接。
5.统一用户管理系统
在公共应用支撑平台中,统一用户管理系统提供PaaS平台所必须的基础组织身份模型管理和身份服务,主要功能如下:
(1)组织身份模型管理。构建统一的组织身份模型,提供机构、部门、人员、角色、用户组、岗位等实体对象的管理功能,并提供实体对象关系管理。
(2)属性扩展。对所有实体对象提供扩展属性,可以根据应用场景自定义扩展属性。
(3)组织身份管理服务。可以将组织机构管理功能以WebService服务的形式提供,包括对组织身份模型中各个实体对象的修改、查询、删除、授权等操作。
(4)分级管理。通过和访问控制系统相结合,能够实现组织身份的分级管理,即将上级部门的维护权限,授权给下级部门的管理员,由该管理员维护其权限范围内的组织身份数据。
(5)身份认证安全管理。系统应具有良好的安全性和可靠性,保证数据的一致性;支持安全访问控制、安全认证、加密签名;对非法登录或系统故障等事故能采取多种检查和处理手段;可采用故障恢复、告警和处理机制;可保证高效、海量的数据查询性能、更新性能、批量数据插入性能。
6.身份同步服务
身份同步服务提供完善的导入、导出和数据同步功能,将组织身份数据推送到其他组织身份库中,主要功能如下:
(1)身份数据导入导出。用户信息管理应提供完善的导入、导出和数据同步功能,用于从现存用户信息数据库导入,并支持导入、导出的格式为XML和Excel。
(2)身份数据推送。提供组织身份推送功能,将组织身份信息管理模块中的数据推送到其他组织身份库中,同步的频率、范围可配置。
(3)实时监听服务。实时监听对组织模型的操作(增加、修改、删除用户和部门等对象),可支持向Web服务推送数据。
(4)自动重试。在目标系统出现故障发生同步失败,待目标系统恢复后,可自动重试。
7.统一访问控制系统
在公共应用支撑平台中,统一访问控制系统提供通用访问控制服务。访问控制服务提供对用户身份的统一权限配置和统一访问控制等服务。能够针对各类业务资源授予相应的权限范围,将用户实体与其角色、岗位、部门等权限属性相分离,使每个人员都具备不同的应用权限,实现每级或每个用户只能在自身的权限范围之内访问相应的业务资源。主要功能如下:
(1)权限模型。基于RBAC模型进行角色的管理,各种应用均需在RBAC框架下,统一使用Role的概念,建立Role、Group和应用权限的对应关系。
(2)权限导入。提供资源和权限的导入、导出功能,能够以XML格式导入、导出,实现在不同系统之间的资源和权限的数据迁移。能支持资源的扩展属性管理。
(3)权限继承过滤。提供权限继承和权限过滤功能。权限的继承通过对象的父子关联实现,要求实现操作者和资源双向继承。权限过滤功能可过滤当前资源节点从父节点继承获得的访问权限。
(4)负权限。提供负权限功能。负权限是指操作者不应该拥有的权限。负权限通过权限计算叠加完成,计算时负权限优先。
(5)权限等效。提供权限等效功能。设置用户B等效于用户A,则用户B拥有用户A的所有权限,权限等效具有时效性。
(6)权限计算。提供权限列表和权限计算,选择资源范围和操作者集合,权限列表将权限计算的结果形成三维矩阵,横向为操作者,纵向为资源,中间为具有权限的操作。权限计算可计算单个操作者对单个资源具有权限的操作,并显示该权限的来源。
(7)访问控制域。支持访问控制域,可根据应用场景划分为不同的访问控制域,可为访问控制域设置资源范围、操作者集合、域管理员,由域管理员在管理范围内进行资源、操作者的授权管理。访问控制域可划分为多级。
(8)权限日志审计。提供权限日志审计功能。提供权限的变更审计日志,以及权限的访问日志。提供记录和审计所有访问尝试的能力。
8.统一单点登录服务
在公共应用支撑平台中,通过统一单点登录服务调用向办公门户以及各个业务应用系统提供通用单点登录服务,主要功能如下:
(1)身份信息获取接口。提供标准的用户身份信息获取接口。从单点登录认证服务器中获得用户身份信息,实现应用系统自身的访问控制。
(2)单点登录信任域。支持单点登录信任域,完成单点登录整合后,在域内的所有应用相互之间可以实现随意跳转,不需要对跳转URL等进行改造。支持跨域的身份认证,可以配置多个域双向或单向信任。
(3)认证监控配置。提供认证监控配置。初始化子系统的单点登录配置信息,监控用户的访问请求,自动判断用户是否已经通过认证。
(4)多种认证方式。支持多种认证方式,可以与PKI/CA数字证书、指纹等强认证模块集成。可针对不同的组织身份信息存储方式同时配置多种不同的认证方式,包括数据库、LDAP、OAuth、OpenID等。
(5)监听器配置。对于基于JEE标准构建的B/S结构的应用系统,可通过配置监听器的方式实现单点登录。
(6)一次性访问票据。提供支持票据的REST访问协议,提供一次性的访问票据,避免重放攻击。
9.统一消息管理系统
在公共应用支撑平台中,统一消息管理系统提供消息的消费服务和管理服务。通过统一的消息管理在用户和信息源之间搭起一座桥梁,使用户通过多种途径(包括通过内网门户、邮件系统、即时通讯工具)与统一消息服务中心“相连”,通过统一消息服务中心可以得到多种信息服务,如业务办理、公文待办、信息发布审核、行政审批等,主要功能如下:
(1)消息集成。对于办公系统、业务系统中的各类消息进行集成。
(2)消息分类汇总。按照需要进行分类汇总,如待办消息、催办消息、传阅消息、通知消息、系统消息、日程消息、邮件消息、短信消息等。
(3)消息展现。根据需要,将各分类消息在指定位置展现。
(4)消息的格式、类别的可扩展。支持消息的格式、类别的可扩展。
4.2.6 总结
PaaS公共应用支撑平台为智慧政府建设提供了一套进行定制化研发的中间件工具。PaaS公共应用支撑平台提供各种服务管理利用的环境,提供可视化的接口服务管理,可通过Web服务调用数据服务接口,提供数据即服务(Data-as-a-Service, DaaS),可通过PaaS平台的工作流、电子表单等应用中间件提供业务的定制。用户或者厂商基于PaaS平台可以快速开发自己所需要的应用和产品。同时,PaaS平台开发的应用能更好地搭建基于SOA架构的企业应用。
基于PaaS公共应用支撑平台可以实现对机构的特定资源(组织、身份、岗位、角色、服务、资源)的统一配置和管理,提供统一身份管理、统一访问控制、统一单点登录、统一消息集成等功能。在工程实践中可用于为新建应用系统提供基础公共支撑服务,也可用于为已建成的、第三方的应用系统提供整合支撑服务。
通过研究与实践证明,PaaS公共应用支撑平台相对传统的应用支撑架构具有显著优势。公共应用支撑平台采用SOA技术架构开发,具有高效便捷的服务调用模式,微内核模块化的结构使系统以搭积木方式构建,具备更强的松耦合特性,稳定性强、可扩展性强。同时SOA技术有完善的一系列国际国内标准规范,遵循标准设计的公共应用支撑平台,具有体系结构开放、兼容性强、可促进产业化合作的优势。
4.3 智慧政府SaaS应用服务中心
4.3.1 SaaS与云计算
1. SaaS的基本概念
SaaS在中国互联网及软件领域现在常被称为软件运营。传统意义上SaaS是基于互联网提供软件服务的软件应用模式,客户按使用时间或使用量付费。作为一种创新的软件应用模式,是软件技术发展的最新趋势。
互联网应用技术高速发展,取得了卓越成效。智慧政府建设是信息技术发展领域的重要组成。目前,电子政务在内网或专网环境下的建设也在不断借鉴、融入互联网的先进理念和技术思路。智慧政府SaaS应用服务中心正是在这样的时代背景下蓬勃发展,开启智慧政府建设的新里程。
2. SaaS与云计算
追根溯源,云计算是(广义的基于SOA的)SaaS技术和理念融合、提升、发展后的产物。出现更早的网格计算主要负责硬件资源的整合、管理、分配与使用,而SaaS是基于SOA的理念和技术把计算资源和应用变成各种服务。因此SaaS不是云计算,云计算也不等于SaaS,但SaaS是云计算上的应用表现,云计算是SaaS的后端基础服务保障。云计算将弱化SaaS门槛,促进SaaS发展。云计算应用直接剥离出去,将平台留下,做平台的始终做平台,做云计算资源的人专心做好资深的调度和服务。SaaS服务商只需要关注自己的软件功能表现,无需投入大量资金到后端基础系统建设。云计算系统建立起来之后SaaS将获得跨越式的发展,云计算将大力推动SaaS发展。
根据美国国家标准与技术研究院(National Institute of Standards and Technology, NIST)权威的定义,云计算分为SaaS、PaaS和IaaS三大服务模式。这是目前被业界最广泛认同的划分。PaaS和IaaS源于SaaS理念。
SaaS提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过瘦客户端界面访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等。
PaaS提供给消费者的服务是把客户采用提供的开发语言和工具(例如Java, python, .Net等)开发的或收购的应用程序部署到供应商的云计算基础设施上去。客户不需要管理或控制底层的云基础设施,包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可能控制运行应用程序的托管环境配置。
IaaS提供给消费者的服务是对所有设施的利用,包括处理器、存储、网络和其他基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序。消费者不管理或控制任何云计算基础设施,但能控制操作系统的选择、储存空间、部署的应用,也有可能获得有限制的网络组件(例如,防火墙、负载均衡器等)的控制。
3. SaaS成熟度模型
SaaS成熟度模型如表4-3所示。
表4-3 SaaS成熟度模型
(1)定制开发(Level 1)。最初级的成熟度模型,其定义为Ad Hoc/Custom,即特定的/定制的,对于最初级的成熟度模型,技术架构上跟传统的项目型软件开发或者软件外包没什么区别,按照客户的需求来定制一个版本,每个客户的软件都有一份独立的代码。不同的客户软件之间只可以共享和重用少量的可重用组件、库以及开发人员的经验。最初级的SaaS应用成熟度模型与传统模式的最大差别在于商业模式,即软硬件以及相应的维护职责由SaaS服务商负责,而软件使用者只需按照时间、用户数、空间等逐步支付软件租赁使用费用即可。
(2)可配置(Level 2)。第二级成熟度模型相对于最初级的成熟度模型,增加了可配置性,可以通过不同的配置来满足不同客户的需求,而不需要为每个客户进行特定定制,以降低定制开发的成本。但在第二级成熟度模型中,软件的部署架构没有发生太大的变化,依然是为每个客户独立部署一个运行实例。只是每个运行实例运行的是同一个代码,通过配置的不同来满足不同客户的个性化需求。
(3)高性能的多租户架构(Level 3)。在应用架构上,第一级和第二级的成熟度模型与传统软件没有多大差别,只是在商业模式上符合SaaS的定义。多租户单实例的应用架构才是通常真正意义上的SaaS应用架构,即Multi-Tenant架构。多租户单实例的应用架构可以有效地降低SaaS应用的硬件及运行维护成本,最大化地发挥SaaS应用的规模效应。要实现Multi-Tenant架构的关键是通过一定的策略来保证不同租户间的数据隔离,确保不同租户既能共享同一个应用的运行实例,又能为用户提供独立的应用体验和数据空间。
(4)可伸缩性的多租户架构(Level 4)。在实现了多租户但单实例的应用架构之后,随着租户数量的逐渐增加,集中式的数据库性能就将成为整个SaaS应用的性能瓶颈。因此,在用户数大量增加的情况下,无须更改应用架构,而仅需简单的增加硬件设备的数量,就可以支持应用规模的增长。不管用户多少,都能像单用户一样方便地实施应用修改。这就是第四级也是最高级别的SaaS成熟度模型所要致力解决的问题。
4.多租户技术
多租户技术是实现SaaS部署的重要技术手段。多租户技术(Multi-Tenancy Technology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。也就是说,多个用户单位登录到同一网站,但登录后看到的界面和数据,不同的用户单位大不相同。“多租户”是私有云和公共云都具有的共同特征,它可以体现在云的三层中,即IaaS、PaaS和SaaS。SaaS是应用软件的一种提供方式,客户按使用时间或使用量付费。
由于云计算技术的迅猛发展,在共用的数据中心内如何以单一系统架构与服务提供多数客户端相同甚至可定制化的服务,并且仍然可以保障客户的数据隔离,让多租户技术成为云计算技术中的焦点。我们通常所说的应用程序对多租户的支持程度,其判定依据是基于多少核心应用层(或者SaaS)是可以让各个“租户”共享的。完全支持多租户模式指的是允许多个“租户”共享数据库的表空间、支持对业务逻辑、工作流和用户界面的定制。换句话说,所有SaaS的子层都提供对“多租户”的支撑能力。最低程度地支持“多租户”也至少意味IaaS和PaaS层可以共享,只是每个“租户”有自己专有的SaaS层。中等程度地支持“多租户”,则是具有同样特征的一组“租户”共享数据库的表空间及其他应用层,而不同组的“租户”有其自己的数据库和应用程序。技术上,多租户技术可以通过许多不同的方式来切割用户的应用程序环境或数据。
(1)数据面(data approach)。供应商可以利用切割数据库、切割存储区、切割结构描述或是表格来隔离租户的数据,必要时会进行对称或非对称加密以保护敏感数据,但不同的隔离做法有不同的实现复杂度与风险。
(2)程序面(application approach)。供应商可以利用应用程序挂载环境,于进程上切割不同租户的应用程序运行环境,在无法跨越进程通信的情况下,保护各租户的应用程序运行环境,但供应商的运算环境要够强。
(3)系统面(system approach)。供应商可以利用虚拟化技术,将实体运算单元切割成不同的虚拟机,各租户可以使用其中一至数台的虚拟机来作为应用程序与数据的保存环境,但对供应商的运算能力要求更高。
4.3.2 SaaS应用服务中心设计思路
1.什么是应用服务中心
SaaS应用服务中心提供电子政务共性业务的统一建设和服务,为服务运营管理部门和使用单位提供服务管理、服务在线体验、服务建设申请、应用展示、绩效统计分析等功能,是智慧政务内网专有云平台的最终应用展现。SaaS应用服务中心为用户提供应用服务选择、演示、申请、审批的环境,每一项公共应用服务都能解决某一种办公业务的电子化操作。用户单位可以在服务建设中心选择需要的公共服务,并且可以提前试用演示服务器提供的业务模块及服务演示。同时可以在线申请服务使用或项目建设,平台可与项目管理系统、合同管理系统互联互通,为区域政府内网信息系统项目建设、管理提供统计数据支持和管理流程的支持。
SaaS应用服务中心实现了智慧政务的业务服务化建设目标。采用SOA技术及多租户技术,将应用和数据分离,共性需求统一建设,封装为标准公共服务模块,实现各类业务的服务化管理。SaaS应用服务中心实现了开放性建设目标。SaaS应用服务中心的设计遵循开放标准原则,基于PaaS公共应用支撑平台,提供多厂家共同建设的途径,可以不断整合各种专用软件,使后续建设具有更好的扩展性和兼容性。SaaS应用服务中心实现了即时性服务目标,为用户单位提供即时、高效、可视化的云服务,可选择、定制公共服务,缩短了项目申请、建设周期。同时,信息化主管部门从项目建设转变为服务采购,SaaS应用服务中心提供了一种全新的电子政务项目管理模式。
2.应用服务中心发展状况
目前,国家信息化“十二五”规划明确了云计算在电子政务建设中的作用和地位。在电子政务领域,基于云计算的各种应用蓬勃兴起,电子政务内网的SaaS应用服务中心建设正处于蓄势待发阶段。
基于互联网的SaaS应用服务已经发展多年,我们最为熟知的是应用商店(App Store)的模式。根据第三方非营利市场调查研究机构统计,2012全球应用商店及交易服务平台市场迎来高速增长。中国地区基于网络化的产品交易行业突飞猛进。联盟化、企业化的产品交易服务平台应用呈全流程上升趋势。
近几年,在国际基于网络的产品交易领域,先后崛起的交易平台有苹果软件应用商店(App Store)、诺基亚软件应用商店(Ovi Store)、微软软件应用商店(Windows Marketplace)、谷歌软件应用商店(Android Market)、LG软件应用商店(LG Application Store)、黑莓软件应用商店(BB App World)等。
在我国,互联网上SaaS应用的热点是基于网络的产品交易,即B2B领域,这些年也先后崛起了多个交易平台,如中关村在线、淘宝网、阿里巴巴、慧聪网、中国制造、生意宝、华强电子网、机客手机应用商店、中国移动软件应用商店、中国联通软件应用商店、中国电信软件应用商店、历趣手机应用商店等平台。
中国互联网应用发展取得了势不可挡的成就,电子政务内网建设借鉴和吸纳互联网发展的优秀元素成为必然趋势。在智慧政务建设中,如何构建服务交易环境,如何运营管理,如何改变信息化工程的传统管理模式,成为智慧政府研究的热点。
3.何种业务适合采用SaaS
什么样的业务适合采用SaaS应用服务模式来建设呢?根据信息化建设的特点和经验,用户单位共享资源越多,资源利用效率会越高,单位资源建设成本会更低,但用户单位间的隔离性随着共享程度的加深会越来越困难。数据隔离的降低会带来何种问题呢?数据安全性降低、用户单位间性能异常相互影响等。为了保证对多租户的服务质量,数据隔离面临的种种尴尬,是必须解决的问题。租户间共享资源越多的架构,租户隔离难度越大,成本越高。租户隔离难度越大,应用开发难度,测试和维护成本都会上升。所以,在单位资源成本和租户隔离成本间取最佳平衡点,就能找到最合理的架构。
在基于云计算的智慧政府建设中,从IaaS、PaaS到SaaS, SaaS的应用层次最高,为多用户单位提供软件应用服务的共享使用,SaaS模式下用户间共享的资源也最多。厂商选择多租户架构与其擅长的业务领域的技术积累密切相关。同时,租户的需求是否有共性,也是架构选型的重要依据。例如互联网上针对企业服务的CRM(客户关系管理系统),电子政务内网的协同办公系统,这些领域的用户需求共性明显,采用高层次的SaaS共享架构就非常合适。如果租户间需求没有趋同,例如租户的需求是来自多个领域的,或者同领域但有大量定制,则采用SaaS模式非常困难。这时,选择共享程度低的架构反而比较明智,例如只共享IaaS层资源。
4. SaaS应用服务中心设计思路
SaaS应用服务中心的主要设计思路包括服务的标准化、模块化和可管理性设计等。
(1)服务标准化是指SaaS应用服务采用符合国际国内标准规范的技术开发,同时采用标准的业务分类及描述方法定义每一项应用服务,使服务的升级、扩展有法可依,有章可循。
(2)服务模块化是指SaaS应用服务的设计和开发,以模块化方式构建每一个服务组件。应用服务可以独立部署和安装,能够被多个业务系统调用。
(3)服务可管理是指SaaS应用服务中心提供对应用服务的全生命周期管理,包括服务发布、申请、使用、改进、统计等。
在SaaS应用服务中心的系统架构设计中,多租户的隔离、数据存储方式、SaaS应用的访问控制、业务的抽象和可定制程度等也是设计的重点。
5. SaaS应用服务中心逻辑结构
SaaS应用服务中心逻辑结构图如图4-8所示。
图4-8 SaaS应用服务中心逻辑结构图
(1)IaaS基础环境
IaaS层为智慧政府信息系统建设提供基础运行环境,包括机房设备、网络环境、服务器、存储设备、操作系统、数据库、服务器虚拟化、负载均衡、集群等基础软件环境,是支撑SaaS应用服务的底层基础设施。
(2)PaaS应用支撑平台
PaaS应用支撑层为云计算服务提供基础的技术支撑。云计算开放平台服务架构采用分布式架构设计,保证整个系统的高可用、高扩展、高可靠、高安全、高性能。同时云计算平台是一个开放式的服务平台,对外开放了平台的各种服务,聚合了众多的独立软件开发商、应用提供商、内容提供商、服务提供商等产业链的各种商家,有效保证了平台的生命力。
该层由成熟的工具软件及中间件构成,为业务层提供应用支持服务,包括应用服务运行管理框架、基础支撑服务、工作流服务、电子表单服务、统计报表服务等。应用服务运行管理框架提供云平台上服务的注册、发布、调用、管理。基础服务包括组织身份服务、访问控制服务、单点登录服务、身份同步服务、统一消息服务组件、负载均衡集群服务、嵌入式应用服务器组件、底层基础开发框架组件等。工作流、电子表单等基础应用服务为业务系统建设提供公共应用支撑。
同时,该层汇集了各类数据资源,包括用户数据、文件数据、业务数据,为各类应用提供核心数据服务。该层也汇集了各类服务资源,包括基础服务、公共服务、接口服务,为协同办公系统建设提供应用服务支撑。
(3)SaaS应用服务中心
SaaS应用服务中心作为云服务的运营支撑平台,提供了SaaS服务的管理功能,有效保证SaaS服务平台的安全性、可靠性、可用性。SaaS应用服务中心提供服务管理、服务申请、服务体验、应用展示、绩效统计分析的综合应用环境。
SaaS应用服务中心注册了各种公共应用服务,通过这些应用服务的组合和复用,可以快速搭建出各种应用系统。同时通过PaaS应用支撑架构,还可以有效整合其他专项业务系统和合作伙伴的各种行业应用,为用户提供千变万化的解决方案。
(4)多渠道整合
提供了对电话、手机客户端、IM、触摸屏、手机、传真、短信、Web、邮件等多种客户接入渠道的整合支持,拓展了与客户互动的方式,满足用户从地面到空中等多种通路的覆盖。
4.3.3 SaaS应用服务中心与标准规范
1.广泛采用技术标准
SaaS建设模式下,将广泛采用技术标准,共性需求统一建设,实现业务的高度抽象,将业务功能封装为标准服务模块,并提供对这些服务模块的注册、发布、管理、监控。建立区域政府统一的SaaS应用服务管理中心,逐步构建完善可共享的应用服务资源库,建立可不断完善的标准化服务扩展机制,避免各部门系统建设中的重复开发和不规范建设,为系统的交叉升级提供有序管理。SaaS应用服务中心将成为各种公共应用服务的调度中心,实现各类业务的云端化管理。
2.支持多厂商开放共建
SaaS应用服务中心的设计应遵循开放共建原则,采用相关国际、国内技术标准进行设计,使后续的开发和实践具有更好的扩展性和兼容性。平台和业务系统不是某一个厂家一次性建设的成果。按照开放性设计原则设计的云平台,支持多厂商共同建设,可以不断整合多厂商的优势产品,保持持续发展,为业务系统建设提供服务。
3.制定应用服务业务分类及描述规范
通过制定SaaS应用服务业务分类及描述标准,逐步引导业务规范发展,有利于区域政府构建统一的、集约化的、标准化的公共应用支撑平台。遵循统一的业务标准规范,不仅避免了重复建设,也避免了用户单位被软件厂商所束缚,也为系统建设的可持续发展提供了规范化指引。当然,在建设初期也应该兼顾现状,正视用户单位的个性化需求,适当减少SaaS模式推动的阻力,采取部门个性化需求满足与规范引导同步推进的策略,逐步加强业务标准化工作的制定推广。
在业务规范的制定中,应用服务的分类及描述规范尤为重要。首先应制定应用服务的分类及编码规范。规范公共应用服务的分类原则,如6大业务类、3种服务型。对业务类别进行具体规定,同时制定分类的编码规范。同时应制定应用服务的描述规范,规范平台上公共应用服务的功能描述,采用相同的描述规则进行定义说明,使部门业务人员和参与建设的技术人员用共同的方式表达和理解应用系统。
4.3.4 SaaS应用服务中心功能
建设智慧政府云平台应用服务中心,核心业务包括服务管理中心、服务在线体验中心、服务建设申请中心、应用展示中心、绩效统计分析中心等内容的建设。为使用内网政务私有云的用户提供软件应用服务选择、演示、申请、审批的环境,为云平台运营提供应用服务管理、发布、监控、绩效统计汇总的环境。
1.服务管理中心
服务管理中心为系统管理员提供SaaS应用服务发布、管理的工作环境,为服务使用者浏览服务、体验服务、选择服务、申请服务提供支持。
(1)提供应用服务管理,包括服务新增、发布、删除、维护等功能。提供对服务名称、实施类型(即用型、定制型、二次开发型)、业务分类(文件流转类、信息发布类等)、服务描述等信息的管理。实现云平台上公共应用服务的集中管理。
(2)提供演示视频管理,包括所有应用服务演示视频的新增、修改、删除、管理、在线播放、视频下载。
(3)提供试用系统管理,包括所有应用服务试用功能的新增、修改、删除、管理、测试管理。
(4)提供文档材料管理,包括所有应用服务的使用说明、培训材料的上传、修改、删除、管理、在线浏览、文件下载。
(5)提供应用服务使用单位管理,包括服务使用单位的维护、自动新增、与服务的关联显示、服务被采用次数的统计显示等功能。
2.服务在线体验中心
各单位可以在云平台服务中心选择需要的应用服务,并且可以观看服务的演示视频,可以实际操作、试用服务的具体功能。服务在线体验中心的功能包括应用服务展示、试用账户管理、服务人员在线交流等。
(1)应用服务展示,包括服务推荐、服务描述、服务分类查找、服务目录、服务列表、服务浏览、服务的摘要说明等功能。
(2)试用账户登录管理,体验中心设置一组试用用户账户,申请试用系统的用户,可以通过体验中心自动获取登录试用账号。体验中心可以同时为多个试用用户分配用户体验账号。
(3)服务人员在线交流,指用户与云平台驻场服务人员在线互动交流,提供文字实时交流功能。
(4)服务体验内容的制作,应用服务的演示视频录制、使用说明编写、试用服务的定制实施部署等。
3.服务建设申请中心
通过SaaS应用服务中心可以在线申请应用系统建设项目,云平台提供与项目管理、合同管理等系统的数据交换接口服务。
(1)提供服务选择管理。用户单位在服务申请过程中,通过服务选择功能将准备向运营管理部门申请使用的应用服务添加到申请表中。申请表中自动汇总列表显示待申请的各种应用服务。
(2)提供服务申请表管理。可实现在线提交服务使用申请功能,包括申请表定制、已选择服务的自动加载、应用服务列表、个性化需求列表、申请理由、建设时间要求、附件材料等内容的新增、修改、删除、管理。
(3)提供申请审批功能。用户单位提交的申请经过本单位领导签字确认后,可在线提交到运营管理部门。通过网上审批流程完成申请接报、项目评审、领导批复、审批结果反馈等办理流程。审批结果将通过短信、待办提醒等反馈给申请单位的经办人或领导。如果审批通过,将同步通知SaaS应用服务中心运维技术人员依据申请内容完成实施工作。
(4)提供申请材料管理。包括部门在线申报过程中,申请表、附件材料、申报书等文件档案的维护、管理、查询。
4.应用展示中心
(1)提供各单位SaaS应用系统的汇总展示,包括应用效果集中展示区域以及用户单位使用公共应用服务情况的汇总,为云平台的统筹规划管理提供参考依据,为用户单位提供相互交流学习的途径,从而促进应用服务的推广和使用。
(2)提供用户单位建设内容展示,包括以图表结合方式展示基于云平台建设的应用系统的建设内容,以及应用界面截图和采用的应用服务、建设历程等展示。
(3)提供用户单位建设情况管理,包括对部门建设日期、使用年限、建设内容、采用的应用服务、部门的个性化业务需求、部门的应用截图、部门管理工作人员联系方式等基本情况进行新增、修改、删除等管理操作。
5.绩效统计分析中心
绩效统计分析中心提供对应用服务使用情况的统计分析,提供各个部门使用应用服务情况的统计分析,提供对云平台运行情况的统计分析以及对于应用服务需求的汇总统计,为SaaS应用服务中心的运营提供依据。
(1)提供用户单位应用需求统计,包括以用户单位提出的建设申请为依据,提供对各种应用服务、个性化需求的汇总统计。用户单位建设需求汇总数据将为SaaS应用服务中心统筹规划管理提供决策支持。
(2)提供用户单位应用统计,包括以部门为对象,对各部门信息系统中已采用的云平台应用服务、部门个性化功能等建设情况的统计汇总,统计结果用表格或饼图、柱图等格式显示。
(3)提供服务使用统计,包括以服务为对象,对SaaS应用服务中心应用服务的使用状况进行分类统计。提供对即用型、定制型、二次开发型等不同服务实施类别的使用情况统计汇总。提供对文件流转类、信息发布类、行政管理类等不同种类应用服务的使用情况统计汇总。
(4)提供运行数据统计,包括SaaS应用服务中心注册用户数、部门数、收发文单位数、集中部署单位数、在线用户数、用户日均访问数量等数据的统计。
4.3.5 SaaS应用服务体系建设
基于云计算的智慧政府公共平台建设中,以内网私有云的SaaS应用服务体系建设为讨论范围,可以将应用服务按照服务对象部门、个人、企业、公民等,划分为G2G、G2E、G2B、G2C类别。SaaS应用服务主要实现各个用户单位提出的共性业务需求。例如具有共性特点的政务服务可以包括公文流转、信息发布、行政管理、内部沟通、辅助办公、登录认证等类别。
SaaS应用服务依据业务分类及描述规范有序建设,以模块化方式发布,可独立部署和安装,能够被多个业务系统调用,支持多部门多用户共同使用。SaaS应用服务是对业务的高度抽象,可以进行发布、申请、使用、改进、统计等全生命周期管理。
每一项应用服务都能实现某一种办公业务的电子化操作。应用服务从建设模式的角度将划分为3种类型:即用型服务、定制型服务和二次开发型服务。
1.即用型服务
即用型服务是指部门申请后,立即可以开通的服务,例如短信服务、天气服务、班车信息服务、车辆限号提醒等,特点为零定制。依据此特点,表4-4列举了政务服务中常见的即用型服务。
表4-4 即用型服务列举一览表
2.定制型服务
定制型服务是指与用户角色权限、业务流程、业务表单有关的服务,需要经过简单定制实现服务的使用,如发文管理、收文管理、业务信息管理定制、会议管理、车辆管理、请假管理等,特点为零编码。依据此特点,表4-5列举了政务服务中常见的定制型服务。
表4-5 定制型服务列举一览表
3.二次开发型服务
二次开发型服务是指需要根据用户的实际业务需求,调用云平台提供的专用接口服务,实现业务数据整合、用户UI界面调整、功能扩展开发。例如:待办提醒,需要实现待提醒业务与云平台消息服务的对接调用,从而达到推送指定消息的目的;部门文件全文检索,需要实现部门待检索文件与文件采集服务的对接调用,使部门文件自动归入可供全文检索的库中。二次开发型服务的主要特点是经过少量本地化实施开发,满足部门应用需求。依据此特点,表4-6列举了政务服务中常见的二次开发型服务。
表4-6 二次开发型服务需求一览表
4.3.6 SaaS建设模式分析
1. SaaS项目实施过程
基于智慧政务云平台提供的SaaS应用服务可以构建用户单位的信息系统。通常服务使用单位要经过服务选择、审核执行、统计结算这3个环节。
以采用云服务模式构建的协同办公云平台为例,说明用户单位如何通过SaaS应用服务中心申请部门协同办公系统的构建,步骤如下:
(1)用户单位进入应用展示中心了解参考其他单位的模块建设情况。进入服务在线体验中心选择、浏览、试用发布的应用服务。
(2)用户单位进入服务建设申请中心向主管部门提交申请表及需求补充说明等材料。主管单位将申请表批转给运维企业执行。
(3)运维企业通过开通服务、定制服务、二次开发等各种构建模式,快速为使用单位构建专有部门协同办公系统,完成部门建设申请。依据平台绩效统计分析中心提供的服务使用统计报告,按年度结算运维服务费用。
2. SaaS应用案例分析
SaaS应用案例分析图如图4-9所示。
图4-9 SaaS应用案例分析图
基于SaaS模式使用公共应用服务或者采用公共应用服务构建部门专有信息化系统,主要经费由3部分构成,分别是项目实施人工费用、个性化需求开发费用、服务使用年费。
项目实施包括两方面:一方面是开通SaaS应用服务过程中必要的二次开发、定制、开通设置等实施工作;另一方面是为了更好提升用户单位的服务体验,为用户单位开展的一对一需求调研、系统设计、集成测试、系统培训、运行保障等建设服务工作。
个性化需求开发是指针对用户单位提出的个性化功能进行独立开发。SaaS应用服务中心建设是一个逐步完善的过程,也可以共享的公共应用服务也是逐步进化演变。随着应用推进,个性化需求将逐渐减少,公共应用服务将逐步完善丰富。
服务使用不计入单个项目费用中,每年根据SaaS应用服务中心提供的绩效统计分析报告,按照服务年费方式结算。也可以按照用户单位或个人使用服务模块的数量等标准进行计算。
4.3.7 总结
智慧政府SaaS应用服务中心建设是基于云计算的电子政务公共平台直接面向终端用户的使用环境,这个环境为用户提供了云服务的使用、管理、绩效汇总平台。
SaaS应用服务中心带来了信息化管理创新。区域政府电子政务系统经过去十多年管理积累、业务积累,由统一规划建设迈向统一服务采购新台阶。应用服务统一建设大幅度提升资金投资效益。从以前的由规划定预算转变为由绩效定预算,投资效益更明确。使用云服务的单位由立项申请转变为服务开通,快速构建系统。彻底扭转重建设轻应用局面。同时,供需双方利益一致,重视质量,合力推广服务。
SaaS应用服务中心引导了技术创新。基于云计算,采用多租户架构进行服务中心建设,实现数据环境统一规划治理,实现服务模块化部署安装,实现多用户虚拟化分布使用,实现业务的高度抽象和交叉升级管理。SaaS应用服务中心为用户单位提供更及时更高质量更加透明的服务。同时,SaaS应用服务中心建设采用国内外技术标准,并且遵循相应的业务分类描述标准,支持多厂商共建开发,促进了软件产业的开放合作。