Joining the Dots

Many tools and frameworks let us build out the networks, services, functions and other components that make up a new system in a modern computing environment.

I'm thinking of tools like AWS Lambda and OpenFaas; architectural patterns such as microservices; and programmable infrastructure like SDN.

But a persistent problem haunts us still.

Whatever the combination of tech, we always need to join the dots to make the overall solution work.

So, we write yet another black-box to do just that, invisibly joining various systems together to form the overall solution.

Done this way, complexity increases with the square of the systems joined together. The exploding complexity creates cost and conduct risk that damages the business.

Reduce Complexity

OpenSPARKL reduces complexity by joining the dots in clear-box configuration, not black-box code.

By taking logical links away from end-point code, you create a logical hub that means overall complexity rises much slower, leading to reduced cost and conduct risk.

It's in the Mix

OpenSPARKL configuration is simple and includes an important element - the mix.

A mix is a folder holding the components in a given solution, including how events move between them. The result is a middleware function that makes systems work together.

You author a mix using either your favourite text editor or the design tool included in OpenSPARKL.

The Difference

Joining systems this way reduces complexity, and there are other good reasons for doing it, too:

First, it is a completely natural fit for today's microservice and functions-as-a-service provisioning infrastructure. Being a clear-box solution, you can always see what systems work together and how.

Second, it leads to automatic distributed and parallelised execution of middleware functions across highly scalable low-level solutions like OpenFaaS, AWS and Azure alongside traditional, external or legacy systems.

Third, it delivers valuable technical features such as

  • just-in-time, reasoned provisioning that scales to zero
  • normalised unit- and system-testing
  • the ability to listen to any individual service, field or event
  • clean, normalised audit trails

And of course you get all this regardless of the components and systems involved.

Next Step

I hope I've convinced you that reducing logical complexity is a good thing, and that OpenSPARKL is a good way to do it.

Please move on to the Quick Start. Also, let me know at what problems you're trying to deal with and what OpenSPARKL should do to make it easier for you.