Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9953))

Included in the following conference series:

Abstract

We discuss how Umple merges modeling and programming by adding modeling constructs to programming languages and vice-versa. Umple has what we call model-code duality; we show how it fulfills key attributes of being both a programming language and a modeling technology. Umple also has what we call text-diagram duality in that the model or code can be updated by editing the textual or diagram form. We give an example of Umple, and explain how key benefits of textual programming languages are found in Umple, as are important features of modeling technology.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Umple.org, Model-Oriented Programming. http://www.umple.org

  2. Ludewig, J.: Models in software engineering – an introduction. Softw. Syst. Model 2, 5–14 (2003)

    Article  Google Scholar 

  3. Forward, A.: The convergence of modeling and programming: facilitating the representation of attributes and associations in the Umple model-oriented programming language, Ph.D. thesis, University of Ottawa (2010). http://www.site.uottawa.ca/~tcl/gradtheses/aforwardphd/

  4. Badreddin, O., Forward, A., Lethbridge, T.C.: Improving code generation for associations: enforcing multiplicity constraints and ensuring referential integrity. In: Lee, R. (ed.) SERA 2013. SCI, vol. 496, pp. 129–149. Springer, Heidelberg (2013). http://dx.doi.org/10.1007/978-3-319-00948-3_9

    Chapter  Google Scholar 

  5. Badreddin, O., Lethbridge, T.C., Forward, A., Elasaar, M. Aljamaan, H., Garzon, M.: Enhanced code generation from UML composite state machines. In: MODELSWARD 2013, Portugal (2014)

    Google Scholar 

  6. Adesina, O.: integrating formal methods with model-driven engineering. In: Models 2015 Doctoral Symposium (2015). http://ceur-ws.org/Vol-1531/paper2.pdf

  7. UmpleOnline. http://try.umple.org

  8. Lethbridge, T.C.: Teaching modeling using umple: principles for the development of an effective tool. In: CSEET 2014, Klagenfurt Austria. IEEE Computer Society (2014)

    Google Scholar 

  9. Lethbridge, T., Mussbacher, G., Forward, A., Badreddin, O.: Teaching UML using umple: applying model-oriented programming in the classroom. In: CSEE&T 2011, pp. 421–428 (2011). doi:10.1109/CSEET.2011.5876118

  10. Github Umple. https://github.com/umple/umple

  11. Aljamaan, H., Lethbridge T.C.: MOTL: a textual language for trace specification of state machines and associations. In: CASCON 2015. ACM (2015)

    Google Scholar 

  12. Badreddin, O., Lethbridge, T.C., Forward, A.: A novel approach to versioning and merging model and code uniformly. In: MODELSWARD 2014, Portugal (2014)

    Google Scholar 

  13. Ducasse, S., Nierstrasz, O., Schärli, N., Wuyts, R., Black, A.P.: Traits: a mechanism for fine-grained reuse. ACM Trans. Program. Lang. Syst. 28(2), 331–388 (2006)

    Article  Google Scholar 

  14. Abdelzad, V., Lethbridge, T.C.: Promoting traits into model-driven development. Softw. Syst. Model. (2015). doi:10.1007/s10270-015-0505-x. Springer

    Google Scholar 

  15. Xpand. https://eclipse.org/modeling/m2t/?project=xpand

  16. JetToUmpleTL. https://github.com/umple/JETToUmpleTL

  17. Badreddin, O., Forward, A., Lethbridge, T.C.: A test-driven approach for developing software languages. In: MODELSWARD 2014, Portugal (2014)

    Google Scholar 

  18. Badreddin, O., Lethbridge, T.C., Elassar, M.: Modeling practices in open source software. In: Petrinja, E., Succi, G., Ioini, N., Sillitti, A. (eds.) OSS 2013. IFIP AICT, vol. 404, pp. 127–139. Springer, Heidelberg (2013). doi:10.1007/978-3-642-38928-3_9

    Chapter  Google Scholar 

  19. Badreddin, O., Forward, A., Lethbridge, T.C.: Exploring a model-oriented and executable syntax for UML attributes. In: Lee, R. (ed.) SERA 2013. SCI, vol. 496, pp. 33–53. Springer, Heidelberg (2013). http://dx.doi.org/10.1007/978-3-319-00948-3_3

    Chapter  Google Scholar 

  20. Husseini Orabi, M., Husseini Orabi, A., Lethbridge, T.C.: Umple as a component-based language for the development of real-time and embedded applications. In: MODELSWARD 2016 (2016)

    Google Scholar 

  21. Github Umple: Open-Source License for the Umple Model-Oriented Software Technology. https://github.com/umple/umple/blob/master/LICENSE.md

  22. Github Umple: Umple Metamodel. http://metamodel.umple.org

  23. Badreddin, O., Forward, A., Lethbridge, T.: Model oriented programming: an empirical study of comprehension. In: CASCON. ACM (2012)

    Google Scholar 

  24. Badreddin, O., Lethbridge, T.: Combining experiments and grounded theory to evaluate a research prototype: lessons from the umple model-oriented programming technology. In: 2012 First International Workshop on User evaluation for Software Engineering Researchers (USER 2012), in conjunction with ICSE 2012, pp. 1–4 (2012). doi:10.1109/USER.2012.6226575

  25. Aljamaan, H.: Model-oriented tracing language: producing execution traces from tracepoints injected into code generated from uml models, Ph.D. thesis, University of Ottawa (2015). https://www.ruor.uottawa.ca/handle/10393/33419

  26. Adesina, O., Lethbridge, T., Somé, S.: A fully automated approach to discovering non-determinism in state machine diagrams. In: 10th International Conference on the Quality of Information and Communications Technology, Portugal (2016)

    Google Scholar 

Download references

Acknowledgements

We would like to thank the following for supporting the development of Umple over the years: NSERC through Discovery Grants, the Ontario Research Fund (ORF), and IBM who supported much of the early development of Umple. We would also like to acknowledge the over-60 open-source developers of Umple.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timothy C. Lethbridge .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Lethbridge, T.C., Abdelzad, V., Husseini Orabi, M., Husseini Orabi, A., Adesina, O. (2016). Merging Modeling and Programming Using Umple. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation: Discussion, Dissemination, Applications. ISoLA 2016. Lecture Notes in Computer Science(), vol 9953. Springer, Cham. https://doi.org/10.1007/978-3-319-47169-3_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-47169-3_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-47168-6

  • Online ISBN: 978-3-319-47169-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics