Posts

Traffic-Lights for Microservices

 There was a time when message-oriented service to service software communication invariably followed a command-driven, centralised architecture model. We had languages such as Business Process Execution Language (BPEL) to not only aid with process design for such architectures but which could be executed as workflow engines. Then, in the mid 2000s, I was involved with the design committee called the OASIS Electronic Business Business Process (ebBP) Technical Committee, designing and standardising a language for an alternative kind of architecture model, called choreography. It was decentralised and was therefore arguably more suited to message exchanges between organisations rather than within an organisation. The centralised approach, on the other hand,  became known as orchestration. Another term for it, gaining popularity nowadays, is ‘command-driven’.  The ebBP processes could collaborate and could be composed together into combinations of processes. The more atomic processes coul