Abstract
Today, integrated development environments such as Eclipse allow users to write programs quickly by presenting a set of recommendations for code completion. Similarly, word processing tools such as Microsoft Word present corrections for grammatical errors in sentences. Both of these existing systems use a set of constraints expressed in the form of a grammar to restrict/correct the user. Taking this idea further, in this paper we present an integrated software system capable of generating recommendations for model completion of partial models built in arbitrary domain specific model editors. We synthesize the model editor equipped with automatic completion from a modelling languageās declarative specification consisting of a meta-model and constraints on it along with a visual syntax. The automatic completion feature is powered by a Prolog engine whose input is a constraint logic program derived from some models. The input logic program is obtained by a model transformation from models in multiple languages: the meta-model (as a class diagram), constraints on it (as constraint logic clauses), and a partial model (in the domain specific language). The Prolog engine solves the generated logic program and the solution(if there is one) is returned to the model editor as a set of recommendations for properties of the partial model. We incorporate automatic completion in the generative tool AToM 3 and use SWI-Prolog for constraint representation and satisfaction. We present examples using an illustrative visual language of Finite State Machines.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Apt, K.R., Wallace, M.G.: Constraint Logic Programming with ECLiPSe. Cambridge University Press, Cambridge (2007)
Ko, A.J., Aung, H.H., Myers, B.A.: Design requirements for more flexible structured editors from a study of programmersā text editing, CHI 2005 (2005), http://portal.acm.org/citation.cfm?id=1056808.1056965
Vangheluwe, H., de Lara, J.: Domain-Specific Modelling with AToM 3. In: Tolvanen, J.-P., Sprinkle, J., Rossi, M. (eds.) The 4th OOPSLA Workshop on Domain-Specific Modeling, Vancouver, Canada, October 2004, p. 8 (2004)
Ehrig, K., Ermel, C., Hansgen, S.: Generation of visual editors as eclipse plug-ins. In: Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, pp. 134ā143 (2005)
Ledeczi, A.R., Bakay, A., Maroti, M., Volgyesi, P., Nordstrom, G., Sprinkle, J., Karsai, G.: Composing Domain-Specific Design Environments in Computer, pp. 44-51 (2001)
Wielemaker, J.: SWI-Prolog 5.6.35 Reference Manual (2007), http://gollem.science.uva.nl/SWI-Prolog/Manual/
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
Ā© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sen, S., Baudry, B., Vangheluwe, H. (2008). Domain-Specific Model Editors with Model Completion. In: Giese, H. (eds) Models in Software Engineering. MODELS 2007. Lecture Notes in Computer Science, vol 5002. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69073-3_27
Download citation
DOI: https://doi.org/10.1007/978-3-540-69073-3_27
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69069-6
Online ISBN: 978-3-540-69073-3
eBook Packages: Computer ScienceComputer Science (R0)