UML (Unified Modeling Language) is a standardized visual language for specifying, constructing, and documenting the artifacts of software systems. It provides a common vocabulary for developers to communicate design decisions.
The Class Diagram shows the static structure of a system: classes, their attributes, methods, and relationships.
A class is drawn as a rectangle with three compartments:
visibility name: typevisibility name(params): returnTypeVisibility Symbols:
+ Public- Private# Protected~ PackageStudent is associated with Course.Department has Professors, but professors exist without the department.House has Rooms. Rooms don't exist without the house.Dog inherits from Animal.Shows the functional requirements of a system from the user's perspective. Contains:
Shows the interaction between objects over time. Objects are at the top with vertical dashed lifelines. Horizontal arrows represent messages exchanged between objects in chronological order (top to bottom).
A flowchart-like diagram showing the flow of control from activity to activity. Used to model business processes and workflow logic. Contains start/end nodes, activities (rounded rectangles), decision diamonds, and fork/join bars for parallel activities.