如何进行软件开发?

阅读量:
0
发表时间:
2022-03-20 09:35:35

  在目前市面上众多的管理软件中,全管C5企业管理软件算是一个异类,因为这个软件的所有功能模块,都没有一行传统意义上的代码,全部是采用零代码方式配置出来的。而之所以要采取这种方式的原因,还要从软件开发行业的一个典故说起:“银弹”。“银弹”是一个比喻,在西方神话中,银制的子弹可以杀死号称不死的狼人;而在软件领域中,银弹用来比喻能够极大提高软件开发效率的万能方法(一个经验标准是让软件开发效率在10年内提高10倍)。

  Fred Brooks在1987年所发表的一篇关于软件工程的经典论文《没有银弹》中强调,真正的银弹并不存在,复杂的软件工程问题无法靠简单的手段来解决。这篇经典论文揭示了软件开发的存在的问题,软件开发的复杂度很难控制,且往往因为复杂程度不可控而最终导致失败,这是很多软件项目开发失败的根本原因。这篇论文同时也指明了提高软件开发效率的两个方向:降低复杂度和需求妥协,保持复杂度可控,并在次要功能时做出妥协,是确保软件项目开发的有效方法,这个方法并不如“银弹”一般完美,但确实是不得已而为之的可行方法。

  全管软件的工程师们很多都有着15年以上的管理软件开发的经验,对管理软件开发效率低下的问题也是深恶痛绝,因此从2003年起就启动开发一套适合管理软件领域使用的元模型平台,经过长时间的摸索实践,甚至数次的推倒从来,最终做出了这样一套适合管理信息化系统的元模型软件平台。全管软件的所有产品,都是基于这个平台,通过零代码的方式配置的。

  根据我们自己的实际使用经验数据,使用元模型软件平台,开发新功能的速度是传统代码开发的5倍,而调整已有功能的速度,是传统代码开发的7倍以上。为什么使用元模型软件平台可以提高如此多的开发效率?下面我们从理论及实践的角度,来进行说明:

  降维这个词最近很流行,也有很多不同的解释,从元模型软件平台的角度来解释降维,就是把复杂的代码编程转变为更易于理解的业务模型。

  传统的代码编程开发中需要考虑很多维度的问题,具体到某个变量如何赋值、数据如何在界面和数据库之间传递等等,细节繁多、涉及面广,即使是有专业知识的人,也容易疏漏出错。总结起来,就是要考虑的各种因素太多,维度太高,不容易把控,导致开发效率低下。

  而元模型软件平台,则屏蔽了编程细节,采用零代码方式的建模方式,通过各种模型来组合出各种功能,复杂度方面大大降低,因此开发效率高。

  通过降维获得的高效是有代价的,降维过程中不可避免地需要忽略一些维度(因素),从而导致某些细节被删减。简单来说,模型能够实现的功能是传统代码编程能够实现功能的子集。因此元模型软件平台聚焦于管理软件开发领域,而不是所有软件领域,这样就可以通过元模型来涵盖大多数的管理需求。

  由于降维的代价,即使元模型软件平台仅聚焦于管理软件开发领域,也无法涵盖全部管理需求。因此必须提供另外的方式,去弥补因为降维导致的损失。

  在全管元模型平台中提供的插件机制,可以有效解决降维导致的功能细节损失。整个平台采取微内核的插件方式,针对不同的需求,扩展专门的插件来满足特定需求。插件采取按需加载的机制,仅加载需要使用的插件,因此扩展插件既可以包罗万象,满足各种需求,同时又不会使得系统臃肿。

  直观和降维有一点联系,但含义并不相同。降维可以把复杂度降低,但并不一定能变得直观,因为直观是从人的认知角度而言的,对人来说,易于理解就是直观。举个例子,身份证号仅由数字加字母X组成,算得上是非常简单,但并不直观;而姓名加照片的方式,涉及到复杂的汉字以及图像,并不简单,但更容易理解和记忆,从人的认知角度而言,比一串数字加字母X的身份证号要直观得多。

  业界也有一些平台产品采用模型方式去屏蔽编程细节,但用的模型还是脱不开传统编程的概念,甚至有些平台只用一种高度抽象的模型,这些做法虽然降低了维度,降维后的模型并不易于理解,开发效率也无法得到有效提高。

  要让平台产品直观易用,就是要跳出软件开发的思维,让非技术人员来使用平台产品,只有他们觉得易用,这个平台产品才算是真正的直观易用的。这一点,是全管的元模型软件平台一直坚持的设计原则。

  正是基于元模型平台的优势,使得全管软件定制项目成功率远超同行业水平;并且因为开发效率高,也使得开发费用大幅降低!如果您有软件定制方面的需求,请与我们的咨询顾问联系。