Skip to main content

Exploring a Model-Oriented and Executable Syntax for UML Attributes

  • Conference paper

Part of the Studies in Computational Intelligence book series (SCI,volume 496)

Abstract

Implementing UML attributes directly in an object-oriented language may not appear to be complex, since such languages already support member variables. The distinction arises when considering the differences between modelling a class and implementing it. In addition to representing attributes, member variables can also represent association ends and internal data including counters, caching, or sharing of local data. Attributes in models also support additional characteristics such as being unique, immutable, or subject to lazy instantiation. In this paper we present modeling characteristics of attributes from first principles and investigate how attributes are handled in several open-source systems. We look code-generation of attributes by various UML tools. Finally, we present our own Umple language along with its code generation patterns for attributes, using Java as the target language.

Keywords

  • Attributes
  • UML
  • Model Driven Design
  • Code Generation
  • Umple
  • Model-Oriented Programming Language

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-319-00948-3_3
  • Chapter length: 21 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   119.00
Price excludes VAT (USA)
  • ISBN: 978-3-319-00948-3
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   159.99
Price excludes VAT (USA)
Hardcover Book
USD   249.99
Price excludes VAT (USA)

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Forward, A., Lethbridge, T.C.: Problems and opportunities for model-centric versus code-centric software development: A survey of software professionals. In: International Workshop on Models in Software Engineering, MiSE, pp. 27–32 (2008)

    Google Scholar 

  2. Forward, A., Lethbridge, T.C., Brestovansky, D.: Improving program comprehension by enhancing program constructs: An analysis of the umple language. In: International Conference on Program Comprehension (ICPC), pp. 311–312 (2009)

    Google Scholar 

  3. Umple language online, http://www.try.umple.org (accessed 2013)

  4. Sutton, A., Maletic, J.I.: Recovering UML class models from C++: A detailed explanation. Inf. and SW Tech. 49, 212–229 (2007)

    CrossRef  Google Scholar 

  5. Norton, D.: Open-Source Modeling Tools Maturing, but Need Time to Reach Full Potential, Gartner, Inc., Tech. Rep. G00146580 (April 20, 2007)

    Google Scholar 

  6. Wikipedia Listing of UML modeling tools, http://en.wikipedia.org/wiki/List_of_UML_tools (accessed 2013)

  7. Blechar, M.J.: Magic Quadrant for OOA&D Tools, 2H06 to 1H07, Gartner Inc., Tech. Rep. G00140111 (May 30, 2006)

    Google Scholar 

  8. Harrison, W., Barton, C., Raghavachari, M.: Mapping UML designs to Java. ACM SIGPLAN Notices 35, 178–187 (2000)

    Google Scholar 

  9. Long, Q., Liu, Z., Li, X., Jifeng, H.: Consistent code generation from uml models. In: Australian Software Engineering Conference, pp. 23–30 (2005)

    Google Scholar 

  10. Brisolara, L.B., Oliveira, M.F.S., Redin, R., Lamb, L.C., Carro, L., Wagner, F.: Using UML as front-end for heterogeneous software code generation strategies. In: Design, Automation and Test in Europe, pp. 504–509 (2008)

    Google Scholar 

  11. Xi, C., JianHua, L., ZuCheng, Z., YaoHui, S.: Modeling SystemC design in UML and automatic code generation. In: Conference on Asia South Pacific Design Automation, pp. 932–935 (2005)

    Google Scholar 

  12. Jifeng, H., Liu, Z., Li, X., Qin, S.: A relational model for object-oriented designs. In: Chin, W.-N. (ed.) APLAS 2004. LNCS, vol. 3302, pp. 415–436. Springer, Heidelberg (2004)

    CrossRef  Google Scholar 

  13. Unifying Theories of Programming. Prentice Hall (1998)

    Google Scholar 

  14. Sutton, A., Maletic, J.I.: Recovering UML class models from C++: A detailed explanation. Inf. and SW Tech. 49, 212–229 (2007)

    CrossRef  Google Scholar 

  15. Gueheneuc, Y.: A reverse engineering tool for precise class diagrams. In: CASCON, pp. 28–41. ACM and IBM (2004)

    Google Scholar 

  16. Kollman, R., Selonen, P., Stroulia, E., Systa, T., Zundorf, A.: A study on the current state of the art in tool-supported UML-based static reverse engineering. In: Ninth Working Conference on Reverse Engineering (WCRE 2002), pp. 22–30 (2002)

    Google Scholar 

  17. Lange, C.F.J., Chaudron, M.R.V.: An empirical assessment of completeness in UML designs. In: EASE 2004, pp. 111–121 (2004)

    Google Scholar 

  18. Badreddin, O.: Umple: a model-oriented programming language. In: 2010 ACM/IEEE 32nd International Conference on Software Engineering, vol. 2. IEEE (2010)

    Google Scholar 

  19. Badreddin, O.: Empirical Evaluation of Research Prototypes at Variable Stages of Maturity. In: ICSE Workshop on User Evaluation for Software Engineering Researchers, USER (to appear, 2013)

    Google Scholar 

  20. Badreddin, O., Lethbridge, T.C.: Combining experiments and grounded theory to evaluate a research prototype: Lessons from the umple model-oriented programming technology. In: User Evaluation for Software Engineering Researchers (USER). IEEE (2012)

    Google Scholar 

  21. Badreddin, O., Forward, A., Lethbridge, T.C.: Model oriented programming: an empirical study of comprehension. In: CASCON. ASM and IBM (2012)

    Google Scholar 

  22. Badreddin, O., Lethbridge, T.C., Elassar, M.: Modeling Practices in Open Source Software. In: 9th International Conference on Open Source Systems, OSS 2013 (to appear, 2013)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Badreddin, O., Forward, A., Lethbridge, T.C. (2014). Exploring a Model-Oriented and Executable Syntax for UML Attributes. In: Lee, R. (eds) Software Engineering Research, Management and Applications. Studies in Computational Intelligence, vol 496. Springer, Heidelberg. https://doi.org/10.1007/978-3-319-00948-3_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-00948-3_3

  • Publisher Name: Springer, Heidelberg

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

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

  • eBook Packages: EngineeringEngineering (R0)