Curso Uml 3.1 Modelos De Desarrollo De Software

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

1 comments

Comments 1 - 1 of 1 previous next Post a comment

Post a comment
Embed Video
Edit your comment Cancel

9 Favorites

Curso Uml 3.1 Modelos De Desarrollo De Software - Presentation Transcript

  1. Curso UML Emilio Avilés Ávila http://www.techmi.es
  2. Workshop (20 horas) Workshop UML y Proceso Unificad para empresas y profesionales
  3. Temario
    • Introducción
    • Diagramas
    • Proceso Unificado
      • Modelo de proceso de desarrollo
      • Proceso unificado
  4. Tema 3 Proceso Unificado de desarrollo software
  5. Objetivos
    • Introducción
    • Diagramas
    • Proceso Unificado
      • Modelo de proceso de desarrollo
      • Proceso unificado
    • Definición de modelo de proceso de software.
    • Modelos iniciales.
    • El modelo lineal/ciclo de vida en cascada o secuencial.
    • Procesos evolutivos de software.
    • Ensamblado de componentes.
    • El modelo DRA.
    • El modelo RUP Visión General.
  6. Tema 3.1 Modelo de procesos de ingeniería del software
  7. 3.1 – Modelo de procesos
    • Introducción
      • UML se reconoce como un lenguaje de modelado , no como una metodología o un método.
      • La diferencia es que el lenguaje de modelado es una notación para expresar las ideas de diseño y análisis orientado a Objetos.
      • Un método o proceso software serían los consejos o las líneas a seguir a la hora de realizar el análisis y diseño orientado a objetos.
  8. 3.1 – Modelo de procesos
    • Modelo de proceso del Software
      • Criterios de selección:
        • Tipo de proyecto
        • Métodos y herramientas disponibles
        • Controles a utilizar
        • Productos comprometidos
        • Tendencias en el mercado
        • Tipo de Cliente
        • Madurez del equipo de desarrollo
  9. 3.1 – Modelo de procesos
    • Modelo de proceso del Software
      • Un Modelo adecuado evita…
  10. 3.1 – Modelo de procesos
    • Modelo de proceso del Software
      • Modelos iniciales.
      • El modelo lineal/ciclo de vida en cascada o secuencial.
      • Procesos evolutivos de software.
      • Ensamblado de componentes.
      • El modelo DRA.
      • El modelo RUP Visión General.
  11. 3.1 – Modelo de procesos
    • Modelos iniciales: Codificar-Fijar
      • Usado en los primeros días del desarrollo de software
      • El proceso implicaba
        • Escribir código
        • Fijar o ajustar los problemas en el código
      • Inconvenientes
        • Baja estructura en código
        • Muchos ajustes
        • Tiempo de desarrollo
        • Dependencia a la capacidad del programador
        • Se empleaba en proyectos pequeños
      • Gracias a este método se descubrieron las deficiencias y motivó la evolución en otros métodos
  12. 3.1 – Modelo de procesos
    • Modelos iniciales: Por Etapas
      • Desarrollado en 1956 para enfrentarse con la construcción de SAGE (Semi-AutomatedGroundEnvironment
      • Modelo lineal que considera que cada etapa debe ir después de la anterior.
      • Hace énfasis en que la información que se obtiene en cada etapa es la que se proporciona a la siguiente.
      • Cadena de producción de software.
  13. 3.1 – Modelo de procesos
    • Modelos iniciales: Por Etapas
      • Ventajas
        • Evita pasar a una fase posterior sin tener terminada la actual.
        • Rígidamente dividido.
        • Estructura clara.
      • Inconvenientes
        • Modelo poco productivo.
        • Costo alto de identificación de errores en etapas avanzadas.
        • Sin resultados hasta el final del proceso.
  14. 3.1 – Modelo de procesos
    • Ciclo de vida en cascada
      • También conocido como Ciclo de vida clásico o Modelo lineal
      • Desarrollado en 1970 buscando reducir costes y evolucionando con retroalimentación
      • Modelo más extensamente utilizado y de los más antiguos, en toda la ingeniería del software.
      • Las fases pueden variar en algunos aspectos
  15. 3.1 – Modelo de procesos
    • Ciclo de vida en cascada
      • Ventajas e inconvenientes similares al Modelo por etapas excepto la iteratividad .
      • En ambos modelos:
        • Es difícil plasmar los requisitos.
        • Los proyectos no suelen seguir el flujo secuencial.
        • Infrautilización del personal.
        • El cliente no ve resultados hasta el final del proceso.
  16. 3.1 – Modelo de procesos
    • Modelo orientado a prototipos
      • También conocido como Ciclo de vida por prototipos (CVP) o modelo de construcción de prototipos.
      • Propuesto en 1988.
      • Adecuado cuando se tienen objetivos generales con bajo nivel de requisitos.
      • Se utiliza el prototipo como mecanismo para definir requisitos cuando:
        • el usuario no es capaz de detallar los requisitos de inicio, o
        • el propio equipo técnico tiene dudas de la eficacia de determinadas herramientas, bases de datos, sistemas operativos, lenguajes, etc.
      • Cada prototipo se descarta parcial o totalmente.
  17. 3.1 – Modelo de procesos
    • Modelo orientado a prototipos
  18. 3.1 – Modelo de procesos
    • Modelo orientado a prototipos
      • Ventajas
        • Versión operativa casi desde el inicio.
        • Alta integración del usuario con el proceso de desarrollo.
        • Coste relativamente bajo para cada versión.
        • Cambios de dirección en el desarrollo fáciles de realizar.
      • Inconvenientes
        • El usuario no valora adecuadamente el trabajo.
        • El sistema puede crecer desmedidamente.
        • No aplica ingeniería.
        • Se confunde el producto final con el prototipo.
  19. 3.1 – Modelo de procesos
    • Desarrollo evolutivo de prototipos
      • Muy relacionada con el CVP pero es claramente distinto
      • Diferencia fundamental es que el desarrollo evolutivo busca reemplazar el viejo sistema con uno nuevo y el CVP no.
      • El prototipo se convertirá en el sistema
  20. 3.1 – Modelo de procesos
    • Desarrollo evolutivo de prototipos
      • Ventajas del modelo
        • Versión operativa casi desde el inicio
        • Alta integración del usuario al desarrollo
      • Problemas del modelo
        • El usuario no valora adecuadamente el trabajo
        • El sistema puede crecer desmedidamente
        • No aplica ingeniería
  21. 3.1 – Modelo de procesos
    • Ciclo de vida en espiral
      • Es un modelo evolutivo
        • Versiones incrementales. Durante las ultimas versiones se produce un sistema cada vez más complejo.
        • Cada ciclo define puede definirse como un proyecto.
        • Cada inicio de ciclo presupone que el ciclo anterior está concluido.
        • Cada ciclo permite más de una iteración en la espiral.
        • Adecuado para sistemas grandes.
        • Usa prototipos para disminuir riesgos.
  22. 3.1 – Modelo de procesos
    • Ciclo de vida en espiral
      • Ventajas
        • El cliente evalúa el trabajo en cada ciclo.
        • Se llega al sistema final muy rápido.
        • Se analiza el momento de salirse del ciclo.
      • Inconvenientes
        • Salidas tempranas.
        • Salidas tardías.
        • Difícil convencimiento de clientes grandes.
        • Muy bueno y poco probado.
  23. 3.1 – Modelo de procesos
    • Ensamblado de componentes
      • Orientado a la reutilización de componentes .
      • Los componentes se construyen en base a técnicas orientadas a objetos (cuando no se encuentran en la biblioteca de componentes).
      • Se puede utilizar junto con las técnicas anteriores
  24. 3.1 – Modelo de procesos
    • El Modelo DRA:
      • DRA: Desarrollo Rápido de Aplicaciones
      • Motivación
        • Desarrollos que requieren años y resultan de poca calidad
        • Necesidad de un enfoque que pase de tiempos medidos en años a tiempos medidos en meses
        • El incorporar un mayor número de recursos humanos no incrementa la productividad proporcionalmente
  25. 3.1 – Modelo de procesos
    • El Modelo DRA:
      • Metas
        • Ofrecer productividad 10 veces mayor a la del promedio
        • Ofrecer un conjunto de herramientas y técnicas transferibles a cualquier organización para desarrollar en forma rápida y de manera repetible
        • Que la rapidez y calidad del desarrollo no dependa de gurús
  26. 3.1 – Modelo de procesos
    • El Modelo DRA:
      • Ámbito
        • Aplicable en el desarrollo de aplicaciones de negocios y sistemas de información.
        • No aplicable para el desarrollo de software altamente especializado como el de juegos o simuladores.
  27. 3.1 – Modelo de procesos
    • El Modelo DRA:
      • Características
        • Modelo lineal secuencial orientado a un ciclo rápido de desarrollo.
        • Basado en el empleo de componentes para poder entregar un modelo totalmente operativo en un corto periodo de tiempo.
        • Es fundamental poder modular la aplicación para que cada equipo pueda trabajar en diferentes modelos.
  28. 3.1 – Modelo de procesos
    • El Modelo DRA: Etapas
      • Modelado de gestión : Consiste en determinar los flujos de información para responder a las siguientes preguntas:
        • ¿Que información conduce los procesos?
        • ¿Qué información debe generar?
        • ¿A dónde va esa información?
        • ¿Quién la genera?
      • Modelado de datos : En esta etapa se define los distintos objetos y sus relaciones entre ellos.
      • Modelado de procesos : En ella se definen los distintos procesos que transformaran la información de forma que estos procesos permitan añadir, modificar, borrar y recuperar objetos de datos.
  29. 3.1 – Modelo de procesos
    • El modelo DRA
      • Generación de la aplicación :
        • El DRA se basa en crear software mediante el uso de componentes ya existentes y en el empleo de herramientas automáticas.
      • Prueba :
        • Poca duración debido a que mucho de los componentes ya están probados.
  30. 3.1 – Modelo de procesos
    • El modelo DRA: Equipos
  31. 3.1 – Modelo de procesos
    • Modelo de métodos formales
      • Usa especificación matemática del software.
      • Notación matemática rigurosa.
      • Enfoque a la identificación de problemas
        • Ambigüedad
        • Incompletitud
        • Inconsistencia
  32. 3.1 – Modelo de procesos
    • Proceso Unificado de Rational
      • Basado en casos de uso
      • Centrado en la arquitectura
      • Iterativo e incremental
  33. 3.1 – Modelo de procesos
    • CMM: Modelo de Madurez Capacidad
      • Modelo de referencia desarrollado por el Software Engineering Institute (SEI) ligado a la Universidad de Carnegie-Mellon con la finalidad de:
        • Evaluar la madurez de los procesos de desarrollo de software dentro de una organización
        • Proponer un plan para mejorar los procesos de desarrollo de software en base a una serie de niveles.
  34. 3.1 – Modelo de procesos
    • CMM: Modelo de Madurez Capacidad
      • Premisas generales
        • La calidad de un producto software está determinada, en buena medida, por la calidad del proceso usado para desarrollarlo y mantenerlo.
        • Un proceso software efectivo integra gente adiestrada y motivada con métodos establecidos y herramientas/equipos apropiados.
  35. 3.1 – Modelo de procesos
    • CMM: Conceptos
      • Capacidad de los procesos software
        • Describe el rango de resultados esperados que pueden ser alcanzados siguiendo un proceso de software
        • Proporciona un medio de predicción de resultados esperados en proyectos subsiguientes
      • Rendimiento de los procesos software
        • Representa los resultados reales logrados mediante un proceso software.
      • Por lo tanto, el rendimiento se centra en los resultados alcanzados, mientras que la capacidad se centra en los resultados esperados.
      • Implica un crecimiento potencial de la capacidad de los procesos software.
  36. 3.1 – Modelo de procesos
    • CMM: Conceptos
      • Es ámbito en el que un determinado proceso es explícitamente definido, administrado, medido, controlado y hecho efectivo.
      • La madurez requiere una cultura organizacional y una infraestructura asociada
        • La cultura organizacional es la manera en que se hacen las cosas (desarrolla y mantiene software) en una organización.
        • La infraestructura es el conjunto de estructuras, políticas, estándares, adiestramiento, facilidades y herramientas que emplea una organización para desarrollar software.
      • Una organización madura es aquella en la que sus procesos de software están institucionalizados, siendo efectivos, utilizables y consistentemente aplicados en toda la organización.
  37. 3.1 – Modelo de procesos
    • CMM: Madurez de una organización
  38. 3.1 – Modelo de procesos
    • CMM: Niveles de Madurez
      • La madurez es un indicador de la capacidad del proceso software para lograr sus objetivos
  39. 3.1 – Modelo de procesos
    • CMM: Nivel 1: Inicial
      • Características:
        • Ausencia de gestión en los proyectos.
        • El proceso de software es cambiante e irregular: abandono los planes  dedicación a la codificación y las pruebas.
        • Los planes, estimaciones y calidad son impredecibles.
        • El rendimiento depende de la capacidad individual de los miembros del grupo.
        • Se establecen programas de formación del personal de desarrollo y mantenimiento.
        • Sistema caótico.
      • Resultados:
        • Productividad y calidad escasa.
        • Riesgo máximo.
  40. 3.1 – Modelo de procesos
    • CMM: Nivel 2: Repetible
      • Características:
        • Los procesos de software son estables y repetibles.
        • La organización establece políticas de gestión de proyectos y procesos.
        • La planificación se basa en proyectos similares.
        • Existen estándares definidos y exigidos.
        • El proceso se enmarca en un sistema de gestión de proyectos basado en experiencias pasadas.
        • Se establecen los proceso de gestión del proyecto para hacer seguimiento de la panificación del coste y de la funcionalidad.
      • Resultados:
        • Productividad y calidad baja.
        • Riesgo alto.
  41. 3.1 – Modelo de procesos
    • CMM: Nivel 3: Definido
      • Características:
        • Los procesos son definidos: estandarizados, documentados e institucionalizados.
        • Los procesos de ingeniería y gestión son estables y se integran en uno.
        • Existe un entendimiento común de los procesos, funciones y responsabilidades.
        • La organización mantiene un grupo dedicado a la definición, mejora y difusión del proceso de ingeniería de software.
      • Resultados :
        • Productividad y calidad media.
        • Riesgo medio.
  42. 3.1 – Modelo de procesos
    • CMM: Nivel 4: Gestionado
      • Características:
        • Los procesos son medibles o cuantificables.
        • La productividad y la calidad se miden y registran para cada proyecto de la organización.
        • Se fijan metas cuantitativas de la calidad del software.
        • Mediante el uso de métricas de software, se crea una base cuantitativa para la evaluación y estimación en proyectos futuros.
      • Resultados :
        • Productividad y calidad alta.
        • Riesgo mínimo.
  43. 3.1 – Modelo de procesos
    • CMM: Nivel 5: Optimizado
      • Características:
        • Los procesos se mejoran continuamente.
        • La organización busca lograr el nivel máximo de capacidad.
        • Se incorporan nuevas tecnologías y métodos para mejorar los procesos.
      • Resultados :
        • Productividad y calidad total.
        • Riesgo nulo.
  44. 3.1 – Modelo de procesos
    • Niveles de madurez:
      • Consecuencia de incremento en niveles
        • La visibilidad de un proyecto (¿En que parte del proyecto estamos?) se incrementa a medida que se incrementa el nivel de madurez.
        • La diferencia entre resultados deseados y alcanzados decrece a medida que se incrementa el nivel de madurez.
        • Los tiempos de desarrollo decrecen y la productividad y calidad aumentan en los niveles de mayor madurez.
  45. 3.1 – Modelo de procesos
    • Niveles de madurez:
      • Procesos o áreas claves por nivel
  46. 3.1 – Modelo de procesos
    • Niveles de madurez:
      • Consecuencias en una organización de sucesos comunes:
  47. Conclusiones
    • Introducción
    • Diagramas
    • Proceso Unificado
      • Modelo de proceso de desarrollo
      • Proceso unificado
    • Definición de modelo de proceso de software.
    • Modelos iniciales.
    • El modelo lineal/ciclo de vida en cascada o secuencial.
    • Procesos evolutivos de software.
    • Ensamblado de componentes.
    • El modelo DRA.
    • El modelo RUP Visión General.

+ Emilio Aviles AvilaEmilio Aviles Avila, 5 months ago

custom

3487 views, 9 favs, 1 embeds more stats

Capitulo 3.1 Modelos de desarrollo software del wor more

More info about this document

© All Rights Reserved

Go to text version

  • Total Views 3487
    • 3476 on SlideShare
    • 11 from embeds
  • Comments 1
  • Favorites 9
  • Downloads 0
Most viewed embeds
  • 11 views on http://techmi.es

more

All embeds
  • 11 views on http://techmi.es

less

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel
File a copyright complaint
Having problems? Go to our helpdesk?

Categories