Microservices a Definition Analyzed by ßMACH
Marcus Hilbrich, Ninon De Mecquenem
TL;DR
The paper introduces the ßMACH protocol as a unifying, knowledge-based framework for software artifact management and demonstrates its application to the microservice architectural style. By defining a strict microservice concept and walking through a ßMACH-filled use case, the authors illustrate how management processes, roles, and interfaces can be described, analyzed, and propagated across teams. Key contributions include a compact, easily implementable protocol, explicit handling of external artifacts, and insights into how isolation impacts management overhead and knowledge transfer. The work offers a practical method for teams to formalize management strategies, compare approaches, and identify gaps, with potential impact on how large-scale microservice systems are planned and governed.
Abstract
Managing software artifacts is one of the most essential aspects of computer science. It enables to develop, operate, and maintain software in an engineer-like manner. Therefore, numerous concrete strategies, methods, best practices, and concepts are available. A combination of such methods must be adequate, efficient, applicable, and effective for a concrete project. Eelsewise, the developers, managers, and testers should understand it to avoid chaos. Therefore, we exemplify the ßMACH method that provides software guidance. The method can point out missing management aspects (e.g., the V-model is not usable for software operation), identify problems of knowledge transfer (e.g., how is responsible for requirements), provide an understandable management description (e.g., the developers describe what they do), and some more. The method provides a unified, knowledge-based description strategy applicable to all software management strategies. It provides a method to create a minimal but complete description. In this paper, we apply ßMACH to the microservice concept to explain both and to test the applicability and the advantages of ßMACH.
