La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición.

Presentaciones similares


Presentación del tema: "NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición."— Transcripción de la presentación:

1 NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición e inserte su imagen. UNIDAD III Introducción a los Modelos de desarrollo de software 3.1 Modelos de desarrollo de software

2 NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición e inserte su imagen. Modelo RUP EL PROCESO UNIFICADO DE RATIONAL ( RUP )

3 Proceso de desarrollo de software “Un proceso bien definido es necesario para desarrollar sistemas software de manera repetible y predecible” “Permite un negocio sostenible y que puede mejorar en cada nuevo proyecto, incrementando la eficiencia y productividad de la organización” G. Booch

4 ¿Qué es? RUP es un proceso de desarrollo de software: Forma disciplinada de asignar tareas y responsabilidades en una empresa de desarrollo (quién hace qué, cuándo y cómo). Objetivo: Asegurar la producción de software de calidad dentro de plazos y presupuestos predecibles. Dirigido por casos de uso, centrado en la arquitectura, iterativo (mini-proyectos) e incremental (versiones). Es también un producto: Desarrollado y mantenido por Rational. Actualizado constantemente para tener en cuenta las mejores prácticas de acuerdo con la experiencia.

5 RUP Captura varias de las mejores prácticas en el desarrollo moderno de software en una forma que es aplicable para un amplio rango de proyectos y organizaciones. Es una guía de cómo utilizar de manera efectiva UML. Provee a cada miembro de un equipo un fácil acceso a una base de conocimiento con guías, plantillas y herramientas para todas las actividades críticas de desarrollo. Crea y mantiene modelos, en lugar de enfocarse en la producción de una gran cantidad de papeles de documentación.

6 Incremento de la Productividad en Equipo Todos los miembros del equipo comparten 1 Base de conocimiento 1 Proceso 1 Vista de cómo desarrollar software 1 Lenguaje de modelamiento (UML) Administrador Base de Datos Líder de Proyecto Analista Diseñador/ Desarrollador Ingeniero de Desempeño Pruebas Administrador de Configuración

7 Incremento de la Productividad en Equipo Aumenta la productividad de los desarrolladores mediante acceso a: Base de conocimiento, plantillas y herramientas. Se centra en la producción y mantenimiento de modelos del sistema más que en producir documentos. RUP es una guía de cómo usar UML de la forma más efectiva. Existen herramientas de apoyo a todo el proceso: Modelamiento visual, programación, pruebas, etc.

8 Características de RUP... Guiado y Manejado por Casos de Uso Centrado en la Arquitectura Iterativo e Incremental Desarrollo Basado en Componentes Utilización de UML Proceso Integrado

9 6 Mejores Prácticas (Best Practices) RUP describe como utilizar de forma efectiva procedimientos probados en el desarrollo de software para equipos de desarrollo de software, conocidos como “mejores prácticas”.

10 Desarrollo Iterativo de Software Dados los sistemas de software sofisticados de la actualidad, no es posible hacer de manera secuencial la definición completa del problema, diseñar la solución completa, construir el software y por último probarlo. El descubrimiento de defectos en fases posteriores de diseño dan como resultado un aumento en los costos y/ó la cancelación del proyecto.

11 Desarrollo Iterativo de Software El software moderno es complejo y novedoso. No es realista usar un modelo lineal de desarrollo como el de cascada. Un proceso iterativo permite una comprensión creciente de los requerimientos a la vez que se va haciendo crecer el sistema. RUP sigue un modelo iterativo que aborda las tareas con más riesgos primero. Con esto se logra reducir los riesgos del proyecto y tener un subsistema ejecutable tempranamente.

12 Desarrollo Iterativo Requerimientos Análisis y Diseño Implementación Pruebas Evaluación

13 Características del Desarrollo Iterativo Permite un entendimiento incremental del problema a través de refinamientos sucesivos. Habilita una fácil retroalimentación de usuario. Metas específicas permiten que el equipo de desarrollo mantenga su atención en producir resultados. El progreso es medido conforme avanzan las implementaciones.

14 Características del Desarrollo Iterativo Es útil dividir el trabajo en partes más pequeñas o miniproyectos. Cada miniproyecto es una iteración que resulta en un incremento. Las iteraciones hacen referencia a pasos del flujo de trabajo, y los incrementos al crecimiento del trabajo. Para una efectividad máxima, las iteraciones deben estar controladas, es decir deben seleccionarse y ejecutarse e forma planificada.

15 Administración de Requerimientos Licitar, organizar, y documentar la funcionalidad y restricciones requeridas. Llevar un registro y documentación de cambios y decisiones. Los requerimientos de negocio son fácilmente capturados y comunicados a través de casos de uso. Los casos de uso son instrumentos importantes de planeación. Modelo de Diseño Modelo de Implementación Modelo de Prueba verifica realizacióninfluenciado por

16 Administración de Requerimientos RUP describe cómo: Obtener los requerimientos Organizarlos Documentar requerimientos de funcionalidad y restricciones Rastrear y documentar decisiones Captar y comunicar requerimientos del negocio Los casos de uso y los escenarios indicados por el proceso han probado ser una buena forma de captar requerimientos y guiar el diseño, la implementación y las pruebas.

17 Arquitectura Basada en Componentes Se enfoca en el pronto desarrollo de una arquitectura ejecutable robusta. Resistente al cambio mediante el uso de interfaces bien definidas. Intuitivamente comprensible. Promueve un reuso más efectivo de software. Es derivada a partir de los casos de uso más importantes.

18 Modelación Visual de Software Captura la estructura y comportamiento de arquitecturas y componentes. Muestra como encajan de forma conjunta los elementos del sistema. Mantiene la consistencia entre un diseño y su implementación.

19 Modelación Visual de Software Casos de uso Diagramas de estado Diagramas de secuencia de actividades Diagramas de clases

20 Verificación de la Calidad del Software Crea pruebas para cada escenario (casos de uso) para asegurar que todos los requerimientos están propiamente implementados. Verifica la calidad del software con respecto a los requerimientos basados en la confiabilidad, funcionalidad, desempeño de la aplicación y del sistema. Prueba cada iteración

21 Control de Cambios del Software Controlar, llevar un registro y monitorear cambios para permitir un desarrollo iterativo. Establece espacios de trabajo seguros para cada desarrollador Provee aislamiento de cambios hechos en otros espacios de trabajo Controla todos los artefactos de software – modelos, código, documentos, etc… ALERT REPORT Administración de Espacios de Trabajo Desarrollo en Paralelo Administración de Construcción Integración de Proceso

22 Control de Cambios del Software Forma de controlar los artefactos producidos por las personas que trabajan en el proyecto. Algunos problemas habituales: Actualizaciones simultáneas Múltiples versiones RUP da guías para: Desarrollos en paralelo Automatizar la construcción Administrar defectos

23 Estructura de RUP El proceso puede describirse en dos dimensiones, o a lo largo de dos ejes: El eje horizontal representa tiempo y muestra el aspecto dinámico del proceso, expresado en términos de ciclos, fases, iteraciones, y metas. El eje vertical representa el aspecto estático del proceso; como está descrito en términos de actividades, artefactos, trabajadores y flujos de trabajo.

24 Estructura de RUP Administración Ambiente Modelación de Negocios Implementación Prueba Análisis y Diseño Iteración(es) Preliminar Iter. #1 Fases Flujos de Trabajo de Procesos Iteraciones Flujos de Trabajo de Soporte Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Desarrollo Admin. Configuración Requerimientos Elaboración Transición InicioConstrucción Contenido

25 Fases en RUP Inicio – Define el alcance del proyecto Elaboración – Plan del proyecto, especificación de características, arquitectura base Construcción – Construir el producto Transición – Transición del producto a la comunidad del usuario InicioElaboraciónConstrucciónTransición Tiempo Metas Principales

26 Fase de Inicio Propósito Especificar el alcance del proyecto Resultado Una visión general de los requerimientos del proyecto, i.e., los requerimientos principales Un modelo inicial de casos de uso Un caso de negocios inicial, incluyendo: Evaluación inicial de riesgos Una estimación de los recursos requeridos

27 Ejemplo de Diagrama de Caso de Uso de Negocios Caso de Negocios: modelar la empresa (como funciona la empresa a la que se le va a desarrollar el software)

28 Fase de Elaboración Propósito Analizar el dominio del problema Establecer una buena arquitectura Desarrollar un plan de proyecto Eliminar los elementos de mayor riesgo para el desarrollo exitoso del proyecto Resultado Un modelo del dominio y de casos de uso 80% completo Requerimientos suplementarios que capturen los requerimientos no funcionales y cualesquiera requerimientos que no estén asociados con un caso de uso específico Una lista de riesgos revisada

29 Fase de Construcción Propósito Desarrollar incrementalmente el producto de software completo el cual estará listo para ser transferido al usuario Productos Un modelo completo de diseño y casos de uso Liberaciones de productos ejecutables de funcionalidad incremental Documentación de usuario Una liberación “beta” del producto

30 Fase de Transición Hacer la transición final del producto de software al usuario Productos Liberaciones ejecutables de producto “Pruebas beta” para validar el nuevo sistema vs. las expectaciones del usuario Manuales de usuario actualizados Documentación de desarrollo actualizada Está el usuario satisfecho? Gastos reales de los recursos vs. Gastos previstos  Aceptables?

31 Iteraciones Cada fase en RUP puede descomponerse en iteraciones. Una iteración es un ciclo de desarrollo completo dando como resultado una entrega de producto ejecutable (interna o externa) InicioElaboraciónConstrucciónTransición Liberaciones externasinternasiteraciones

32 Noción de Proceso Trabajador/Quién? Diseñador Actividad/Cómo? Diseño de Casos de uso Artefacto/Qué? Paquete de Caso de Uso Caso de Uso responsable de

33 Modelos y Flujos de Trabajo Una mera enumeración de todos los trabajadores, actividades y artefactos no constituyen un proceso. Se necesita una forma de describir secuencias significativas que produzcan algún resultado válido, y que muestre la interacción entre trabajadores. Un flujo de trabajo es una secuencia de actividades que producen un resultado de valor observable. En términos de UML pueden ser expresados como un diagrama de secuencia, un diagrama de colaboración, o como un diagrama de actividad. Los grupos de trabajo agrupan actividades en forma lógica


Descargar ppt "NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición."

Presentaciones similares


Anuncios Google