我们为什么研发万向平台?
之所以研发万向平台项目,源于我看到很多的中小型业务系统的开发和维护,都面临着这样几个问题:
业务功能方面:系统开发过程中,很大部分的业务功能都是简单的CURD功能。
项目进度方面:CURD业务功能却占据了大量的研发时间,使得真正核心的业务开发时间大大被压缩,从而影响了整体项目的进度。
项目质量方面:虽然CRUD业务功能很简单,但是因为繁多的业务点,往往也形成极大的维护成本。
开发标准方面:往往不同的业务功能点开发出来的界面和代码都是存在差异的、不统一,这样也影响了用户体验,形成了相应的维护成本。
业务需求方面:大部分的中小型应用系统都是定制型的,灵活性较差,研发和维护的成本较高,之中存在大量的重复开发工作。
人员素质方面:大部分的中小型应用系统往往开发人员水平也是参差不齐的,从而形成了项目开发不规范,业务功能不统一,界面UI不友好等问题。
研发成本方面:大部分的中小型应用系统的研发成本也是受制约的,经常做项目的同学应该知道,一个项目成本很不可控,大部分原因就是没有自己的开发框架,或者自己写的开发框架灵活性和稳定性不高,从而影响了项目进度和交付,形成了很高的研发成本。
项目运维方面:大部分的中小型应用系统的没有专职的运维人员,往往很多细节调整或增加简单的功能都需要开发人员的介入,而且功能完成后,新功能上线也会导致项目被终止运行或重编译,导致整个项目运维难度和成本加大,也影响了用户体验。
我们是如何做万向平台的系统架构?
元数据设计:通过元数据用来描述现有的业务功能,借用元数据的底层抽象,进而驱动万向平台整体运行。
前后端分离设计:通过前后端分离,用以保障万向平台的业务功能都是抽象的,独立的。
前端框架和单页应用:我们设计了前端js框架,用于解析我们的元数据,进而实现界面UI绘制和业务功能的实现,所有这些功能全部在同一个页面完成。
权限套件:我们设计了万向平台权限套件,可以自主灵活控制应用内各个功能权限。
设计套件:我们设计了万向平台设计套件,可以通过图形化方式来开发万向平台业务功能。
多应用设计:万向平台支持多应用部署,即单站点支持多个应用共存,不需要每个应用单独部署站点。
横向扩展设计:万向平台支持横向扩展,支持多服务器集群模式,支持多设备Session共享。
服务中心设计:万向平台支持服务注册模式,通过服务控制台来控制具体应用开启和关闭,控制系统各个运行参数。