0% encontró este documento útil (0 votos)
2 vistas3 páginas

20 conceptos básicos de la ingeniería de Software

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 3

Algoritmo: Un algoritmo es una secuencia finita de pasos o instrucciones claras y precisas que permiten

INSTITUTO TECNOLOGICO
resolver un problema o realizar NACIONAL
una tarea. Un buen algoritmo DE MEXICO
debe ser eficiente en términos de tiempo y
Refactorización: Es el proceso de reestructurar el código fuente sin cambiar su comportamiento externo. El
recursos, y debe ser fácilmente comprensible y adaptable.
objetivo es mejorar la legibilidad, reducir la complejidad y facilitar el mantenimiento futuro. La
CAMPUS PINOTEPA
refactorización puede incluir eliminar duplicación de código, simplificar estructuras de control o mejorar los
nombres de variables y funciones.
Arquitectura de Software: Es la estructura organizativa de un sistema, que incluye los componentes
Asignatura: Fundamentos de
principales, sus relaciones y las interacciones entre ellos. Defina cómo se estructuran los módulos del
software y cómo se comunican entre sí. Ejemplos de arquitecturas son cliente-servidor, microservicios y
Control de Versiones: Es un sistema que permite a los desarrolladores realizar un seguimiento de los
arquitectura en capas.
Ingeniería De Software
cambios en el código a lo largo del tiempo, facilitando la colaboración y la gestión de diferentes versiones
de un proyecto. Git es uno de los sistemas de control de versiones más populares, que permite el uso de
ramas para trabajar en paralelo y la fusión de cambios.
Diseño de Software: El diseño de software es la fase en la que se definen las soluciones técnicas para
implementar los requisitos especificados. Incluye decisiones sobre estructuras de datos, algoritmos,
ALUMNOS:
interfaces y división de funcionalidades. Un buen diseño debe ser modular, fácil de mantener y extensible.
Integración Continua (CI): Es una práctica en la que los desarrolladores integran frecuentemente los
 Emmanuel Solano Guzmán
cambios de su código en un repositorio compartido, normalmente varias veces al día. Esto permite la
detección temprana de errores mediante la ejecución automática de pruebas, lo que mejora la calidad del
Requisitos Funcionales: Estos describen las funciones y características que el software debe cumplir, como
software y acelera su desarrollo.
lo que el sistema debe hacer, las tareas que debe realizar, las entradas y salidas, y cómo debe comportarse.
Un ejemplo de un requisito funcional sería "el sistema debe permitir a los usuarios registrar y gestionar
Docente: Eugenia Teresa Lozano Aguirre
cuentas".
Despliegue Continuo (CD): Va más allá de la integración continua. Se refiere a la automatización del proceso
de liberación de software para que los cambios en el código se puedan implementar de manera rápida y
confiable en producción, asegurando que las nuevas versiones del software estén siempre listas para su
Requisitos No Funcionales: Son características de calidad del software que no están relacionadas
uso. Semestre: 5 Grupo: A
directamente con la funcionalidad, pero son cruciales para su éxito. Algunos ejemplos incluyen el
rendimiento, la seguridad, la usabilidad, la confiabilidad y la escalabilidad del sistema.
Repositorio: Un repositorio es un lugar central donde se almacena todo el código fuente de un proyecto,
SANTIAGO PINOTEPA NACIONAL, OAXACA,
junto con su historial de cambios. Los repositorios permiten a los desarrolladores compartir su trabajo,
Patrones de Diseño: Son soluciones reutilizables a problemas comunes en el diseño de software. Los
colaborar y realizar un seguimiento del progreso de manera organizada. Plataformas como GitHub, GitLab y
patrones de diseño no son código, sino plantillas o guías que se pueden aplicar a situaciones específicas.
Bitbucket son ejemplos de sistemas de repositorios.
OCTUBRE DEL 2024
Ejemplos famosos son el patrón Singleton, el patrón Factory y el patrón Observer.
Ciclo de Vida del Software: Es el proceso completo que un software sigue desde su concepción hasta su
Sistema Operativo
retiro. Incluye fases(SO): Es planificación,
como el software que gestiona
análisis, los recursos
diseño, de hardware
implementación, de unadespliegue
pruebas, computadora
y y
proporciona
mantenimiento.servicios para de
Ejemplos ejecutar programas.
modelos de ciclo deEn vida
el contexto de la ingeniería
son el modelo de software,
en cascada, el sistema
el desarrollo ágil, el
operativo es crucial
modelo iterativo y elpara definir
modelo encómo interactuarán las aplicaciones con el hardware. Los ejemplos de SO
espiral.
incluyen Windows, Linux y macOS.

Pruebas de software: Las pruebas de software implican verificar que el software cumple con los requisitos
Modelo Entidad-Relación
y funciona como se espera. (ER):
Se Es un enfoque
pueden realizarutilizado
diferentespara modelar
tipos la estructura
de pruebas, como de una base
pruebas de datos.
unitarias (para
Representa las entidades
probar componentes (objetos o pruebas
individuales), cosas) dedeunintegración
sistema y las relaciones
(para entre ellas. Por
probar interacciones ejemplo,
entre en un
componentes),
sistema
pruebasde gestión de(para
funcionales biblioteca,
probar"Libro" podría ser de
el cumplimiento unalos
entidad, y "Autor"
requisitos) otra,de
y pruebas conrendimiento.
una relación entre
ellas.
Interfaz de usuario (UI): es la parte de un sistema con la que los usuarios interactúan directamente. Puede
incluir interfaces gráficas, como botones, menús y formularios, o interfaces basadas en texto, como
comandos. El diseño de la UI es fundamental para garantizar una buena experiencia de usuario.

Control de Calidad (QA): Implica garantizar que el software cumple con los estándares de calidad a lo largo
de todo su ciclo de vida. Esto se logra mediante la implementación de procesos, pruebas y auditorías para
detectar y corregir errores antes de que el software llegue a los usuarios finales.

Capacidad de Mantenimiento: Se refiere a la facilidad con la que un software puede ser modificado para
corregir errores, mejorar el rendimiento o agregar nuevas funcionalidades. Un software bien diseñado debe
permitir cambios sin comprometer su estabilidad o calidad.

Escalabilidad: Es la capacidad de un sistema para manejar un aumento en la carga de trabajo sin que su
rendimiento se vea afectado. Esto puede lograrse mediante la optimización del software o agregando más
recursos de hardware. Un sistema escalable puede crecer y adaptarse a las necesidades del negocio sin
necesidad de rediseñarse por completo.

DevOps: Es un conjunto de prácticas que integran el desarrollo de software (Dev) con las operaciones de TI
(Ops), con el objetivo de mejorar la colaboración entre los equipos de desarrollo y operación

También podría gustarte