0% encontró este documento útil (0 votos)
401 vistas25 páginas

Modelo RUP y AUP

El documento describe el modelo de desarrollo RUP (Rational Unified Process) y el proceso unificado ágil (Agile Unified Process, AUP). RUP es un proceso iterativo y centrado en los objetivos que utiliza UML para el modelado visual del software. AUP es una versión simplificada de RUP adaptada a metodologías ágiles. Ambos procesos incluyen fases como inicio, elaboración, construcción y transición, y disciplinas como modelado, implementación y pruebas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
401 vistas25 páginas

Modelo RUP y AUP

El documento describe el modelo de desarrollo RUP (Rational Unified Process) y el proceso unificado ágil (Agile Unified Process, AUP). RUP es un proceso iterativo y centrado en los objetivos que utiliza UML para el modelado visual del software. AUP es una versión simplificada de RUP adaptada a metodologías ágiles. Ambos procesos incluyen fases como inicio, elaboración, construcción y transición, y disciplinas como modelado, implementación y pruebas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

I.E.S.T.P.

“Adolfo Vienrich”
Computación e Informática

8. Modelos orientados a objetos II


M ETO D OL OGÍA S D E D E S A R R O L L O D E S O F T WA R E

ING. DAVID ARANDA MENDOZA


• Modelo de desarrollo RUP
RECORDANDO
¿Qué es un modelo de proceso de software?
• Es una estrategia de desarrollo que los ingenieros de
software debe emplear para resolver problemas de la
industria de software.
Sabiendo que el proceso de software, es el conjunto de etapas con la intención de
lograr un objetivo:

Obtener un software de calidad


Modelos de procesos de software
RUP

Proceso 00
RUP
❑ RUP es un proceso de desarrollo de software desarrollado
por la empresa Rational Software y junto con el Lenguaje
Unificado de Modelado UML, constituye la metodología
estándar más utilizada para el análisis, implementación y
documentación de sistemas orientados a objetos.
❑ Originalmente se diseñó un proceso genérico y de dominio
público, el Proceso Unificado, y una especificación más
detallada, el RUP, que se vendiera como producto
independiente.
PRINCIPIOS DE DESARROLLO
❑ Adaptar el proceso: El proceso deberá adaptarse a las necesidades del cliente ya que es muy
importante interactuar con él. Las características propias del proyecto, el tamaño del mismo,
así como su tipo o las regulaciones que lo condicionen, influirán en su diseño específico.
También se deberá tener en cuenta el alcance del proyecto.
❑ Equilibrar prioridades: Los requisitos de los diversos participantes pueden ser diferentes,
contradictorios o disputarse recursos limitados. Debe poder encontrarse un equilibrio que
satisfaga los deseos de todos. Gracias a este equilibrio se podrán corregir desacuerdos que
surjan en el futuro.
❑ Demostrar valor iterativamente: Los proyectos se entregan, aunque sea de un modo interno,
en etapas iteradas. En cada iteración se analiza la opinión de los inversores, la estabilidad y
calidad del producto, y se refina la dirección del proyecto así como también los riesgos
involucrados.
PRINCIPIOS DE DESARROLLO
❑ Colaboración entre equipos: El desarrollo de software no lo hace una única persona sino
múltiples equipos. Debe haber una comunicación fluida para coordinar requisitos, desarrollo,
evaluaciones, planes, resultados, etc.
❑ Enfocarse en la calidad: El control de calidad no debe realizarse al final de cada iteración,
sino en todos los aspectos de la producción. El aseguramiento de la calidad forma parte del
proceso de desarrollo y no de un grupo independiente, también es una estrategia de desarrollo
de software.
❑ Elevar el nivel de abstracción: Este principio dominante motiva el uso de conceptos
reutilizables tales como patrones de diseño del software, lenguajes 4GL o esquemas
(frameworks) por nombrar algunos.
Principales características
❑ Desarrollo iterativo
❑ Administración de requisitos
❑ Uso de arquitectura basada en componentes
❑ Control de cambios
❑ Modelado visual del software
❑ Verificación de la calidad del software
❑ Pretende implementar las mejores prácticas en Ingeniería de Software, de forma que
se adapte a cualquier proyecto
Ciclo de vida RUP Fases
Fases de RUP
Fase de Inicio
Define el alcance del proyecto con los involucrados del proyecto, identificando los riesgos asociados al proyecto, proponer
una visión muy general de la arquitectura de software y producir el plan de las fases y el de iteraciones posteriores.
Fase de Elaboración
Se seleccionan los casos de uso que permiten definir la arquitectura base del sistema y se desarrollaran en esta fase, se
realiza la especificación de los casos de uso seleccionados y el primer análisis del dominio del problema, se diseña la
solución preliminar.
Fase de Desarrollo
Completa la funcionalidad del sistema, para ello se deben clarificar los requisitos pendientes, administrar los cambios de
acuerdo a las evaluaciones realizados por los usuarios y se realizan las mejoras para el proyecto.
Fase de Transición
Asegura que el software esté disponible para los usuarios finales, ajusta los errores y defectos encontrados en las pruebas
de aceptación, capacita a los usuarios y provee el soporte técnico necesario. Se debe verificar que el producto cumpla con
las especificaciones entregadas por las personas involucradas en el proyecto.
Flujos de trabajo de RUP (disciplinas)
Proceso
❑ Modelado de negocio
❑ Requisitos
❑ Análisis y Diseño
❑ Implementación
❑ Pruebas
❑ Despliegue
Soporte
❑ Gestión del cambio y configuraciones
❑ Gestión del proyecto
❑ Entorno
Artefactos
RUP en cada una de sus fases (pertenecientes a la estructura dinámica) realiza una serie de artefactos que
sirven para comprender mejor tanto el análisis como el diseño del sistema (entre otros). Estos artefactos
(entre otros) son los siguientes:

Inicio
• Documento Visión.
• Diagramas de caso de uso.
• Especificación de Requisitos.
• Diagrama de Requisitos.
Artefactos
Elaboración
• Documento Arquitectura que trabaja con las siguientes vistas:
• Vista Lógica
• Diagrama de clases
• Modelo E-R (Si el sistema así lo requiere)
• Vista de Implementación
• Diagrama de Secuencia
• Diagrama de estados
• Diagrama de Colaboración
• Vista Conceptual
• Modelo de dominio
• Vista física
• Mapa de comportamiento a nivel de hardware.
• Diseño y desarrollo de casos de uso, o flujos de casos de uso arquitectónicos
• Pruebas de los casos de uso desarrollados, que demuestran que la arquitectura documentada responde
adecuadamente a requerimientos funcionales y no funcionales.
Artefactos
Construcción
• Especificación de requisitos faltantes
• Diseño y desarrollo de casos de uso y/o flujos
de acuerdo con la planeación iterativa
• Pruebas de los casos de uso desarrollados, y
pruebas de regresión según sea el caso
Transición
• Pruebas finales de aceptación
• Puesta en producción
• Estabilización
• Proceso Unificado Ágil - AUP
ÁGILE UNIFIED PROCESS
Agile Unified Process, en español
Proceso Unificado Ágil de Scott Ambler
o (AUP) en inglés, es una versión
simplificada del Proceso Unificado de
Rational (RUP). Este describe de una
manera simple y fácil de entender la
forma de desarrollar aplicaciones de
software usando técnicas ágiles y
conceptos que aún se mantienen
válidos en RUP.
Características del AUP
1. Versión simplificada de la metodología RUP.
2. Abarca siete flujos de trabajos, cuatro ingenieriles y tres de apoyo: Modelado,
Implementación, Prueba, Despliegue, Gestión de configuración, Gestión de
Proyectos y Ambiente.
3. El modelado agrupa los tres primeros flujos de RUP (Modelamiento del negocio,
Requerimientos y Análisis y Diseño).
4. Dispone de cuatro fases igual que RUP: Incepción o Creación, Elaboración,
Construcción y Transición.
Características del AUP
Características del AUP
❑ Descripción de los flujos de trabajo ingenieriles
✓ El Modelado es el flujo de trabajo que tiene el objetivo de entender el negocio de la organización, el
problema de dominio que se aborda en el proyecto y determinar una solución viable para resolver el
problema de dominio.
✓ El flujo de trabajo Implementación tiene como objetivo transformar su (s) modelo (s) en código
ejecutable y realizar un nivel básico de las pruebas, en particular, las pruebas unitarias.
✓ El flujo de trabajo de Prueba tiene como objetivo realizar una evaluación objetiva para garantizar la
calidad. Esto incluye la búsqueda de defectos, validar que el sistema funciona tal como está
establecido, verificando que se cumplan los requerimientos.
✓ Por último, dentro de los flujos de trabajo ingenieriles se tiene el Despliegue, cuyo objetivo es el
plan para la prestación del sistema y la ejecución de dicho plan, para que el sistema quede a
disposición de los usuarios finales.
Características del AUP
❑ Descripción de los flujos de trabajo de apoyo
✓ Gestión de configuración. Gestión de acceso a los artefactos del proyecto. Esto no sólo
incluye el seguimiento de las versiones de los artefactos sino también controlar y gestionar
los cambios en ellos.
✓ Gestión de proyecto. Dirección de las actividades que tienen lugar dentro del proyecto.
Esto incluye gestionar riesgos, dirigir a las personas y coordinar las personas y sistemas
fuera del alcance del proyecto para asegurar que se entrega a tiempo y dentro del
presupuesto.
✓ Entorno. Soporte del resto del esfuerzo asegurando que el proceso, la orientación
(estándares y guías) y las herramientas (software, hardware…) adecuadas están
disponibles para el equipo cuando son necesarias.
Características del AUP
❑ Descripción de las fases del ciclo de desarrollo
✓ Incepción: identificación del alcance y dimensión del proyecto, propuesta de la
arquitectura y del presupuesto del cliente.
✓ Elaboración: Confirmación de la idoneidad de la arquitectura.
✓ Construcción: Desarrollo incremental del sistema, siguiendo las prioridades
funcionales de los implicados.
✓ Transición: Validación e implantación del sistema.
Técnicas ágiles que aplica AUP
❑ Desarrollo Dirigido por Pruebas (Test Driven Development - TDD). Es una técnica de programación relacionado
a las metodologías ágiles de desarrollo y el simple hecho de realizar primero la prueba es un cambio significativo,
el código resultante es dirigido por las pruebas, generalmente más simple y elegante, y es más fácil de mantener
y leer.
❑ Modelado Ágil. Es una metodología basada en la práctica para el modelado y eficaz documentación de los
sistemas basados en software.
❑ Gestión de Cambios Ágil. La gestión del cambio ágil se trata sobre trabajar eficientemente y seguir una plan
simple e iterativo que facilite la ejecución de los entregables, en lugar de actuar como un bloqueador para el
logro.
❑ Refactorización de Base de Datos para mejorar la productividad. Es un cambio simple en el esquema de una
base de datos que mejora su diseño al tiempo que conserva su semántica de comportamiento e informativa. La
refactorización de la base de datos no cambia la forma en que se interpretan o utilizan los datos y no corrige
errores ni agrega nuevas funciones. Cada refactorización en una base de datos deja el sistema en un estado de
trabajo, por lo que no causa retrasos en el mantenimiento, siempre que existan datos significativos en el entorno
de producción.
Principios en los que se basa AUP
❑ Simplicidad: Todo se describe concisamente utilizando poca documentación, no
miles de ellas.
❑ Agilidad: El ajuste a los valores y principios de La Alianza Ágil.
❑ Centrarse en actividades de alto valor: La atención se centra en las actividades
que en realidad lo requieren, no en todo el proyecto.
❑ Independencia de las herramientas: Usted puede usar cualquier conjunto de
herramientas que desea con el AUP. Se sugiere utilizar las herramientas más
adecuadas para el trabajo, que a menudo son las herramientas simples o incluso
herramientas de código abierto.
❑ Usted querrá adaptar este producto para satisfacer sus propias necesidades: La
metodología AUP es un producto de fácil uso utilizando cualquier herramienta. No es
necesario comprar una herramienta especial, o tomar un curso, para adaptar esta
metodología.

También podría gustarte