2012 | OriginalPaper | Buchkapitel
Executable UML: From Multi-domain to Multi-core
verfasst von : Ed Seidewitz
Erschienen in: Modelling Foundations and Applications
Verlag: Springer Berlin Heidelberg
Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.
Wählen Sie Textabschnitte aus um mit Künstlicher Intelligenz passenden Patente zu finden. powered by
Markieren Sie Textabschnitte, um KI-gestützt weitere passende Inhalte zu finden. powered by
Modeling problem domains independently of technology domains is the basis for software that is adaptable to both changing business requirements and advancing technical platforms. Moreover, implementa- tion-independent executable models allow problem-domain validation to be built right into agile conversations with customers. These validated models can then be compiled to a target implementation platform of choice.
But, unlike traditional programming, executable modeling abstracts behavior from the problem domain, rather than abstracting from hardware computational paradigms. In particular, executable models naturally embrace concurrency, because problem domain behavior is concurrent. And, as we move into an era of multiple cores, dealing with concurrency is rapidly moving from a peripheral to a central issue in mainstream programming.
Our programming languages today, on the other hand, are too platform specific, still based too much on, and abstracting too little from, traditional sequential, von Neumann hardware architectures. What we need is a way to model problem domains that can then be compiled to the highly concurrent multi-core platforms around the corner as easily as the traditional platforms of yesterday. This is exactly what executable modeling offers.
Work over the last few years has now provided new standards for precise execution semantics for a subset of UML and an associated action language. Taking advantage of these new standards, executable UML holds out the promise of addressing some fundamental issues for the next generation of programming - from multi-domain to multi-core.