  We present an institution for UML state machines without hierarchical states.
The interaction with UML class diagrams is handled via institutions for guards
and actions, which provide dynamic components of states (such as valuations of
attributes) but abstract away from details of class diagrams. We also study a
notion of interleaving product, which captures the interaction of several state
machines. The interleaving product construction is the basis for a semantics of
composite structure diagrams, which can be used to specify the interaction of
state machines. This work is part of a larger effort to build a framework for
formal software development with UML, based on a heterogeneous approach using
institutions.
