Guaraná DSL is a Domain-Specific Language (DSL) to design Enterprise Application Integration (EAI) solutions at a high-level of abstraction.

The resulting models obtained with Guaraná DSL are platform-independent, so engineers do not need to have skills on a low-level integration technology when designing their solutions. Furthermore, this design can be re-used to automatically generate executable EAI solutions for different target technologies. This is something that can be achieved by means of Model Driven Architecture.  Catch a glimpse at the Integration Stack with the abstraction levels for an integration solution and see where Guaraná DSL fits. Note that Guaraná DSL is the language you can use to design your EAI solutions and Guaraná SDK is the toolkit you can use to implement, run and monitor your EAI solutions.

Functionality and structure of an EAI solution are completely defined by using the language building blocks, ports, tasks, decorator, slots and integration links. Guaraná’s tasks are based on the Enterprise Integration Patterns (EIP Patterns) by Gregor Hohpe and Bobby Woolf.  It is possible to design the internal structure of all kinds of building blocks (wrappers and integration processes) and its communication ports (entry port, exit port, solicitor port and responder port) by using tasks; it is also possible, to create integration flows that allow applications to collaborate by connecting these building blocks by means of integration links. Applications that participate in the integration solution are documented using decorators as well as its layers being used as communication interface.