> For the complete documentation index, see [llms.txt](https://4wsplatform.gitbook.io/user-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4wsplatform.gitbook.io/user-guide/modules/bpm/ee0-1-bpm-introduction.md).

# BPMN Introduction

BPMN or Business Process Model and Notation is a standard used to describe internal processes of an organization and to provide a graphical representation for a shared procedure, managed by the involved employees and services, in order to optimize the efficiency of the procedure.\
A Business Process Model can be applied to cover a variety of needs, including reminders, timeouts, replacements, email notifications, etc.\
Using a Business Process Model in a large and complex process makes it possible to get a high efficency, especially for these reasons:

* easy to use and learn
* higher execution speed of the procedure
* reduction in the execution time of the whole process.

In order to allow the definition and management of complex business processes using a unique front-end, the Activiti BPM engine and designer have been embedded into 4WS.Platform, a Rapid Application Development solution, available with an open source license and able to create web applications including BPM processes too.\
Activiti is considered one of the best BPM open source engines.\
However, if used as a stand alone product, it has a few weaknesses:

* lack of a document management system inside a process: there is not the support of document versioning, storing and searching for documents forwarded to an external CMS
* a poor and not very user friendly GUI: the provided user interface is quite rigid and not focused on the final user needs
* a poor data validation: the supported data format includes only text, numbers, fixed enumeration and dates, not validated data through a dynamic list of values, nor translated data.

These weak points have been already successfully addressed in 4WS.Platform, so that the embedding of Activiti takes advantage of the 4WS.Platform features, including a high level of customization at GUI and business logic level.\
The main advantages provided by this integration are:

* document storing and sharing can be delegated to 4WS.Platform or other extensions, including Alfresco CMS
* an alternative and better customizable user interface can replace the native GUI provided by Activiti
* a larger set of graphics components are available through 4WS.Platform, including data validation, mandatory fields, additional data types, supported both at the web GUI and at the database layer.

Thanks to this integration, 4WS.Platform allows to design and configure web and mobile applications with a high level of customization and this is due to the availability of the business processes too, managed at business and GUI levels.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://4wsplatform.gitbook.io/user-guide/modules/bpm/ee0-1-bpm-introduction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
