首页
杂志网
当前位置:首页>>软件开发>支持在线热部署的软件开发平台>正文

支持在线热部署的软件开发平台

来源:杂志发表网时间:2019-02-26 所属栏目:软件开发

  

  摘要 不同企业有着不同的管理理论,理论的实施落地,需要有相应的信息化管理软件的支撑,而目前市面的有业务针对性的管理软件落后于新的管理理论,无法满足不同集团的个性化需求,为适应企业的管理理论变更,能够平滑的过度,及时的实现理论与信息化系统的联动,需要支持即时开发并且可在线热部署的软件开发平台。

  【关键词】容器技术 互联网 开发运维一体化

软件开发论文

  1 总体思路

  为了快速适应管理需求的发展,提高信息系统开发规范性,有效管理和监控信息系统运行,合理规划信息化系统开发进程,降低信息化系统开发难度,提升开发效率,缩短开发周期。设计并开发了一套,可在线开发,支持热部署,的在线开发体系,实现系统的开发运维一体化目标。

  2 技术方案

  针对大型企业集团综合信息化系统开发所具有的信息源点多、分布广、安全级别高、跨地域和跨多个操作系统和平台、动态性强、要求信息处理的效率和柔性兼顾等特点,决定了必须有一个基于互联网的敏捷、健壮、高效的开发平台作为支撑,自主研发了基于容器技术和基于WebSocket技术的消息管理的开发平台,可以实现前台UI在线开发,可配置通用后台管理,并适应互联网开发要求,支持多浏览器和多数据源。满足大型企业集团综合信息化系统开发所具有的信息源点多、分布广、安全级别高、跨地域和跨多个操作系统和平台、动态性强、要求信息处理的效率和柔性兼顾等特点和要求。

  2.1 主要内容

  “工欲善其事必先利其器”,自主研发一套基于互联网的开发平台,满足大型企业集团综合信息化系统开发所具有的信息源点多、分布广、安全级别高、跨多个操作系统和平台、动态性强、要求信息处理的效率和柔性兼顾等特点和要求。

  2.1.1 基于容器技術的软件结构

  针对大型集团集中应用的特点平台,最首要的要求就是敏捷性,即资源利用率高,开发效率高。容器技术虚拟化技术已经成为一种被大家广泛认可的资源共享方式,容器技术可以在按需构建容器技术操作系统实例的过程当中为系统管理员提供极大的灵活性。只需要通过简单的观察我们便能够发现容器技术的出现是为了解决多操作系统/应用程序堆栈的问题

  (1)对于大规模集群来说,在本地硬盘当中存储操作系统副本将会使得更新过程变得更为复杂;

  (2)最为重要的是,容器技术可以同时将操作系统镜像和应用程序加载到内存当中。还可以从网络磁盘进行加载,因为同时启动几十台镜像不会对网络和存储带来很大负载。之后的镜像创建过程只需要指向通用镜像,大大减少了所需内存。

  平台以容器调度为基础,采用WebSocket技术的消息管理与系统运维系体系、数据库在线管理体系,平台架构由网关,服务总线、容器三部分组成:

  2.1.2 强大的平台支撑能力,快速满足软件开发

  软件的开发价值,无法以工厂模式来考量,软件价值的四分之三来源于服务,而快速开发平台,提高了软件的可重复性,促进整个信息化开发效率的提升,缩短了开发周期,并降低了后期维护难度,提高了问题处理的响应速度。也就是说快速开发平台是为软件开发者提供服务的产品。在对比国内外优秀的开发平台之后,组织专家进行了分析论证,确定总体要求并组织实施。经过1年多的开发实践,完成了开发平台的功能实施,取得了显著成效。主要实现功能如下:

  (1)台UI在线开发工具。功能界面以Minui样式风格为基础,应用Miniui控件,实现统一的页面布局、生成功能界面,可以在线生成,修改界面代码。多种可视化开发组件充分满足各种需求开发。数十种数据编辑控件:列表选择框、下拉树、超文本、超链接、二维码、附件,数十种数据编辑界面:网格式、主次表、单据式、EXCEL文件、WORD模板、自定义HTML,数十种数据管理模板:标准列表、主次表、编辑+列表、内容+列表、网格、图标式、卡片式,数十种数据分析方案:多表查询、多层表头、统计图、状态图、年度曲线、同比环比、地图分布、仪表盘、自定义分析。

  (2)自适应的代码生成器。平台的代码生成方法用于生成单表或单视图的标准BO类和DAO类。生成的类可以简化开发代码,通过编译器识别避免低级的书写错误,使开发者更专注于业务。另外,也可以在此基础上配合一定的代码来防止SQL注入的问题。生成的BO类因为符合JPA的规范,除了可以用于自己对应的平台的DAO类,也可以用于Hibemate。又因为BO类符合JAXB规范,还可用于CXF生成的Web Service方法。

  (3)可配置通用后台管理。结合多年开发的信息系统,提炼出了通的用户、角色、机构、功能菜单、数据字典、授权等每个系统都需的功能。可以替换之前开发的后台管理功能,也可直接应用的新的系统开发中。基于角色的权限管理,大大减轻了系统授权的工作量。可分配多人操作授权,各自管理自己授权的用户和范围。可设置每个模块、表的操作权限。可设置用户数据范围,如全部数据、分公司数据、本部门数据、本人数据等。可定义禁止操作字段、禁止查看字段、禁止打印报表项目、禁止分析项目等。职务代理功能。出差或请假时可设置自己的职务代理人。标准的数据初始化、备份、还原、系统日志工具。

  2.1.3 践行“以用户体验为先”的互联网思维,适应“互联网”开发

  (1)良好的适应性。支持主流浏览器:支持目前各种主流浏览器,包括IE(微软浏览器)、Chrome(谷歌浏览器)、Firefox(火狐浏览器)、Safari(苹果浏览器)、Opera,以及国内众多基于IE内核的浏览器,如360、傲游、世界之窗等。

  支持多数据源:平台提供报表、视频播放、打印、图像识别、上传、下载、发送短信等通用服务功能。在开发新的系统时只要进行简单的配制即可完成相应的功能而无需再开发相关的代码。

  (2)轻量级流程引擎。开发平台自主设计开发轻量级流程引擎,吸纳了JBPM3、Activiti5、BonitaBPM等国际开源流程引擎的精髓,同时提供了强大的中国式流程流转处理,引擎采用微内核+插件形式设计,提供灵活的扩展模式,不仅仅为审批流程提供了解决方案,同时还为复杂业务流程编排提供了强大的支持,实现在线画流程,自定义表单,表单挂靠,业务流转。

  参考文献

  [1]刘威,以敏捷编程思想为指导利用开源软件工具开发基于J2EE平台的企业信息系统[D].北京化工大学,2005.

  [2]马军.软件研发管理平台的设计与应用[D].北京邮电大学,2009.

  [3]李新.敏捷开发平台的设计[J].计算机工程与设计,2012,33 (09): 3604-3608.

  推荐阅读:计算机软件工程制度趋势

点此咨询学术顾问 快人一步得到答案

SCI期刊问答

回到顶部