Abstract
Despite the fact that the refinement technique is one of the cornerstones of a formal approach to software engineering, the concept of refinement in model driven engineering is loosely defined and open to misinterpretations. In this article we present a rigorous technique for specifying and verifying frequently occurring forms of refinement that take place in software modeling. Such strategy uses the formal language Object-Z as a background foundation, whereas designers only have to deal with the broadly accepted UML and OCL languages, thus propitiating the inclusion of verification in ordinary software engineering activities, increasing in this way the level of confidence on the correctness of the final product. Finally, an automatic tool is provided to support such model refinement activities; this tool adopts the micromodels strategy to reduce the search scope, making the verification process 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
Astesiano, E., Reggio, G.: An Algebraic Proposal for Handling UML Consistency. In: Workshop on Consistency Problems in UML-based Software Development, San Francisco, USA (2003)
Boiten, E.A., Bujorianu, M.C.: Exploring UML refinement through unification. In: Jurjens, J., Rumpe, B., et al. (eds.) Proceedings of the UML 2003 workshop on Critical Systems Development with UML, TUM-I0323, Technische Universitat Munchen (2003)
Davies, J., Crichton, C.: Concurrency and Refinement in the Unified Modeling Language. Electronic Notes in Theoretical Computer Science, vol. 70(3). Elsevier, Amsterdam (2002)
Derrick, J., Boiten, E.: Refinement in Z and Object-Z. Foundation and Advanced Applications. In: FACIT, Springer, Heidelberg (2001)
Engels, G., Küster, J., Heckel, R., Groenewegen, L.: A Methodology for Specifying and Analyzing Consistency of Object Oriented Behavioral Models. In: Procs. of the IEEE Int. Conference on Foundation of Software Engineering (2001)
ePlatero, http://sol.info.unlp.edu.ar/eclipse
Jean-Marie, F., Jacky, E., Mireille, B.: Beyond MDA : Model Driven Engineering (L’Ingénierie Dirigée par les Modèles : au-délà du MDA) Edition Hezmes-Lavoisier. Février (2006), ISBN 2-7462-1213-7
Gogolla, M., Bohling, J., Richters, M.: Validation of UML and OCL Models by Automatic Snapshot Generation. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 265–279. Springer, Heidelberg (2003)
Jackson, Daniel, Shlyakhter, I., Sridharan: A micromodularity Mechanism. In: Proceedings of the ACM Sigsoft Conference on the Foundation of Software Engineering FSE 2001 (2001)
Kim, S., Carrington, D.: Formalizing the UML Class Diagrams using Object-Z. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, Springer, Heidelberg (1999)
Lano, K., Biccaregui, J.: Formalizing the UML in Structured Temporal Theories. In: 2nd. ECOOP Workshop on Precise Behavioral Semantics, TUM-I9813 (1998)
Lano, K., Androutsopolous, K., David, C.: Refinement Patterns for UML. In: Proceedings of REFINE 2005. Elsevier Electronic Notes in Theoretical Computer Science, vol. 137, pp. 131–149 (2005)
Ledang, H., Souquieres, J.: Integration of UML and B Specification Techniques: Systematic Transformation from OCL Expressions into B. In: Procs. of IEEE Asia-Pacific Software Engineering Conference 2002, December 4-6 (2002)
Liu, Z., Jifeng, H., Li, X., Chen, Y.: Consistency and Refinement of UML Models. In: 3er Workshop on Consistency Problems in UML-based Software Development III, event of the UML Conference (2004)
OMG - UML 2.0. The Unified Modeling Language Superstructure version 2.0 – OMG Final Adopted Specification (August 2003), http://www.omg.org
OCL 2.0. OMG Final Adopted Specification (October 2003)
Object Management Group, MDA Guide, v1.0.1, omg/03-06-01 (June 2003)
Paige, R., Kolovos, D., Polack, F.: Refinement via Consistency Checking in MDD. In: REFINE 2005. Electronic Notes in Theoretical Computer Science, vol. 137 (2005)
Claudia, P.: On the definition of UML refinement patterns. In: Workshop MoDeVa at ACM/IEEE 8th Int. Conference on Model Driven Engineering Languages and Systems (MoDELS), Jamaica (October 2005)
Claudia, P.: Heuristics on the Definition of UML Refinement Patterns. In: Wiedermann, J., Tel, G., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2006. LNCS, vol. 3831, Springer, Heidelberg (2006)
QVT Partners revised submission to QVT 1.1 (ad/2003-08-08)
Richters, M., Gogolla, M.: OCL-Syntax, Semantics and Tools. In: Clark, A., Warmer, J. (eds.) Object Modeling with the OCL. LNCS, vol. 2263, Springer, Heidelberg (2002)
Smith, G.: The Object-Z Specification Language. Advances in Formal Methods. Kluwer Academic Publishers, Dordrecht (2000)
Stahl, M.V.: Model Driven Software Development. John Wiley, Chichester (2006)
Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using description logic to maintain consistency between UML-models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pons, C., Garcia, D. (2006). An OCL-Based Technique for Specifying and Verifying Refinement-Oriented Transformations in MDE. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds) Model Driven Engineering Languages and Systems. MODELS 2006. Lecture Notes in Computer Science, vol 4199. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11880240_45
Download citation
DOI: https://doi.org/10.1007/11880240_45
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-45772-5
Online ISBN: 978-3-540-45773-2
eBook Packages: Computer ScienceComputer Science (R0)