How to Evaluate Your Software’s Architecture for Growth and Change