La programación orientada a objetos (POO) es un método que organiza programas en objetos que representan instancias de clases relacionadas por herencia. Este enfoque facilita la modelización de problemas del mundo real, la reutilización del código y el mantenimiento, aunque puede introducir complejidades en la comprensión del flujo de datos. La POO implica conceptos clave como abstracción, encapsulamiento, modularidad y jerarquía, que se representan a través de diagramas estáticos y dinámicos.