computer method and apparatus for managing configurations of programming models is disclosed . a software development workspace respective to a user holds a programming model configuration specified by the user . the configuration is formed of one or more model elements . for each user workspace , one or more change flow hierarchies define flow of changes to model elements .