Unified Modeling Language
UML stands for Unified Modeling Language. This is a standardized way of writing diagrams, because a sentence may often lead to a lot of interpretations. The current standard is UML 2.5.1 and OCL 2.4.
OCL = Object Constraint Language. This is introduced in database diagrams, and this is used to add constraints (ex: age > 0) to something. You can use it in class diagrams too.
You got a lot of diagrams listed on Wikipedia, but we will cover these
- class diagram: the basic and most used one
- object diagram: instance of a class diagram
- database diagram: almost like a class diagram, for databases
- sequence diagram: application life-time diagram
- use case diagram: application use-cases diagram
- flow chart diagram: automate of an application
- deployment diagram
I will be using these to create diagrams.
- StarUML (software, free)
- PlantUML (website) or online editor
- UML from code
- yuml (website, render on the fly)
- Papyrus (software, open-source, eclipse)