Quantitative observation and theoretical construction in software architectureGrady Booch2005WICSA 2005