Abstract
Improving the reusability of models and automatic code generation efficiency are problems of model driven development. In order to solve these problems, we apply component-based development technologies which have been mainly developed on software implementing level to modeling level. In the proposed approach, functionally relevant model elements are packed as a component, and modeling software is carried out associating with the model components. The role of a model becomes clear by introducing the concept of component, and the reusability of model components is raised by externalizing the dependency between components. In addition, flexible model transformation rules united with the roles of models can be designed. As a result, it is able to generate more source codes automatically. The validity of the proposed approach has been checked by application experiments.