Abstract
This contribution concentrates on the development process for descriptive and prescriptive UML and OCL models. We have decided to concentrate on three not necessarily disjoint techniques that we have labeled explorative, consolidating and analytic. We assume an imaginary, prototypical development process in that (1) informal ideas and requirements are first realized by exploring initial formal descriptions through interaction with a modeling tool, (2) stated ideas are consolidated with more detailed descriptions for structural and behavioral specifications, and (3) achieved descriptions are analyzed with respect to questions about stakeholder expectations. The contribution uses a running example for demonstration purposes.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Sort of pedantic, we distinguish between a diagram and a model. A model reflects general principles. One model may be represented by two different diagrams showing different concrete model representations, e.g., left-right and upside-down orientation of model elements. We will use the notions ‘class diagram’ and ‘class model’ as well as ‘object diagram’ and ‘object model’ (with synonym ‘system state’).
- 2.
Groucho Marx would be happy to see this is possible.
- 3.
The scenario may be labeled ‘Joggers do not like smoking dog owners’.
References
Ali, S., Iqbal, M.Z.Z., Arcuri, A., Briand, L.: A search-based OCL constraint solver for model-based test data generation. In: Núñez, M., Hierons, R.M., Merayo, M.G. (eds.) Proceedings of 11th International Conference on Quality Software QSIC, pp. 41–50. IEEE (2011)
Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: On challenges of model transformation from UML to Alloy. Softw. Syst. Model. 9(1), 69–86 (2010). https://doi.org/10.1007/s10270-008-0110-3
Balaban, M., Kifer, M.: Logic-based model-level software development with F-OML. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 517–532. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24485-8_38
Beckert, B., Keller, U., Schmitt, P.: Translating the object constraint language into first-order predicate logic. In: Proceedings of 2nd Verification WS: VERIFY, vol. 2, pp. 2–7 (2002)
Brucker, A.D., Krieger, M.P., Longuet, D., Wolff, B.: A specification-based test case generation method for UML/OCL. In: Dingel, J., Solberg, A. (eds.) MODELS 2010. LNCS, vol. 6627, pp. 334–348. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21210-9_33
Brüning, J., Gogolla, M., Hamann, L., Kuhlmann, M.: Evaluating and debugging OCL expressions in UML models. In: Brucker, A.D., Julliand, J. (eds.) TAP 2012. LNCS, vol. 7305, pp. 156–162. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30473-6_13
Büttner, F., Gogolla, M.: On OCL-based imperative languages. J. Sci. Comput. Program. 92, 162–178 (2014)
Cabot, J., Clarisó, R., Guerra, E., de Lara, J.: Synthesis of OCL pre-conditions for graph transformation rules. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 45–60. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13688-7_4
Cabot, J., Clarisó, R., Riera, D.: On the verification of UML/OCL class diagrams using constraint programming. J. Syst. Softw. 93, 1–23 (2014)
Cabot, J., Clarisó, R., Riera, D.: UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programming. In: Proceedings of ASE 2007, pp. 547–548 (2007)
Cunha, A., Garis, A.G., Riesco, D.: Translating between alloy specifications and UML class diagrams annotated with OCL. SoSyM 14(1), 5–25 (2015). https://doi.org/10.1007/s10270-013-0353-5
Dania, C., Clavel, M.: OCL2MSFOL: a mapping to many-sorted first-order logic for efficiently checking the satisfiability of OCL constraints. In: Proceedings of ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, MODELS 2016, pp. 65–75. ACM (2016)
Demuth, B., Wilke, C.: Model and object verification by using Dresden OCL. In: Proceedings of Russian-German WS Innovation Information Technologies: Theory and Practice, pp. 687–690 (2009)
Ehrig, K., Küster, J.M., Taentzer, G.: Generating instance models from meta models. Softw. Syst. Model. 8, 479–500 (2009). https://doi.org/10.1007/s10270-008-0095-y
Gabmeyer, S., Brosch, P., Seidl, M.: A classification of model checking-based verification approaches for software models. In: Proceedings of the 1st VOLT Workshop (2013)
Gogolla, M., Bohling, J., Richters, M.: Validating UML and OCL models in USE by automatic snapshot generation. Softw. Syst. Model. 4(4), 386–398 (2005). https://doi.org/10.1007/s10270-005-0089-y
Gogolla, M., Kuhlmann, M., Hamann, L.: Consistency, independence and consequences in UML and OCL models. In: Dubois, C. (ed.) TAP 2009. LNCS, vol. 5668, pp. 90–104. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02949-3_8
Gogolla, M., Büttner, F., Richters, M.: USE: a UML-based specification environment for validating UML and OCL. J. Sci. Comput. Program. 69, 27–34 (2007)
Gogolla, M., Hamann, L., Hilken, F., Sedlmeier, M.: Modeling behavior with interaction diagrams in a UML and OCL tool. In: Roubtsova, E., McNeile, A., Kindler, E., Gerth, C. (eds.) Behavior Modeling – Foundations and Applications. LNCS, vol. 6368, pp. 31–58. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21912-7_2
Gogolla, M., Hamann, L., Xu, J., Zhang, J.: Exploring (Meta-)model snapshots by combining visual and textual techniques. In: Gadducci, F., Mariani, L. (eds.) Proceedings of Workshop Graph Transformation and Visual Modeling Techniques (GTVMT 2011), ECEASST, Electronic Communications (2011). https://journal.ub.tu-berlin.de/eceasst/issue/view/95
Gogolla, M., Havakili, H., Schipke, C.: Advanced features for model visualization in the UML and OCL tool USE. In: Michael, J., et al. (eds.) Companion Proceedings Modellierung 2020, CEUR, vol. 2542, pp. 203–207. CEUR-WS.org (2020)
Gogolla, M., Hilken, F., Doan, K.H.: Achieving model quality through model validation, verification and exploration. J. Comput. Lang. Syst. Struct. 54, 474–511 (2018)
Hamann, L., Hofrichter, O., Gogolla, M.: Towards integrated structure and behavior modeling with OCL. In: France, R., Kazmeier, J., Breu, R., Atkinson, C. (eds.) Proceedings of 15th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2012), LNCS 7590, pp. 235–251. Springer, Berlin (2012)
Hilken, F., Gogolla, M., Burgueno, L., Vallecillo, A.: Testing models and model transformations using classifying terms. J. Softw. Syst. Model. 17(3), 885–912 (2018). https://doi.org/10.1007/s10270-016-0568-3
Jackson, D.: Software Abstractions - Logic, Language, and Analysis. MIT Press, Cambridge (2006)
Kuhlmann, M., Gogolla, M.: From UML and OCL to relational logic and back. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 415–431. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33666-9_27
Lano, K., Kolahdouz-Rahimi, S.: Specification and verification of model transformations using UML-RSDS. In: Méry, D., Merz, S. (eds.) IFM 2010. LNCS, vol. 6396, pp. 199–214. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16265-7_15
Maoz, S., Ringert, J.O., Rumpe, B.: CD2Alloy: Class diagrams analysis using alloy revisited. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 592–607. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24485-8_44
OMG - Object Management Group: Unified Modeling Language Specification, Version 2.5, June 2015
Queralt, A., Teniente, E.: Reasoning on UML class diagrams with OCL constraints. In: Embley, D.W., Olivé, A., Ram, S. (eds.) ER 2006. LNCS, vol. 4215, pp. 497–512. Springer, Heidelberg (2006). https://doi.org/10.1007/11901181_37
Queralt, A., Artale, A., Calvanese, D., Teniente, E.: OCL-Lite: finite reasoning on UML/OCL conceptual schemas. Data Knowl. Eng. 73, 1–22 (2012)
Roldán, M., Durán, F.: Dynamic validation of OCL constraints with mOdCL. ECEASST 44 (2011)
Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual, 2nd edn. Addison-Wesley, Boston (2004)
Selic, B.: The pragmatics of model-driven development. IEEE Softw. 20(5), 19–25 (2003)
Snook, C., Savicks, V., Butler, M.: Verification of UML models by translation to UML-B. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2010. LNCS, vol. 6957, pp. 251–266. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-25271-6_13
Straeten, R.V.D., Puissant, J.P., Mens, T.: Assessing the kodkod model finder for resolving model inconsistencies. In: ECMFA, pp. 69–84 (2011)
Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA, 2nd edn. Addison-Wesley, Boston (2004)
Winkelmann, J., Taentzer, G., Ehrig, K., Küster, J.M.: Translation of restricted OCL constraints into graph constraints for generating meta model instances by graph grammars. ENTCS 211, 159–170 (2008)
Ziemann, P., Gogolla, M.: Validating OCL specifications with the USE tool: an example based on the BART case study. ENTCS 80, 157–169 (2003)
Acknowledgments
USE is not the result of the work of the author, but of numerous colleagues that have contributed significantly to its success (mentioned in order of appearance): Mark Richters, Jörn Bohling, Paul Ziemann, Mirco Kuhlmann, Lars Hamann, Duc-Hanh Dang, Frank Hilken, Khanh-Hoang Doan, Nisha Desai. Furthermore numerous students have added value through their final theses. Thank you very much. It was a pleasure for the author to work with you.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Gogolla, M. (2021). Model Development in the Tool USE: Explorative, Consolidating and Analytic Steps for UML and OCL Models. In: Goswami, D., Hoang, T.A. (eds) Distributed Computing and Internet Technology. ICDCIT 2021. Lecture Notes in Computer Science(), vol 12582. Springer, Cham. https://doi.org/10.1007/978-3-030-65621-8_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-65621-8_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-65620-1
Online ISBN: 978-3-030-65621-8
eBook Packages: Computer ScienceComputer Science (R0)