What is Hydra OMS?

Hydra OMS is an open source Order Management System (OMS). It is intended for use in companies and automates their complex and/or frequently changing business processes.

What are use cases for Hydra OMS?

Here is the list of some processes that we have knowledge of.

Generally speaking, your company benefits from Hydra OMS deployment in the following conditions (the more are met the better):

  1. There are many business processes in use at your company.

  2. There are many instances of processes (a hundred per month at least).

  3. Processes are complex: they have branches, SLA and escalation timers, manual fallback paths and so on.

  4. They involve both human tasks (data input, decision making, negotiation with customer etc) and computer tasks (requests to CRM, ERP, billing, help desk, field service software).

  5. They are prolonged in time (each process is completed at least in a couple of days since it began).

How does Hydra OMS benefit my company?

Properly automated order management benefits the business in three ways compared to manual execution of the same processes:

  1. Reduced human factor improves customer experience and lowers transactional costs.

  2. Learning curve for new employees becomes much less steep because they don’t need to remember all the process branches, conditions and order of actions.

  3. All running business process instances are clearly visible to the management; therefore, they become manageable.

  4. All completed orders are available for reports and analytics.

If you already have some custom programmed automation, then Hydra OMS still has advantages:

  1. If you need to make a new process or make an update to one of the existing processes, you don’t have to go to the developers, pay them a lot of money and wait for a long time. With Hydra, you just draw your business process in its visual editor, upload it to the BPM engine and all the new process instances update to the latest version (the old ones run with the old version).

  2. The screen forms in Hydra’s Execution Wizard are highly configurable via config files (again, no programming needed). Therefore, UI design is much easier.

How is it built internally?

Hydra OMS consists of four main components:

  1. BPM engine for which we use widely popular open source software called Activiti.

  2. Order Database that stores orders and utilizes hybrid relational/object storage available in PostgreSQL.

  3. OMS server with an API and a web interface for administration and order management is central to the solution interacting with all other components. It is implemented in Ruby on Rails.

  4. Embeddable BPM widget with configurable Execution Wizard is a React-based JavaScript frontend application interacting with OMS server via REST API.

What are the differences between Hydra OMS and a BPM system?

Hydra OMS is a superset of a BPM system (or shortly BPMS). It runs on Activiti BPM engine at the moment.

All BPM systems known to us have questionable UI choices and non-extendable web interface usually written in Java. When somebody wants to integrate BPMS into already existing application, defaults are often thrown away and rewritten from scratch for specific use cases. This solution works, but it compromises the flexibility which had been the reason why BPMS was deployed in the first place. That’s why we created configurable Execution Wizard which can be embedded into your application.

The other difference is the Order Database which BPMS doesn't have by definition, but Hydra has. Of course you can implement it in your own application but it involves a lot of effort.

Finally, Hydra OMS is an open source system and it is already integrated with popular software. We are going to extend our integration capabilites with the help of our community.

What are the differences between Hydra OMS and a traditional OMS system?

Traditional order management systems do not employ BPM engine. Instead, they use some kind of configurable workflows. The reason is simple: they had been created long before BPM software came into existence. And yet, they are still sold and supported because enterprise systems have great inertia and long investment cycle.

In traditional systems, the workflow engine is usually custom developed and highly industry specific. Therefore, a) you cannot use, say, telecommunication OMS in e-commerce and vice versa and b) solution cost is usually high due to narrow market. On the contrary, Hydra OMS is a) a versatile software not tied to any industry and b) completely free.

There are some downsides, too. For example, Hydra OMS does not have inventory or warehouse module; you have to deploy external systems for that purpose. But if you look at this situation in SOA paradigm: software should not be a multipurpose monster, it should focus on its task.

Which integrations does Hydra OMS have?

Right now it’s integrated with:

  1. Our own Hydra Billing system for telecom and service providers.

  2. SQL databases in order to feed the Execution Wizard with context data.

We are planning to expand this list and look for contributors.