Business Object Centric Patterns for Microservices

Adambarage Anuruddha Chathuranga De Alwis, Alistair Barros, Artem Polyvyanyy, Colin Fidge · QUT ePrints (Queensland University of Technology) · 2019

A key impediment towards maturing microservice architecture conceptions is the uncertainty about what it means to design fine-grained functionality for microservices. Under traditional service-oriented architecture (SOA), the unit of functionality for software components concerns individual business domain objects and encapsulated operations, enabling desirable architectural properties such as high cohesion and loose-coupling of the components. At present it is not precisely clear how this SOA design strategy can be refined for microservices nor, more generally, how design considerations for different degrees of granularity apply, in a consistent and systematic way, for large SOA systems to smaller microservices. This paper proposes a first development towards maturing microservices architecture by way of microservice design patterns, via refinement of the functional structure of SOA. The patterns are derived by considering of the splitting of BO operations and salient types of BO relationships, which influence software structure (as captured in UML): object association, exclusive containment, inclusive containment and specialisation (i.e, subtyping). The viability of the patterns for evolving large SOA systems into microservices are demonstrated through automated microservices discovery algorithms, on three open-source enterprise systems used widely in practice (SugarCRM, ChurchCRM and Dolibarr)

Read the paper · More papers on PaperTik