1 Model Driven Prototyping with Modelibra Dzenan Ridjanovic Université Laval, 2325 rue de la terrasse, Québec (Québec) G1V 0A6, Canada dzenanr@gmail.com Abstract. A domain model may be designed in iterations, where each iteration is validated through a default application generated from the model. By adding, editing, removing, retrieving and navigating real data it becomes obvious what is wrong with the model. Once the model is validated, user views of the model may be developed by reusing generic components or by developing specific components. Modelibra is a software family of tools and frameworks that supports this prototyping process of designing domain models and their views. Keywords: domain models, model frameworks, model validation, model prototyping, model views. 1 Introduction A domain model is a model of specific domain classes that describe the core data and their behavior [1]. In business terms, a domain model is a model of the domain. Within the domain, an organization conducts its business [2]. The memory of any organization may be abstracted as a domain model. The backbone of data intensive software is a domain model. The core of an organizational information system is a domain model. It is hard to design a model that reflects well its domain, as it is not easy to develop software based on a domain model. A way to validate and improve a domain model is to use an application developed on the model. It is much easier for a domain expert to use the application than to read the model. By adding, editing, removing, retrieving and navigating real data it becomes obvious to a domain expert what is wrong with the model. However, it takes resources to develop an application based on a domain model. A research goal is to reduce the time to develop an application based on a domain model. There are two categories of prototypes developed on a domain model. The first category represents applications that are very close to their domain models. Its objective is to make a domain model alive to allow users to validate the model. After the model is validated, the application is pushed to the background to allow an administrator to quickly make some changes in data. This category represents model prototypes. A prototype of a domain model may be considered as a default application of the model. After some improvements in the model, a new prototype is constructed to continue with model validations. This is repeated until the model becomes stable.