“一个项目规划一年,招标采购一年,设计开发一年,三年能上线就不错了~”想想这个国字号,金字头的工程。哪个不是3~5年的建设期?往往是上线的时候部分功能已经过时。这类“大项目”的建设模式的特点如下:
- 独享:从业壁垒高,只有有资质的、少数大型开发商可以参与。创客和小开发商望而却步。
- 覆盖面窄:站在全国的角度归纳需求、分析问题、设计架构,多少都会漏下地方特色的需求。造成的结果是,国家设计完的程序到了地方还要二次开发,而且本地化开发的比率还很大。
- 升级周期长:一个大系统推广完(全国推广4、5年很正常)马上面临的就是升级,再升一次又是几年时间过去了。升级和重构的成本基本持平。那是升级呢还是重构?
为了避免僵化、大而空的系统,互联网更讲究“小快灵”,快速开发、迭代,使用devops方式,升级能做到随需应变。怎么做?采用“大平台、微应用”的软件建设方式,正在成为主流。简单来说,就是系统间可共用的服务平台化(例如:会员服务、位置服务、安全认证等),上层应用功能尽量简介、稳定、自组织。
这样能做的好处如下:
- 激励创新:降低技术门槛,将复杂、维护难度大的基础功能下沉到平台,使创客、小开发商能只关注应用本身,让开创新变得简单。
- 深化分工:基础服务的下沉到平台,使平台拥有者更关注平台的基础服务。以运营的方式维护基础功能的SLA,保证一点部署服务全国。
- 众创模式:降低技术壁垒后,不再是少数开发商所专享的市场。只要是对行业应用有理解、有创新的开发者都可以基于平台开发,而且可以调用其他开发者的服务,达到经验汇聚、积累和组合式创新。
- 升级周期短:由于是微应用的模式,每个应用的开发者自己维护业务逻辑,可以做到小而美,按需升级。
- 应用松耦合:所有的层次,包括数据、应用、搜索、内容服务都采用服务的方式发布,应用间通过API调用,系统间解耦。
采用这种思路建设大型、负责系统,相当于用户搭建了一个百货商店,提供基础的水、电、空调、安保、交费等服务,将众多中小开发商引入到商位、自主进行经营。至于,开发商为了卖出“商品”,会千方百计满足吸引客户,更好的满足客户需求。采用“大平台、微应用”的众创模式,让平台拥有者、开发商和最终用户都受益!