Im wachsenden Portfolio von Entwicklungstechniken zeichnen sich zwei aktuelle Trends ab. Zum einen dominiert die UML als Modellierungssprache. Zum anderen werden "agile" Methoden in neuen Bereichen eingesetzt. Dieses Buch stellt Konzepte einer Entwicklungsmethodik vor, die UML mit Elementen agiler Methoden kombiniert. Dabei werden ausgehend von den Klassen-, Objekt-, Sequenzdiagrammen, Statecharts und der OCL die Beziehung der UML zu Java und dem Testframework JUnit diskutiert, sowie Techniken zur Entwicklung von Testfällen und der evolutionären Weiterentwicklung von Entwürfen mit Refactoring-Regeln vorgestellt. Der im Buch beschriebene Ansatz eignet sich besonders für den Einsatz in Anwendungsdomänen, in denen hohe Qualität, Flexibilität und Erweiterbarkeit der Systeme erwartet wird, und sich Anforderungen an Geschäftsprozesse dynamisch weiterentwickeln. Diese Methodik ist geeignet für Praktiker, die Modellierungstechniken professionell nutzen wollen.