用于 JBPM 的可视化 BPMN 2.0 差异工具
Visual BPMN 2.0 diff tool for JBPM
我想知道您认为 easiest/more 使用 JBPM 网页设计器创建可视化工具来比较 BPMN 2.0 流程的有效方法是什么?
...way to create a visual tool to compare BPMN 2.0
processes using JBPM
web designer?
我不知道如何实现它,JBPM
设计师也不能做什么,如果它已经在现有工具中解决了,所以我不能选择一些最简单的 或 高效 解决方案。
但是基于 BPMN
个模型实际上是 XML
个文件而 XML
个文件实际上是 text
个文件这一事实,我会 尝试 将问题减少到 文本差异 可视化。
从 2 XML
s(旧的,新的)创建新的 "diff" XML
使用一些现有的面向文本的 diff 算法,其中 "added" 东西会被标记如 green "removed" 标记为 red 和 "modified" 标记为 blue。如果生成的 "diff" XML
格式正确 BPMN
文件,那么只需在 BPMN
查看器中显示它就会直观地显示差异。
我很长时间没有跟踪文本差异或二进制差异问题,但除了咨询 Wikipedia: DIFF 主题外,我知道的一些可靠来源是:
- WinMerge is very mature and useful text-diff tool and it's source code repository contains some text-diff algorithms implemented in
C++
and C
- sourceforge.net/p/winmerge/code/HEAD/tree/trunk/Src/diffutils/src
- Angus Johnson 使用在
Delphi
中实现的源代码 TextDiff tool 创建了很棒的免费软件。该应用程序是围绕 TDiff
组件构建的,该组件(根据自述文件)基于 E Myers 的论文 "An O(ND) Difference Algorithm and its Variations" - Algorithmica Vol。 1 第 2 期,1986 年,第 251-266 页和 "An O(NP) Sequence Comparison Algorithm",作者:Sun Wu、Udi Manber 和 Gene Myers。 PDF
中的两篇论文及其源代码都包含在可下载的 zip
中
- 作为两个字符串之间计算 Levenshtein distance 的副产品,可以设置将旧字符串转换为新字符串所需的 "add"、"copy"、"delete" 操作.如果您为操作分配颜色,您可以获得差异的彩色可视化
以上所有内容都包含一些"Computer Science"东西,这对我来说很难理解,但相应的代码确实有效。例如,在研究 Angus Johnson 的工具时(我添加了对比较完整文件夹的支持,而不仅仅是文件),评论和自述文件中有一些注释声称
→ 比较文本文件是比较字符串向量的特例,这是比较数字向量(字符串哈希)的特例,它是一些 straighforward(?) N 维数学题(!?)
我卖的是我几年前买的东西,理解和使用它取决于你,但我相信它可能有用;)
我想知道您认为 easiest/more 使用 JBPM 网页设计器创建可视化工具来比较 BPMN 2.0 流程的有效方法是什么?
...way to create a visual tool to compare
BPMN 2.0
processes usingJBPM
web designer?
我不知道如何实现它,JBPM
设计师也不能做什么,如果它已经在现有工具中解决了,所以我不能选择一些最简单的 或 高效 解决方案。
但是基于 BPMN
个模型实际上是 XML
个文件而 XML
个文件实际上是 text
个文件这一事实,我会 尝试 将问题减少到 文本差异 可视化。
从 2 XML
s(旧的,新的)创建新的 "diff" XML
使用一些现有的面向文本的 diff 算法,其中 "added" 东西会被标记如 green "removed" 标记为 red 和 "modified" 标记为 blue。如果生成的 "diff" XML
格式正确 BPMN
文件,那么只需在 BPMN
查看器中显示它就会直观地显示差异。
我很长时间没有跟踪文本差异或二进制差异问题,但除了咨询 Wikipedia: DIFF 主题外,我知道的一些可靠来源是:
- WinMerge is very mature and useful text-diff tool and it's source code repository contains some text-diff algorithms implemented in
C++
andC
- sourceforge.net/p/winmerge/code/HEAD/tree/trunk/Src/diffutils/src - Angus Johnson 使用在
Delphi
中实现的源代码 TextDiff tool 创建了很棒的免费软件。该应用程序是围绕TDiff
组件构建的,该组件(根据自述文件)基于 E Myers 的论文 "An O(ND) Difference Algorithm and its Variations" - Algorithmica Vol。 1 第 2 期,1986 年,第 251-266 页和 "An O(NP) Sequence Comparison Algorithm",作者:Sun Wu、Udi Manber 和 Gene Myers。PDF
中的两篇论文及其源代码都包含在可下载的zip
中
- 作为两个字符串之间计算 Levenshtein distance 的副产品,可以设置将旧字符串转换为新字符串所需的 "add"、"copy"、"delete" 操作.如果您为操作分配颜色,您可以获得差异的彩色可视化
以上所有内容都包含一些"Computer Science"东西,这对我来说很难理解,但相应的代码确实有效。例如,在研究 Angus Johnson 的工具时(我添加了对比较完整文件夹的支持,而不仅仅是文件),评论和自述文件中有一些注释声称
→ 比较文本文件是比较字符串向量的特例,这是比较数字向量(字符串哈希)的特例,它是一些 straighforward(?) N 维数学题(!?)
我卖的是我几年前买的东西,理解和使用它取决于你,但我相信它可能有用;)