Slide-Software Sesión 1 Semana 1.
Slide-Software Sesión 1 Semana 1.
Slide-Software Sesión 1 Semana 1.
Desarrollo de software
Sesión 1:
Desarrollo
Software
Introducción y Metodologías
para el desarrollo de software
Objetivos de la sesión
Al finalizar esta sesión estarás en capacidad de:
● Software : Es la programación lógica que todo sistema de cómputo necesita para funcionar
correctamente y permitir al usuario disfrutar de aspectos como una interfaz amigable y rápida, así las
funciones que el programa realice.
● Desarrollo de software: estudia los componentes necesarios para la creación, gestión, mantenimiento
y testeo de software computacional
“Un marco de referencia que contiene los procesos, las actividades y las tareas
involucradas en el desarrollo, la explotación y el mantenimiento de un producto
de software, abarcando la vida del sistema desde la definición de los requisitos
hasta la finalización de su uso” ISO 12207-1
Ciclo de Desarrollo de Software
Análisis
● Entrada
○ Conocimiento de la aplicación, actividades de los usuarios, mercado, etc.
● Actividades
○ Identificar las necesidades del usuario
○ Realizar análisis de viabilidad
○ Establecer los requerimientos de la aplicación
● Salida
○ Documento con los requerimientos del software.
Diseño
● Entrada
○ Documento con los requerimientos del software
● Actividades
○ Crear estrategia de solución
○ Analizar alternativas y Formalizar la solución
○ Dividir y organizar la aplicación en módulos
○ Establecer descripciones de cada módulo
● Salida
○ Documento con el diseño del software
○ UML (Universal Modeling Language)
Codificación
● Entrada
○ Documento con el diseño del software
● Actividades
○ Creación del código fuente
○ Pruebas y testing
● Salida
○ Código de módulos, probado
Pruebas - Validación
● Entrada
○ Código de módulos, probado
○ Documento de requerimientos del software (validación)
● Actividades
○ Pruebas de integración
○ Pruebas de validación
● Salida
○ Software finalizado y listo para usar
Mantenimiento
● Entrada
○ Software listo para usar
● Actividades
○ Instalación
○ Uso en paralelo
○ Implementación
○ Nuevos requerimientos, correcciones y modificaciones
○ Soporte de usuarios
● Salida
○ Aplicación respondiendo a las necesidades actuales
Modelos de ciclo de vida
Los modelos de ciclo de vida se han actualizado a tal punto, que facilitan
una metodología común entre el cliente y la compañía de software, esto con
el fin de reflejar las etapas de desarrollo involucradas y la documentación
requerida, de tal forma que cada etapa se valide antes de continuar con la
siguiente.
Modelo en cascada Ventajas:
Análisis
● La cantidad de recursos necesarios es mínimo.
● La documentación se produce en cada etapa del
desarrollo.
Diseño
● Después de cada etapa importante de la codificación
de software, las pruebas se realizan para comprobar el
correcto funcionamiento del código.
Codificación Inconvenientes:
● Rígido
Mantenimiento
Modelo en Espiral
Solución
Construcción Ventajas
E C • Los factores de riesgo son reducidos.
A D • El desarrollo es iterativo y se pueden
E C incorporar funcionalidades progresivamente.
A D
Inconvenientes
E C • La duración de la ejecución no es concreta.
Evaluación Diseño
A D • Fallos en el análisis de riesgos podría influir
E C negativamente a todo el proyecto.
A D
● KANBAN
Artefactos
Backlog del producto
Backlog de sprint
Incremento de funcionalidad
Procesos
Planificación
Reunión diaria (15 min)
Revisión
Retrospectiva
Metodología de Desarrollo de Software
Agile - KANBAN Reglas
Mostrar el proceso
Limitar el trabajo en curso (WIP)
Optimizar el flujo de trabajo