There exist many formalisms for modeling the behavior of (software) systems. These formalisms serve different purposes. Process algebras are used for algebraic and axiomatic reasoning about the behavior of distributed systems. UML state machines are suitable for automatic software generation. We have developed a transformation from the process algebra ACP into UML state machines to enable automatic software generation from process algebra models. This transformation needs to preserve both behavioral and structural properties. The combination of these preservation requirements gives rise to a  semantic gap . It implies that we cannot transform ACP models into UML state machines on a syntactic level only.#R##N##R##N#We address this semantic gap and propose a way of bridging it. To validate our proposal, we have implemented a tool for automatic transformation of ACP process algebra models into UML state machines.
['Marcel F. Van Amstel', 'Mark van den Brand', 'Z Zvezdan Protic', 'T Tom Verhoeff']
Transforming Process Algebra Models into UML State Machines: Bridging a Semantic Gap?