Please enable JavaScript.
Coggle requires JavaScript to display documents.
ARQUITECTURA
DE SOFTWARE - Coggle Diagram
ARQUITECTURA
DE SOFTWARE
Definición
Diseño de alto nivel que organiza componentes, relaciones y principios para garantizar escalabilidad, mantenibilidad, rendimiento y evolución continua del sistema
OBJETIVOS
Definir estructura global del sistema integrando requisitos funcionales (qué hace) y no funcionales (cómo lo hace: rendimiento, seguridad, escalabilidad)
-
-
Promover reutilización de componentes, patrones y código
-
PRINCIPIOS
-
-
-
-
Rendimiento: optimizar CPU, memoria, red y almacenamiento
Caching, compresión, lazy loading, paralelismo
COMPONENTES
-
Interfaces API: REST, gRPC, GraphQL, WebSockets
Conectores: HTTP, message queues, eventos
Gestión de dependencias: DI, IoC, frameworks como Spring o .NET Core
ESTILOS ARQUITECTÓNICOS
Cliente-Servidor: cliente solicita, servidor responde
Capas (3-Tier/N-Tier): presentación, lógica, datos
-
-
MVC: separación de datos, interfaz y control
PATRONES ARQUITECTÓNICOS
-
-
Microservicios: servicios pequeños, autónomos, independientes
-
MODELADO Y DOCUMENTACIÓN
UML: clases, secuencia,
componentes, despliegue, estados
C4 Model: Context,
Containers, Components,
Code
-
Herramientas: PlantUML, Mermaid, Draw.io, Structurizr
Documentación viva: GitHub Wiki, Confluence, Notion
-
-