Chapter

Software Engineering Research, Management and Applications

Volume 496 of the series Studies in Computational Intelligence pp 33-53

Exploring a Model-Oriented and Executable Syntax for UML Attributes

  • Omar BadreddinAffiliated withSchool of Electrical Engineering and Computer Science, University of Ottawa
  • , Andrew ForwardAffiliated withSchool of Electrical Engineering and Computer Science, University of Ottawa
  • , Timothy C. LethbridgeAffiliated withSchool of Electrical Engineering and Computer Science, University of Ottawa

* Final gross prices may vary according to local VAT.

Get Access

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