« Logic tool idea | Main | Linked In Executable UML Group »
Tuesday
Dec132011

Polymorphism Sneak Peak

This is rough, but I think it will work.  In the process of building this model I realized that you could have a weird case where a Subclass with two Superclass parents might inherit an Event with the same name!  This model resolves that issue by introducing an Event ID in addition to the usual Event number.  I was reluctant to do this, but it solves the problem neatly.

I won't be fully confident in this model until I write it up.  But I was able to specify a population from the bank account multi-level, multi-directional generalization example from the Model Integration UML course okay.  Anyway, for your inspection, minus descriptions here you go.  It may be a few days before the descriptions are ready.

References (106)

References allow you to track sources for this article, as well as articles that were written in response to this article.
  • Response
    Response: salvage yard
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: sell junk cars
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: John
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: gta 4 download
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: designer jewellery
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: www.amazon.com
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: www.yelp.Com
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Junk yards
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: UK Models Review
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Full Statement
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: google
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: top five spanish
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: 3ds emulator pc
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: pup play gear
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: water lubricant
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Free Minecraft Try
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Wat Remover
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: test
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: i need a plumber
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: i need a plumber
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Vice President
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: dip diploma
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: kangen
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: lawyer dui
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: castle clash hack
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: USHUD
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: USHUD
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Red Payments
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: instagram
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Red Payments
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Red Payments
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Youtube.com
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: novoline
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Terry Simpson MD
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Brian Poe
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Bentley Dealer
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: cardiac disease
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: USHUD
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: Minecraft PS3
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: visit this link
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: visit this link
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    Response: wat.tv
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak
  • Response
    miUML - News - Polymorphism Sneak Peak

Reader Comments (3)

I forgot to mention that signatures and parameters are missing from this diagram. To be added on the very next update.

December 15, 2011 | Registered CommenterLeon Starr

I'm still working to comprehend the polymorphism model, but I do already have question: is it necessary to apply polymorphism to events as well as instances? It seems to me that the concept to Objects/Entities/Classes or whatever we agree to call them.

Could we please define subtyping before we take a decision on events.

Suppose we start by partitioning the metamodel into domains. To get things going, let me moot the following:

Meta-metamodel: specifies the data types to be used throughout the other domains. Types will include Opaque Identifier, Name, Text, Integer, Fixed Point (to support money), Floating Point, and any other useful types we unearth.

Object/Attribute: places attributes in objects. Objects form the supertype of Events (especially now that they contain unique IDs) and Classes.

Relationship (extremely tentative, may need to be folded into the following domain): specifies relationships between entities; may include relationship roles (hasA and isA).

Model: defines the basic objects we all know and love: Class/Object/whatever, Relationships (both hasA and isA), States, Transitions ...

Patterns: higher order constructions based on base Model object, e.g. Assigner.

UI: The usual suspects.

Thoughts?

December 26, 2011 | Registered CommenterEric Mintz

Hopefully the latest update of the Polymorphism / State subsystems will answer some of your questions. If not, feel free to re-pose them. I believe subtyping (Generalization Relationships) are fully defined in the Relationship and Formalization subsystems.

Data types will be handled along the lines of C.J. Date's latest work. See references in the model documentation.

As regards your proposed domain partitioning, I will respond to your more detailed proposal posted in the Executable UML LinkedIn group.

January 3, 2012 | Registered CommenterLeon Starr
Member Account Required
Welcome to miUML. We want your input, but to ward off evil spam, we request that you create a user account first.