Architecting Applications 1: the model