MACS: Modeling and Analysis of Concerns in Software