# ¿Qué es System Design?

El proceso de planificación de la arquitectura, comunicación de piezas y flujo de datos de sistemas de software grandes y complejos.

## Definición
Una aplicación no se trata sólo de escribir código; Es necesario diseñar cómo esta aplicación manejará a millones de usuarios, dónde se almacenarán los datos y cómo sobrevivirá el sistema si una parte falla. El diseño del sistema está dibujando el plano azul de esta enorme estructura.

## Cómo funciona
Ingenieros; En esta etapa toman decisiones como la selección de la base de datos, la ubicación del servidor, las medidas de seguridad y la optimización de la velocidad.

## Dónde se usa
Se utiliza en las etapas iniciales de proyectos de desarrollo de software y al establecer sistemas escalables.

## Suele confundirse con
Se confunde con codificación; La codificación es mano de obra de construcción, el diseño de sistemas es un proyecto arquitectónico.

## Preguntas frecuentes
**¿Es necesario para cada proyecto?**
Puede que sea sencillo para proyectos pequeños, pero es vital en sistemas grandes.

**¿Se puede cambiar?**
Sí, pero es muy costoso y difícil cambiar la arquitectura a medida que el sistema crece.


## Términos relacionados
- [Tech Stack](/es/dictionary/tech-stack/)
- [API Gateway](/es/dictionary/api-gateway/)
- [Deployment](/es/dictionary/deployment/)

## Herramientas relacionadas
- [System Design Primer](/es/discover/system-design-primer/)
- [System Design 101](/es/discover/system-design-101/)
- [System Design Notes](/es/discover/system-design-notes/)

---
Fuente: TreScout Glosario · https://trescout.com/es/dictionary/system-design/
