Logo Studenta

4 _Proceso_Desarrollo_SW-2020-1 ADS

¡Este material tiene más páginas!

Vista previa del material en texto

4/04/2020
1
Análisis y Diseño 
de Sistemas
Proceso de Desarrollo de 
Software
Proceso de Desarrollo de Software (SDP)
Objetivo:
• Identificar las actividades propias del SDP.
Contenido:
• Ingeniería de software
• El Proceso de Desarrollo de Software
• Proceso Tradicional: El Proceso de Desarrollo Unificado (RUP)
• Proceso Ágil: SCRUM
• Enfoques del proceso de desarrollo
• Herramientas CASE
Análisis y Diseño de Sistemas 2
4/04/2020
2
Ingeniería de software
“Es una disciplina de la Ingeniería que comprende todos los aspectos de la
producción de Software, desde las tapas iniciales de la especificación del sistema,
hasta el mantenimiento de éste cuando se utiliza” (Sommerville)
Análisis y Diseño de Sistemas 3
SOFTWARE 
DE CALIDAD
PROCESO EFICIENTE
OBJETIVO
El proceso de desarrollo software - SDP
• El SDP define el qué, quién, cuándo y cómo del desarrollo de software.
• Cuatro actividades fundamentales que son comunes para todos los procesos de 
desarrollo de software :
• Especificación del software
• Desarrollo del software
• Validación del software
• Evolución del software
Análisis Desarrollo Pruebas Mantenimiento
4/04/2020
3
Tipos de procesos de desarrollo de software
• Tipos
• Genéricos: fases, actividades, etc.
• Específicos: actividades, decisiones, etc.
Análisis y Diseño de Sistemas 5
Metodología de desarrollo de software
• Marco que define la forma de trabajo durante todo o parte del proceso de desarrollo de 
software.
• Conjunto de estrategias, procedimientos, técnicas, etc. que permiten el logro de un 
objetivo eficientemente.
Tipos de Metodologías:
Tradicionales Ágiles
http://nicholasgimenes.blogspot.com/2012/10/empreendedorismo-agil.html
4/04/2020
4
Metodologías tradicionales
• Excesiva documentación.
• Basadas en el cumplimiento de un plan definido al inicio.
• Intensivo control mediante políticas y normas.
• Altos costos para implementar los cambios en la medida que se avanza en el 
desarrollo. Opuestas al cambio.
• El cliente (externo) interacciona con el equipo mediante reuniones.
• Muchos roles y artefactos definidos.
• Se basa en la arquitectura definida por modelos.
• Existe un contrato prefijado.
• En entornos muy volátiles no conviene.
Proceso de Desarrollo Unificado - RUP
• También llamado “Proceso de Desarrollo de Rational (RUP: Rational Unified Proccess)”.
• El RUP es el producto final de 3 décadas (desde 1967 a 1998) de desarrollo y uso práctico. 
• Creado por Rational Software de IBM, después de un proceso evolutivo de unificación de 
otros métodos.
• Es el proceso estándar más utilizado para el desarrollo de software orientado a objetos.
• Consta de un conjunto de mejores prácticas organizadas en ciclos, fases e iteraciones.
4/04/2020
5
Estructura de las actividades del RUP
• RUP divide el proceso en ciclos (Iterativo e incremental). Cada ciclo tiene un producto
final (versión). Cada ciclo se divide en fases. Las fases contienen un conjunto de
iteraciones. Y en cada iteración se desarrollan los flujos de trabajo del proceso.
CiclosFasesIteracionesFlujos de 
Trabajo
Unidades 
de trabajo
Ciclo de Vida del RUP
4/04/2020
6
Fases del RUP
• Inicio o concepción: objetivos definidos, modelo del negocio y alcance del proyecto.
Inicio de casos de uso, identificar riesgos.
• Elaboración: arquitectura definida, plan de proyecto, completar casos de uso y eliminar
riesgos
• Construcción: elaboración de un producto operativo con su manual.
• Implementación: producto en el cliente y entrenamiento de usuarios. Surgen nuevos
requisitos.
Estructura estática del proceso
• Roles: comportamiento y responsabilidades de un individuo o equipo.
• Actividades: unidad de trabajo desempeñada por un rol. Crear o actualizar un
artefacto.
• Artefactos: es un entregable (subproducto) producido y/o usado durante el RUP.
• Flujos de trabajo: conjunto de actividades que producen un resultado observable.
4/04/2020
7
Roles
• Analistas: del negocio y del software.
• Desarrolladores: arquitecto, lógica, interface, base de datos, implementador,
integrador.
• Gestores: de proyecto, de control de cambios, de configuración, de pruebas, de
despliegue, de procesos, de calidad.
• Apoyo: documentación, herramientas, cursos, graficador, redes.
• Especialistas de pruebas: analista, diseñador y ejecutor de pruebas.
• Otros: Stakeholders, coordinador de revisiones, etc.
Flujos de trabajo del RUP
Flujos de trabajo del proceso
• Modelado del negocio: modelado del dominio
• Requisitos: invención de los requisitos
• Análisis y diseño: análisis de requisitos y diseño de software 
• Implementación: desarrollo de componentes
• Pruebas: evaluar la calidad, casos de pruebas
• Despliegue: implantación del software
Flujos de trabajo de Soporte
• Gestión de cambios y configuraciones: mantener la integridad de los artefactos.
• Gestión del proyecto: organización, planeación, dirección y control.
• Entorno: brindar el soporte tecnológico al proceso: herramientas.
4/04/2020
8
Metodologías Ágiles
• Basada en técnicas heurísticas de producción de código.
• Preparada para el cambio. Ideal para entornos muy cambiantes.
• Proceso poco controlado y pocos principios.
• El cliente es parte del equipo.
• Pocos roles y pocos activos definidos.
• Poco énfasis en la arquitectura.
• No existe contrato prefijado o al menos son bastante flexibles.
SCRUM
• Desarrollada por Ken Schwaber, Jeff Sutherland y Mike Beedle.
• Definición específica de roles. 
• Basada en iteraciones llamadas Sprints . De cada sprints se obtiene un resultado 
ejecutable para el cliente.
• Varios tipos de reuniones de planeamiento y revisión en torno al Sprint.
4/04/2020
9
Ámbito del Scrum
• Buenas prácticas para trabajo colaborativo.
• Realiza entregas parciales.
• Orientado a proyectos con las siguientes características:
• Requieren resultados rápidos.
• Requisitos cambiantes o poco definidos.
• Se requiere fundamentalmente innovación, competitividad, flexibilidad y productividad. 
• Se requiere personal experimentado para el desarrollo.
17
SCRUM
• Roles:
• Scrum Master.
• Product Owner.
• Team.
• Componentes:
• Pila del producto.
• Pila de Sprint.
• Incremento.
▪ Reuniones:
- Daily Scrum o Stand-up 
meeting.
- Scrum de Scrum.
- Sprint Planning Meeting
- Sprint Review Meeting
- Sprint Retrospective
▪ Sprint
▪Documentos:
- Product Backlog
- Sprint Backlog
- Burn down chart
4/04/2020
10
Proceso Scrum
Reunión Previa
Product
Owner
Product
Backlog
Sprint Execution
(1 a 4 semanas)
Scrum Master
Daily Meeting
(15 minutos)
• ¿Qué hiciste?
• ¿Qué dificultades?
• ¿Qué harás?
Sprint Planing
Develoment Team
Refinement Tasking
Sprint 
Backlog
Product Increment
Sprint Review
• Verificar el avance
• Ver que falta
• ¿Qué se va hacer?
Sprint Retrospective
Scrum Master
• ¿Qué se hizo bien?
• ¿Qué no se debe hacer?
• ¿Que se puede mejorar?
Enfoques de software
• Enfoques organizados orientados al desarrollo de software de alta calidad.
• Existen dos enfoque predominantes:
• Estructurado: software de tiempo real
• Orientado a objetos: software interactivo
Análisis y Diseño de Sistemas 20
Estructurado
4/04/2020
11
Herramientas CASE
• Ingeniería de Software Asistida por
Computadora (Computer Aided Software
Engineering).
• Variedad de aplicaciones informáticas usadas
para ayudar en las actividades del proceso de
desarrollo de software
Análisis y Diseño de Sistemas 21

Continuar navegando

Contenido elegido para ti

9 pag.
DMMS_U3_ATR_ALMM

UnADM

User badge image

Alejandro Medina

81 pag.
29 pag.
A05_OsvaldoRC - osvaldo campos

User badge image

Desafío México Veintitrés

83 pag.

Otros materiales