Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-139388

As an Operations Manager, I want to add Fork and Join nodes

    Details

      Description

      As an Operations Manager, I want to add Fork and Join nodes so that I can create multiple, parallel paths in my workflow.

      Design Deliverables

      Mockup

      Context

      In order to satisfy the growing needs and expectations of our users, the Workflow builder technology needs to evolve. The current technology limits us from evolving and achieving our low-code first vision. It was therefore decided that we will replace the current Kaleo Designer of Workflow built in Alloy with a new and improved Workflow Process Designer built in React and leveraging the React Flow Library.

      This will allow us to not only improve the UI/UX of the feature, but also enable the company to drastically reduce the cost to maintain and develop new features in the Workflow Process Builder. Overall, this migration is key to the future goals of Workflow, the Low Code Initiative and Commerce Use Cases.

      As part of this migration, we will be migrating over the Fork and Join nodes. These nodes are used in tandem to split the review process for multiple reviewers in parallel, and then rejoin them when all reviews are complete. To be clear, the workflow instance can only progress past the Join node once all parallel reviews are complete. The JoinXor node allows for the instance to progress if any review is complete. The JoinXor node will be added in LPS-139389. More information on these nodes can be found on Learn.Lifeary: Using Forks and Joins.

      In this Story's scope, users should be able to:

      1. Create a Fork/Join node.
      2. Delete a Fork/Join node using:
        • the Delete Icon in the sidebar
        • the Delete key
      3. Edit and Localize the Fork/Join node Labels.
      4. Edit the Node ID.
      5. Edit the Description.
      6. Create multiple transitions to/from the Fork/Join nodes.

      Not in the scope:

      1. Add a JoinXor node (this will be added in LPS-139389).
      2. Add an assignee to the nodes
        • Fork and Join nodes do not have assignees since these nodes represent an automated process that does not require input from users.
      3. Add other properties to the Condition node:

      Acceptance Criteria

      Given that a user is defining a workflow process using the React Designer,
      when the user drags and drops the Fork/Join node from the sidebar to the storyboard,
      then a Fork/Join node is added to the workflow.

      Given that a user is defining a workflow process using the React Designer,
      and a Fork/Join node has been added to the workflow process,
      when the user clicks on the node,
      then the user is able to delete the node using the Delete icon in the sidebar and the Delete key.

      Given that a user is defining a workflow process using the React Designer,
      and a Fork/Join node has been added to the workflow process,
      when the user clicks on the node,
      then the user is able to edit and localize the node Label.

      Given that a user is defining a workflow process using the React Designer,
      and a Fork/Join node has been added to the workflow process,
      when the user clicks on the node,
      then the user is able to delete the node.

      Given that a user is defining a workflow process using the React Designer,
      and a Fork/Join node has been added to the workflow process,
      when the user clicks on the node,
      then the user is able to create multiple transitions to/from the node.

      Given that an instance is in parallel reviews following a Fork,
      when all the parallel reviews are complete,
      then the Join node will allow the instance to progress to the next step.

      Definition of Done (DoD):

      • All Acceptance Criteria were passed;
      • Make sure that the expected automated tests were created (unit / integration / functional) and passed successfully;
      • Code with peer review completed;
      • Validated by QA, Product Designer and/or PM;
      • No critical bug related to Story scope (ex.: similar of FP4, FP5);
      • Make sure that all system documentation were updated (if necessary)
      • Make sure that it has the extensions points needed to allow GS and customers to customize the feature (If applicable)

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              daniel.angotti Daniel Angotti
              Reporter:
              nara.andrade Nara Andrade
              Engineering Assignee:
              Nara Andrade
              Recent user:
              Pedro Michel
              Participants of an Issue:
              Product Designer(s) Assigned:
              Arthur Coninck
              Frontend Developer(s) Assigned:
              Nara Andrade
              QA Engineer(s) Assigned:
              Ana Buchmann
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Packages

                  Version Package
                  7.4.3.9 CE GA9
                  7.4.13 DXP U5
                  Master