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

Update "Get started with human task orchestration" guide to include Play #4401

Open
wants to merge 15 commits into
base: main
Choose a base branch
from

Conversation

mesellings
Copy link
Contributor

Description

Update the https://docs.camunda.io/docs/next/guides/orchestrate-human-tasks/ topic to include Play, milestone creation, and review as steps before running it on the cluster.

Relates to issue #4183.

When should this change go live?

  • This is a bug fix, security concern, or something that needs urgent release support.
  • This is already available but undocumented and should be released within a week.
  • This on a specific schedule and the assignee will coordinate a release with the DevEx team. (apply hold label or convert to draft PR)
  • This is part of a scheduled alpha or minor. (apply alpha or minor label)
  • There is no urgency with this change and can be released at any time.

PR Checklist

  • My changes are for an already released minor and are in /versioned_docs directory.
  • My changes are for the next minor and are in /docs directory (aka /next/).

@mesellings mesellings added kind/feature Issues related with features to be documented component:docs Documentation improvements, including new or updated content component:web-modeler-SaaS Continuous delivery - Issues related with Web Modeler SaaS target:8.6 Issues included in the 8.6 release deploy Stand up a temporary docs site with this PR 8.6.0 October 2024 minor release labels Oct 4, 2024
@mesellings mesellings self-assigned this Oct 4, 2024
@mesellings mesellings changed the title Update get started with human task orchestration to include Play Update "Get started with human task orchestration" guide to include Play Oct 4, 2024
conceptualshark

This comment was marked as outdated.

@mesellings
Copy link
Contributor Author

@conceptualshark Don't worry, I'm going to rebase this and start again on Monday - I saw your changes, so I'll need to adapt the new stuff for this - don't spend any more time on it 😄

@mesellings mesellings removed kind/feature Issues related with features to be documented component:docs Documentation improvements, including new or updated content component:web-modeler-SaaS Continuous delivery - Issues related with Web Modeler SaaS target:8.6 Issues included in the 8.6 release deploy Stand up a temporary docs site with this PR 8.6.0 October 2024 minor release labels Oct 4, 2024
Copy link
Contributor

github-actions bot commented Oct 6, 2024

👋 🤖 🤔 Hello! Did you make your changes in all the right places?

These files were changed only in docs/. You might want to duplicate these changes in versioned_docs/version-8.6/.

  • docs/guides/getting-started-orchestrate-human-tasks.md
  • docs/guides/img/human-task-bpmn-diagram-gateway.png
  • docs/guides/img/human-task-bpmn-diagram-tasks.png
  • docs/guides/img/human-task-bpmn-diagram.png
  • docs/guides/img/operate-open-tasklist.png
  • docs/guides/img/play-chicken-complete.png
  • docs/guides/img/play-open-form.png
  • docs/guides/img/play-operate.png
  • docs/guides/img/play-play-button.png

You may have done this intentionally, but we wanted to point it out in case you didn't. You can read more about the versioning within our docs in our documentation guidelines.

@mesellings mesellings added kind/feature Issues related with features to be documented component:modeler Issues related with Modeler project component:docs Documentation improvements, including new or updated content component:console Issues related with Console project component:web-modeler-SaaS Continuous delivery - Issues related with Web Modeler SaaS deploy Stand up a temporary docs site with this PR 8.6.0 October 2024 minor release labels Oct 6, 2024
@mesellings mesellings dismissed conceptualshark’s stale review October 6, 2024 11:08

Content has changed considerably after a merge conflict, it didn't need a review at this point

@mesellings mesellings added the hold This issue is parked, do not merge. label Oct 7, 2024
@mesellings
Copy link
Contributor Author

This needs a review by Eric, so should not be merged - was waiting for the deploy workflow to be fixed - we can hopefully push this tomorrow

@github-actions github-actions bot temporarily deployed to camunda-docs October 7, 2024 16:31 Destroyed
@mesellings
Copy link
Contributor Author

@HanselIdes The preview environment is (finally) fixed and up for you to review:

Depending on when you are able to review, we can try to get this into the release tomorrow, or push it afterwards?

@github-actions github-actions bot temporarily deployed to camunda-docs October 7, 2024 18:31 Destroyed
Copy link
Contributor

@HanselIdes HanselIdes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is good progress, but fundamental updates to the user journey and differences between Desktop Modeler+C8 Run, Web Modeler SM, and Web Modeler SaaS make it difficult to follow the changes. It's probably best to group the tabs as
Desktop Modeler | Web Modeler
especially because we're uniting the UX between Web Modeler SaaS and SM

This complicates the flow and also the table of contents, where there are two step 4s
image


import clsx from "clsx";
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import SaasPrereqs from './react-components/saas-prerequisites.md'
import Install from './react-components/install-c8run.md'

Camunda 8 allows you to orchestrate processes with human tasks of any complexity. Utilizing user tasks, you can create and assign tasks to users. Then, users can perform their work and enter the necessary data to drive the business process.
You can use Camunda 8 to orchestrate processes with human tasks of any complexity. User tasks allow you to create and assign tasks to users, who can then perform their work and enter the required data to drive the business process.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You can use Camunda 8 to orchestrate processes with human tasks of any complexity. User tasks allow you to create and assign tasks to users, who can then perform their work and enter the required data to drive the business process.
You can use Camunda 8 to orchestrate processes with human tasks of any complexity. Use the user task BPMN element to create and assign tasks to users, who can then perform their work and enter the required data to drive the business process.

For the getting started with HTO guide, I'd also be interested in seeing @volodymyr-melnykc 's perspective as he's the HTO PM

@@ -100,13 +139,14 @@ To run this guide, make sure to be in **Implement** mode to specify the technica

1. A **start event** is automatically added to the canvas. Click it to display configuration and append options.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The start event should be automatically selected- you can check this behavior on SaaS

@@ -100,13 +139,14 @@ To run this guide, make sure to be in **Implement** mode to specify the technica

1. A **start event** is automatically added to the canvas. Click it to display configuration and append options.
2. Click the rectangular **Append Task** icon to append a task.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image These instructions should be updated to account for the new context pad. The user has to hover over the blue circle to the right, then click the rectangular append task icon. This applies for all instructions- they should be double-checked

2. Click the blue **link icon** in the lower right corner. A menu expands that allows you to create a new form.
<img src={ModelerFormMenuImg} style={{width: 400}} alt="Annotation to open the form menu" />
3. Click **Create new form**. A form will be created and opened in the form editor. The form is automatically named.
1. Click the blue **link icon** in the lower right corner. A menu expands that allows you to create a new form.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image I saw this instead of the empty state

@@ -174,7 +213,7 @@ If the properties panel for your form doesn't open automatically, navigate to **

## Step 3: Link the form to your process
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you create a form according to these instructions, then this step is automatically completed.

First, you must create the BPMN diagram file and project.

1. Open Web Modeler, and click **New project**. Every file in Web Modeler requires a project.
2. Select **Create new > BPMN diagram**.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For automation, users should always use process applications. They have the most features, including a smoother Play deployment experience


### Deploy and test run
1. Click the **Play** tab to enter Play mode.
1. Once the Play environment is ready, click **Start a process instance** to start testing your process.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With 8.6, the user will need a cluster rather than just waiting for the Play environment.
image
image
image
image

As well as using Play mode to quickly validate and run your process in development, you can also:

- Deploy the process to a [cluster](/components/concepts/clusters.md) in other environments such as testing, staging, and production. After you deploy your process, it can be run on the cluster.
- Run and complete the user task in [Tasklist](/components/tasklist/introduction-to-tasklist.md). Applications such as Tasklist can be used by humans to complete tasks. As well as using Play mode and Tasklist to run a process, you can call the process via the API or an inbound trigger. Read more about [run options](/components/modeler/web-modeler/run-or-publish-your-process.md).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can follow a link to Operate...
image
and then a link to Tasklist if you have an open user task...
image

Or you can open Tasklist and it should show the open task directly

@mesellings
Copy link
Contributor Author

This is good progress, but fundamental updates to the user journey and differences between Desktop Modeler+C8 Run, Web Modeler SM, and Web Modeler SaaS make it difficult to follow the changes. It's probably best to group the tabs as Desktop Modeler | Web Modeler especially because we're uniting the UX between Web Modeler SaaS and SM

This complicates the flow and also the table of contents, where there are two step 4s image

Thanks @HanselIdes I'll take another look at this - I really appreciate the comprehensive feedback 👍

@github-actions github-actions bot temporarily deployed to camunda-docs October 11, 2024 15:22 Destroyed
@mesellings
Copy link
Contributor Author

@HanselIdes I've gone through the SaaS section and incorporated all your feedback - please check you are happy with the new structure, and I will move onto the SM section.

https://preview.docs.camunda.cloud/pr-4401/docs/next/guides/orchestrate-human-tasks/

  • I've condensed it into 3 stages: Step 1: Create and design a process, Step 2: Design and link a form, and Step 3: Run and validate your process.
  • I think it might be good to keep the SaaS & Web Modeler / SM Camunda 8 Run & Desktop Modeler split as it covers multiple bases for users - what do you think?

p.s. Ignore the right-hand menu for now, as it is still affected by the unchanged SM content.

Copy link
Contributor

@HanselIdes HanselIdes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The one thing that must be addressed is the inaccuracy between SaaS and SM. In this guide as it's written, SM represents local development (Desktop Modeler + C8 Run), not self-managed.

docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved
1. A **start event** is automatically added to the canvas. Click it to display configuration and append options.
2. Click the rectangular **Append Task** icon to append a task.
1. A **start event** is automatically added to the canvas and selected.
2. Append a task. For example, hover over the blue plus icon and select the **Append Task** icon from the [context pad](/components/modeler/web-modeler/context-pad.md).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Arguably, the append element option offers better discovery for automation options and fewer steps, combining step 2 and 4. @lmbateman / @nikku, do you think we should drive new users to use the append anything option?
image

docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved
@mesellings
Copy link
Contributor Author

@HanselIdes I've made those changes now, and other than the Append element comments, this is probably good to go for a final review?

In summary, I changed language to Desktop/Web as suggested, added a context pad link, and removed some heading elements from the Desktop validate section to avoid them appearing in the right-hand TOC (until we can fix this so it takes tabbed content into context).

@github-actions github-actions bot temporarily deployed to camunda-docs October 16, 2024 10:11 Destroyed
HanselIdes
HanselIdes previously approved these changes Oct 17, 2024
Copy link
Contributor

@HanselIdes HanselIdes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

- Select **Self-Managed** to see an example using Camunda 8 Run and Desktop Modeler.
- Select **SaaS** to see an example using Camunda 8 SaaS and Web Modeler.
- Select **Desktop** to see an example using Camunda 8 Run and Desktop Modeler in a local development environment.
- Select **Web** to see an example using Camunda 8 SaaS and Web Modeler.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Web Modeler Self-Managed is excluded, but that's appropriate for this stage of the journey

Copy link
Contributor

@conceptualshark conceptualshark left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My lingering question here is why the addition of Play changes the Web Modeler section of this guide into "validate with Play" as the end result, and not completing and checking on the task in Tasklist and Operate.

I don't think this guide should solely walk a user through building a model and using Play for initial validation. Presenting options for understanding how that process moves through/works with Operate and Tasklist is an equally important end result.

<Tabs groupId="install" defaultValue="saas" queryString values={
[
{label: 'Self-Managed', value: 'sm' },
{label: 'SaaS', value: 'saas' },
{label: 'Desktop', value: 'sm' },
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be beneficial for these to read more descriptively/match the description above? "SaaS and Web Modeler" | "Self-Managed and Desktop Modeler". As labels, they're short enough to scroll by right now, and if SaaS vs SM didn't entirely capture the paths here, I don't think Desktop vs Web does either.

Per Eric's point, I don't want the implication to be that these are exclusive methods for either version, but I do think we should align with the current Getting Started experience defining SaaS and SM as the modes of moving through the guides.


In this example, you will learn how to:

- Create and run your first process with a human in the loop.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the later wording of "route (a) process flow based on a user decision." "A human in the loop" still feels ambiguous; not blocking, but I'm not sure if a more descriptive task here would be helpful, though we describe the action enough otherwise so it may just be me.

docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved

### Create a new file
Start by creating and designing a process to demonstrate how to route the process flow based on a user decision. In this example, you will create a process to decide what to eat for dinner.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Start by creating and designing a process to demonstrate how to route the process flow based on a user decision. In this example, you will create a process to decide what to eat for dinner.
To learn how to route a process flow based on a user decision, you will create and design a process to decide what to eat for dinner.

5. Select the user task and click on the diamond-shaped icon to append an exclusive gateway. The gateway allows to route the process flow differently, depending on conditions.
6. Select the gateway and append a task by clicking the task icon. Repeat it to create a second process flow. Name the tasks based on what the user decides to eat: in this case, we've named ours `Prepare chicken` and `Prepare salad`.
1. A **start event** is automatically added to the canvas and selected.
2. Append a task. For example, hover over the blue plus icon and select the **Append Task** icon from the [context pad](/components/modeler/web-modeler/context-pad.md).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Context pad is more useful for the SaaS/web modeler side of things and not the same experience in desktop. If this section is swapped to Append element instead (and the context pad reference removed), it brings it back in line with the Desktop experience and would remove the need for another set of split/tabbed content.

docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved
docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved
docs/guides/getting-started-orchestrate-human-tasks.md Outdated Show resolved Hide resolved
@HanselIdes
Copy link
Contributor

My lingering question here is why the addition of Play changes the Web Modeler section of this guide into "validate with Play" as the end result, and not completing and checking on the task in Tasklist and Operate.

I don't think this guide should solely walk a user through building a model and using Play for initial validation. Presenting options for understanding how that process moves through/works with Operate and Tasklist is an equally important end result.

@conceptualshark The goal mentioned in the guide says:
"This guide introduces you to the basics of human task orchestration. You will create a simple process to decide on what to eat for dinner, and drive the process flow according to that decision."

The best way to "drive the process flow" is through Play. It requires no navigation, and the additional features that Tasklist has (assignee, priority, process visualization) are unnecessary and perhaps distracting. I think it makes sense to mention that you can also go through Operate and Tasklist, but it is not necessary to achieve the stated goal.

If you believe the "get started" guides should feature Operate and Tasklist, then we can talk about changing their goal. Within the PM team, the focus has been around getting to 'hello world'. When I learned Python scripting (which is my background- I'm not a pro dev here), "hello world" happens in the console within a second of writing or editing the code with as little context change as possible.

Co-authored-by: Cole Isaac <82131455+conceptualshark@users.noreply.github.com>
mesellings and others added 3 commits October 21, 2024 08:15
Co-authored-by: Cole Isaac <82131455+conceptualshark@users.noreply.github.com>
Co-authored-by: Cole Isaac <82131455+conceptualshark@users.noreply.github.com>
Co-authored-by: Cole Isaac <82131455+conceptualshark@users.noreply.github.com>
@github-actions github-actions bot temporarily deployed to camunda-docs October 21, 2024 13:36 Destroyed
Copy link
Contributor

The preview environment relating to the commit 86b4640 has successfully been deployed. You can access it at https://preview.docs.camunda.cloud/pr-4401/index.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.6.0 October 2024 minor release component:console Issues related with Console project component:docs Documentation improvements, including new or updated content component:modeler Issues related with Modeler project component:web-modeler-SaaS Continuous delivery - Issues related with Web Modeler SaaS deploy Stand up a temporary docs site with this PR hold This issue is parked, do not merge. kind/feature Issues related with features to be documented
Projects
Status: 👀 In Review
Development

Successfully merging this pull request may close these issues.

4 participants