El Proceso Unificado

  • 19,313 views
Uploaded on

dirigido por casos de uso,centrado en la arquitectura, iterativo e incremental

dirigido por casos de uso,centrado en la arquitectura, iterativo e incremental

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Muy bueno el trabajo que realizaron, resume las ideas principales del libro de PU
    Are you sure you want to
    Your message goes here
  • gracias! lo que necesitaba para guiarme en un proyecto
    Are you sure you want to
    Your message goes here
  • Gracias por compartir!
    Are you sure you want to
    Your message goes here
  • es lo que estaba buscando
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
19,313
On Slideshare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
972
Comments
4
Likes
8

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. PROCESO UNIFICADO
  • 2.
  • 3. PROCESO UNIFICADO
  • 4. PROCESO UNIFICADO
    Está basado en componentes, lo cual quiere decir que el sistema software en construcción está formado por componentes software interconectados a través de interfaces bien definidas
    Utiliza Lenguaje Unificado de Modelado (UML) para preparar todos los esquemas de un sistema software.
  • 5. PROCESO UNIFICADO
  • 6. PROCESO UNIFICADO
    Dirigido por casos de uso
    USUARIO
    Alguien o algo como otro sistema fuera del sistema en consideración que interactúa con el sistema que estamos desarrollando
  • 7. PROCESO UNIFICADO
    Dirigido por casos de uso
  • 8. PROCESO UNIFICADO
    Dirigido por casos de uso
    • CAPTURA DE REQUISITOS:
    • 9. cuál es el problema?
    • 10. ANÁLISIS:
    • 11. qué debe hacerse? qué sistema debemos construir?
    • 12. DISEÑO:
    • 13. cómo podemos solucionar el problema?
    • 14. CODIFICACIÓN:
    • 15. trasladar el diseño a programas...
    • 16. PRUEBAS:
    • 17. ... que funcionen...
    • 18. IMPLANTACIÓN:
    • 19. ... en un entorno productivo ...
    • 20. MANTENIMIENTO:
    • 21. ... y que pueden estar sujetos a posibles modificaciones o mejoras posteriores!
  • PROCESO UNIFICADO
    Dirigido por casos de uso
  • 22. PROCESO UNIFICADO
    Dirigido por casos de uso
    CASOS DE USO
    • Es un fragmento de funcionalidad del sistema que proporciona el usuario un resultado importante
    • 23. Representan los requisitos funcionales
    • 24. Todos los casos de uso juntos representan un modelo de casos de uso el cual describe la funcionalidad total del sistema
    ¿ Que debe hacer el sistema para cada usuario?
    Pensar en términos de importancia para el usuario
  • 25. PROCESO UNIFICADO
    Dirigido por casos de uso
    CASOS DE USO
    Los casos de uso no son solo una herramienta para especificar los requisitos de un sistema.
    GUÍAN EL PROCESO DE DESARROLLO
  • 26. PROCESO UNIFICADO
    Dirigido por casos de uso
    CASOS DE USO
  • 27. PROCESO UNIFICADO
    Dirigido por casos de uso
    CASOS DE USO
    • Inician el proceso de desarrollo
    • 28. Guían el proceso de desarrollo
    • 29. Se desarrollan a la vez que la arquitectura del sistema y esta influye en la selección de los casos de uso
  • PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    La arquitectura software es parecido al papel que juega la arquitectura en la construcción de edificios, ya que permite al constructor ver la imagen completa antes de que comience la construcción
  • 30. PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
  • 31. PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    • Incluye los aspectos estáticosy dinámicos más significativos
    • 32. Siguiere las necesidades de la empresa, como las perciben losusuariosy losinversoresy se refleja en los casos de uso
    • 33. Es una vista del diseño completo con las características más importantes resaltadas, dejando los detalles de lado
  • PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    • Se ve influida por muchos factores como:
    • 34. La plataforma en que tiene que funcionar el software
    • 35. Los bloques de construcción de que se dispone consideraciones de implantación
    • 36. Sistemas heredados y requisitos no funcionales
  • PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    El valor de una arquitectura depende de las personas que se hayan responsabilizado de su creación este proceso ayuda al arquitecto a centrarse en los objetivos adecuados, como la:
    • Comprensibilidad
    • 37. La capacidad de adaptación al cambio
    • 38. La reutilización
  • PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    CASOS DE USO
    ARQUITECTURA
    y
    • Cada uno tiene una función y una forma
    • 39. Ninguna es suficiente por sí misma
    • 40. Las dos deben equilibrarse
    • 41. Debe existir interacción entre ellos
    • 42. Los casos de uso deben encajar en la arquitectura cuando se llevan a cabo y por otro lado la arquitectura debe permitir el desarrollo de todos los casos de uso requeridos ahora y en el futuro
    • 43. Deben evolucionar en paralelo
  • PROCESO UNIFICADO
    Centrado en la arquitectura
    ARQUITECTURA SOFTWARE
    De manera resumida podemos decir que el arquitecto:
    • Crea un esquema de borrador de la arquitectura, comenzando por la parte de la arquitectura que no es específica de los casos de uso. Aun que esta parte de la arquitectura es independiente de los casos de uso, el arquitecto debe poseer una comprensión general de los casos de uso antes de comenzar la creación del esquina arquitectónico
    • 44. A continuación , el arquitecto trabaja con un subsistema de los casos de uso especificados, con aquellos que representen las funciones clave del sistema en desarrollo. Cada caso de uso seleccionado se especifica en detalle y se realiza en términos de subsistemas
    ESTE PROCESO CONTINÚA HASTA QUE SE CONSIDERE QUE LA ARQUITECTURA ES ESTABLE
  • 45. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    Es práctico dividir el esfuerzo de desarrollo de un proyecto de software en partes mas pequeñas o mini proyectos.
    Cada mini proyecto es una iteración que resulta en un incremento.
    Las iteraciones hace referencia a pasos en el flujo de trabajo, y los incrementos a crecimientos en el producto.
    Las iteraciones deben estar controladas. Esto significa que deben seleccionarsey ejecutarse de una forma planificada.
  • 46. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    Los desarrolladores basan la selección de lo que implementarán en cada iteración en dos cosas:
  • 47. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    En cada iteración los desarrolladores identifican y especifican los casos de uso relevantes, crean un diseño utilizando la arquitectura seleccionada como guía, para implementar dichos casos de uso. Si la iteración cumple sus objetivos, se continúa con la próxima. Sino deben revisarse las decisiones previas y probar un nuevo enfoque.
  • 48. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    Las actividades se encadenan en una mini-cascada con un alcance limitado por los objetivos de la iteración
  • 49. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    • Captura de requisitos:
    Modelo de casos de uso, Modelo de Dominio, ...
    • Análisis:
    Diagrama de secuencia del sistema, Contratos, Modelo Conceptual...
    • Diseño:
    Diagramas de interacción, Diagrama de Clases
    • Implementación:
    Código fuente (Clases y métodos)
    • Pruebas:
    verificación de la implementación
  • 50. LA VIDA PROCESO UNIFICADO
    ITERACIÓN Y ENTREGAS
    • Captura de requisitos:
    Modelo de casos de uso, Modelo de Dominio, ...
    • Análisis:
    Diagrama de secuencia del sistema, Contratos, Modelo Conceptual...
    • Diseño:
    Diagramas de interacción, Diagrama de Clases
    • Implementación:
    Código fuente (Clases y métodos)
    • Pruebas:
    verificación de la implementación
  • 51. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    BENEFICIOS DEL ENFOQUE ITERATIVO
    • La iteración controlada reduce el riesgo a los costes de un solo incremento.
    • 52. Reduce el riesgo de retrasos en el calendario atacando los riesgos mas importantes primero.
    • 53. Acelera el desarrollo. Los trabajadores trabajan de manera más eficiente al obtener resultados a corto plazo.
    • 54. Tiene un enfoque más realista al reconocer que los requisitos no pueden definirse completamente al principio.
  • PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    RECOMENDACIONES
    Utilizar iteraciones cortasde 2 a 4 semanas incrementa la productividad del proyecto, dado que el equipo trabaja de forma más eficiente cuando tiene objetivos a corto plazo. Así mismo, con iteraciones cortas la precisión de las estimaciones aumenta. El tamaño depende de:
    Los condicionantes del proyecto.
    La necesidad de tener feedback más o menos rápido.
    Que no se degrade la relación trabajo útil / gestión operativa (por ejemplo reuniones, actividades necesarias que no producen valor directo, etc.).
    Utilizar iteraciones regulares, de manera que todas sean un timebox de la misma duración.
  • 55. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    RECOMENDACIONES
    El equipo aprende a calcular la velocidad de desarrollo, la cantidad de trabajo que puede hacer en una iteración (sin tener que hacer extrapolaciones si las iteraciones no fuesen regulares).
    El cliente puede proyectar cuantas iteraciones se necesitan para tener cada entrega, en función de la velocidad de desarrollo del equipo (el trabajo que pudo completar en iteraciones anteriores del mismo tamaño), y tomar decisiones al respecto.
  • 56. PROCESO UNIFICADO
    Iterativo e incremental
    ITERACIONES
    RECOMENDACIONES
    Permite gestionar y sincronizar de manera sencilla las necesidades del proyecto con respecto a las de otros proyectos (integración con el trabajo realizado por otros equipos, compartición de personas que son difíciles de asignar a un único equipo).
    Las iteraciones coincidiendo con mese naturales permiten sincronizar el trabajo del equipo con el de otros departamentos y con el resto de la organización (por ejemplo, la organización puede tener medidas de resultados y objetivos a nivel trimestral o cuatrimestral).
  • 57. LA VIDA PROCESO UNIFICADO
    El Proceso Unificado se repite a lo largo de una serie de ciclos que constituyen la vida de un sistema. Cada ciclo constituye una versión del sistema.
    FASES
    Cada ciclo constas de cuatro fases: inicio, elaboración, construcción, y transición.
  • 58. LA VIDA PROCESO UNIFICADO
    EL PRODUCTO
    • Cada ciclo produce una nueva versión del sistema, y casa versión es un producto preparado para su entrega.
    • 59. Consta de un cuerpo de código fuente incluido en componentes que puede compilarse y ejecutarse, además de manuales y otros productos asociados
    • 60. Debe ajustarse a las necesidades de los usuarios es decir de toda la gente que trabajará con el producto.
    • 61. El producto terminado incluye los requisitos, casos de uso, especificaciones no funcionales y casos de prueba
    • 62. Incluye un modelo de prueba y el modelo visual
  • LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    Cada fase se subdivide en iteraciones.
    En cada iteración se desarrolla en secuencia un conjunto de disciplinas o flujos de trabajos.
  • 63. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    HITOS
    Cada fase finaliza con un hito. Cada hito se determina por la disponibilidad de un conjunto de artefactos, es decir un conjunto de modelos o documentos que han sido desarrollados hasta alcanzar un estado predefinido.
    Los hitos tienen muchos objetivos. El más crítico es que los directores deben tomar ciertas decisiones antes de que el trabajo continúe con la siguiente fase.
    Los hitos también permiten controlar la dirección y progreso del trabajo.
    Al final se obtiene un conjunto de datos a partir del seguimiento del tiempo y esfuerzo consumidos en cada fase. Estos datos son útiles para la estimaciones en futuros proyectos.
  • 64. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    FASE DE INICIO
    Durante la fase de inicio se desarrolla una descripción del producto final, y se presenta el análisis del negocio. Esta fase responde las siguientes preguntas:
    • ¿Cuáles son las principales funciones del sistema para los usuarios mas importantes?
    • 65. ¿Cómo podría ser la mejor arquitectura del sistema?
    • 66. ¿Cuál es el plan del proyecto y cuanto costará desarrollar el producto?
    En esta fase se identifican y priorizan los riesgos mas importantes.
    El objetivo de esta fase es ayudar al equipo de proyecto a decidir cuales son los verdaderos objetivos del proyecto. Las iteraciones exploran diferentes soluciones posibles, y diferentes arquitecturas posibles.
    Puede que todo el trabajo físico realizado en esta fase sea descartado. Lo único que normalmente sobrevive a la fase de inicio es el incremento del conocimiento en el equipo.
  • 67. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    FASE DE INICIO
    Los artefactos que típicamente sobreviven a esta fase son:
    - Un enunciado de los mayores requerimientos planteados generalmente como casos de uso.
    - Un boceto inicial de la arquitectura.
    - Una descripción de los objetivos del proyecto.
    - Una versión muy preliminar del plan del proyecto.
    - Un modelo del negocio.
    La fase de inicio finaliza con el Hito de Objetivos del Ciclo de Vida.
    Este hito es alcanzado cuando el equipo de proyectos y los stakeholders llegan a un acuerdo sobre:
    - Cuál es el conjunto de necesidades del negocio, y que conjunto de funciones satisfacen estas necesidades.
    - Una planificación preliminar de iteraciones.
    - Una arquitectura preliminar.
  • 68. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    FASE DE INICIO
    Debe poder responderse las siguientes cuestiones:
    - ¿Se ha determinado con claridad el ámbito del sistema? ¿Se ha determinado lo que
    va a estar dentro del sistema y fuera de el sistema?
    - ¿Se ha llegado a un acuerdo con todas las personas involucradas (stakeholders)
    sobre los requisitos funcionales del sistema?
    - ¿Se vislumbra una arquitectura que pueda soportar estas características?
    - ¿Se identifican los riesgos críticos? ¿Se prevé forma de mitigarlos?
    - ¿El uso del producto justifica la relación costo-beneficio?
    - ¿Es factible para su organización llevar adelante el proyecto?
    - ¿Están los inversores de acuerdo con los objetivos?
  • 69. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    FASE DE ELABORACIÓN
    Durante la fase de elaboración se especifican en detalle la mayoría de los casos de uso del producto y se diseña la arquitectura.
    Las iteraciones en la fase de elaboración:
    - Establecen una firme comprensión del problema a solucionar.
    - Establece la fundación arquitectural para el software.
    - Establece un plan detallado para las siguientes iteraciones.
    - Elimina los mayores riesgos.
    El resultado de esta fase es la línea base de la arquitectura.
    En esta fase se construyen típicamente los siguientes artefactos:
    - El cuerpo básico del sw en la forma de un prototipo arquitectural.
    - Casos de prueba
    - La mayoría de los casos de uso (80%) que describen la funcionalidad del sistema.
    - Un plan detallado para las siguientes iteraciones.
  • 70. LA VIDA PROCESO UNIFICADO
    FASES DENTRO DE UN CICLO
    FASE DE ELABORACIÓN
    La fase de elaboración finaliza con el hito de la Arquitectura del Ciclo de Vida.
    Este hito se alcanza cuando el equipo de desarrollo y los stakeholders llegan a un
    acuerdo sobre:
    - Los casos de uso que describen la funcionalidad del sistema.
    - La línea base de la arquitectura
    - Los mayores riesgos han sido mitigados
    - El plan del proyecto
    Al alcanzar este hito debe poder responderse a preguntas como:
    - ¿Se ha creado una línea base de la arquitectura? ¿Es adaptable y robusta?
    ¿Puede evolucionar?
    - ¿Se han identificado y mitigado los riesgos más graves?
    - ¿Se ha desarrollado un plan del proyecto hasta el nivel necesario para respaldar
    una agenda, costes, y calidad realistas?
    - ¿Proporciona el proyecto, una adecuada recuperación de la inversión?
    - ¿Se ha obtenido la aprobación de los inversores?
  • 71. LA VIDA PROCESO UNIFICADO
    DISCIPLINAS
    Cada disciplina es un conjunto de actividades relacionadas (flujos de trabajo)
    vinculadas a un área específica dentro del proyecto total. Las más importantes son:
    Requerimientos, Análisis, Diseño, Codificación, y Prueba.
    El agrupamiento de actividades en disciplinas es principalmente una ayuda para
    comprender el proyecto desde la visión tradicional en cascada.
  • 72. LA VIDA PROCESO UNIFICADO
  • 73. BIBLIOGRAFÍA
    • Libro: El proceso Unificado de Desarrollo de Software de IvarJcobson, Grandybooch, James Rumbaugh
    • 74. http://adimen.si.ehu.es/~rigau/teaching/EHU/ISHAS/Curs2008-2009/Apunts/IS.2.pdf
    • 75. http://www.proyectosagiles.org/desarrollo-iterativo-incremental
    • 76. http://www.ecomchaco.com.ar/UTN/disenodesistemas/apuntes/oo/ApunteRUP.pdf
    • 77. http://kybele.escet.urjc.es/Documentos/ISI/Proceso%20Unificado%20I%20%282006%29.pdf
    • 78. http://gabrielpizarro.files.wordpress.com/2008/07/uml_logopatterns.jpg
    • 79. http://dc.exa.unrc.edu.ar/nuevodc/materias/sistemas/2007/TEORICOS/TEORIA_6_PU_CR_2007.pdf
    • 80. http://www.unibe.edu.do/carreras/tic/ingenieria.pdf