Title: El Proceso Unificado RUP: Tcnicas Modernas para Desarrollar Aplicaciones
1El Proceso Unificado (RUP) Técnicas Modernas
para Desarrollar Aplicaciones
- Yadran Eterovic S.
- Depto. Ciencia de la Computación
- P. Universidad Católica de Chile
2El software en las empresas hoy
- El software es un componente crítico para el
logro de los objetivos del negocio de las
empresas - El dinámico mundo actual de los negocios exige
- desarrollos en plazos cada vez más breves y
ajustándose a presupuestos muy estrictos - productos que satisfagan a sus usuarios y puedan
evolucio-nar en conjunto con las empresas - Las organizaciones de desarrollo de software
difícilmente pueden cumplir con estas exigencias
3Raíces de los problemas de desarrollo de software
- Manejo ad hoc de requisitos
- Comunicación ambigua e imprecisa
- Arquitecturas frágiles
- Complejidad abrumadora
- Inconsistencias no de-tectadas en requisitos,
diseño, implementación
- Pruebas insuficientes
- Evaluación subjetiva del estado del proyecto
- Falla en abordar los riesgos
- Propagación no controlada de cambios
- Insuficiente automatización
4El Proceso Unificado (RUP)
- El RUP es un proceso de ingeniería de software
- Cómo asignar tareas y responsabilidades en una
organización de desarrollo? - Asegurar la producción de software de alta
calidad que satisface las necesidades de sus
usuarios en un plazo y presupuesto predecibles - Adaptable a la organización que lo adopta
- El RUP es un producto para el proceso
- Desarrollado, mantenido y comercializado por
Rational Software - Disponible en CD-ROM y via Internet
- Integrable con herramientas de desarrollo de
Rational Software Rational Rose, ClearQuest,
ClearCase, Requisite Pro,
5El RUP incorpora las mejores prácticas de
desarrollo de software
- Desarrollo incremental
- Disminución de riesgos
- 4 fases, varias iteraciones
- Gestión de requisitos
- Casos de uso
- Priorización
- Uso de arquitecturas de componentes
- Orientación a objetos
- Reuso
- Arquitecturas resistentes
- Modelamiento visual
- UML
- Manejo de complejidad
- Verificación continua de la calidad
- Durante todo el ciclo de vida
- Control de cambios
6(No Transcript)
7El RUP es guiado por casos de uso
- Caso de uso secuencia de acciones realizada por
un sistema que produce un re-sultado observable
de va-lor para un actor particular - Actor alguien o algo fuera del sistema que
interactúa con el sistema - La funcionalidad de un sistema es definida por un
conjunto de casos de uso
- Ejemplo de caso de uso
- Cliente inserta tarjeta sistema la lee y valida
- Sistema solicita PIN cliente lo ingresa sistema
lo valida - Sistema pregunta qué quiere el cliente cliente
elige Giro - Sistema solicita monto del giro cliente ingresa
monto - Sistema valida disponibilidad
- Sistema entrega dinero y recibo
8El RUP resalta la importancia de la arquitectura
de software
Programadores Gestión del Software
Usuario Final Funcionalidad
Vista Lógica
Vista de Implementación
Analistas/ Verificadores Comportamiento
Vista de Casos de Uso
Vista de Proceso
Vista de Implantación
Integradores de Sistemas Desempeño Escalabilidad T
hroughput
Ingeniería de Sistemas Topología del
Sistema Entrega, Instalación Comunicaciones
9El RUP ayuda a alcanzar el Nivel de Madurez 2 del
CMM
- Una organización de desarrollo que desea llegar
al Ni-vel de Madurez 2, Repetible, del Modelo
de Madurez de Capacidades (CMM), debe poner en
práctica seis áreas de proceso claves (KPAs) en
cada proyecto - Gestión de configuración
- Aseguramiento de calidad
- Gestión de subcontratos
- Seguimiento del proyecto
- Planificación del proyecto
- Gestión de requisitos
10Pasos para implementar el RUP
- Configuración del RUP
- Consiste en adaptar el producto a la organización
- Produce un caso de desarrollo
- Implementación del RUP
- Evaluar estado actual
- Establecer objetivos
- Identificar riesgos
- Planear implementación
- Ejecutar implementación
- Evaluar implementación
- Planear Implementación
- Configurar el RUP y describirlo en un caso de
desarrollo - Usar el RUP en un Proyecto Piloto bajo riesgo
- Retroalimentar la experiencia al caso de
desarrollo - Ejecutar Implementación
- Actualizar caso de desarrollo
- Adquirir/adaptar herramientas
- Capacitar equipo de desarrollo
- Aplicar el RUP en proyecto
11El RUP se usa exitosamente
- Más de 1,000 empresas
- Diversos dominios de aplicación (50 para
e-business) - Proyectos grandes y pequeños
- Formalmente o como un e-coach en ingeniería de
software - Ejemplos
- Comunicaciones Ericsson, Alcatel, MCI
- Defensa Lockheed-Martin, British Aerospace
- Manufactura Xerox, Volvo, Intel
- Finanzas Visa, Merrill Lynch, Schwab
- Integración de sistemas Ernst Young, Oracle,
Deloitte Touche
12En resumen, el RUP
- es un proceso de ingeniería de softwarey un
producto de softwarepara producir software de
calidad, flexible, y en plazos y presupuestos
predecibles - incorpora las mejores prácticas de desarrollo de
software validadas comercialmente p.ej.,
desarrollo incremental guiado por casos de uso y
centrado en la arquitectura - ayuda a alcanzar el Nivel de Madurez 2 del CMM
- es usado exitosamente en diversos escenarios
- puede implementarse paulatinamente en una
organización