MODEL-BASED SOFTWARE ARCHITECTURES. Models of software are used in an increasing number of projects to handle the complexity of application domains.