kaldesai commented on code in PR #604:
URL:
https://github.com/apache/incubator-kie-kogito-docs/pull/604#discussion_r1542479511
##########
serverlessworkflow/modules/ROOT/pages/use-cases/advanced-developer-use-cases/getting-started/create-your-first-workflow-project.adoc:
##########
@@ -0,0 +1,187 @@
+= Creating a Quarkus Workflow Project
+
+As a developer, you can use {product_name} to create an application and in
this guide we want to explore different options and provide an overview of
available tools that can help in that purpose.
+
+We will also use Quarkus dev mode for iterative development and testing.
+
+As a common application development, you have different phases: Analysis,
Development and Deployment. Let's explore in detail each phase and what
{product_name} provides in each case:
+
+* <<proc-analysis-phase,Analysis and taking decisions phase>>
+** <<proc-adding-persistence,Adding persistence?>>
+** <<proc-adding-eventing,Adding eventing?>>
+** <<proc-adding-data-index-service,Adding Data Index service?>>
+** <<proc-adding-job-service,Adding Job service?>>
+
+* <<proc-development-phase,Development phase>>
+** <<proc-boostrapping-the-project,Bootstrapping a project, Creating a
workflow, Running your workflow application and Testing your workflow
application >>
+** <<proc-logging-configuration,How to configure logging>>
+** <<proc-dev-ui, Refine your workflow testing with Dev-UI>>
+* <<proc-deployment-phase,Deployment phase>>
+
+
+.Prerequisites
+* You have setup your environment according to the
xref:getting-started/preparing-environment.adoc#proc-advanced-local-environment-setup[advanced
environment setup] guide.
+
+For more information about the tooling and the required dependencies, see
xref:getting-started/getting-familiar-with-our-tooling.adoc[Getting familiar
with {product_name} tooling].
+
+ifeval::["{kogito_version_redhat}" != ""]
+include::../../pages/_common-content/downstream-project-setup-instructions.adoc[]
+endif::[]
+
+
+[[proc-analysis-phase]]
+== Analysis phase
+
+Start by analyzing the requirements for your {product_name} application. This
will enable you to make decisions about persistence, eventing, security,
topology and component interaction needs of your application.
+
+[[proc-adding-persistence]]
+=== Adding persistence?
+Service orchestration is a relevant use case regarding the rise of
microservices and event driven architectures. These architectures focus on
communication between services and there is always the need to coordinate that
communication without the persistence addition requirement.
+
+{product_name} applications use an in-memory persistence by default. This
makes all the {workflow_instance} information volatile upon runtime restarts.
In case of this guide, when the workflow runtime is restarted.
+As a developer, you need to decide if there is a need to ensure that your
workflow instances remain consistent in the context.
+
+If your application requires persistence, you need to decide what kind of
persistence is needed and configure it properly.
+Follow the {product_name}
xref:use-cases/advanced-developer-use-cases/persistence/persistence-core-concepts.adoc[persistence
guide] for more information.
+
+You can find more information about how to create an application which writes
to and reads from a database following
link:https://quarkus.io/guides/getting-started-dev-services[Your second Quarkus
application] guide.
+
+[[proc-adding-eventing]]
+=== Adding eventing?
+
+Quarkus unifies reactive and imperative programming you can find more
information about this in the
link:https://quarkus.io/guides/quarkus-reactive-architecture[Quarkus Reactive
Architecture] guide.
+
+In this phase we need to decide how the Event-Driven Architecture needs to be
added to our project.
+As an event-driven architecture, it uses events to trigger and communicate
between services. It allows decoupled applications to asynchronously publish
and subscribe to events through an event broker. The event-driven architecture
is a method of developing systems that allows information to flow in real time
between applications, microservices, and connected devices.
+
+This means that applications and devices do not need to know where they are
sending information or where the information they are consuming comes from.
+
+If we choose to add eventing, {product_name} supports different options like:
+
+* *Kafka Connector* for Reactive Messaging. See
xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-producing-events-with-kafka.adoc[]
for more details.
+* *Knative* eventing. See
xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-produce-events-with-knative-eventing.adoc[]
for more details.
+
+You need to choose how the different project components will communicate and
what kind of communication is needed. More details about
link:https://quarkus.io/guides/quarkus-reactive-architecture#quarkus-extensions-enabling-reactive[Quarkus
Extensions enabling Reactive]
+
+[[proc-adding-data-index-service]]
+=== Adding Data Index service?
Review Comment:
Is the use of `?` intentional here?
```suggestion
=== Adding Data Index service
```
##########
serverlessworkflow/modules/ROOT/pages/use-cases/advanced-developer-use-cases/getting-started/create-your-first-workflow-project.adoc:
##########
@@ -0,0 +1,187 @@
+= Creating a Quarkus Workflow Project
+
+As a developer, you can use {product_name} to create an application and in
this guide we want to explore different options and provide an overview of
available tools that can help in that purpose.
+
+We will also use Quarkus dev mode for iterative development and testing.
+
+As a common application development, you have different phases: Analysis,
Development and Deployment. Let's explore in detail each phase and what
{product_name} provides in each case:
+
+* <<proc-analysis-phase,Analysis and taking decisions phase>>
+** <<proc-adding-persistence,Adding persistence?>>
+** <<proc-adding-eventing,Adding eventing?>>
+** <<proc-adding-data-index-service,Adding Data Index service?>>
+** <<proc-adding-job-service,Adding Job service?>>
+
+* <<proc-development-phase,Development phase>>
+** <<proc-boostrapping-the-project,Bootstrapping a project, Creating a
workflow, Running your workflow application and Testing your workflow
application >>
+** <<proc-logging-configuration,How to configure logging>>
+** <<proc-dev-ui, Refine your workflow testing with Dev-UI>>
+* <<proc-deployment-phase,Deployment phase>>
+
+
+.Prerequisites
+* You have setup your environment according to the
xref:getting-started/preparing-environment.adoc#proc-advanced-local-environment-setup[advanced
environment setup] guide.
+
+For more information about the tooling and the required dependencies, see
xref:getting-started/getting-familiar-with-our-tooling.adoc[Getting familiar
with {product_name} tooling].
+
+ifeval::["{kogito_version_redhat}" != ""]
+include::../../pages/_common-content/downstream-project-setup-instructions.adoc[]
+endif::[]
+
+
+[[proc-analysis-phase]]
+== Analysis phase
+
+Start by analyzing the requirements for your {product_name} application. This
will enable you to make decisions about persistence, eventing, security,
topology and component interaction needs of your application.
+
+[[proc-adding-persistence]]
+=== Adding persistence?
+Service orchestration is a relevant use case regarding the rise of
microservices and event driven architectures. These architectures focus on
communication between services and there is always the need to coordinate that
communication without the persistence addition requirement.
+
+{product_name} applications use an in-memory persistence by default. This
makes all the {workflow_instance} information volatile upon runtime restarts.
In case of this guide, when the workflow runtime is restarted.
+As a developer, you need to decide if there is a need to ensure that your
workflow instances remain consistent in the context.
+
+If your application requires persistence, you need to decide what kind of
persistence is needed and configure it properly.
+Follow the {product_name}
xref:use-cases/advanced-developer-use-cases/persistence/persistence-core-concepts.adoc[persistence
guide] for more information.
+
+You can find more information about how to create an application which writes
to and reads from a database following
link:https://quarkus.io/guides/getting-started-dev-services[Your second Quarkus
application] guide.
+
+[[proc-adding-eventing]]
+=== Adding eventing?
+
+Quarkus unifies reactive and imperative programming you can find more
information about this in the
link:https://quarkus.io/guides/quarkus-reactive-architecture[Quarkus Reactive
Architecture] guide.
+
+In this phase we need to decide how the Event-Driven Architecture needs to be
added to our project.
+As an event-driven architecture, it uses events to trigger and communicate
between services. It allows decoupled applications to asynchronously publish
and subscribe to events through an event broker. The event-driven architecture
is a method of developing systems that allows information to flow in real time
between applications, microservices, and connected devices.
+
+This means that applications and devices do not need to know where they are
sending information or where the information they are consuming comes from.
+
+If we choose to add eventing, {product_name} supports different options like:
+
+* *Kafka Connector* for Reactive Messaging. See
xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-producing-events-with-kafka.adoc[]
for more details.
+* *Knative* eventing. See
xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-produce-events-with-knative-eventing.adoc[]
for more details.
+
+You need to choose how the different project components will communicate and
what kind of communication is needed. More details about
link:https://quarkus.io/guides/quarkus-reactive-architecture#quarkus-extensions-enabling-reactive[Quarkus
Extensions enabling Reactive]
+
+[[proc-adding-data-index-service]]
+=== Adding Data Index service?
+
+The {data_index_ref} service is able to index the {workflow_instance}
information using GraphQL. This is very useful if you want to consume the
workflow data in different applications through a GraphQL endpoint.
Review Comment:
```suggestion
The {data_index_ref} service can index the {workflow_instance} information
using GraphQL. This is very useful if you want to consume the workflow data in
different applications through a GraphQL endpoint.
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]