Modeling driven development