Identifying availability tactics to support security architectural design of microservice-based systems

Gastón Márquez, Hernán Astudillo R. · 2019

Microservices is an architectural style that considers systems as modular, customer-centric, independent, and scalable suite of services. In order to address security requirements in microservices-based systems, architects often must focus on critical quality attributes, such as availability, aiming at employing architectural solutions that provide design decisions that address key security concerns (also known as architectural tactics). Although current architectural tactics for availability offer an extensive catalog of alternatives to improve availability and security factors, new availability concerns (emerging from security microservices requirements) demand new or improved architectural tactics. In this article, we examined the source code and documentation of 17 open source microservices-based systems, identified 5 uses of availability tactics, and characterized them using a newly introduced descriptive template. We found that almost all (4 out of 5) tactics did focus on preventing faults rather than detecting, mitigating or recovering from them (which are the traditional tactics taxonomies' branches). This approach can be further used to systematically identify and characterize architectural tactics in existing microservices-based systems in other critical quality attributes concerning security, such as confidentiality and integrity.

Read the paper · More papers on PaperTik