Umple kann für reine UML-Modellierung verwendet werden. Es kann auch genutzt werden, um UML-Konstrukte, z.B. Assoziationen und endliche Automaten zu Code, der in Java, PHP oder Ruby geschrieben ist, hinzuzufügen. Es erzeugt Code in diesen Sprachen, der eine große Menge an Programmieraufwand sparen kann, und in höherer Qualität resultiert. Das Programm UmpleOnline ermöglicht es, UML-Diagramme grafisch zu editieren und das Schreiben des Codes in Echtzeit zu beobachten. Es funktioniert auch in die andere Richtung: Man kann Umple-Definitionen schreiben und beobachten, wie das zugehörige UML-Diagramm erscheint. Umple ist selbst in Umple geschrieben. (non)