低代码程序开发和“ Devigners”新角色


每一项新技术和创新都会带来以前不可能或不需要的新角色和技能。在20世纪涌现的成千上万的新职业中,“软件开发人员”就是一个很好的例子。毫不奇怪,二十一世纪引入了许多新技术,包括但不限于3D打印,基因编辑,加密货币,在线社交网络等。
关于软件开发,一种称为低代码开发的创新稳步发展,并在本世纪第二个十年成熟,随之而来的是一个新角色:Devigner,它是Developer和Designer的组合。
在本文中,我们简要介绍了低代码开发,介绍了Devigner的新职业,并探索了公司利用这种新的创新软件开发方法的可能性,这种新方法开发速度更快,生产成本更低,并且在开发过程中更胜一筹。
 
低代码方法:以最少的编码,测试和部署来创建数字解决方案
早在2009年,我就在开发基于Liferay的Web应用程序,该平台在2010年之后我不推荐任何人使用。在将CD与软盘进行比较时,Liferay被认为是功能强大的Web平台,可以在其中管理不同的应用程序根据它提供的框架编写。Liferay提供的一项创新使编码过程的一部分自动化。它被称为ServiceBuilder,它提供了自动生成数据库表以及从XML文件中生成一堆基于J2EE的代码的功能。这样,开发人员不必分别创建和维护他们的数据库。这是朝着自动化迈出的重要一步。可悲的是,该平台已经变得太复杂了,无法允许更多创新的解决方案来进行低代码开发。
几乎在同一时间,Drupal,WordPress,Salesforce等创新平台以及最后但并非最不重要的Atlassian Jira引入了另一种方法。他们摆脱了整个后端编程,而不仅仅是自动创建代码和数据库表。他们通过提供一个平台可以对其进行管理,在该平台上可以即时创建,编译和部署大多数模块,而无需进行编程和相应的麻烦。一种拖放式开发,它的配置比“编码”更多。
基于这种方法,系统架构师,配置者或开发人员(“程序员”一词不再具有任何意义)不必编写代码或进行编译,而只需从表示层直接定义他们想要的东西以及他们如何想要它。开发人员要在表单上添加新字段,或在步骤中添加新条件,或在报告表中添加新列,所需要做的就是转到相应的配置页面,添加必要的属性,视图和属性即可。平台负责后端的所有工作,从数据库对象到代码生成,编译,部署等。
更改很简单,但是影响却是巨大的。尽管如此,由于较旧平台的游说功能和锚定效果,以及对创新解决方案的通常渴望,这种新方法直到最近才被发现。可以节省编写代码以及编译,测试和部署所需的大量时间。
这就像为基于过程的软件引入3D打印机一样。只需单击几下即可设计,实施和部署,并立即启动并运行新的“代码”。而且大多数“文档”都是立即发生的,因为它基本上是自动可用的。当人们使用通用语言和属性以及可视化配置来构建解决方案时,这些属性随即构成了文档。
您现在可以想象为什么新方法会更快,更可靠,更便宜且易于使用。首先,所有内容都是基于Web的,因此桌面软件的所有问题都消失了。后端代码和配置的自动化意味着大大减少了测试。基本上,只应测试功能和结果,这可以很快完成。使用拖放和单击几下而不是编写数百行代码,还可以节省时间和资源。并且这种简化降低了软件开发过程的复杂性。在许多情况下,不再需要测试服务器,登台,部署,集成服务器等。可以直接在生产系统上执行操作,而风险最小。如果出现问题,可以很容易地将其恢复为先前的状态。
 
让我们探索一个示例,并将低代码开发与经典软件开发进行比较。
假设您有一个SAP系统,该系统为您的采购部门提供了某些表格和报告。遵循一些新规定后,您需要在表单上添加一些新字段,这些字段应出现在某些报告中。还有一个新角色需要提供额外的批准。使用过SAP的公司深知:这个相对简单的变更请求可能很容易花费数月的时间进行开发,测试和发布,外加数万美元。现在,假设您正在为过程使用低代码平台,例如Atlassian Jira。必要的更改需要不到一天的时间(是的,您没有看错)来概念化,实施,测试和发布。因此,低代码平台不仅仅是对经典软件开发的轻微改进。他们彻底改变了软件的工作方式。
 
“ Devigner”的新角色
当开发人员在低代码平台上构建应用程序时,他们不再仅仅是“开发人员”。他们承担着一个新的,以前不存在的“设计者”角色,即业务分析师,软件开发人员,架构师和设计师的结合。从这个意义上讲,设计人员可以同时进行设计,开发,测试,前端设计和集成。
新角色的出现可能被认为是低代码开发的最重要挑战之一。在市场上寻找合格的开发商已经非常困难。显然,与业务分析师,软件设计师,开发人员或测试人员相比,找到设计者更加困难,因为他们需要所有相关领域的技能和经验。为了满足工作的最低要求,设计者需要知道:

  • 用户实际需要的是什么
  • 如何收集和分类数据(数据管理),
  • 模块的配置方式(实现),
  • 如何缩放和维护应用程序(操作),
  • 如何集成不同的应用程序(后端),
  • 以及如何将整个内容呈现给用户(前端)。

在这一点上,拥有合适的技术并能够进行各种活动并关注重要的细节似乎是罕见的。
因此,如果我们将美味的菜肴与用户友好的软件解决方案结合使用,那么设计者可与世界一流的厨师相提并论。但是,这是新技术和新方法在早期需要稀有技能的准则。而且,由于这种新方法(低代码)与其他开发方法相比具有许多优势,因此可以立即获得,提供和欣赏合适的技能。问题是,谁先开始采用早期采用方式并享受好处,然后再因购买和维护过时的工具和昂贵的旧技术(例如SAP或LotusNotes)而浪费更多的时间,精力和金钱?
 
低代码平台的范围:它们有什么用?
低代码平台确实可以提供很多功能,而需求很少。但是,如果我们认为它们是市场上每个软件的答案,那将是一种幻想。
低代码平台非常适合构建和自定义解决方案以支持流程。无论哪种解决方案都需要基于整个工作流在不同步骤中收集/更新某些数据,实际上是一种过程解决方案。支持风险管理,合规程序,人力资源招聘,企业服务管理(IT,人力资源,市场营销,销售等),技能管理,资产管理,项目管理,创新管理,计费,客户沟通等的工具都是实用的流程支持工具。所有这些领域都可以通过低代码平台(例如Jira)来支持。一个人只需要知道扩展带有应用程序和附加组件的平台的选项,以及在哪里进行系统调整以实现完全可定制性即可。
另一方面,这些平台不适合用于创建需要特定界面和特殊功能的软件(例如Photoshop)或复杂的数学计算(例如会计软件)。但是,与过程相关的解决方案占公司内大多数工具的一部分。例如,在一种情况下,我们可以用Jira替换中型银行中的25个以上的流程。在一个平台上以良好集成的方式构建了某些小型的,有时是昂贵的工具,用于客户投诉管理,IT服务,软件开发,合规性,HR入职和合同管理,年度预算程序等,并且100%个性化每个步骤,角色和信息要求。如果采用旧方法,则至少要花五年时间。