UML is there - it's accepted, it's booming, and even more: it's a standard. From telecom to train systems to avionics: using UML to capture the system is "in". But do we really understand what we model? This talk takes for granted, that models are alive, are executable, are used to explore the design space, are used to communicate design decisions, and ultimately are evolving to target code. And it asks plenty of nasty questions about the meaning of all these diagrams, which are so intuitive, but which require clarification if viewed from the most rigorous possible perspective - that of a formal semantics. Formal Semantics are to modeling languages what X rays are to the human body: they bring to the surface problem spots not typically seen - and this process is painful. It shows, that what we see, is possibly far from what we expect: it highlights design decisions in giving a rigorous semantics to UML, which could have significant impact on e.g. meeting timeliness requirements. But it also shows the rewards derivable from this painful exercise: giving a rigorous semantics offers the floor for powerful analysis techniques allowing to boost the quality of models.
展开▼