How to Mastering Software Architecture