1. A computer program product comprising one or more physical computer-readable hardware storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform the following: an act of accessing a hierarchical structure of model elements, each element having an ancestral relationship status defined by the position of the each element in the hierarchical structure and parent-child associations of the each element and one or more other elements; for at least one of the model elements, an act of determining that the at least one model element should be changed from a first model element type to a second model element type, determining being at least in part behavior-based and based upon monitoring usage of the model elements; in response to the determination, an act of automatically changing the at least one model element from a first model element type to a second model element type and maintaining the ancestral relationship status of the changed at least one model element within the hierarchical structure of model elements such that the position in the hierarchical structure and parent-child associations of the at least one of the model elements are preserved for the changed at least one model element.