miércoles, 16 de diciembre de 2015

METODOLOGÍA RUP


1.    Contenido:

v Definición:

Es una metodología cuyo fin es entregar un producto de software. Se estructura todos los procesos y se mide la eficiencia de la organización.
Es un proceso de desarrollo de software el cual utiliza 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 es un conjunto de metodologías adaptables al contexto y necesidades de cada organización.

v Características:

El RUP es un producto de Rational (IBM). Se caracteriza por ser iterativo e incremental, estar centrado en la arquitectura y guiado por los casos de uso. Incluye artefactos (que son los productos tangibles del proceso como por ejemplo, el modelo de casos de uso, el código fuente, etc.) y roles (papel que desempeña una persona en un determinado momento, una persona puede desempeñar distintos roles a lo largo del proceso).

·    Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo).
·         Pretende implementar las mejores prácticas en Ingeniería de Software.
·         Desarrollo iterativo.
·         Administración de requisitos.
·         Uso de arquitectura basada en componentes.
·         Control de cambios.
·         Modelado visual del software.
·         Verificación de la calidad del software.




vCiclo de Desarrollo:



Esfuerzo en actividades según fase del proyecto
El ciclo de vida RUP es una implementación del Desarrollo en espiral. Fue creado ensamblando los elementos en secuencias semi-ordenadas. El ciclo de Vida organiza las tareas en fases e iteraciones.
RUP divide el proceso en cuatro fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto y en las que se hace un mayor o menor hincapié en las distintas actividades. En la Figura muestra cómo varía el esfuerzo asociado a las disciplinas según la fase en la que se encuentre el proyecto RUP.
Las primeras iteraciones (en las fases de Inicio y Elaboración) se enfocan hacia la comprensión del problema y la tecnología, la delimitación del hámbito del proyecto, la eliminación de los riesgos críticos, y al establecimiento de una baseline (Linea Base) de la arquitectura.
Durante la fase de inicio las iteraciones hacen mayor énfasis en actividades de modelado del negocio y de requerimientos.
En la fase de elaboración, las iteraciones se orientan al desarrollo de la baseline de la arquitectura, abarcan más los flujos de trabajo de requerimientos, modelo de negocios (refinamiento), análisis, diseño y una parte de implementación orientado a la baseline de la arquitectura.
En la fase de construcción, se lleva a cabo la construcción del producto por medio de una serie de iteraciones.
Para cada iteración se selecciona algunos Casos de Uso, se refina su análisis y diseño y se procede a su implementación y pruebas. Se realiza una pequeña cascada para cada ciclo. Se realizan tantas iteraciones hasta que se termine la implementación de la nueva versión del producto.
En la fase de transición se pretende garantizar que se tiene un producto preparado para su entrega a la comunidad de usuarios.
Como se puede observar en cada fase participan todas las disciplinas, pero que dependiendo de la fase el esfuerzo dedicado a una disciplina varía.





Al terminar cada fase se realiza una evaluación para determinar si se ha cumplido o no con los objetivos de la misma.
Las fases son:
-       Inicio (Inception)
-       Elaboración
-       Construcción
-       Transición.

Inicio (Inception)

El objetivo general de esta fase es establecer un acuerdo entre todos los interesados acerca de los objetivos del proyecto.
Es significativamente importante para el desarrollo de nuevo software, ya que se asegura de identificar los riesgos relacionados con el negocio y requerimientos.
Para proyectos de mejora de software existente, esta fase es más breve y se centra en asegurar la viabilidad de desarrollar el proyecto.

Elaboración

El objetivo en esta fase es establecer la arquitectura base del sistema para proveer bases estables para el esfuerzo de diseño e implementación en la siguiente fase.
La arquitectura debe abarcar todas las consideraciones de mayor importancia de los requerimientos y una evaluación del riesgo.

Construcción

El objetivo de la fase de construcción es clarificar los requerimientos faltantes y completar el desarrollo del sistema basados en la arquitectura base.
Vista de cierta forma esta fase es un proceso de manufactura, en el cual el énfasis se torna hacia la administración de recursos y control de la operaciones para optimizar costos, tiempo y calidad.

Transición

Esta fase se enfoca en asegurar que el software ester disponible para sus usuarios.
Se puede subdividir en varias iteraciones, además incluye pruebas del producto para poder hacer el entregable del mismo, así como realizar ajuste menores de acuerdo a ajuste menores propuestos por el usuario.
En este punto, la retroalimentación de los usuarios se centra en depurar el producto, configuraciones, instalación y aspectos sobre utilización.


v Ejemplos:

El Proyecto es el desarrollo de un sistema para la gestión de artículos deportivos de una empresa del sector de ventas de deportes a clientes tanto a mayoristas como a minoristas. Se desarrollará bajo el lenguaje de programación Java, teniendo que soportar tanto acceso a una base de datos MYSQL. Plantillas Para facilitar el desarrollo de este proyecto se utilizaron Como soporte las siguientes plantillas basadas en la metodología RUP y también los documentos de información adicional de la empresa. Introducción Gestión del Proyecto Modelado del Negocio Requisitos Análisis/Diseño Implementación Prueba.

v Ventajas:

·         Reconoce que las necesidades del usuario y sus requerimientos no se pueden definir completamente al principio.
·         Permite evaluar tempranamente los riesgos en lugar de descubrir problemas en la integración final del sistema.
·         Reduce el costo del riesgo a los costos de un solo incremento.
·         Acelera el ritmo del esfuerzo de desarrollo en su totalidad debido a que los desarrolladores trabajan para obtener resultados claros  acorto plazo.
·         Distribuye la carga de trabajo a lo largo del tiempo del proyecto ya que todas las disciplinas colaboran en cada interacción.
·         Facilita la reutilización del código teniendo en cuenta que se realizan revisiones en las primeras iteraciones lo cual  además permite que se aprecien oportunidades de mejoras en el diseño.


v Desventajas:

·         Pretende prever y tener todo el control de antemano.
·         Modelo general trabajo a adicional.
·         Genera muchos costos.
·         No recomendable para proyectos pequeños.

 


2.    Resumen:

METODOLOGÍA RUP: El Rational Unified Process o Proceso Unificado de Racional. Es un proceso de ingeniería de software que suministra un enfoque para asignar tareas y responsabilidades dentro de una organización de desarrollo .Su objetivo es asegurar la producción de software de alta calidad que satisfaga la necesidad del usuario final dentro de un tiempo y presupuesto previsible. Es una metodología de desarrollo iterativo enfocada hacia “los casos de uso, manejo de riesgos y el manejo de la arquitectura”

3.    Summary:

RUP Methodology: Rational Unified Process and the Rational Unified Process. It is a process engineering software that provides an approach to assigning tasks and responsibilities within a development organization .Its aim is to ensure the production of high quality software that meets the needs of the end user within a foreseeable time and budget. It is an iterative development methodology focused on “use cases, risk management and management of architecture"

4.    Recomendaciones:

Excepto en casos singulares, el software (que incluye al firware de los computadores) nunca es propiedad del usuario. La adquisición del programa es en realidad la adquisición solamente del derecho de uso del programa, la licencia, bajo termino definidos por el fabricante. El uso de software fuera de esos términos constituye un delito contra la propiedad intelectual.
Debe instalarse solamente el software necesario para las funciones esperadas del equipo. En la mayoría de los casos, eso se limita al software básicos sistemas operativos (usualmente Windows 95), aplicativos de oficina y navegación (usualmente Office 97, Internet Explorer 4.01) y el cliente de red (BackOffice 4). Todo computador adquirido para la universidad debe contar con licencias para software mencionado (o su equivalente en plataformas Macintosh o Unix), en esas versiones o más recientes. Las licencias deben corresponder a las versiones, ya que no se pueden instalar una versión más reciente con una licencia de versiones anteriores.



 5. Conclusiones:

El desarrollo del software y la programación es uno de los pilares fundamentales de la informática y al cual se dedican muchas horas de esfuerzos en empresas, colegios, academias y universidades.
Conforme a la tecnología va avanzando, van apareciendo nuevas soluciones, nuevas formas de programación, nuevos lenguajes y un sin fin de herramientas que intentan realizar el trabajo del desarrollador un poco más fácil.
La programación orientadas a objetos o los compiladores basados en máquinas virtuales (en muchos casos, multiplataforma), también a sus puestos unas renovación en la manera de programar.
Microsoft como empresa desarrolladora de software, es consciente de lo importante que es hacer buenos desarrollos y lo complicado que es; por eso, intenta aportar las mejores soluciones al mercado. En la actualidad la sociedad se encuentra en una época de transición, que se encamina hacia un nuevo estilo de programación basada en estándares y para ello Microsoft propone la plataforma .NET.


6. Apreciación del Equipo:

RUP puede utilizarse:

-En proyectos de nuevos productos de software
–En ciclos de desarrollo subsecuentes.

Consideraciones que alteran cuándo y cómo usar partes de RUP:

–El ciclo de vida del proyecto
–Los objetivos del negocio, la visión, el alcance y los riesgos
–El tamaño del esfuerzo de desarrollo

7. Glosario de Términos:

ü  Previsible: AdjQue puede ser previsto o conocido con antelación por medio de ciertas señales o indicios:

ü  Iterative: Adj. Que se repite o se ha repetido muchas veces. Reiterativo, repetitivo.


ü  Suministrar:  Abastecer, proveer, surtir.

ü  Implementacion: Acción y efecto de poner en funcionamiento una determinada cosa.


8.    Bibliografía o Linkografia:











Link de Diapocitiva


















































No hay comentarios:

Publicar un comentario