Clean architecture : a craftsman's guide to software structure and design - Martin, Robert C. (Prentice Hall, 2018)