简要说明
嵌入规划组件或甘特图组件时,首先要确定职责分工:组件负责呈现时间、资源和层级视图,并使其可在浏览器中编辑;自有产品则保留业务对象、权限、对话框和数据存储。自行开发还是嵌入更合适,要通过基于真实场景和贴近实际数据量的评估来判断。
将规划组件或甘特图组件嵌入自有软件时,应首先确定职责分工。组件负责呈现时间、资源和层级视图,并使其可在浏览器中编辑,而您的产品保留业务对象、权限、对话框和数据存储。自行开发还是嵌入更合适,主要取决于大型视图的数据量、所需的交互、无障碍性、本地化、长期维护投入以及许可条件。要可靠地回答这个问题,需要借助您产品中的一个真实场景和贴近实际的数据量。
典型的规划视图
规划组件在时间轴上或以结构形式呈现工作。对于 Hawk IVO Scheduler,有三种典型视图:
- 时间与资源规划:在时间轴上呈现资源、班次或设备,并通过拖动进行调整。
- 层级结构:清晰呈现由地点、团队和资源构成的大型结构。
- 甘特图与看板:以时间条或看板形式处理任务和订单。
您的产品需要其中哪些视图,取决于您的用户所规划的对象,以及他们需要纵览的时间范围。
组件承担什么,您的产品保留什么
只有在责任分配明确时,嵌入才能顺利运作。对于 Hawk IVO Scheduler,分工如下:
| 任务 | 负责方 |
|---|---|
| 时间、资源和层级视图的呈现与编辑 | 规划组件 |
| 浏览器中的交互 | 规划组件 |
| 业务对象,例如订单、班次或设备 | 您的宿主产品 |
| 权限和对话框 | 您的宿主产品 |
| 数据存储和业务数据主权 | 您的宿主产品 |
这种划分有其实际原因。视图中的一个时间条代表一个对象,而该对象的规则由您的产品掌握:谁可以修改它、对话框要询问哪些信息、一项修改何时才算有效保存。如果这些决定保留在宿主产品中,那么无论用户是在表单中还是在规划视图中操作,您的权限和业务规则都保持不变。因此,在架构上应尽早明确:您的产品如何将数据传给组件,以及视图中的修改如何回到您的业务逻辑中。
自行开发还是嵌入:决策时要问的问题
一条简单的时间线,投入有限即可实现。但投入会随着数据量、编辑功能以及视图需要维护的年限而增长。两种路径都可以用同样的问题来衡量:
- 数据量和大型视图:您的客户实际使用的最大视图会显示多少个对象,涵盖多长的时间范围?在这种情况下,无论是加载,还是滚动、缩放和选择,它是否都能保持可用?用您的数据在您的目标环境中进行测试,才最有说服力。
- 交互:您的用户需要哪些编辑操作,例如移动、修改时长或改排到其他资源上?当您的业务逻辑拒绝一项修改时,视图如何加以提示?
- 无障碍性:规划对象是否也能在不拖动的情况下以及通过键盘进行编辑?WCAG 2.2 (在新标签页中打开) 在 AA 级要求:使用拖动动作的功能,也必须能够通过单一指针在不拖动的情况下操作,除非拖动是必不可少的(成功标准 2.5.7)。对于表格式视图的键盘操作,WAI-ARIA Authoring Practices 介绍了 Grid 模式 (在新标签页中打开),其中也涵盖并非全部同时加载的行。
- 本地化:语言、日期和时间格式、一周的起始日和书写方向是否符合您客户所在的市场?视图如何处理时区和夏令时切换?在实行夏令时的国家,跨越时间切换的夜班会比平时更短或更长。W3C 国际化工作组的一份草案 (在新标签页中打开)为应用程序提供了相关建议。
- 维护:面对新的浏览器版本、客户提出的新需求和错误修复,由谁持续维护该组件?自行开发会长期占用您自己的开发能力。嵌入则会形成一种依赖关系,您应当了解其版本和已知限制。
- 许可:您可以在什么条件下将该组件随您的产品交付给客户?支持和更新如何安排?
如果规划视图规模较小,或者它本身就是您产品的核心,自行开发更为合适。如果您的用户需要大型视图和大量编辑操作,而您产品的优势在于业务逻辑,嵌入则更为合适。
评估如何进行
产品演示展示的是组件能做什么。对您的决策而言,重要的是它在您的场景中表现如何。对于 Hawk IVO Scheduler,我们为此分三步进行:
- 选择场景:从您的产品中选取一个具体的规划场景,并使用贴近实际的数据量。
- 共同集成:我们通过一个经过验证的最小示例演示嵌入方式。
- 评价:您在自己的环境中评价投入、操作体验和性能。
之后,您将获得一份基于您自有数据的评估结论,可据此比较自行开发和嵌入。许可、支持和运维将基于评估结果进行约定。
Hawk IVO Scheduler 及其限制
Hawk IVO Scheduler 是一个可嵌入的程序库,用于在浏览器中呈现时间、资源和层级计划。它可视化并编辑大型的时间、资源和层级视图,已在 Hawk IVO Force 和 Hawk IVO Plan 中使用。您的产品嵌入该组件,并保留业务对象、权限、对话框和数据存储。
该程序库不承担业务数据主权。版本、支持的框架和已知限制,我们会在技术洽谈中告知您。只有结合您的场景,关于性能的结论才具有可靠性,因为数据量、目标环境和操作方式因产品而异。
如果您的产品还需要将任务交给智能体,相关问题请参阅文章将智能体嵌入自有软件。有关合作的更多信息,请访问面向软件供应商专区。如需就您的规划场景进行洽谈,请与我们联系。