NoCode系列|零代码应用开发,轻松搞定任务跟踪管理难题(上)

  • Post author:
  • Post category:其他


亚马逊云开发者

「NoCode系列」

上线啦!即日起开始每周五,我们将为您持续连载NoCode系列内容,敬请关注!

本期,就让我们从实例着手,介绍如何用Amazon Honeycode设计并实现一个轻量级的任务追踪系统应用,文末更有详细

视频讲解

不要错过哦~

让精益更瘦”成为当前新诉求,即缩短从构思到MVP落地的时间周期,高效地实验连续不断的新想法。所以我们需要一种新方式,打破精益实践的最后一道坎。然而开发人才的短缺不会很快改变。由于应用程序的持续需求和熟练开发人员短缺,这就带来开发技能平民化的要求,以确保普通人能够更容易地开发自定义应用。

NoCode就是改变游戏规则的新模式,也是“人人都可以成为Builder”的典型实例。如果营销人员可以创建和更新网站,那么他就可以持续迭代并更快地尝试各种自己的构想;如果咨询顾问可以在几个小时内将其独特的流程自动化为一种工具,那么他就可以更快地解决客户的问题并体现其努力的价值;如果小型企业主可以根据自己的需求构建应用程序,则可以通过自动化提高业务效率,并节省宝贵的时间来扩展新的业务。

去年,亚马逊云科技推出了自己的NoCode平台,即Amazon Honeycode。本文我们将通过上下两篇文章,从实例着手,介绍如何Amazon Honeycode设计并实现一个轻量级的任务追踪系统应用。


Hello,Honeycode

首先我们需要访问Honeycode Builder并为自己创建账户。

https://builder.honeycode.aws/

Amazon Honeycode是一项完全托管的服务,可快速构建功能强大的移动和Web应用且无需编程,支持iOS和Android平台,适合流程审批、事件计划、客户关系管理、用户调查问卷、待办事项以及内容和库存跟踪等多种场景,不需要通过邮件发送电子表格或文档这种容易出错的方法,也不需要雇佣工程师开发昂贵且耗时的定制应用。

借助Amazon Honeycode,我们可使用简单的可视化应用构建器,创建交互式Web和移动应用,并通过Amazon Web Services内置数据库完成数据跟踪、用户通知、流程审批以及交互式业务流等功能。Amazon Honeycode支持不同复杂度的系统实现,从小团队的任务跟踪应用到大部门复杂工作流管理系统。


Amazon Honeycode的核心组件包括:

  • Tables:表格,是存储数据的地方。

  • App Builder:应用构建器,可以将静态数据转换为交互式Web和移动应用。

  • Automations:自动发送通知,触发基于数据和用户输入的自动化任务。


而借助Amazon Honeycode构建应用总的来说是一个包含下列五个步骤的迭代过程:

1. 定义要构建的应用

2. 在Tables中定义数据模型

3. 在App Builder中建立用户体验

4. 添加Automations工作流程

5. 应用测试,与团队共享,持续迭代


范例应用剖析

本例中,我们将开发一个简单的任务跟踪管理系统,简单来说,该系统可提供下列功能:

  • 用于团队成员跟踪项目中各自的任务

  • 用于主管跟踪与管理团队在项目中的任务

  • 向团队成员发送自动提醒和告警

此外在数据模型方面,需要定义包括项目、任务和人员这三类实体:

为了更好地理解这些数据实体所代表的含义,我们可以使用下列虚构的示例数据。


项目表数据(Projects):


任务表数据(Tasks):


人员表数据(People):

接下来开始进行构建。


创建数据表

按照上述的数据模型定义,分别创建三个数据表(Projects、Tasks、People),通过复制粘贴导入上述虚构的示例数据。这里需要特别注意的一点是:关于项目数据表的进度一栏,实际上是通过“计算”得到的。以“龙坞”项目为例,我们可以从任务数据表中,筛选项目名称为“龙坞”的任务项,则可得到“龙坞”项目的任务项总数为4个,再从中计算任务进度为“完成”的任务项数为2个,两者相除就是项目数据表中的进度值(2/4=50%)。因此,我们需要为项目数据表的进度栏,添加跨表的筛选和进度值计算功能。


1. 选中“进度”栏,点击“Formats”按钮,就可以在右侧看到“进度”栏的属性。


2. 在FORMAT中,选择Percentage,保留2个小数点。


3. 在FORMULA中,我们需要为其添加跨表的筛选和进度值计算功能。

这里可以看到很长的一串公式,简单解释下,详细可以参考这两个:文档1和文档2。

文档1:

https://honeycodecommunity.aws/t/filter/923

文档2:

https://honeycodecommunity.aws/t/thisrow/899

=ROWS(FILTER(Tasks,"Tasks[状态]=% AND Tasks[项目名称]=%","完成",THISROW()))/ROWS(FILTER(Tasks,"Tasks[项目名称]=%",THISROW()))

这个公式可以拆成分子和分母两个部分:

分子:通过项目名称和任务状态进行筛选,并统计该项目中任务状态为“完成”的任务项数量。

ROWS(FILTER(Tasks,"Tasks[状态]=% AND Tasks[项目名称]=%","完成",THISROW()))

分母:通过项目名称进行筛选,并统计该项目中所有任务项的数量。

ROWS(FILTER(Tasks,"Tasks[项目名称]=%",THISROW()))

其中,相关函数的功能描述如下:

1. FILTER:返回符合条件的行项。FILTER(表名, “筛选条件”, [条件参数, …]),筛选条件可使用 AND和OR等运算符,%为条件参数的引用。

2. ROWS:在FILTER函数返回的结果中统计行项的数量。

3. THISROW:返回正在执行公式的行链接(此处即为执行公式所在行的第一项,即具体的某个项目名称)。THISROW可在表的任何行或应用的任何列表中使用,特别适合在公式计算的上下文中使用。


建立表链接

按照前述数据表之间的依赖关系,利用Amazon Honeycode内置的数据库,为项目表、任务表、人员表建立表链接。

1. 选择“Wizards”按钮,可以看到:

2. 选择“Data Modeling”,点击“Create Picklists”

3. 使用任务表中的项目名称列,将其与项目表链接起来

4. 点击“Apply”,等待若干秒

5. 检查项目表,就会发现新增“Related Task”列,里面筛选出与该项目对应的任务项

6. 点击筛选结果,自动链接到了任务表中与该项目对应的任务项详情

7. 检查任务表,亦可查到任务项对应的项目详情

以此类推,我们可以用相同的做法,完成项目表与人员表的链接,任务表与人员表的链接。


总结

以上,我们已经完成了:

1. Honeycode入门

2. 任务追踪应用的功能目标设置

3. 数据模型的定义

4. 数据表的创建

5. 表链接的建立

根据Amazon Honeycode五步迭代应用构建法,下一步就可以为任务追踪应用创建移动端和Web App了。接下来的下篇,我们会深入探讨如何为这个轻量级任务追踪和管理系统,利用App Builder从团队成员和主管两个不同的角度构建交互式用户体检 – stay tune for next episode!

看完了以上详细的步骤

让我们看看下面这个视频

一起再次回顾下操作步骤吧!


本篇作者


黄帅


亚马逊云科技专业服务部架构现代化咨询顾问

负责企业级客户的云上现代化架构设计和优化、XOps 组织以及运维现代化的转型咨询和实施。在软件研发领域有十多年架构设计、运维及团队管理经验,对 XOps、微服务治理框架、云原生平台运维现代化、大规模分布式系统的可观测性构造与混沌工程实践等有深入的研究和案例经验。


听说,点完下面4个按钮


就不会碰到bug了!