NetBeans 6.0にはUMLモデリング機能も統合されている(以前はEnterprise Packの一部としてUMLモデリング機能が提供されていた)。NetBeans 6.0では以下の通り豊富なダイアグラムをサポートしている。
- アクティビティ図
- コラボレーション図
- コンポーネント図
- 配置図
- シーケンス図
- 状態マシン図
- ユースケース図
UMLダイアグラムを作成するにはUMLプロジェクトを作成する必要がある。作成したダイアグラムからJavaプロジェクトにソースコードを生成したり、既存のJavaソースコードからUMLプロジェクトで利用可能なモデルを生成するリバースエンジニアリング機能も備えている。
モデルはダイアグラム間で共有されており、たとえばシーケンス図でオペレーションを追加すると、同じモデルが配置されているクラス図でも自動的にメソッドが追加された状態となる。
また、UMLモデルからJavaソースコードを生成する際、生成されたソースコードには以下のようにコメントとして制御情報が埋め込まれた状態で生成される。
//
// #[regen=yes,id=DCE.4587EE86-5870-3680-7CFE-4E9185538B05]
//
public class Product {
//
// #[regen=yes,id=DCE.97791C3F-F6FD-E047-D9A6-09AA87C9C437]
//
public Product () {
}
}
再度UMLモデルからソースコードを生成する際にはこのコメント情報を元にマージ処理が行われるため、生成したソースコードに手を加えた場合でも変更内容が失われることはない。この機能によってUMLモデルとJavaソースコードとのラウンドトリップが可能となっている。