Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEAT] Provide a way to style BPMN traces/paths #930

Open
tbouffard opened this issue Dec 3, 2020 · 1 comment
Open

[FEAT] Provide a way to style BPMN traces/paths #930

tbouffard opened this issue Dec 3, 2020 · 1 comment
Labels
BPMN diagram styling Change the standard rendering: stroke color, thickness enhancement New feature or request

Comments

@tbouffard
Copy link
Member

tbouffard commented Dec 3, 2020

Is your feature request related to a problem? Please describe.
BPMN path or trace definition: this is something similar to the Path in the graph theory

This can be all edges from the process instance start to the current execution points (BPMN Shape) for the instance (can be an end event if the instance is completed). It may also contains the verticles (aka BPMN shapes) if the integration wants to apply the same style to all elements or only the verticles.

So, the exact content of the path ultimately depends of the styling to be applied.

Current capabilities
As a first step, integrations can pass all the elements of the path they want to style. This may be done by #927 (this is what the process-analytics/bpmn-visualization-examples#114 example currently uses) or a new dedicated API focussed on applying styles (#942).
Paths are generally know by retrieving runtime/execution data, so integration should be able to pass this information to bpmn-visualization.

Describe the solution you'd like

  1. Provide only the edges or the shapes of the path (in the order they occurred at execution time or not): this is very common to only have the task/flownodes execution data in logs and not the transitions.
    So we should provide one of the following:
  1. Provide the 1st and the last elements of the path and compute the whole path.
    This is something related to the Graph Theory, so we probably won't implement this ourself but delegate this to something implementing dedicated Graph algorithm.
    In that case, we may need to provide an API to navigate into the internal Bpmn Model to rebuild the Graph (some information may already available with [FEAT] Provide BPMN Semantic data in addition to HTML elements #929). The integration retrieve the Bpmn Model info, pass them to an external Graph library to compute the path.
    Then the integration pass the result of the graph computation to bpmn-visualization for path highlighting.
    The following issues will help: https://github.com/process-analytics/bv-experimental-add-ons/issues?q=is%3Aissue+is%3Aopen+PathResolver+sort%3Aupdated-desc
@tbouffard tbouffard added the enhancement New feature or request label Dec 3, 2020
@tbouffard tbouffard added the BPMN diagram usability Something about the way we can interact with BPMN diagrams label Dec 3, 2020
@aibcmars aibcmars added BPMN diagram styling Change the standard rendering: stroke color, thickness and removed BPMN diagram usability Something about the way we can interact with BPMN diagrams labels May 20, 2021
@csouchet csouchet moved this to Q2 in Roadmap 2023 Jan 16, 2023
@tbouffard tbouffard moved this from In Progress to Todo in Roadmap 2023 Feb 22, 2023
@tbouffard
Copy link
Member Author

https://github.com/process-analytics/bv-experimental-add-ons/releases/tag/v0.1.0 provides a first implementation of PathResolver that already covers some items described in this issue.
PathResolver will be improved in the future to implement all use-cases described here, see https://github.com/process-analytics/bv-experimental-add-ons/issues?q=is%3Aissue+is%3Aopen+PathResolver

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BPMN diagram styling Change the standard rendering: stroke color, thickness enhancement New feature or request
Projects
Status: Todo
Development

No branches or pull requests

2 participants