2024 50th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)
Download PDF

Abstract

Polymorphism is a foundational concept within the object-oriented paradigm and is a feature of any mainstream object-oriented language that supports reusability and abstraction in software designs. With fUML being a standard specification of execution semantics of UML activity diagrams, it defines functionalities to simulate polymorphic behavior within such model executions. fUML only provides a simple standard implementation for simulating dynamic polymorphism at runtime. This default implementation does not meet the criteria of polymorphism as it is well-known and established by most mainstream object-oriented programming languages over the last decades, nor does it comply with the constraints for method overriding imposed by the original UML specification. However, fUML offers extension capabilities to add user-defined behavior for semantic variation points like polymorphism handling. This paper presents an extension of fUML execution semantics, enabling refined and more sophisticated simulation of polymorphism for executable UML models to comply with UML and the general understanding and functioning principles of polymorphic behavior within the object-oriented paradigm.
Like what you’re reading?
Already a member?
Get this article FREE with a new membership!

Related Articles