Played with Plantuml. Convenient for generating UML diagrams from text. Here's the Language Reference Guide. Here's an example:
@startuml
abstract class Singer {
abstract void sing()
void Dance()
}
skinparam monochrome true
Singer <|-- PopSinger
Singer <|-- SalsaSinger
class PopSinger {
void sing()
}
class SalsaSinger {
void sing()
}
@enduml
Install plantuml on Mac OS X:
brew install plantum
Generating diagram:
$GRAPHVIZ_DOT=~/homebrew/bin/dot java -jar path/to/plantuml.8018.jar diagram.plantuml
ps. Installation and verification gist.
ps2. More handy UML examples in this fork.