State Diagrams in UML: a formal semantics using Graph Transformations