A framework for classifying and comparing architecture description languages
Architectural mismatch or why it's hard to build systems out of existing parts