低代码之所以火起来,背后一定是有原因的,我稍作了些分析。
从外因来讲,疫情导致中小企业数字化转型的进程被提前。以传统餐饮行业为例,他们需要迅速建立起:在线订餐、客户管理、营销管理、员工办公管理等系统,但是传统的IT开发成本太高、交付周期长,不适合中小企业的敏捷特性。
另一方面,中大型企业的数字化服务市场,经过10几年的发展,进入增长平台期,不能够满足软件服务企业的业绩增长需求,需要开辟一个崭新而广阔的市场,于是中小企业数字化转型市场被挖掘出来。
从内因来讲,中小企业数字化转型迫在眉睫。在全世界疫情常态化的新局势下,中小企业只有拥抱数字化,实现经营、管理、服务的转型升级,才能够降本增效、服务创新,实现新的业绩增长。
在内因、外因的共同作用下,低代码成为被风口选中的行业,加上资本的涌入,整个行业突然就火爆起来。
低代码火爆的同时,随之而来的是行业乱象,随便一个软件公司都说自己是低代码。为了更好的研究低代码,我们首先要探讨,如何定义低代码平台?
02
如何定义低代码平台?
著名咨询机构Gartner,于2020年9月发布的《企业级低代码开发平台的关键能力报告》(Critical Capabilities for Enterprise Low-Code Application Platforms)中,定义了低代码的11项关键能力。也就是说,这11项关键能力是衡量一个平台是否能够称之为低代码平台的关键因素。
先简单了解一下各项要素的含义:
1、Intuitive, No-Code App Development:易用性,不写代码时的开发能力。
在不写代码的情况下,能够完成多复杂的系统搭建。这是标识低代码开发平台生产力的关键指标。
2、Application User Experience:所开发出来的应用的用户体验。
它指的不是低代码开发平台本身的用户体验,而是通过低代码平台开发出来的应用,给到用户的使用体验。
3、Data Model and Management:数据模型和管理。
这个指标就是通常所讲的“模型驱动”,相比于表单驱动,模型驱动能够提供满足数据库设计范式的数据模型设计和管理能力。开发的应用复杂度越高,系统集成的要求越高,这个能力就越关键。
4、Process and Business Logic:工作流与业务处理逻辑。
流程应用与业务逻辑开发能力和效率。这个能力有两方面:
第一,是指使用该低代码开发平台,是否可以开发出复杂的工作流和业务处理逻辑;
第二,是开发这些功能时的便利性和易用性程度有多高。
5、Platform Ecosystem:开发平台的生态系统。
低代码开发平台的本质是开发工具,当内置的开箱即用的功能无法覆盖更多应用场景时,就需要基于该平台的完整生态系统,来提供更深程度、更全面的开发赋能,比如开放的插件机制。
6、API and Integration:编程接口与系统集成能力。
为了避免“数据孤岛”,低代码开发平台需要提供系统集成能力、编程接口,跟其它系统进行数据的互联互通。
7、Architecture:系统架构。
系统需要支持服务化、分层的架构方式,支持高可用、集群的应用部署方式。
8、Quality of Service:服务的质量。
系统的健壮性、无故障使用时长、故障恢复时长,对CPU资源、硬盘资源占用情况,对云是否友好。
9、Persona and SDLC:用户模型与软件开发生命周期支持。
软件开发的生命周期中,包含设计、开发、反馈、测试、运维等多个环节,低代码平台要支持单元/集成测试、联调、发布、回滚、持续迭代等。
10、Governance:治理及运维。
现代软件开发中的敏捷开发、代码库管理,版本权限,发布管理等,在低代码平台中,都要能够支持。
11、Security and Compliance:安全与合规。
低代码开发平台需要提供:灵活的部署方式、安全机制和权限控制、SSL数据传输、密码强度策略、跨域访问控制、高粒度的用户权限控制等等。
以上就是Gartner对低代码平台定义的11个要素,相信许多技术人员已经对低代码有个大致认识了。但是,想要识别和判定一个低代码平台的话,直接使用以上11个要素,就有点太繁琐了。
03
如何识别伪“低代码”?
老K结合软件工程全生命周期实践,以及Gartner定义的11个要素,给“低代码”平台拟定了6个维度的判定标准:
1、拖拽式开发;
2、对象封装与数据模型;
3、模型驱动;
4、脚本语言;
5、软件测试与部署;
6、API与集成。
一、拖拽式开发
拖拖拽拽做开发,就是“低代码”开发平台给大家最直观的印象,所以也是“低代码”开发平台最基本的特征。
这一点,世面上的许多“低代码”平台都能够做得到,可以说是个送分题,如果你家的软件产品连这点都做不到,就不要吃“低代码”这碗饭了。
二、对象封装与数据模型
这部分指的是低代码平台要操作的对象、数据模型、表达式等等,它可以是高度抽象和封装的对象,可以省略掉“类”、“接口”、“函数”这些编程语言的高级特性,以更简化的方式提供出来,供程序调用。
三、模型驱动
“模型驱动”是相对于“表单驱动”的,指的是对于数据进行建模和处理,比如国外的低代码平台OutSystems、Mendix,就有很强大的模型驱动的能力,包括了定义实体、实体关联、主键、索引、数据查询等等。
四、脚本语言
脚本语言实际上就是编程语言了,是低代码平台实现复杂业务逻辑的扩展,可以使用 JavaScripts、Python、Java等语言进行编程。
但是,低代码平台会把语言的编译过程做好封装,做到一键发布,即时运行,方便代码调试。
五、软件测试与部署
低代码开发平台,本质上是软件开发工具。所以整体开发过程也要遵守软件工程的流程规范。只是把许多环节都做了简化、内部封装,降低了学习成本、开发成本、测试成本、部署成本。
六、API与集成
主要是解决低代码平台开发出来的系统,跟其它外部系统的数据互联互通,否则又是造了一堆大烟囱,一些数据孤岛。
以上6个判定标准怎么使用呢?
每个维度1~10分,总分36分是及格线。分数越高,表示这个低代码开发平台越完善、成熟度越高。
标签:11,为什么,代码,平台,开发,突然,驱动,数据模型 From: https://blog.51cto.com/u_15867943/6022976