s04 - Paradigma de desarrollo fundamentado en modelado
Upcoming SlideShare
Loading in...5
×
 

s04 - Paradigma de desarrollo fundamentado en modelado

on

  • 4,354 views

Diapositivas de la sesión 04: taller sobre la construcción de soluciones basadas en desarrollo de modelos

Diapositivas de la sesión 04: taller sobre la construcción de soluciones basadas en desarrollo de modelos

Statistics

Views

Total Views
4,354
Slideshare-icon Views on SlideShare
4,349
Embed Views
5

Actions

Likes
1
Downloads
299
Comments
0

1 Embed 5

http://www.slideshare.net 5

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    s04 - Paradigma de desarrollo fundamentado en modelado s04 - Paradigma de desarrollo fundamentado en modelado Presentation Transcript

    • 10/09/2009
      Universidad del Cauca
      Departamento de Telemática
      PROCESO UNIFICADO (UP)
      Ambientes de Desarrollo
    • Definición de Metodología
      • Es una forma explícita de estructurar el pensamiento y las acciones.
      • Contienen modelos y reflejan perspectivas particulares de la realidad basándose en un conjunto de paradigmas filosóficos.
      • Debería señalarnos “qué” pasos tomar y “cómo” llevarlos a cabo, pero más importante es definir las razones del “por qué” esos pasos se deben tomar en ese orden.
    • A tener en cuenta...
      • Las metodologías siempre reflejan el punto de vista de sus creadores
      • Los usuarios de las metodologías las interpretan según su punto de vista
      • Un autor nunca menciona las debilidades de su creación
    • Requisitos
      y Análisis
      Diseño
      Implementación
      Pruebas
      Mantenimiento
      Modelos y estilos 1/4
    • Recolección
      y refinamiento de
      requisitos
      Producto
      Diseño
      rápido
      Refinamiento
      del prototipo
      Construcción
      del prototipo
      Evaluación del
      prototipo por
      el cliente
      Modelos y estilos 2/4
    • Req
      Req
      Req
      Ana
      Ana
      Ana
      Dis
      Dis
      Dis
      Cod
      Cod
      Cod
      Pru
      Pru
      Pru
      Modelos y estilos 3/4
    • PROGRESO
      A TRAVÉS
      DETERMINAR
      OBJETIVOS,
      ALTERNATIVAS Y
      RESTRICCIONES
      DE LAS ITERACIONES
      EVALUAR ALTERNATIVAS,
      IDENTIFICAR Y
      RESOLVER RIESGOS
      Análisis de riesgos
      Análisis de riesgos
      Análisis de riesgos
      Prototipo
      operativo
      Prototipo 3
      An.
      Riesgo.
      Proto-
      tipo 1
      Prototipo 2
      -
      REVISIÓN
      Plan de
      requerimientos
      Plan de ciclo
      de vida
      Simulaciones, modelos,
      pruebas comparativas
      .
      Concepto de
      operación
      Requerimientos
      de software
      Diseño del
      producto
      Diseño
      detallado
      Plan de
      desarrollo
      Validación de
      requerimientos
      Codificar
      Plan de integración
      y prueba
      Diseño de validación
      y verificación
      Prueba de
      unidad
      PLANIFICAR SIGUIENTE
      FASE
      Prueba de
      integración
      Prueba de
      aceptación
      -
      Explotación
      DESARROLLAR, VERIFICAR
      PRODUCTO DE SIGUIENTE NIVEL
      Modelos y estilos 4/4
    • RUP
      Proceso Unificado de Rational
      Proceso de Desarrollo de Software soportado en el Lenguaje Unificado de Modelado, y que es iterativo, centrado en la arquitectura y dirigido por casos de uso
    • Orígenes
      Método Ericsson
      Método de
      Rational
      Proceso Objectory
      UML
      Otras Fuentes
      Proceso Objectory de Rational
      Proceso Unificado de Rational
    • Principios del RUP
      • Desarrollo Iterativo del Software,
      • Administración de Requerimientos,
      • Uso de Arquitecturas Basadas en Componentes,
      • Modelado Visual del Software,
      • Verificación de la Calidad del Software,
      • Control de Cambios.
    • Principios o mejores prácticas del RUP
      Administración de requisitos
      Desarrolloiterativo
      Modelamientovisual
      Verificación dela calidad
      Arquitecturas
      con componentes
      Control de cambios
    • Desarrollo iterativode aplicaciones
      Dada la complejidad de las aplicaciones y programas actuales, es posible hacer de manera secuencial la definición completa del problema, diseñar la solución completa, construir la aplicación y por probarla.
      El descubrimiento de faltas de conformidad con los requisitos en fases posteriores de diseño dan como resultado un aumento en los costos y/ó la cancelación del proyecto.
      El tiempo y dinero gastados en la implementación de un
      diseño fallido, son no recuperables.
    • Requisitos
      Análisis y Diseño
      Implementación
      Evaluación
      Pruebas
      Desarrollo Iterativo
      Cada iteraciónproduce un producto ejecutable
    • Características deldesarrollo iterativo
      Permite un entendimiento incremental del problema a través de refinamientos sucesivos.
      Posibilita una fácil interacción y 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.
    • Administración de Requisitos
      Elicitar, 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.
    • Arquitectura basadaen componentes
      Se enfoca en el rápido desarrollo de una arquitectura ejecutable robusta, con las siguientes características:
      resistente al cambio mediante el uso de interfaces bien definidas,
      intuitivamente comprensible,
      promueve un reuso más efectivo de código,
      es derivada a partir de los casos de uso más importantes.
    • Modelación visualde aplicaciones
      Captura la estructura y comportamiento de arquitecturas y componentes.
      Muestra cómo encajan de forma conjunta los elementos del sistema.
      Mantiene la consistencia entre un diseño y su implementación.
      Promueve una comunicación no ambigua entre participantes.
    • Verificación de la calidadde las aplicaciones
      Crea pruebas para cada escenario para asegurar que todos los requisitos están propiamente implementados.
      Verifica la calidad de la aplicación con respecto a los requisitos basados en la confiabilidad, funcionalidad, desempeño de la aplicación y del sistema.
      Prueba cada iteración
      Los problemas de las aplicaciones son de 200 a 500 veces más
      costosos de encontrar y reparar después del desarrollo.
    • Control de cambiosde las aplicaciones
      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…
    • Características
      Dirigido por Casos de Uso
      Centrado en Arquitectura
      Iterativo e incremental
    • Dirigido por Casos de Uso 1/2
      • Se centra en la funcionalidad que el sistema debe poseer para satisfacer las necesidades de un usuario (persona, sistema externo, dispositivo) que interactúa con él
      • Casos de uso como el hilo conductor que orienta las actividades de desarrollo
    • Dirigido por Casos de Uso 2/2
    • Centrado en la Arquitectura 1/2
      • Describe diferentes vistas del sistema en construcción
      • Incluye los aspectos estáticos y dinámicos más significativos
      • Plataforma en la que va a operar
      • Reutilización, sistemas heredados
      • Requisitos funcionales y no funcionales
    • Centrado en la Arquitectura 2/2
    • Relación Casos de Uso y Arquitectura
      La función
      Casos de Uso
      La forma
      Arquitectura
    • Registrarse al servicio
      Ver Video
      Visitante
      Buscar Videos
      Gestionar Videos
      Suscriptor
      Administrador
      Modificar Información
      Gestionar Suscriptores
      Ejemplo de Caso de Uso (SVV)
    • Java applet
      JMF
      java.net
      Browser
      HTML Pages
      HTTP
      Java Server Pages
      JServer
      J2EE
      Apache
      Web Server
      Oracle8i
      Videos
      Business objects
      Java Beans
      Ejemplo de Arquitectura (SVV)
    • Proceso Iterativo e Incremental
      • Descomposición de un proyecto grande en mini-proyectos
      • Cada mini-proyecto es una iteración
      • Las iteraciones deben estar controladas
      • Cada iteración trata un conjunto de casos de uso
    • RUP - terminología 1/3
      Ciclo: cada ciclo una nueva versión del
      producto
      Fase: Etapas de un ciclo que finalizan en un HITO
      Iteración: Proceso de ingeniería sobre una funcionalidad limitada del sistema
    • RUP - terminología 2/3
      Rol: Definición del comportamiento y responsabilidades de los participantes
      Actividad: Unidad de trabajo que puede ejecutar un individuo en un rol específico
      Artefacto: Pieza de información producida, modificada y utilizada en un proceso
    • RUP - terminología 3/3
      Flujo de Trabajo: Forma de describir significativamente la secuencias de actividades que producen resultados y las interacciones entre cargos
      Hito: Punto en el tiempo en donde se evalúan objetivos logrados y se pueden tomar decisiones críticas
    • Organización por Componentes
      Flujos de trabajo yactividades
      Artefactos
      Trabajadores
      Agrupan las actividades de acuerdo a su naturaleza
      Representan la estructura del Proceso.
      Expresados en términos de:
    • Diseño de
      Casos de uso
      Caso de Uso
      Paquete deCaso de Uso
      Idea del proceso
      Trabajador
      ¿Quién?
      Actividad
      ¿Cómo?
      Describe una unidad de trabajo que puede ser asignada a un trabajador.
      Rol que puede ser desempeñado por un individuo o conjunto de individuos en la organización de desarrollo
      Diseñador
      Artefacto
      ¿Qué?
      responsable de
      Pieza de información que es producida, modificada, ó utilizada por un proceso
    • 10/09/2009
      Organización por
      Organización en el tiempo
      Componentes
      FASES
      COMPONENTES DEL PROCESO
      Modelado de la Organización
      Captura de Requisitos
      Gestación
      Preparación
      Construcción
      Transición
      Análisis
      Diseño
      Implementación
      Pruebas
      Puesta en Servicio
      COMPONENTES DE SOPORTE
      Gestión de Configuración y Cambios
      Gestión del Proyecto
      Entorno
      Prep.#1
      Prep.
      #2
      Const.
      #1
      Const.
      #2
      Const.
      #N
      Trans.
      #1
      Trans.
      #2
      Inicial
      Iteraciones
      Flujos de Trabajo 1/2
    • 10/09/2009
      Satisfacción
      Del Cliente
      Alcances yObjetivos
      Versión Beta
      Arquitectura
      Inicio
      Elaboración
      Construcción
      Transición
      Fases:
      Iteración
      Iteración
      Iteración
      Iteración
      Iteraciones:
      Requerimientos
      Análisis y Diseño
      EntregasInternas
      Codificación
      Disciplinas:
      Prueba
      Admin. Proyecto
      Gestión Configuracióny Cambio
      Flujos de Trabajo 2/2
    • 10/09/2009
      Trabajadores
    • 10/09/2009
      Requisitos
      Requisitos
      Análisis
      Análisis
      Diseño
      Diseño
      Relación Temporal
      Implementación
      Implementación
      Pruebas
      Pruebas
      Trabajadores y flujos de trabajo 1/2
      Estructurar el Modelo
      de Casos de Uso
      Planear
      prueba
      Diseñar
      prueba
      Evaluar
      prueba
      Encontrar actores
      y casos de uso
      Detallar un
      caso de uso
      Integrar
      sistema
      Construir prototipo
      de Interfaz de usuario
      Realizar pruebas
      de integración
      Priorizar
      casos de uso
      Implementación de
      la arquitectura
      Analizar la
      arquitectura
      Realizar pruebas
      de sistema
      Diseño de la
      arquitectura
      Analizar un
      caso de uso
      Diseñar un
      caso de uso
      actividades
      Analizar
      una clase
      Implementar
      una clase
      Implementar
      pruebas
      Diseñar
      una clase
      Diseñar un
      subsistema
      Analizar
      un paquete
      Implementar
      un subsistema
      Realizar pruebas
      de unidad
    • 10/09/2009
      Estructurar el Modelo
      de Casos de Uso
      Planear
      prueba
      Diseñar
      prueba
      Evaluar
      prueba
      Encontrar actores
      y casos de uso
      Analista
      Especificador
      Diseñador
      Arquitecto
      Casos de Uso
      Componentes
      Pruebas
      Integrador
      Integración
      Sistema
      Detallar un
      caso de uso
      Integrar
      sistema
      Construir prototipo
      de Interfaz de usuario
      Realizar pruebas
      de integración
      Priorizar
      casos de uso
      Implementación de
      la arquitectura
      Analizar la
      arquitectura
      Realizar pruebas
      de sistema
      Diseño de la
      arquitectura
      Analizar un
      caso de uso
      Diseñar un
      caso de uso
      Requisitos
      Análisis
      Analizar
      una clase
      Implementar
      una clase
      Implementar
      pruebas
      Diseñar
      una clase
      Diseñar un
      subsistema
      Diseño
      Relación Temporal
      Implementación
      Analizar
      un paquete
      Implementar
      un subsistema
      Realizar pruebas
      de unidad
      actividades
      Pruebas
      Trabajadores y flujos de trabajo 2/2
    • 10/09/2009
      Aplicación del RUP
      Herramientas
      Proceso
      Producto
      Proyecto
      Personas
    • 10/09/2009
      Herramientas de Apoyo al Proceso
      • Gestión de Requisitos,
      • Modelado Visual,
      • Herramientas de Programación,
      • Aseguramiento de la Calidad,
      • Control de versiones, gestión de la configuración, seguimiento de defectos, documentación, gestión del proyecto y automatización de procesos.
    • Variantes del UP
    • ¿Preguntas?¿Observaciones?