Przeglądając płytę CD dołączoną do książki „Język UML 2.0” natrafiłem na narzędzie do modelowania w języku UML o nietuzinkowej nazwie – Fujaba, co znaczy „From UML to Java And Back Again”. Jest ono systematycznie rozwijane przez pracowników naukowych uniwersytetu w Paderborn (Niemcy, Nadrenia Północna – Westfalia)
Poniżej prosty, wręcz banalny model klasy, oraz.. kod Java wygenerowany przez to narzędzie.

package ZaJavka;
import java.util. *;
/**
* UMLClass: ‘Komunikator’.
*/
public class Komunikator
{
/**
* UMLAttr: ‘userName : String’.
*/
private String userName = “”;
/**
* UMLMethod: ‘- getUserName (): String’.
*/
private String getUserName ()
{
return this.userName;
}
/**
* UMLMethod: ‘- setUserName (newUserName: String): Void’.
*/
private void setUserName (String newUserName)
{
if ((this.userName == null) || (this.userName != null && !this.userName.equals (newUserName)))
{
this.userName = newUserName;
} // if
}
/**
* UMLMethod: ‘+ removeYou (): Void’.
*/
public void removeYou ()
{
//Statement
}
}
Jak widać, nie zapomniano nawet o hermetyzacji zmiennych.