MeTEOric: Meta-Tool Environments for Model-Oriented Collaborative Web Applications
Model Driven Software Development (MDSD) is an emergent paradigm in software engineering aiming to the construction of applications starting from models, with most of the code automatically generated. Domain Specific Visual Languages (DSVLs) play a fundamental role in this paradigm, because they make it possible to capture the knowledge associated to a concrete area of knowledge and use it to build models which serve as the basis from which the application code may be generated.
Many of the tasks usually performed on a computer are collaborative activities between different users; tools and services. Internet and Web2.0 technologies make the web navigator the ideal entry point to such applications. Many of them require frequent modifications and adaptations to make them useful in different environments and scenarios. The fact that their manual construction is expensive and their complexity potentially large, makes it desirable to have a precise description and a formal verification of their functionality and performance.
This project proposes the construction of a tool, based on a navigator and accessible by means of web services, to define DSVLs and to generate modeling environments for them. The environments will work through navigation clients and will be highly modular and adaptable by means of different models. Model manipulation may be defined through visual and formal techniques for model transformation. The tool will support formal verification, using hidden formal methods, as well as code generation.
A second tool will be built to allow the composition and generation of collaborative macro-applications from a component repository. The repository we will provide will be extensible and will contain the editors generated by the first tool, together with collaboration components, such as synchronous and asynchronous communication systems, mechanisms for awareness, knowledge management and crystallization, interaction analysis, personalization, social networks, and so forth. The integration of the various elements in the final application may be done using wiki technologies through web services.
In this way, we intend to improve the productivity and quality in the development of collaborative applications of different types, such as help-desk systems for user attention, e-learning applications or advanced wiki platforms for the collaboration in model development, their simulation and the management of experiments.
Funded by: Ministerio de Ciencia y Tecnología, project TIN2008-02081, 2009-2011
Principal Investigator: Juan de Lara