martes, 21 de julio de 2026

100 términos clave que abarcan todo el ciclo de vida del software

Aquí tienes una lista extendida y bien estructurada con 100 términos clave que abarcan todo el ciclo de vida del software, la gestión de proyectos, la infraestructura y las metodologías de desarrollo

Está pensada para que manejes el lenguaje técnico con total soltura tanto con desarrolladores como con clientes o entrevistadores.


1. Fundamentos de Programación y Paradigmas

Código fuente (Source Code): El conjunto de instrucciones escritas en un lenguaje de programación entendible por humanos.

Sintaxis: El conjunto de reglas gramaticales que definen cómo se debe escribir el código en un lenguaje determinado.

Variable: Un espacio reservado en memoria para almacenar un dato que puede cambiar durante la ejecución.

Constante: Un valor asignado que no cambia a lo largo de la ejecución del programa.

Algoritmo: Una secuencia finita y ordenada de pasos lógicos para resolver un problema o realizar una tarea.

Función / Método: Un bloque de código reutilizable diseñado para realizar una tarea específica.

Parámetro / Argumento: Valores que se le pasan a una función para que procese su lógica.

POO (Programación Orientada a Objetos): Paradigma basado en "objetos" que contienen datos (atributos) y código (métodos).

Clase: La plantilla o molde a partir del cual se crean los objetos en POO.

Instancia: El objeto concreto creado a partir de una clase.

Herencia: Capacidad de una clase de derivar propiedades y comportamientos de otra clase padre.

Polimorfismo: Capacidad de diferentes clases de responder al mismo mensaje o método de formas distintas.

Encapsulamiento: Ocultar los detalles internos de un objeto y exponer solo lo necesario hacia afuera.

Asincronía (Async/Await): Ejecución de tareas en segundo plano sin bloquear el flujo principal de la aplicación.

Callback: Función que se pasa como argumento a otra función para ser ejecutada cuando finalice una tarea.

Promesa (Promise): Un objeto que representa el resultado futuro de una operación asíncrona (éxito o fallo).

Recursividad: Una función que se llama a sí misma para resolver un problema dividiéndolo en casos más pequeños.

Compilador: Programa que traduce código fuente a lenguaje máquina antes de ejecutarlo.

Intérprete: Programa que lee y ejecuta el código línea por línea en tiempo real.

Librería (Library): Colección de código predefinido que el desarrollador llama cuando lo necesita.

Framework: Estructura o marco de trabajo que impone reglas sobre cómo organizar y construir la aplicación.


2. Desarrollo Frontend e Interfaz de Usuario

Frontend: La parte visible e interactiva de una aplicación web o móvil con la que interactúa el usuario.

UI (User Interface): Diseño visual de botones, pantallas, tipografías y elementos gráficos de la aplicación.

UX (User Experience): La experiencia, facilidad de uso y nivel de satisfacción del usuario al interactuar con el sistema.

Responsive Design: Diseño adaptativo que permite que una web se vea bien en celulares, tabletas y computadores.

DOM (Document Object Model): Representación en árbol de los elementos de una página web que el navegador procesa.

SPA (Single Page Application): Aplicación web que carga una sola página y actualiza el contenido dinámicamente sin recargar la pantalla.

SSR (Server-Side Rendering): Renderizado de la página web en el servidor antes de enviarla al navegador (mejora el SEO).

CSR (Client-Side Rendering): El navegador del usuario descarga el código JavaScript y construye la interfaz localmente.

Estado (State): Datos guardados en memoria que determinan cómo se debe ver y comportar la interfaz en un momento dado.

Componente: Pieza de interfaz independiente, modular y reutilizable (ej. un botón, un menú, un formulario).

CSS Grid / Flexbox: Herramientas de maquetación CSS para organizar elementos en filas y columnas de forma flexible.

Preprocesador CSS (ej. Sass): Herramienta que extiende CSS permitiendo variables, anidamiento y funciones avanzadas.

PWA (Progressive Web App): Aplicación web que ofrece una experiencia similar a una app nativa móvil (funciona offline, notificaciones push).

Hydration (Hidratación): Proceso en SSR donde el JavaScript se vincula al HTML estático enviado por el servidor para hacerlo interactivo.


3. Desarrollo Backend y APIs

Backend: La lógica del servidor, manejo de datos, seguridad y procesamiento detrás de escena.

API (Application Programming Interface): Interfaz que permite la comunicación entre dos sistemas o aplicaciones.

REST / RESTful: Estilo arquitectónico común para APIs web que utiliza métodos HTTP estándar.

Endpoint: La URL o ruta específica donde se realiza una petición a la API (ej. /api/v1/users).

Payload: Los datos útiles o cuerpo de la información enviada dentro de una petición HTTP.

Petición HTTP (Request): Mensaje enviado por el cliente al servidor solicitando un recurso o acción.

Respuesta HTTP (Response): Datos y estado que el servidor devuelve al cliente tras procesar la petición.

Códigos de Estado HTTP:


200 OK: Petición exitosa.


400 Bad Request: Error en los datos enviados por el cliente.


401 Unauthorized: No autenticado / requiere inicio de sesión.


403 Forbidden: No se tienen permisos para acceder a este recurso.


404 Not Found: El recurso solicitado no existe.


500 Internal Server Error: Ocurrió un fallo en el servidor.

GraphQL: Lenguaje de consultas para APIs que permite pedir exactamente los datos necesarios, ni más ni menos.

WebSocket: Protocolo de comunicación bidireccional en tiempo real entre cliente y servidor (ej. chats).

Middleware: Software intermedio que procesa o valida peticiones antes de llegar a la lógica final (ej. verificar un token).

Autenticación (Authn): Proceso de verificar la identidad de un usuario (¿quién eres?).

Autorización (Authz): Proceso de verificar qué permisos tiene un usuario (¿qué puedes hacer?).

JWT (JSON Web Token): Formato compacto y seguro para transmitir información autenticada entre partes.

OAuth: Protocolo estándar que permite autorizar el acceso seguro sin compartir credenciales (ej. "Iniciar sesión con Google").

Rate Limiting: Control que limita cuántas peticiones puede hacer un usuario en un período de tiempo para prevenir abusos.

CORS (Cross-Origin Resource Sharing): Mecanismo de seguridad del navegador que restringe las peticiones HTTP entre distintos dominios.


4. Bases de Datos y Gestión de Información

Base de Datos Relacional (SQL): Almacenamiento estructurado en tablas con filas y columnas vinculadas por claves (ej. PostgreSQL, MySQL).

Base de Datos No Relacional (NoSQL): Almacenamiento flexible sin esquemas rígidos, basado en documentos, grafos o clave-valor (ej. MongoDB, Redis).

ORM (Object-Relational Mapping): Herramienta que mapea las tablas de la BD a objetos del código.

Migración: Script que registra y ejecuta cambios en la estructura de la base de datos de manera controlada.

Índice: Estructura en la BD que acelera drásticamente las búsquedas de información a costa de espacio extra.

Query (Consulta): Solicitud formal de lectura, inserción, actualización o borrado de datos.

CRUD: Acrónimo de las 4 operaciones básicas en datos: Create, Read, Update, Delete.

Transacción (ACID): Grupo de operaciones en la BD que se ejecutan como un solo bloque: o se cumplen todas o ninguna se guarda.

Cache / Caching: Almacenamiento de datos temporales en memoria ultrarrápida (como Redis) para evitar consultas repetitivas a la BD.


5. Arquitectura, Infraestructura y Nube

Monolito: Arquitectura donde toda la lógica, la interfaz y el servidor están integrados en un solo proyecto de código.

Microservicios: Arquitectura donde la aplicación se divide en pequeños servicios independientes comunicados por red.

Serverless: Modelo de nube donde el proveedor gestiona los servidores dinámicamente y solo se paga por el tiempo de ejecución del código.

Docker: Plataforma de contenedorización para empaquetar aplicaciones con sus dependencias exactas.

Contenedor: Entorno aislado y liviano donde corre una aplicación sin importar el sistema operativo anfitrión.

Kubernetes (K8s): Sistema de orquestación para automatizar el despliegue, escalado y gestión de contenedores.

Servidor Web (ej. Nginx, Apache): Software que escucha peticiones HTTP entrantes y entrega sitios web o enruta tráfico a las APIs.

Proxy Inverso: Servidor intermedio que recibe tráfico externo y lo distribuye eficientemente entre servidores internos.

Balanceador de Cargas (Load Balancer): Dispositivo o software que distribuye el tráfico entre varios servidores para evitar colapsos.

DNS (Domain Name System): Sistema que traduce nombres de dominio entendibles (empresa.com) en direcciones IP (192.0.2.1).

Escalabilidad Horizontal: Añadir más máquinas o servidores al sistema para soportar mayor carga.

Escalabilidad Vertical: Añadir más potencia (CPU, RAM) a una misma máquina existente.

Entornos (Environments):

Local: La computadora del desarrollador.

Staging / QA: Servidor idéntico a producción donde se realizan pruebas internas.

Producción (Prod): El entorno en vivo donde interactúan los usuarios finales.


6. DevOps, Git y Metodologías de Trabajo

Git: Sistema distribuido de control de versiones de código.

Repositorio (Repo): Espacio digital donde se guarda todo el código, archivos e historial de cambios de un proyecto.

Rama (Branch): Línea independiente de desarrollo dentro de Git para trabajar en funciones sin alterar la rama principal (main / master).

Merge: Acción de fusionar los cambios de una rama secundaria a la rama principal.

Pull Request (PR) / Merge Request: Propuesta de cambios en el código enviada para ser revisada antes de integrarla al proyecto.

Conflict (Conflicto de Git): Ocurre cuando dos desarrolladores modifican las mismas líneas de un archivo y Git requiere resolución manual.

CI/CD (Continuous Integration / Continuous Deployment): Automatización del proceso de pruebas, compilación y despliegue del software.

Despliegue (Deploy): El acto de publicar una versión del código en un servidor para que sea accesible por los usuarios.

Rollback: Restaurar la aplicación a una versión anterior estable después de que un despliegue falle.

Refactorización: Reescribir código existente para hacerlo más limpio y eficiente sin cambiar lo que hace externamente.

Deuda Técnica (Technical Debt): El costo acumulado de elegir soluciones rápidas e imperfectas hoy, lo que dificulta el desarrollo futuro.

Agile (Agilidad): Filosofía de desarrollo basada en iteraciones rápidas, adaptación al cambio y colaboraciones constantes.

Scrum: Marco de trabajo ágil basado en entregas periódicas organizadas por ciclos fijos.

Sprint: Periodo de tiempo fijo (usualmente 1 a 4 semanas) en el que el equipo completa un bloque de trabajo acordado.

Backlog: Lista priorizada de tareas, mejoras o errores pendientes de desarrollo en un proyecto.

Kamban: Sistema visual de gestión de trabajo organizado en columnas de estado (ej. Por hacer, En progreso, Completado).


7. Pruebas, Calidad y Seguridad

Bug: Error, fallo o defecto en el software que produce un resultado inesperado.

Unit Test (Prueba Unitaria): Evaluación que verifica el correcto funcionamiento de un bloque pequeño e aislado de código (ej. una función).

Integration Test (Prueba de Integración): Evaluación que verifica que varios módulos o servicios funcionen correctamente al trabajar juntos.

E2E Test (End-to-End): Prueba que simula el flujo completo de un usuario real en la aplicación, desde la interfaz hasta la BD.

QA (Quality Assurance): Área o procesos enfocados en asegurar que el producto cumpla con los estándares de calidad antes de salir a la luz.

Inyección SQL: Vulnerabilidad de seguridad donde un atacante inserta código SQL malicioso en un formulario para manipular la BD.

XSS (Cross-Site Scripting): Vulnerabilidad que permite a un atacante inyectar código JavaScript malicioso en las páginas que ven otros usuarios.

Webhooks: Mecanismo de notificaciones en tiempo real donde un sistema envía datos a otro vía HTTP tan pronto ocurre un evento.

SDK (Software Development Kit): Conjunto de herramientas, documentación y librerías facilitadas para construir apps en una plataforma específica.

Logs / Logging: Registros detallados guardados en texto sobre los eventos, errores o actividad que ocurren en el servidor en tiempo real. 

Blogs Colombia