在企业软件开发项目中,最大的一组矛盾就是懂技术的不熟悉业务,熟悉业务的不了解技术。为了弥合这组矛盾,项目团队要付出非常繁重的沟通成本。有时候,依然不能凑效,导致开发出来的应用可用性很低,甚至完全失败。
APaaS 平台为了解决这个问题,选择的路径是让熟悉业务的人掌握零代码应用平台能力,通过降低软件知识门槛,让业务需求通过他们直接表达出来,而不再需要进行繁复的跨专业沟通。
选择这个路径的原因很简单。让各行各业的业务人员掌握单纯的软件架构思想相对容易,而如果让软件开发人员学习各行各业的专有知识则几乎没有可行性。
在这个策略下,APaaS 的核心用户包括了软件行业的产品,项目和实施专业人员,也包括了各行各业中熟悉业务流程的业务人员。对于前者来说,他们大多掌握了软件行业的一些基本技能,因此唯一要克服的就是对客户业务目标和流程的理解。而对于非软件开发行业的业务人员来说,需要克服的是一些必要的软件架构知识。
这篇指南文章就是为了说明这个话题。对于非软件技术人员来说,到底需要掌握哪些必要的软件架构知识,才能设计和搭建出高质量的企业应用?这个知识体系并没有想象中庞杂,我也不鼓励业务专家花费太多的时间去钻研软件技术。所以,我摘取了最重要的两项精华内容,包括正确识别商业对象和理解工作流原理。如果业务专家能够拥有这些软件领域知识,必然会在自己企业的数字化建设中发挥重要的作用。
识别商业对象,创建合理的工作表结构
商业对象就是指企业经营活动中需要管理的事物,当然有时候也包括人。正确识别商业对象的关键在于鉴定事物性质的同一性。订单和发票虽然彼此相关,但却是商业活动中不同性质的对象;大客户和小客户即使是两个部门管理,但性质完全相同,规模大小只是描述客户的一个属性,而且它是变动的。
掌握了这个基本判断点就可以设法将管理活动中各种元素进行分解。在企业应用中,常见的商业对象包括客户,联系人,供应商,员工,项目,采购订单,销售订单,产品,产品价目表等等。
零代码产品中通常都是以建立商业对象为起点的,明道云上的商业对象被称为工作表,它的命名和 Excel 软件中的工作表命名是一致的。
创建工作表及其结构时,可以遵循以下思路:
- 为业务环节中的业务对象创建不重复,不遗漏的多个工作表。但不要为统计和汇总的目的创建工作表,因为后者是通过工作表的视图和统计功能实现的。
- 根据业务对象的不同属性,通过控件创建工作表字段。参见工作表的各种字段类型介绍。字段的多寡应该以必要性为原则,减少在业务中难以填写和无需记录的字段。
- 通过“关联表”控件来建立工作表之间的关联,让某个字段可以直接选取其他工作表的值。比如在订单中选择客户表中的客户记录。
- 通过“他表字段”引用其他工作表关联记录的其他字段值。注意,如果没有关联他表,就无法使用“他表字段”控件。同时,他表字段是动态关联的,被引用表记录变化就会使得引用表记录变化,因此它不适合那些需要静态化的情况,比如销售订单表中不能引用产品表的单价字段,因为单价可能在未来变更,却不应该影响销售订单中的历史单价。
- 通过公式字段动态计算某个值,计算过程可以跨表进行。注意这个也是动态关联的,同样不适合需要静态化记录的场景。
创建工作表结构的几个常见误区
- 建立了割裂的工作表,彼此之间缺失了必要的关联。比如订单和客户是一定关联的数据,虽然订单中也会列出客户信息字段,但它们不应该在订单中孤立存在。
- 对于同一种业务对象,避免根据属性不同建立分散的工作表。比如客户表是一个整合的工作表,但如果分别为大客户、小客户、上海客户建立工作表则失去了必要的整合度,给企业业务数据共享和一体化管理带来了难度。
- 为统计和汇总的目的建立了工作表。比如日长夜大的客户表和订单表都是正确的工作表创建对象,但是“订单周报表”是一种报表,而并非原始数据,不应该为这种汇总信息表建立工作表,它所带来的信息价值非常薄弱。
理解和运用工作流原理
在完成了科学的数据架构以后,我们要让业务活动运行起来,一方面依靠用户的主动使用,比如销售人员要使用系统来起草电子报价单。另一方面则需要利用工作流引擎来实现业务流程的自动化。自动化工作流不仅能够大幅企业运行效率,还能够创造在手工作业环境难以实现的顾客体验。
那么自动化工作流到底是基于什么原理来运行的呢?我们可以用一个知名的互联网服务的名字来概括——IFTTT(If this, Then that)。If this 是工作流的触发器,Then that 就是工作流的动作。一旦触发器的条件满足,工作流自动执行预先定义的一连串动作。无论多么复杂的工作流都是通过这个触发器-动作组合来实现的。
这个基本原理一点都不难理解。一旦建立了这个认知以后,业务人员很容易联想到一些立刻可以实现的运营自动化设计。比如:
- 一旦老客户合同到期前一个月,就给负责的销售经理发送一段提醒消息。
- 一旦点击了生成报价按钮,就根据客户类别和行业选择特定的产品明细组合和优惠报价,并生成报价文件 PDF,再 Email 给客户。
- 一旦员工的试用期即将结束前的两周,就自动生成该员工的转正评价表单,并依照管理安排发送给对应的经理人员填写。全部填写完毕后,发送给 HR 主管。
- 一旦项目状态变更为“已交付”,就自动创建客户支付款项的发票申
像这样的业务流程自动化需求,在各行各业中都是普遍存在的。在没有零代码应用平台之前,这些工作要么就不得不手工完成,要么就是需要组织昂贵的定制软件开发。现在有了简单易用的工作流工具,非开发人员完全可以自主实现。
总结来说,工作流的触发器主要只有两种,一种是时间,比如第 1 和第 3 个例子,第二种是数据变更,比如第 4 个例子。为了灵活性,工作流也可以手工触发(点击一个按钮),比如第 2 个例子。
在明道云应用平台上,应用管理员可以创建无限多个工作流。一旦工作流测试通过并发布,它就会替代人的重复劳动,不停歇地自动运行。每一次运行都会留下历史记录备查。你一定很好奇,它是怎么实现的。那就不妨注册一个明道云免费账号来体验一下。
零代码应用平台不需要用户编写任何代码就可以实现非常灵活和复杂的业务场景。它当然有无数个功能特性点,但是只要掌握以上我总结的两大核心技巧,任何业务人员都可能立刻变身极客,给你的组织带来数字化的新风尚。