StarUML is a sophisticated software modeler for agile and concise modeling. It supports to create Entity-Relationship Diagrams (ERD), Data-flow Diagrams (DFD), and Flowchart Diagrams. It also supports many shorthands in Quick Edit to create elements and relationships at once, such as sub-classes, supporting interfaces, etc.