Abstract
Model assist is a feature of modelling environments aiding their users with entering well-formed models into an editor. Current implementations of model assist are mostly hard-coded in the editor and duplicate the logic captured in the environment’s validation methods used for post hoc checking of models for well-formedness. We propose a fully declarative approach which computes legal model assists from a modelling language’s well-formedness rules via constraint solving, covering a large array of assistance scenarios with only minor differences in the assistance specifications. We describe an implementation of our approach and evaluate it on 299 small to medium size open source models. Although more research will be needed to explore the boundaries of our approach, first results presented here suggest that it is feasible.
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
AtlanMod Ecore Metamodel Zoo, http://www.emn.fr/z-info/atlanmod/index.php/Ecore
Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: A tool for the formal verification of UML/OCL models using constraint programming. In: Proc. of ASE, pp. 547–548 (2007)
CHOCO Team choco: an Open Source Java Constraint Programming Library (Research Report 10-02-INFO, Ecole des Mines de Nantes, 2010)
Eclipse, http://www.eclipse.org
EMF Metamodel Version 2.8.1, www.eclipse.org/modeling/emf
Egyed, A.: Instant consistency checking for the UML. In: Proc. of ICSE, pp. 381–390 (2006)
Egyed, A., Letier, E., Finkelstein, A.: Generating and evaluating choices for fixing inconsis-tencies in UML design models. In: Proc. of ASE, pp. 99–108 (2008)
Hessellund, A., Czarnecki, K., Wąsowski, A.: Guided development with multiple domain-specific languages. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 46–60. Springer, Heidelberg (2007)
Hill, J.H.: Measuring and reducing modeling effort in domain-specific modeling languages with examples. In: Proc. of ECBS, pp. 120–129 (2011)
IBM Rational Software Architect, http://www-01.ibm.com/software/rational/products/swarchitect/
Janota, M., Kuzina, V., Wąsowski, A.: Model construction with external constraints: An interactive journey from semantics to syntax. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 431–445. Springer, Heidelberg (2008)
Kuschke, T., Mäder, P., Rempel, P.: Recommending auto-completions for software modeling activities. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 170–186. Springer, Heidelberg (2013)
Mazanek, S., Maier, S., Minas, M.: Auto-completion for diagram editors based on graph grammars. In: Proc. of VL/HCC, pp. 242–245 (2008)
Nechypurenko, A., Wuchner, E., White, J., Schmidt, D.C.: Applying model intelligence frameworks for deployment problem in real-time and embedded systems. In: Kühne, T. (ed.) MoDELS 2006. LNCS, vol. 4364, pp. 143–151. Springer, Heidelberg (2007)
Object Management Group Unified Modeling Language Superstructure Version 2.3, http://www.omg.org/spec/UML/2.3/Superstructure
Object Management Group Object Constraint Language Version 2.2, http://www.omg.org/spec/OCL/2.2
Papyrus UML Editor, http://www.eclipse.org/papyrus/
Pati, T., Feiock, D.C., Hill, J.H.: Proactive modeling: auto-generating models from their semantics and constraints. In: Proc. of DSM, pp. 7–12 (2012)
Pinna Puissant, J., Van Der Straeten, R., Mens, T.: Badger: A regression planner to resolve design model inconsistencies. In: Vallecillo, A., Tolvanen, J.-P., Kindler, E., Störrle, H., Kolovos, D. (eds.) ECMFA 2012. LNCS, vol. 7349, pp. 146–161. Springer, Heidelberg (2012)
Sen, S., Baudry, B., Vangheluwe, H.: Domain-specific model editors with model completion. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 259–270. Springer, Heidelberg (2008)
Sen, S., Baudry, B., Vangheluwe, H.: Towards domain-specific model editors with automatic model completion. Simulation 86(2), 109–126 (2010)
Steimann, F., Kollee, C., von Pilgrim, J.: A refactoring constraint language and its application to Eiffel. In: Mezini, M. (ed.) ECOOP 2011. LNCS, vol. 6813, pp. 255–280. Springer, Heidelberg (2011)
Steimann, F.: Constraint-based model refactoring. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 440–454. Springer, Heidelberg (2011)
Steimann, F., von Pilgrim, J.: Constraint-based refactoring with foresight. In: Noble, J. (ed.) ECOOP 2012. LNCS, vol. 7313, pp. 535–559. Springer, Heidelberg (2012)
Steimann, F.: From well-formedness to meaning preservation: Model refactoring for almost free. SoSyM (in print)
Tip, F., Fuhrer, R.M., Kiezun, A., Ernst, M.D., Balaban, I., De Sutter, B.: Refactoring using type constraints. ACM Trans. Program. Lang. Syst. 33(3), 9 (2011)
Visual Studio, http://www.microsoft.com/visualstudio/
Woolf, B.: Null Object. In: Pattern Languages of Program Design, vol. 3. Addison-Wesley (1998)
Xiong, Y., Hu, Z., Zhao, H., Song, H., Takeichi, M., Mei, H.: Supporting automatic model incon-sistency fixing. In: Proc. of ESEC/SIGSOFT FSE, pp. 315–324 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Steimann, F., Ulke, B. (2013). Generic Model Assist. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds) Model-Driven Engineering Languages and Systems. MODELS 2013. Lecture Notes in Computer Science, vol 8107. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-41533-3_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-41533-3_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-41532-6
Online ISBN: 978-3-642-41533-3
eBook Packages: Computer ScienceComputer Science (R0)