È possibile utilizzare diagrammi UML (Unified Modeling Language) per sviluppare e rappresentare visivamente artefatti di applicazioni Java in un singolo ambiente di sviluppo integrato.
Un diagramma di classe UML descrive alcuni o tutti i componenti o elementi in un'applicazione. È possibile utilizzare i diagrammi di classe per rappresentare e sviluppare visivamente struttura e relazioni per classi e interfacce Java. È possibile creare il proprio contesto per comprendere, collaborare e sviluppare un'applicazione tramite una sottoserie delle relative classi. È inoltre possibile progettare alcuni elementi Java direttamente dai diagrammi di classe.
È possibile utilizzare diagrammi di sequenza UML per rappresentare e sviluppare funzionalità e interazioni di applicazioni Java o per rappresentare visivamente metodi Java.
È possibile utilizzare diagrammi di esplorazione temporanei e non modificabili per creare viste statiche rapide ed esplorare relazioni esistenti nelle applicazioni e utilizzare diagrammi di argomenti non modificabili per creare viste dinamiche di applicazioni basate su contesto e query.
È inoltre possibile creare una documentazione HTML Javadoc con immagini del diagramma UML per fornire ulteriori informazioni sul codice di origine.