https://illustrarch.com/articles/47410-behavioral-architecture.html>