As Software engg tries to redefine itself more and more as "re-use engg" we feel the necessity of modularization and component based development.
Estimating quality attributes of a system like performance, reliability, security and others in advance of actually building the system is important. This could be based on the individual components that compose the system. Architecture could be the best place where we could introduce such analysis and then reason about the system further.
Models include - Reliablity based on State-models, Markov Models, Poisson distribution of faults in modules and the interfaces of module interactions. Queying Network theory for Performance etc.
Need lot of exploring in there, but these analyses are what improve the necessity and significance of architectures and also makes architectural formalism worth it.
Arch based analysis of Performance, Reliability and Security of Software Systems: Vibhy Saujanya Sharma and Kishore Trivedi
Architecture based performance analysis: Bridget Spitznagel and David Garlan