UML component diagrams model physical aspects of a system such as executables, libraries, and files. They visualize component relationships and allow constructing executables through forward and reverse engineering. Component diagrams identify artifacts, draw components and their relationships, and can model systems, databases, executables, and source code. UML statechart diagrams describe component states and state transitions triggered by events. They model dynamic and reactive systems by defining state machines. UML activity diagrams represent system flows as activities and depict sequential, parallel, branched, and concurrent flows. They model work flows, business requirements, and system functionalities at a high level.