3/11/09

Desarrollo de Software Orientado a Objeto usando UML



¿Qué es un Proceso de Desarrollo de SW?

Define Quién debe hacer Qué, Cuándo y Cómo debe hacerlo

No existe un proceso de software universal. Las características de cada proyecto (equipo de desarrollo, recursos, etc.) exigen que el proceso sea configurable

Rational Unified Process (RUP) 
El Proceso Unificado Racional (Rational Unified Process en inglés, habitualmente resumido como RUP) es un proceso de desarrollo de 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.

El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologías adaptables al contexto y necesidades de cada organización.

También se conoce por este nombre al software desarrollado por Rational, hoy propiedad de IBM, el cual incluye información entrelazada de diversos artefactos y descripciones de las diversas actividades. Está incluido en el Rational Method Composer (RMC), que permite la personalización de acuerdo a necesidades.

Originalmente se diseñó un proceso genérico y de dominio público, el Proceso Unificado, y una especificación más detallada, el Rational Unified Process, que se vendiera como producto independiente.

Dos dimensiones

Fases e Hitos (Milestones)

Elementos en RUP 
  • Workflows (Disciplinas)

    Workflows Primarios
  1. Business Modeling (Modado del Negocio)
  2. Requirements (Requisitos)
  3. Analysis & Design (Análisis y Diseño)
  4. Implementation (Implementación)
  5. Test (Pruebas)
  6. Deployment (Despliegue)

    Workflows de Apoyo
  1. Environment (Entorno)
  2. Project Management (Gestión del Proyecto)
  3. Configuration & Change Management (Gestión de Configuración y Cambios)

Workers

    Analyst workers
  • Business-Process Analyst
  • Business Designer
  • Business-Model Reviewer
  • Requirements Reviewer
  • System Analyst
  • Use-Case Specifier
  • User-Interface Designer
    Developer workers
  • Architect
  • Architecture Reviewer
  • Capsule Designer
  • Code Reviewer
  • Database Designer
  • Design Reviewer
  • Designer
  • Implementer
  • Integrator
Testing professional workers
  • Test Designer
  • Tester
Manager workers
  • Change Control Manager
  • Configuration Manager
  • Deployment Manager
  • Process Engineer
  • Project Manager
  • Project Reviewer
Other workers
  • Any Worker
  • Course Developer
  • Graphic Artist
  • Stakeholder
  • System Administrator
  • Technical Writer
  • Tool Specialist

Artefactos
Resultado parcial o final que es producido y usado durante el proyecto. Son las entradas y salidas de las actividades

  • Un artefacto puede ser un documento, un modelo o un elemento de modelo

Conjuntos de Artefactos
  • Business Modeling Set
  • Requirements Set
  • Analysis & Design Set
  • Implementation Set
  • Test Set
  • Deployment Set
  • Project Management Set
  • Configuration & Change Management Set
  • Environment Set

 Características Esenciales de RUP 
  • Proceso Dirigido por los Casos de Uso
  • Proceso Iterativo e Incremental
  • Proceso Centrado en la Arquitectura

Proceso dirigido por los Casos de Uso




Proceso Iterativo e Incremental
  • El ciclo de vida iterativo se basa en la evolución de prototipos ejecutables que se muestran a los usuarios y clientes
  • En el ciclo de vida iterativo a cada iteración se reproduce el ciclo de vida en cascada a menor escala.
  • Los objetivos de una iteración se establecen en función de la evaluación de las iteraciones precedentes.
  • Las actividades se encadenan en una mini-cascada con un alcance limitado por los objetivos de la iteración


Cada iteración comprende:

  • Planificar la iteración (estudio de riesgos)
  • Análisis de los Casos de Uso y escenarios
  • Diseño de opciones arquitectónicas
  • Codificación y pruebas. La integración del nuevo código con el existente de iteraciones anteriores se hace gradualmente durante la construcción
  • Evaluación de la entrega ejecutable (evaluación del prototipo en función de las pruebas y de los criterios definidos)
  • Preparación de la entrega (documentación e instalación del prototipo)


Proceso Centrado en la Arquitectura 

Arquitectura de un sistema es la organización o estructura de sus partes más relevantes

Un arquitectura ejecutable es una implementación parcial del sistema, construida para demostrar algunas funciones y propiedades

RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo

Fases del Ciclo de Vida

El ciclo de vida consiste en una serie de ciclos, cada uno de los cuales produce una nueva versión del producto

Cada ciclo está compuesto por fases y cada una de estas fases está compuesta por un número de iteraciones

Las fases son:
  • Inicio o Estudio de oportunidad
  • Elaboración
  • Construcción
  • Transición
Inicio o Estudio de oportunidad (inception)
  • Define el ámbito y objetivos del proyecto
  • Se define la funcionalidad y capacidades del producto

Elaboración
  • Tanto la funcionalidad como el dominio del problema se estudian en profundidad
  • Se define una arquitectura básica
  • Se planifica el proyecto considerando recursos disponibles


Construcción
  • El producto se desarrolla a través de iteraciones donde cada iteración involucra tareas de análisis, diseño e implementación
  • Las fases de estudio y análisis sólo dieron una arquitectura básica que es aquí refinada de manera incremental conforme se construye (se permiten cambios en la estructura)
  • Gran parte del trabajo es programación y pruebas
  • Se documenta tanto el sistema construido como el manejo del mismo
  • Esta fase proporciona un producto construido junto con la documentación

Transición
  • Se libera el producto y se entrega al usuario para un uso real
  • Se incluyen tareas de marketing, empaquetado atractivo, instalación, configuración, entrenamiento, soporte, mantenimiento, etc.
  • Los manuales de usuario se completan y refinan con la información anterior
  • Estas tareas se realizan también en iteraciones

No hay comentarios:

Publicar un comentario