目录

引言

  在2010年曾经给用户建设业务流程平台,上线后用户提出新开发流程测试问题,当时的解决方案是在测试流程申请单上填写“流程测试”字样。
  在2012年管理支撑系统项目中,系统上线时就是利用2013年元旦假日,以及前面的周末,连续上班三周,而且还晚上加班。为什么呢?是为了不影响用户正常办公使用,开发人员必须晚上18点以后加班部署、测试,而对于较大规模的部署、测试,还得利用上节假日进行。
  直到2012年秋天,我在参加集团云门户项目时,才深刻认识到应用系统平台生态环境的重要性。
  为了让用户信息化人员、软件开发人员少加班,也能享受到节假日,也让用户把心放在肚子里,需要为用户设计套系统平台生态环境。
  如下所述案例是为业务流程系统能力平台所提供的生态环境。
  (1)基本生态环境,更确切的说,就是理想经济型生产环境,只为用户(含运维人员)提供稳定、灵活、快速开发的服务,最少包括:生产平台、测试平台、开发平台及相关开发管理平台,细节详见文中介绍;
  (2)扩展基本生态环境,这是IT业界所推荐的经济型生产环境,为用户(含运维人员)、软件供应商(含服务商)提供稳定、可靠、规范化开发服务的信息系统开发管理平台,细节详见文中介绍。

办公流程能力平台生态环境设计

需求

  (1)新需求或业务变更的开发、测试与实施不影响既有系统环境稳定运行;
  (2)基于Cordys BOP 4产品,以流程为中心,搭建办公系统统一PaaS开发和运维平台,满足办公业务及未来发展需求;
  (3)使用Gartner云计算多租户参考模型,搭建多级、多层、垂直管理业务模型,为虚拟组织提供灵活解决方案。

基本生态环境

办公能力平台生态环境

  在继承利旧原系统的基础上,新建平台生态环境通常由以下5个环境构成:

  • 业务生产环境(1)
  • 业务(流程)测试平台(2)
  • 业务(流程)开发平台(3)
  • 开发管理环境(4)
  • (利旧)业务生产环境(5)

部署服务器设计方案

环境名称设备类型配置数量安装服务内容
业务生产环境——应用PC Server4C16G4应用服务软件(1)
业务生产环境——数据库小型机利旧2Oracle HA
业务(流程)测试环境——应用PC Server2C8G2应用服务软件(1)
业务(流程)测试环境——数据库PC Server2C8G1Oracle(注:提供开发实例)
业务(流程)开发环境——应用PC Server4C16G1应用服务软件(1)
开发管理环境PC Server2C4G1配置管理服务SVN
(利旧)业务业务生产环境——应用PC Server4C8G4应用服务软件(2)

说明:

  • 应用服务软件(1)组成:Cordys BOP 4 (内含Car)、Apache Http、MySQL、MongoDB;
  • 应用服务软件(2)组成:Cordys C3(内含Car)、Apache Http;
  • 上表中,PC Service操作系统都为Linux;
  • 关于许可License,除了生产环境外,其他都是开发许可。

扩展基本生态环境

扩展基本生态环境

部署系统建设期开发服务器

环境名称设备类型配置数量安装服务内容
业务(流程)测试环境——应用PC Server2C8G2应用服务软件(1)
业务(流程)测试环境——数据库PC Server2C8G1Oracle(注:提供开发实例)
业务(流程)开发环境——应用PC Server4C16G1应用服务软件(1)
开发管理环境PC Server2C4G1配置管理服务SVN

说明:
  应用服务软件(1)组成:Cordys BOP 4 (内含Car)、Apache Http、MySQL、MongoDB

生态环境使用

生态环境使用流程

Created with Raphaël 2.1.2 开始 需求 开发 发布到测试环境 测试 测试通过 发布到生产环境上线 结束 yes no

生态环境说明及相关功能

生态环境说明

  • 生产环境:是按设计要求为全体用户提供生产支撑的信息系统环境,系统上所以业务应用都是经过测试上线的应用,也是按设计要求提供稳定、可靠、高并发的系统集成环境;
  • 测试环境:是指上文及图例中的业务测试平台,不同于系统建设阶段的测试环境(例如:集成测试SIT、系统测试UAT环境),是用户运维人员或承担运维角色的开发人员上线新应用所需的测试环境,典型的业务有:新增业务流程、新增/变更(水、电、电信)计费标准等,可以理解为生产环境的硬件最小化环境;
  • 开发环境:是指上文及图例中业务(流程)开发平台,是运维人员开发新业务的系统平台,可以看作开发工具;
  • 开发管理环境:是为生态环境提供配置管理的环境,如本文所示的SVN环境。
      对于上述环境中测试环境、开发环境、开发管理环境,如果条件允许,在系统平台上线阶段就应配备齐全;也可以转接系统建设阶段的测试、开发环境,例如先共用,在用户验收系统后,相关环境切换过去。

各个环境上应具备的功能

  系统生态环境上各个环境的管理功能,以办公流程能力平台相关功能为例。

  • 测试环境与生产环境系统、业务功能保持一致;
  • 测试环境的功能,业务应用及应用包发布管理、卸载管理;
  • 开发环境的功能,流程快速开发平台,内含流程建模、表单开发等;
  • 开发环境的功能,应用打包管理;
  • 测试环境的功能,测试数据分析与回收管理;
  • 生产环境上的相关功能,业务应用及应用包发布管理、卸载管理;应用/模块信息管理
  • 开发管理环境提供配置管理,本案例采用SVN服务。

应用管理界面
  图中所示内容为应用部署管理界面,与微软Windows操作系统上的程度安装卸载类似。

新建业务流程案例

1.开发环境使用过程

Created with Raphaël 2.1.2 运维人员 运维人员 流程快速开发 流程快速开发 应用/模块管理 应用/模块管理 应用打包管理 应用打包管理 CAP文件 CAP文件 流程建模 表单开发 新建业务信息 打包应用 打包成文件

  注:(1)开发环境上的流程建模、表单开发功能模块的数据定义,都以XML文档形式管理,方便打包;
    (2)应用/模块管理功能与测试、生产环境功能有差异,此功能也用于生产业务信息XML文档。

2.测试环境使用过程

Created with Raphaël 2.1.2 运维人员 运维人员 应用部署管理 应用部署管理 应用/模块管理 应用/模块管理 执行测试 执行测试 测试分析及测试数据回收 测试分析及测试数据回收 Deployer应用 初始化业务信息 申请/审批流程 输出测试结果 测试数据回收 测试未通过卸载应用

  注:本案例中测试分析,及其输出测试结果,一方面是分析业务处理过程及结果;另一方面,内含接口数据,展现接口数据是否完整、有效,例如本案例中有云门户、一线生产员工工作台待办任务接口,就需要分析接口数据。

3.生产环境使用过程

Created with Raphaël 2.1.2 运维人员 运维人员 应用部署管理 应用部署管理 应用/模块管理 应用/模块管理 Deployer应用 初始化业务信息 发布应用

  注:生产环境上的功能与测试环境功能差异,主要体现在系统接口上,其接口为虚拟接口。

关于系统平台建设开发环境说明

  信息化业内人士都知道系统平台建设开发环境是必要的,至于系统上线稳定运行后,是否有必要存在,那就看实际情况了。
  通常的做法是保留建设开发环境,特别是现在云计算虚拟化时代,把建设开发环境虚拟化保存下来也不难了。
  本案例现状是:开发环境宿主都是虚拟机。

综述

  综上所述,在设计系统平台生态环境时,除了硬件设备及其虚拟化投资外,更多是设计生态环境内容关系,各个环境间应用程序、数据间衔接,以及IT管理。关于管理,后续再详谈。

  • 最好设计使用XML文档数据,传递开发环境配置数据到测试、生产环境,避免使用关系型数据,方便应用打包、发布处理;
  • 设计测试结果及测试数据分析功能,定量分析新业务能否满足上线要求,以及其相关接口模拟是否满足需求;
  • 基本生态环境中的开发、测试环境就是正式生产环境,只是把开发功能剥离出来,相对独立,不影响系统稳定运行;
  • 建议保留系统建设开发环境,形成真正全套生态环境;
  • 生态环境尽量搭建在虚拟机上。

参考:
(1)云计算统一办公运营平台服务能力设计方案 肖永威 2014.11
(2)面向集团客户云计算运营平台的市场情况及产品发展——之云计算运营平台方案(二) 肖永威 2013.12
(3)面向集团客户云计算运营平台的运营开通技术方案及应用架构——之云计算运营平台方案(三) 肖永威 2013.12

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐