建设企业统一开发平台设计思路,提供类平台化SaaS研发平台

一、背景背景

近年来,在政策和市场的双重拉动下,中国软件市场保持了持续快速的增长。2002年,中国软件市场实现了21.1%的增长率,销售额达到345 亿元。2003年,中国软件市场销售额达到400亿元左右,软件市场进一步升温。在几百亿元的市场规模下,掩盖了这样一个事实:软件项目成功率非常低。根据统计,超过80%的项目不能在最初估计的预算和进度内成功交付。这对用户和厂商都产生了严重的影响,对于软件产业的健康成长也非常不利。用户对厂商的效率和能力产生怀疑,对使用软件的效果产生怀疑。

厂商在项目过程中难以维持健康的现金流和获得足够的利润,无力提升产品研发水平和效率。业界一直在试图解决这种恶性循环,解决方法一是靠软件工程,厂商采用更科学、更规范的流程组织项目开发,如软件生产过程中的CMM(软件成熟度模型)规范;二是靠软件技术。而就软件技术而言,平台化技术是软件产品发展的重要趋势,平台化的软件具有独立性、开放性、可管理性和可扩展性等特点。

平台化软件分为技术支撑型平台和应用实现型平台。技术支撑型平台的用户为软件开发人员,提供商负责平台的维护和升级,用户负责基于平台的上层实现。这类平台包括软件中间件、开发工具、应用服务器等。应用实现型平台的用户为终端用户,提供商不但负责平台的维护和升级,还要负责实现基于平台的上层应用。

 例如:一个网站使用应用服务器WebLogic为技术支撑型平台,服务器的提供商(BEA)不会负责具体网站内容的建设。而应用实现型平台(如集尔普的Our-ERP系统)不但负责平台的维护和升级,更重要的是负责上层应用的实现,如企业管理软件中的财务管理,进销存,校园管理中的总务管理,教务管理等。本文章主要描述应用开发型平台的目标,定义,技术架构,实现和应用前景。

二、为什么要建设这样的统一研发平台

企业各产品系统独立开发,代码复用率低,系统之间互相调用,耦合严重,系统解耦独立部署困难。

应用间数据复制严重,数据不一致性严重
基础组件薄弱,日志,监控系统不完善
功能模块定义混乱,包含大量接口,接口定义重复
大容量访问下无法提供可靠性服务

待解决问题

核心系统全面服务化:系统分解为核心服务和基础服务。
基础组件:服务化框架,分库分区,缓存组件。
加强监控,日志系统。
步化并行,限流,分流,降级,压力测试,异地灾备。

建设的平台价值

这个基础平台以先进的技术作为依撑,采用服务架构实现一个共享可复用的统一框架,是具有扩展性、兼容性、前瞻性的底层平台,满足快速开发、避免重复开发的需求,开创产品创新的新模式和新途径,更好的为产品开发和部署、运维提供服务。

平台共享数据为各个子系统共同调用的数据,减少各子系统间数据的调用,减少系统间的耦合性,达到“强内聚,低耦合”的效果;
可实现数据一次输入,多个子系统使用,消除信息孤岛,减少数据库服务器工作量,提高整体使用性能;
提供统一的开发框架,提高开发效率,避免重复开发,节约成本;
便于部署,实施和运维;
形成一个产品,用于后期产品的开发和管理。
服务模块化设计,便于根据需求组合使用。
服务统一注册、发现、治理。
便于集群部署和负载均衡,提供强大的并发支持和高可用。

约束条件

系统稳定、高效,可支持内外各种不同使用场景下的并发操作。
良好扩展性:在增加新的功能时旧有模块不做改动或稍作改动即可完成集成,部署更新不影响其他业务。
提供数据接口:便于其他产品或第三方厂商系统进行集成。
模块化:各个功能部分按模块开发,模块彼此解耦。
配置化:可根据客户实际需求,配置不同参数。支持6大平台的开发和运行,支持Windows和Linux系统。
采用B/S架构,与外部业务系统之间使用RestfulAPI进行交互和开发。
需要支持高性能、高并发、高可用和高稳定的需求。

三、云开发平台与传统的研发企业平台有什么区别

平台化开发是一套综合的工具和一组实践证明的共享的最佳平台,它形成了完整、久经考验、开放和模块化的解决方案,旨在随需应变世界中开发软件和基于软件的服务。这一平台使开发小组能够跨合作伙伴、供应商 和客户自动化和集成软件开发的核心 业务流程 ,为企业提供获得竞争优势需要的灵活性和速度,从而能够 创新 和迅速响应市场变化。

平台化开发提供给企业将应用程序和业务流程演进到电子商务随需应变环境需要的所有工具。其核心是称为的面向大小型项目的灵活的流程架构。

传统的研发配置在本地开发配置,出现很多弊端,如:

环境不统一,编码版本和规范不统一;
非功能性需求产生技术问题占用一定时间,而且每个项目环境都不一样,开发过程耗时;
项目技术学习成本高,技术不统一,产生问题排查时间较多,影响工期;
没有统一的管理平台,产物得不到沉淀

云开发平台的优势在哪里

完成企业管理和规划的统一性,编辑规范的统一;
具备灵活方便的二次开发能力;
做到硬件独立和软件环境独立;
实现上层应用的技术无关性;
工作流、报表图表工具等也应与应用开发工具组合在一起,提供一个支持管理应用开发的平台;

平台化开发的优势

最大化效率:

开发平台可以帮助IT和工程小组用较少的资源来最大化输出、减少混乱和提升提供高质量的软件和与软件相关的系统的可预测性。

平台化开发通过符合行业标准的开放平台来加速价值的转化,它定义、集成和自动化软件开发的业务和流程。它还提供完整的建立、集成、现代化和部署软件的端到端平台,通过减少混乱和增加可预测性来提高效率。

增加业务灵活性:

开发平台由灵活的流程和一组定制用于任何项目或小组规模的产品组成。通过自动化和集成软件开发的核心业务流程,开发平台可以帮助您突出重点、灵活和迅速响应。

企业可以利用对大多数开发(模式、语言、操作系统和中间件)的支持,允许在企业内大范围重复使用流程、技能、生命周期工具和资产,以响应瞬息万变的业务环境。开发平台可以提供行业中最好的分布式地理位置的开发功能,支持现场开发、场外和境外开发、全球资源规划和远程数据工具。

缩短投资回报时间:

软件开发平台允许您实施四个强制性的随需应变软件开发流程:迭代开发、关注架构、管理变更和资产、持续的确保质量。实施这些强制性流程有助于加速IT和工程投资的价值实现 。

四、平台的市场和应用前景

设计良好的平台化软件应可以普遍应用于企业管理系统、校园管理系统、电子政务、医院管理系统等各行各业。企业管理软件中的销售与分销管理、生产管理、库存与采购管理、客户关系管理、办公自动化、人力资源管理等系统可以完全集成为一个系统,所有的企业资源(人、财、物)全部共享,全面降低企业的运营成本。

校园管理系统中的总务与后勤管理、教务管理、办公自动化、注册与离校系统可以集成为一个系统,实现学校的集中式管理,严格控制支出和消耗。医院管理系统的收费与挂号、财务管理、住院管理、医生站护士站等可以集成为一个系统,实现快捷、方便的医院管理。

2002年初,Gartner公司(ERP/MRPII理论的首创者)在对未来软件架构发展报告中认为平台化软件是管理软件的发展趋势。目前,由于平台化软件不可替代的优越性,SAP、Oracle等国外管理软件公司的产品都已经转向平台化,许多国产管理软件开发商都在宣称要将战略重点转向平台化软件,甚至宣称自己现在的产品就是平台化产品。

进入2004年以后,第一代ERP悄然消退的趋势更加明显。笔者认为,真正的平台化产品不应该在原有的固化的软件基础上的改造,因为原有的系统使用硬写代码的方式实现,无法与新型的平台化软件的运行支撑系统和应用开发工具结合,实现客户个性化需求的免编程定制。新型的平台化产品必须具备两个基本要素,实现应用的完全可定制,而不是原有系统外围的所谓“二次开发”。

由于平台化软件有着诸多优点,许多软件公司准备研发类似产品,十分关心产品研发需要注意的问题。根据统计,平台产品的研发壁垒有三个方面:一是投入资金大,一般一期的产品研发至少要3000万元,而完成成熟产品需要投入近亿元;二是研发周期长,需要2-3年的时间;三是核心技术壁垒高,需要软件技术人员、管理专家的集体参与。

随着中国软件产业的发展,国产管理软件在平台化软件技术和产品上已经有了很大的突破,许多过程的平台化软件产品已经能够与国外软件公司的产品保持同步,这必将给国内众多企业用户带来更大的效益。

五、平台的收益点和盈利点在哪里,怎么样可以提升收益

六、平台怎么做好进一步的运维和管理工作