APP下载

支撑国网业务系统的SoGrid云平台研究与应用

2016-09-26张栋栋

计算机应用与软件 2016年3期
关键词:部署可视化构件

张 鹏 王 伟 熊 力 张栋栋

1(北京中电普华信息技术有限公司 北京 100192)2(国网电力科学研究院 江苏 南京 210000)



支撑国网业务系统的SoGrid云平台研究与应用

张鹏1,2王伟1熊力1张栋栋1,2

1(北京中电普华信息技术有限公司北京 100192)2(国网电力科学研究院江苏 南京 210000)

为促进国家电网公司业务系统构建的集成性和规范性,提出面向云时代的企业级应用构件开发平台SoGrid。重点介绍SoGrid云平台的整体架构,各个流程模块的功能设计,在企业部门的业务系统上的实际应用与性能分析以及下一步的工作展望。通过对业务领域的划分和构件的积累,该平台具有丰富的可组装构件库,构造服务群和全面的运行监控容器,支持可视化的框架服务配置和界面开发,实现了构件的可复用性和多种业务场景的变化需求,为各业务中心的系统开发提供了有效的支撑。

规范性SoGrid平台构件开发业务系统

0 引 言

随着国家电网公司业务的快速扩展,各个部门建设的系统中公共构件占用了大量的开发资源和重复性劳动。根据国网电科院“十二五”的发展规划,实现集团集约、高效、科学、精益和规范运转的研发体系平台的目标[3],需要建立以集成产品开发为理论基础的先进研发管理体系。构建统一的产品平台、技术平台和资源库,以促进技术共享,提升核心技术竞争力以及降低产品开发成本。

在整合开放技术优势和第三方产品基础上,项目组推出了开放的、可扩展的集成开发云平台,为用户提供了全新的信息化行业解决方案。该云应用平台是可被实例化的服务框架,基于业务抽象的应用构造服务,把复杂的代码开发转变为快捷的配置构造,支持软件设计与实现的复用技术。能够通过可视化界面为企业应用开发者提供一种全新的、高效的、集成的与构造式的开发环境,为业务场景的建设提供了有力的支撑和友好的用户体验。

1 系统概述

在智能信息化时代的背景下,国内外研究可定制开发、快速搭建系统的机构不断涌现。目前具有代表性的是IBM公司的Bluemix。Bluemix集合了DevOps和Iaas,通过结合敏捷开发和底层的基础架构,帮助用户及开发人员快速部署混合云环境。它主要围绕着Web应用服务、移动应用服务、数据库服务、大数据服务和开发支持构建相应的服务。Bluemix帮助开发人员使用平台提供的可组合服务的软件产品,构建面向云时代的企业级应用。

目前针对电力业务系统的构造器平台还没有成熟产品。经过调研分析,国家电网内部业务系统主要存在以下方面的问题:(1) 各个业务系统通用的工具性构件,产生重复开发工作;(2) 对于公共构件的使用,开发人员仍需要大量代码开发进行界面组织、属性配置和工作流设计;(3) 消息在业务间、公共构件间的消息传递没有统一的规范;(4) 外部市场的项目权限管理弱化了组织的分层概念[10]。

SoGrid云应用平台以可视化的方式快速搭建业务应用系统,配置化实现构件属性的管理,向导化的方式完成应用的开发。通过选择系统框架和公共构件工具进行系统环境的搭建,使用相应的工具实现页面的定制化开发和业务应用的构造。

SoGrid云应用平台提出“一群、一库、一容器”的构建思想,分别为服务构造群(CSG)、构件库(CMP)和运行时容器(RTC)。三个子平台相互关联与依赖,其中服务构造群提供的各层构造服务的产出成果生成构件库中的各类构件、运行时容器的运行环境和运行与监控引擎。目前SoGrid主要应用在Web应用系统的建设,未来将扩展到复杂事物处理等云应用产品系列。

2 SoGrid平台设计

2.1总体架构

SoGrid云应用平台作为PaaS(PlatformasaService)上的服务模块,提供丰富的可重用构件的静态存储和管理库。用于面向云时代的企业级应用的开发、部署和运维云平台的搭建;支持可扩充构造服务群,创造了全新的开发模式;构件的运行时承载容器,提供动态运行、全面监控和优化策略。

服务构造群:各业务构造器构造出的成果作为业务构件在构件库中进行管理;同时构件库中的构件也应能够回馈到构造服务群中,进行业务的修改或基于技术层构造的改变而重新构造。服务构造群应用基础设施构造层和开发框架构造层的构造服务的成果描述运行时容器的运行支撑环境,以构件库中技术构件的形态存在;同时业务构造层的监控构造服务基于业务的需求构造的监控服务业生成运行时容器的监控引擎。

结合国家电网的统一开发平台和基础框架的技术特点,SoGrid云平台的整体框架结构设计如图1所示。

图1 SoGrid云平台整体架构

2.2功能设计

SoGrid云应用平台是为了支撑各项目中心业务场景的快速搭建工作,利用可视化界面进行构件重组的全新开发模式,节省了大量的设计开发工作。云应用平台开发业务系统的主要流程包括分析设计、应用构造、集成部署和运行监控四个步骤,系统构建的开发流程如图2所示。

图2 业务系统开发流程

2.2.1分析设计

软件生命周期中,需求分析是系统开发的关键阶段,需要对用户的业务活动进行分析,明确业务系统的功能需求和性能需求。设计阶段需要将复杂的业务系统进行模块划分与设计,建立模块间的接口和组织结构关系。

针对用户需求的动态变化问题,该平台的分析设计采用树形图构造方法,将分析设计转换为模块间可视化的调用关系和层次结构,树中的每一个节点代表一个模块,连线代表调用关系。开发人员可以根据需求变化动态地添加修改模块节点,具有高内聚低耦合的特点。

开发人员能够根据业务需求进行末尾功能节点页面的原型设计,可视化设计界面提供了展示页面模板的搭建和测试功能。控件货架中包括基本控件、布局控件、数据控件、表单控件和UAP控件等丰富的控件资源。通过可视化拖拽控件和页面属性配置实现页面的快速开发,同时开发人员可以更改源码进行个性化界面的定制开发。

2.2.2应用构造

应用构造是系统搭建的核心阶段,包括系统构造和业务构造。构造服务群提供丰富的、可扩充的多种组件,开发人员可以选择框架和中间件,基于业务抽象的业务应用构造,把代码开发演变为组件的构造配置,适应于不同的业务场景的快速部署[1]。

(1) 系统构造系统构造为业务构造提供底层的基础支撑和集成封装接口,包括丰富的服务层构件和构造模型图。

目前组件货架分为应用基础服务层、开发框架服务层、业务构件服务层和监控服务层。应用基础服务层包括数据库构件、中间件和运行构件库;开发框架服务层包括平台框架、JS框架、集成框架和引擎框架;业务构件服务层提供了丰富的业务构件库和通用构件库[5,9];监控服务层包括客户端监控、系统监控、数据监控、网络监控和消息监控等多种监控。在系统构造过程中,可以通过点击或拖拽货架中需要的构件,自动配置到系统的构造模型图中。同时单击构造模型图中的构件图标能够取消相应的构件,系统构造完成后可以直接保存预览。

(2) 业务构造业务构造是基于系统构造的业务应用搭建,包括基础框架、页面构造、流程构造、监控构造和数据模型。

基础框架设计包括三分页框架、消息框架和权限框架。三分页框架通过可视化界面选择分页、样式、菜单和top设置项,以上每项提供了多种设计效果。消息框架和权限框架可以自定义配置属性,满足了不同用户的的场景设计需求。业务构造的原型界面设计如图3所示。

图3 业务构造原型界面

页面构造设计分为数据访问模型、数据显示模型、展示页面模板和测试功能。数据访问模型和数据显示模型选择所属模块对应的数据模型,并且具有配置模型基本信息、选择数据表、列属性设置、条件设置与SQL语句自动生成功能。列信息界面可以进行数据库界面配置,包括基本信息配置、验证表达式、平台组件专有配置、uap平台公共组件配置和数据表单专有配置,以及添加删除新列信息。展示页面模板分为工具箱和模型设计界面。工具箱提供丰富的控件资源库和页面信息配置[2],模型设计界面利用可视化拖拽式和参数配置技术,完成业务应用系统界面的构造。构造成果按照平台技术规范生成描述文件和构件包一同保存到构件库中,构造包的业务场景信息与描述文件之间存在映射关联,同时构造器实现对构件库中构件包的修改及版本管理。

流程构造结合菜单和流程图构造界面展示业务功能模块的设计流程。设计或开发人员直接基于功能设计中的业务流程需求,实现在线流程的可视化设计。选择树形图的叶子节点可以查看或编辑对应业务模块的基本信息、流程状态等信息。如图4是员工报销系统的流程设计界面。

图4 员工报销系统的流程图界面

监控构造设计将监控程序进行模块化封装,采用多元化的监控方式实现对业务系统的监控,可以搭建业务系统的多性能指标的监控。平台提供了服务端监控、系统监控、业务指标监控、网络监控和数据监控等多种服务,自定义设置阀值和告警功能等灵活的配置,为后期的运行提供保障。数据模型设计实现对所属模块的数据模型的选择,数据库中数据表结构、数据操作和数据表的约束依赖等配置。

2.2.3集成部署

SoGrid平台的集成部署介于构件库和运行时容器之间,可以实现独立物理部署和云部署两种方式。其中云部署不依赖特定的云平台,部署时的资源需求来源于构件库的构件包。构造完成的应用作为服务部署到云平台中,能够实现业务应用的多实例扩展,并采用适配器模式保证云平台间的可移植性。部署界面以矩阵方式展示可以部署的模块,点击所要部署的一个或多个模块节点,通过可视化界面定义待部署的项目模块的信息和节点性能的需求参数[8]。

集成部署优化了业务系统部署的功能,提高了部署的远程控制管理[7],促使部署适应于不同的应用场景,同时能够减少人工活动的参与以有效提高操作执行效率。

2.2.4运行监控

监控系统主要对业务系统、服务器、数据库、中间件、消息和日志文件等多种监控功能,辅助开发或运维人员对系统进行全面高效的维护管理。SoGrid平台的运行监控的是运行时容器的重要体现,来自构造服务群里监控构造服务的成果,提供了系统层、中间件及业务应用层全方位运行状态的监控,并提供安全策略进行可配置的在线控制调优。运行时监控可以作为独立服务,负责监控所有基于SoGrid平台部署的应用系统。运行监控根据云平台提供的虚拟化资源的运行数据与云平台进行功能交互,运行监控的设计提高了业务系统的监管优化能力。

在云部署模式下,运行监控通过云平台的接口获取云计算提供的运行资源的状态数据。该接口采用资源监控适配器模式对应虚拟机或中间件等多种资源管理层,适应不同的云平台。平台的部署与监控架构设计如图5所示。

图5 业务构造原型界面

运行监控通过图形化界面直观展现了系统的整体性能和各项指标曲线图。通过实现端到端的监控,对监控的业务逐级到代码调用层面,清晰定位到业务的性能瓶颈。运行监控是在统一集成环境中管理多个业务系统的状态和性能表现,多个业务模块使用同一个代理,与平台无关且支持面向对象。

3 平台特性与应用分析

3.1平台特性

SoGrid构造平台是面向国网业务系统的软件产品线。通过结构化的基础框架,公共构件和开发流程等过程,支撑业务系统的快速搭建和配置的全面解决方案,提供可视化构件开发平台。通过事件驱动引擎和算数模型控制器,集成各种设计器和业务模板,利用可视化的方式拖拽构件、配置属性和工作流,完成业务场景应用系统。

SoGrid云平台主要包括以下四种特性:

(1) 丰富的构件库。提供了丰富的通用技术构件和业务服务构件,适合于不同业务场景的快速开发。通过基础服务配置和可视化构件复用,适应于不同用户群体的要求,实现了业务构件的可复用性和多种业务场景的变化需求。

(2) 可视化开发。构件货架中展示了多种类别的丰富组件,开发人员通过直接拖拽组件并配置属性的方式快速、直观地完成业务场景的搭建。

(3) 统一的开发规范。基于开发平台SoTower和SG-UAP,在统一的架构和规范下,为开发人员提供了分析设计、构造、部署和运行监控的统一手段,实现了业务构件的可复用性和资源共享,有效提高了开发效率和系统的稳定性[11]。

(4) 全生命周期开发环境。提供面向企业级业务应用的集成开发环境,基于模板的向导机制完成共享资源的管理和部署,支持权限管理、组织机构管理和参数的动态配置功能。

3.2应用实例分析

SoGrid构造平台已经应用到基建管理信息系统、员工报销系统、营销费控系统、人资管理系统、科技管理信息系统等,并且为系统项目组提供持续的技术支撑,为项目组解决了很多项目技术难题。支撑项目平均节省30%人力成本,节省约70%的开发工作,目前项目应用统计信息如表1所示。

表1 支撑项目统计表

4 结 语

本文通过整合各个业务中心的业务需求,研发支持快速构建、部署和管理的构造系统。SoGrid平台包括分析设计、应用构造、集成部署、运行监控四个流程,有效支撑了国网公司的内部业务系统的搭建工作,减少了构件重复性工作,制定了统一的开发规范。随着框架服务的不断完善和技术改进,下一步的工作将建立基于多智能构件的知识复用模型,深入研究业务逻辑的构建模型和智能构件的活动配置[4],实现云计算和移动应用解决方案,增强业务构件的可扩展能力和构件服务平台对大数据的分布式处理,有效提高国网公司业务系统的建设水平。

[1]AlanWB.Large-scale,component-baseddevelopment[M].USA:PrenticeHallPTR,2000.

[2] 陈宵,吴毅坚,彭鑫,等.采用构件组装技术协同开发Web应用的方法[J].计算机科学与探索,2013,7(2):114-125.

[3] 国家电网公司.关于国家电网公司“大规划”体系建设方案的报告[R].北京:国家电网公司,2011.

[4] 蒋伟进,许宇晖,张莲梅.基于MAS构件技术的复杂知识复用动态演化模型研究[J].系统工程理论与实践,2013,33(10):2663-2673.

[5] 康知金,张宏国.基于构件组装的项目管理系统开发研究[J].计算机应用与软件,2010,27(2):184-187.

[6] 李顺,王焘,宋云奎,等.面向OSGI框架的软件构件监控方法的设计与实现[J].计算机应用与软件,2014,31(4):1-6,58.

[7] 乔亦民.基于构件的业务基础平台研究与设计[D].江苏:江苏大学,2013.

[8] 丘昌程.云计算模式下主动服务架构的研究[D].武汉理工大学,2010.

[9] 王祥宗,刘志,刘增良,等.基于规则的业务构件组装规约[J].计算机集成制造系统,2008,14(9):1774-1780.

[10] 尹洪苓,曹占峰,王琰洁.规划计划管理业务应用支撑平台[J].计算机系统应用,2014,23(5):64-68.

[11] 张健,文爱军.SoTower平台在国家电网公司招投标业务深化研究中的应用[J].电力信息化,2008,6(12):47-50.

RESEARCHANDAPPLICATIONOFSOGRIDCLOUDPLATFORMSUPPORTINGBUSINESSSYSTEMOFSTATEGRID

ZhangPeng1,2WangWei1XiongLi1ZhangDongdong1,2

1(Beijing China Power Information Technology Co.,Ltd.,Beijing 100192,China)2(State Grid Electric Power Research Institute,Nanjing 210000,Jiangsu,China)

Inordertopromotetheintegrationandnormalisationofstategridbusinesssystem,weproposethecloudera-orientedSoGrid,whichisacomponentdevelopmentplatformforenterpriseapplications.ThispapermainlyintroducestheoverallarchitectureofSoGridcloudplatform,functionaldesignofeachprocessmodule,practicalapplicationandperformanceanalysesonbusinesssystemofenterprisesectoraswellastheprospectsofnextstepwork.Throughthedivisioninthefieldofbusinessandtheaccumulationofcomponents,theplatformhasrichassembledcomponentlibrary,constructsservicesgroupandcomprehensiverunningmonitorcontainers,supportsvisualisedframeserviceconfigurationandinterfacedevelopment,implementsthereusabilityofcomponentandthechangingrequirementinvariousbusinessscenes,andprovidesastrongsupportforthesystemdevelopmentsinregardtoeachbusinesscentre.

NormalisationSoGridplatformComponentdevelopmentBusinesssystem

2014-08-31。张鹏,副研究员,主研领域:企业架构EA设计,大型企业整体架构设计。王伟,高工。熊力,高工。张栋栋,工程师。

TP3

ADOI:10.3969/j.issn.1000-386x.2016.03.029

猜你喜欢

部署可视化构件
基于CiteSpace的足三里穴研究可视化分析
思维可视化
一种基于Kubernetes的Web应用部署与配置系统
晋城:安排部署 统防统治
部署
基于CGAL和OpenGL的海底地形三维可视化
“融评”:党媒评论的可视化创新
建筑构件
建筑构件
建筑构件