Executable Modeling with UML. A Vision or a Nightmare?
This addresses software developers and methodologies by exploring the integration of agile practices with modeling languages, but it is incremental as it builds on existing discussions of UML and Extreme Programming.
The paper examines the properties required for UML to effectively support Extreme Programming, focusing on how a diagrammatic language could replace textual programming and the associated benefits and problems.
Extreme Programming is the most prominent new, light-weight (or agile) methods, defined to contrast the current heavy-weight and partially overloaded object-oriented methods. It focuses on the core issues of software technology. One of its principles is not to rely on diagrams to document a system. In this paper, we examine what properties a modeling language like UML must have in order to support the Extreme Programming approach effectively. In particular, we discuss how such a diagrammatic programming language must look like to replace a textual programming language and what benefits and problems such an approach may bring.