Abstract
Model Driven Engineering (MDE) and constraint programming (CP) have been widely used and combined in different applications. However, existing results are either ad-hoc, not fully integrated or manually executed. In this article, we present a formalization and an approach for automating constraint-based solving in a MDE platform. Our approach generalizes existing work by combining known MDE concepts with CP techniques into a single operation called model search. We present the theoretical basis for model search, as well as an automated process that details the involved operations. We validate our approach by comparing two implemented solutions (one based on Alloy/SAT, the other on OPL/CP), and by executing them over an academic use-case.
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
Cook, S.A.: The complexity of theorem-proving procedures. In: STOC, pp. 151–158. ACM, New York (1971)
Felfernig, A., Friedrich, G., Jannach, D., Zanker, M.: Configuration knowledge representation using uml/ocl. In: Jézéquel, J.-M., Hussmann, H., Cook, S. (eds.) UML 2002. LNCS, vol. 2460, pp. 49–62. Springer, Heidelberg (2002)
Petter, A., Behring, A., Muhlhauser, M.: Solving constraints in model transformations. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 132–147. Springer, Heidelberg (2009)
Alloy usecase (2010), http://www.lsis.org/kleinerm/MS/Alloy_mm.html
Jackson, D.: Automating first-order relational logic. In: FSE, pp. 130–139 (2000)
Jouault, F., Bézivin, J.: Km3: A dsl for metamodel specification. In: Gorrieri, R., Wehrheim, H. (eds.) FMOODS 2006. LNCS, vol. 4037, pp. 171–185. Springer, Heidelberg (2006)
Jouault, F., Bézivin, J., Kurtev, I.: TCS: a DSL for the specification of textual concrete syntaxes in model engineering. In: GPCE, pp. 249–254. ACM, New York (2006)
IBM ILOG CPLEX Development Bundle (December 2009), http://www-01.ibm.com/software/integration/optimization/cplex-dev-bundles/
OCL+ usecase (2010), http://www.lsis.org/kleinerm/MS/OCLP_mm.html
Cabot, J., Clarisó, R., Riera, D.: Umltocsp: a tool for the formal verification of uml/ocl models using constraint programming. In: ASE, pp. 547–548 (2007)
Jouault, J., Kurtev, I.: Transforming Models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)
White, J., Schmidt, D.C., Benavides, D., Trinidad, P., Ruiz-Cortez, A.: Automated diagnosis of product-line configuration errors in feature models. In: Software Product Lines Conference (SPLC 2008), Limmerick, Ireland (2008)
Spivey, J.M.: The Z Notation: a reference manual (2001)
Kurtev, I., Bezivin, J., Aksit, M.: Technological spaces: An initial appraisal. In: International Symposium on Distributed Objects and Applications (2002)
Gogolla, M., Büttner, F., Richters, M.: Use: A uml-based specification environment for validating uml and ocl. Sci. Comput. Program. 69(1-3), 27–34 (2007)
Kessentini, M., Sahraoui, H.A., Boukadoum, M.: Model transformation as an optimization problem. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 159–173. Springer, Heidelberg (2008)
Kleiner, M., Albert, P., Bezivin, J.: Parsing sbvr-based controlled languages. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 122–136. Springer, Heidelberg (2009)
Model search (2010), http://www.lsis.org/kleinerm/MS/ModelSearch-Alloy.html
Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.: Minizinc: Towards a standard cp modelling language. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 529–543. Springer, Heidelberg (2007)
Object Management Group. Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT) Specification, version 1.0 (2008)
OCL 2.0 specification (2008), http://www.omg.org/spec/OCL/2.0/
Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns, 1st edn. Addison-Wesley, Reading (2001)
Tessier, P., Servat, D., Gerard, S.: Variability management on behavioral models. In: VaMoS Workshop, pp. 121–130 (2008)
Trinidad, P., Benavides, D., Cortés, A.R., Segura, S., Jimenez, A.: Fama framework. In: SPLC, p. 359. IEEE Computer Society, Los Alamitos (2008)
Chenouard, R., Granvilliers, L., Soto, R.: Model-driven constraint programming. In: 10th ACM SIGPLAN PPDP, Valence, Spain (2008)
SAT4J. A SATisfiability libray for Java (2010), http://www.sat4j.org
Junker, U., Mailharro, D.: The logic of (j)configurator: Combining constraint programming with a description logic. In: IJCAI 2003. Springer, Heidelberg (2003)
Hentenryck, P.V.: The Optimization Programming Language. MIT Press, Cambridge (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kleiner, M., Del Fabro, M.D., Albert, P. (2010). Model Search: Formalizing and Automating Constraint Solving in MDE Platforms. In: Kühne, T., Selic, B., Gervais, MP., Terrier, F. (eds) Modelling Foundations and Applications. ECMFA 2010. Lecture Notes in Computer Science, vol 6138. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13595-8_15
Download citation
DOI: https://doi.org/10.1007/978-3-642-13595-8_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13594-1
Online ISBN: 978-3-642-13595-8
eBook Packages: Computer ScienceComputer Science (R0)