Overview
What is Jazz
Jazz is a tool that allows the user to automate the most diverse use cases for integration in a simple and objective way, without bureaucracy, at a very low cost or in more simple use cases, even for free.
What problem it solves?
Did you ever heard the expression white elephant?
It is very common in companies of all sizes to have in their ecosystem a vast number of applications, from different areas and sectors, that at some point in the process need to integrate to deliver a final result. Here comes the need for integration platforms, and, of course, there are several options in the market.
When an analyst seeks out the IT area of the company with the need to automate an integration process, this is the moment that problems comes is.
THE PROBLEM:
Typically, the integration platforms available are huge, super-robust platforms that solve all possible use cases, and therefore have an expensive user license, high maintenance costs, often the need for server provisioning, not to mention the need for constant IT support for usage.
Also, these tools are often sold as self-service platforms, where the user can configure their integration processes by themselves, but at the end, show up so complex that end users fell that needs to work in NASA to use the thing.
Not to mention that often, for an initial implementation of the use case, it is necessary to start an entire project, that is, $ and more $ ...
THE FRUSTATION:
Well, the fact is, the user just wants to solve a simple problem, which for example, is to convert an excel file to a text file, or to search a data in a database and create a report. Nothing more than this...
With all this bureaucracy mentioned earlier,the user simply gives up, and continues to do it's daily manual process, wasting time that could be doing things that really add personal value or the company itself.
Now imagine the possibility of the user being able to configure their integration in a really user friendly interface, package this configuration, and pay only for it, what about $ 10 USD, for example?
Well, that sounds Jazz to my ears!
What differentiates from other tools?
Tools on the market to automate processes will not be lacking, it has all kinds and costs.
The differential here is the model.
The charge model
Note: The marketplace platform is a work in progress, so that in this moment, all the packs are being developed preety much by the jazz core team and published through npm repository. So that, at this moment, they are all free!
The platform itself is completely free. You only pay for your specific need. You set up your jazz-pack according to your need, or search for one already available in our marketplace, download the package (some can be free, and others will cost very low), and you can use your package unlimited, no expensive usage licenses, no installations, no need for robust servers to run the processes.
Runs locally
Note: This functionality is implemented!
This is another different way to think.
Q. Where Jazz runs?
A. In your computer.
In a world where everything runs in the cloud, it seems we are retrocessing by running this in the user computer right ? Well, as everything in the life, the answer is: that depends.
Most of the time, the end user wants a single thing: to solve it's problem, which for example can be to is to automate a process, to convert an excel into a text file in specific layout for example.
Well, for this, you don't need a server or a cloud platform to perform this task. You can dowload the jazz-pack to your computer run it, and you are done! Simple like that!
No restrictions about confidential information
Note: This functionality is implemented!
In many, many use cases, the data to be processed is confidential and cannot be uploaded into a cloud platform for example, without the agreement of the compliance area of the company.
Another thing that turns Jazz much easier option than others in the market, is that since this runs in your computer, you don't need to worry about this.
What if I want the cloud?
Let's say you have a big amount of data to process. In this case, maybe a server is a good idea. That is OK, jazz can run as a web portal, which means you can install it in a web server, being a physical server or in any cloud server you want.
The user interface
Note: The Jazz Composer interface is a work in progress, so that in this moment, jazz-packs can only be created by developers, through the jazz-pack-boilerplate project, and following the instructions described in the section How to develop a jazz-pack.
One of the things that makes other platforms fail in the criteria user friendly is that they expect the end user to think on the solution, and not in the requirement.
More Requirement, Less Solution
Sounds weird, right, but we will explain.
Jazz provides a user interface called Jazz Composer. It's completely focused on making the end user to talk about it's requirement or problem, and not think on the solution to solve the problem.
Imagine the following use case:
A financial/payroll analyst wants to be able to deliver a bank file in specific layout with the employees amount and bank accounts to the bank so that the bank can submit the file into their system and the employees can get paid.
This is a real case, and this is all the user knows! The user does not know for example that a solution could be having the data in an excel file, making a convertion and delivering this in a text file. This is totally part of the solution, not the requirement.
With the Jazz Composer Assistant, it will make and an artificial inteligence will help to provide the user the best jazz-pack for it's need, and also help the user to configure this, also through elicitation questions.
It will make questions like:
- Where is your source data ?
- Could that be manually populated into an excel?
- Do you want to transform your data ?
- Do you have a specific layout?
- Do you want to save the transformed data in your computer or do you want to save into a different place?
- In which kind of place ? A pAth in your network? A server? Is this local server?
- Do you wan to be warned in case of success?
- How to you want to be warned ?
- Do you want to be warned in case of error ?
- ... well, we go far...
With the answers above, Jazz Assistant will try to find the best option for the user for what is available in the market place. Of course, it can be a new use case, with no ready to go package available.
It's here that cames in another differential.
The collaborative model
Another point that differentiates the platform is its collaborative model.
Any developer who wants to create a jazz-pack and sell it at a fair price in the Jazz Marketplace can do it. In the same way, it is also possible for developers to create the most diverse plugins, and put the sale in the marketplace as well.
This model makes platform growth not only in the hands of the jazz-core team, but also in the community, making the tool ecosystem grow very rapidly, making more and more jazz-packs and jazz-plugins available to more use cases.
Note (for plugins) : This functionality is already implemented. If you are a developer, you can start developing your jazz-plugins today. A good start point for that is through the jazz-plugin-boilerplate project, and following the instrutions in section How to develop a jazz-plugin.
Note 2 (for plugins): Only keep in mind that you still will not be able to charge for your plugins, since the Jazz Marketplace platform is still a Work in Progress. An advice, start working on the free versions, and make them available. Them, roadmap your plugin to your premium versions!
How it works?
The Jazz Ecosystem is composed basically by 3 types of "components" (that in the end are nothing more than node modules):
To make it easier to understand, think of it as a car:
jazz-core: this is the main engine. Basically is a task runner that receives the instructions through the jazz-pack and processes the tasks in a pipeline. It also has a single native plugin embedded inside it, that is the Transformer plugin (by the way, this is the reason for the name of the product! If you like Transformers you will understand :-) .
jazz-plugins: These are the parts of the car, such as wheels, the multimedia system, the onboard computer, the braking system, and so on. These are the jazz-plugins. The way that Jazz application was designed, it is possible to create plugins or extensions for the most diverse purposes. For example, we can have a plugin that reads data from an excel spreadsheet and saves into a plain javascript object, another plugin that gets a javascript array, and saves the rows into a text file. Each plugin can have one or many tasks. Each task can be configured to receive an unlimited number of input parameters.
jazz-packs: This is the car driver. Or you can think of it as a list of instructions necessary for the processing of the pipeline. Basically, there are 2 main information that need to exist on a jazz-pack file: the pipeline and each plugin configuration.
Technically speaking , the jazz-pack is nothing more than a javascript file, that will export a javascript object, with a bunch of properties.