EGEL Plus Ingeniería de Software key terms
EGEL Plus Ingeniería de Software · Get comfortable with the vocabulary.
- Requerimiento funcional
- Related: Requerimiento no funcional, Historia de usuario, Caso de uso
Enunciado que describe qué debe hacer un sistema: una capacidad, cálculo o comportamiento observable que el software debe proporcionar a sus usuarios o a otros sistemas.
- Requerimiento no funcional
- Related: Atributo de calidad, Requerimiento funcional
Restricción o atributo de calidad que describe cómo debe comportarse el sistema, como rendimiento, seguridad, disponibilidad o usabilidad, en lugar de una función concreta.
- Historia de usuario
- Related: Criterio de aceptación, Product backlog, Requerimiento funcional
Descripción breve de una necesidad escrita desde la perspectiva del usuario, normalmente con la forma rol, objetivo y beneficio, que sirve como base para conversar y priorizar el trabajo.
- Criterio de aceptación
- Related: Historia de usuario, Prueba de aceptación
Condición verificable que debe cumplirse para que una historia o requerimiento se considere terminado; suele expresarse como escenarios concretos de entrada y resultado esperado.
- Caso de uso
- Related: Actor, Diagrama de casos de uso, Requerimiento funcional
Descripción de una interacción completa entre actores externos y el sistema para alcanzar un objetivo, incluyendo el flujo principal y las alternativas relevantes.
- Actor
- Related: Caso de uso, Diagrama de casos de uso
Persona, rol o sistema externo que interactúa con el software para obtener un resultado; se modela fuera de la frontera del sistema y origina casos de uso.
- Diagrama de clases
- Related: Encapsulamiento, Herencia, Diagrama de secuencia
Modelo estático que muestra clases, sus atributos y operaciones, y las relaciones entre ellas como asociación, herencia o composición, para representar la estructura del dominio o del diseño.
- Diagrama de secuencia
- Related: Diagrama de clases, Caso de uso
Modelo de comportamiento que muestra, en orden temporal, los mensajes intercambiados entre objetos o componentes para realizar una operación o un escenario concreto.
- Encapsulamiento
- Related: Cohesión, Acoplamiento, Interfaz
Principio de diseño que oculta el estado interno de un objeto y expone solo una interfaz controlada, de modo que otros módulos no dependan de detalles de implementación.
- Herencia
- Related: Polimorfismo, Diagrama de clases
Relación entre clases en la que una subclase reutiliza y especializa el comportamiento de una superclase, estableciendo una jerarquía de tipos con sustitución.
- Polimorfismo
- Related: Herencia, Interfaz
Capacidad de que objetos de distintos tipos respondan al mismo mensaje o interfaz con comportamientos propios, permitiendo tratar variantes de forma uniforme en el código cliente.
- Cohesión
- Related: Acoplamiento, Encapsulamiento
Grado en que los elementos de un módulo pertenecen a una misma responsabilidad; una cohesión alta indica que el módulo es enfocado y fácil de entender y mantener.
- Acoplamiento
- Related: Cohesión, Interfaz
Grado de dependencia entre módulos; un acoplamiento bajo reduce el impacto de los cambios y facilita probar y reemplazar partes del sistema de forma independiente.
- Patrón de diseño
- Related: Patrón arquitectónico, Interfaz
Solución general y reutilizable a un problema recurrente de diseño de software, documentada con su contexto, estructura, participantes y consecuencias, no como código listo para copiar.
- Diagrama de casos de uso
- Related: Caso de uso, Actor
Vista que relaciona actores con los casos de uso que el sistema les ofrece, delimitando el alcance funcional y las interacciones principales del sistema.
- Refactorización
- Related: Deuda técnica, Prueba unitaria
Transformación del código que mejora su estructura interna sin cambiar el comportamiento observable, reduciendo deuda técnica y facilitando cambios futuros.
- Prueba unitaria
- Related: Refactorización, Cobertura de pruebas, Desarrollo guiado por pruebas
Prueba automatizada que verifica el comportamiento de una unidad pequeña de código, como una función o clase, de forma aislada y rápida para detectar regresiones temprano.
- Prueba de integración
- Related: Prueba unitaria, Prueba de sistema
Prueba que verifica la interacción entre dos o más componentes o sistemas, comprobando que las interfaces, datos y protocolos funcionan correctamente al combinarse.
- Prueba de aceptación
- Related: Criterio de aceptación, Prueba de sistema
Prueba ejecutada para confirmar que el sistema satisface los criterios acordados con el cliente o usuario, y que es apto para su entrega o puesta en uso.
- Prueba de sistema
- Related: Prueba de integración, Prueba de aceptación
Prueba del producto completo en un entorno representativo, orientada a validar requisitos funcionales y no funcionales de extremo a extremo.
- Cobertura de pruebas
- Related: Prueba unitaria, Caja blanca
Medida de la proporción del código, ramas o requisitos que ejercitan las pruebas; sirve para identificar zonas no verificadas, no como garantía de calidad por sí sola.
- Caja negra
- Related: Caja blanca, Prueba de aceptación
Técnica de prueba que deriva casos a partir de entradas y salidas esperadas sin conocer la estructura interna del código, usando particiones de equivalencia o valores límite.
- Caja blanca
- Related: Cobertura de pruebas, Caja negra
Técnica de prueba que diseña casos a partir de la estructura interna del programa, como caminos, condiciones y ramas, para ejercitar el código de forma dirigida.
- Desarrollo guiado por pruebas
- Related: Prueba unitaria, Refactorización
Práctica en la que se escribe primero una prueba automatizada que falla, luego el código mínimo para pasarla y finalmente se refactoriza, repitiendo el ciclo en incrementos pequeños.
- Integración continua
- Related: Entrega continua, Prueba unitaria
Práctica de integrar los cambios de código en un repositorio compartido con frecuencia, ejecutando automáticamente compilación y pruebas para detectar fallos de forma temprana.
- Control de versiones
- Related: Integración continua, Refactorización
Sistema que registra el historial de cambios de archivos y permite trabajar en ramas, comparar versiones, revertir estados y coordinar a varias personas sobre el mismo código.
- Deuda técnica
- Related: Refactorización, Cobertura de pruebas
Costo futuro implícito que surge de elegir soluciones rápidas o incompletas hoy; si no se paga con refactorización y pruebas, encarece cada cambio posterior.
- Interfaz
- Related: Encapsulamiento, Acoplamiento, Polimorfismo
Contrato que define las operaciones que un componente ofrece a sus consumidores, ocultando la implementación y permitiendo sustituirla sin afectar al código que la usa.
- Product backlog
- Related: Historia de usuario, Sprint, Velocidad del equipo
Lista priorizada y en evolución de elementos pendientes de un producto, como historias, mejoras y correcciones, que alimenta la planificación de iteraciones.
- Sprint
- Related: Product backlog, Velocidad del equipo, Scrum
Iteración de duración fija en la que un equipo produce un incremento terminado y potencialmente entregable, con objetivos y alcance acordados al inicio.
- Scrum
- Related: Sprint, Product backlog, Velocidad del equipo
Marco de trabajo ágil basado en iteraciones cortas, roles definidos y eventos regulares, que organiza el trabajo en torno a un backlog y a la inspección y adaptación continuas.
- Velocidad del equipo
- Related: Sprint, Product backlog
Cantidad de trabajo, medida en unidades acordadas como puntos de historia, que un equipo completa por iteración; se usa para pronosticar, no para comparar equipos.
- Ruta crítica
- Related: Diagrama de Gantt, Hito
Secuencia de actividades dependientes más larga de un proyecto, cuya duración determina la fecha mínima de término y cuyo retraso retrasa todo el proyecto.
- Diagrama de Gantt
- Related: Ruta crítica, Hito
Representación gráfica de actividades en el tiempo que muestra duraciones, solapamientos y dependencias, útil para comunicar el plan y seguir el avance del cronograma.
- Hito
- Related: Diagrama de Gantt, Ruta crítica
Punto significativo del proyecto sin duración propia, usado para marcar la consecución de un resultado o la finalización de una fase y verificar el avance.
- Gestión de riesgos
- Related: Ruta crítica, Hito
Proceso de identificar, analizar, priorizar y planificar respuestas a amenazas u oportunidades que pueden afectar los objetivos de alcance, tiempo, costo o calidad del proyecto.
- Estimación por puntos de historia
- Related: Velocidad del equipo, Product backlog
Técnica de estimación relativa que asigna un valor de esfuerzo o complejidad a cada elemento del backlog comparándolo con referencias ya estimadas por el equipo.
- Patrón arquitectónico
- Related: Patrón de diseño, Atributo de calidad, Microservicios
Esquema de organización de alto nivel que define la estructura general de un sistema, sus componentes y sus relaciones, como capas, microservicios o arquitectura orientada a eventos.
- Atributo de calidad
- Related: Requerimiento no funcional, Patrón arquitectónico
Propiedad medible del sistema, como disponibilidad, seguridad, rendimiento o modificabilidad, que guía las decisiones arquitectónicas y debe expresarse con escenarios verificables.
- Microservicios
- Related: Patrón arquitectónico, Interfaz, Atributo de calidad
Estilo arquitectónico que descompone el sistema en servicios pequeños, desplegables de forma independiente y comunicados por red, cada uno dueño de su lógica y datos.
- Arquitectura en capas
- Related: Patrón arquitectónico, Acoplamiento
Estilo que organiza el sistema en niveles con responsabilidades definidas, donde cada capa depende de la inferior mediante interfaces, favoreciendo la separación de preocupaciones.
- Modelo de calidad de producto
- Related: Atributo de calidad, Revisión de código
Marco que define características y subcaracterísticas medibles de la calidad del software, como funcionalidad, fiabilidad, eficiencia y mantenibilidad, para evaluarlo de forma sistemática.
- Revisión de código
- Related: Modelo de calidad de producto, Integración continua
Examen sistemático de cambios por parte de otros desarrolladores para detectar defectos, verificar estándares y compartir conocimiento antes de integrar el trabajo.
- Proceso de software
- Related: Modelo de madurez, Scrum
Conjunto estructurado de actividades, roles y artefactos que un equipo sigue para transformar necesidades en software entregado, mantenido y evaluado.
- Modelo de madurez
- Related: Proceso de software, Modelo de calidad de producto
Marco de referencia que describe niveles progresivos de formalización y mejora de los procesos de una organización, usado para evaluar capacidades y planificar mejoras.
- Entrega continua
- Related: Integración continua, Proceso de software
Práctica que mantiene el software siempre en estado desplegable y automatiza la liberación a producción con validaciones, reduciendo el tiempo entre el cambio y su entrega.