stringtranslate.com

Proceso racional unificado

El proceso unificado racional ( RUP ) es un marco de proceso de desarrollo de software iterativo creado por Rational Software Corporation, una división de IBM desde 2003. [1] RUP no es un proceso prescriptivo concreto único, sino más bien un marco de proceso adaptable , destinado a ser Diseñado por las organizaciones de desarrollo y los equipos de proyectos de software que seleccionarán los elementos del proceso que sean apropiados para sus necesidades. RUP es una implementación específica del Proceso Unificado .

Historia

Rational Software desarrolló originalmente el proceso unificado racional como un producto de proceso de software. El producto incluye una base de conocimientos con hipervínculos con artefactos de muestra y descripciones detalladas para muchos tipos diferentes de actividades. RUP está incluido en el producto IBM Rational Method Composer (RMC) que permite la personalización del proceso.

A Philippe Kruchten , un experimentado representante técnico de Rational, se le asignó la tarea de dirigir el equipo original de RUP.

Estas versiones iniciales combinaron la amplia experiencia de campo de la organización Rational Software en la creación de sistemas orientados a objetos (denominados por el personal de campo de Rational como Enfoque Racional) con la orientación de Objectory sobre prácticas tales como casos de uso, e incorporaron un amplio contenido de la Tecnología de Modelado de Objetos (OMT) de Jim Rumbaugh. ) enfoque para el modelado, el método Booch de Grady Booch y el recientemente lanzado UML 0.8. [2] [3]

Para ayudar a que esta creciente base de conocimientos sea más accesible, a Philippe Kruchten se le encomendó la tarea de elaborar un marco de proceso explícito para la ingeniería de software moderna. Este esfuerzo empleó el mecanismo de entrega de procesos basado en HTML desarrollado por Objetory. El "Proceso Unificado de Rational" (RUP) resultante completó un trípode estratégico para Rational:

Esta guía se amplió en versiones posteriores con conocimientos basados ​​en la experiencia de empresas que Rational había adquirido.

En 1997, se agregaron al enfoque una disciplina de requisitos y pruebas; gran parte del material adicional provino del método del Colegio de Requisitos desarrollado por Dean Leffingwell et al. en Requisite, Inc., y el método SQA Process desarrollado en SQA Inc., ambas compañías fueron adquiridas por Rational Software.

En 1998, Rational Software añadió dos nuevas disciplinas:

  1. modelado de negocios, gran parte de este contenido ya había estado en el proceso de objeción
  2. una disciplina de Gestión de Configuración y Cambios, obtenida a través de la adquisición de Pure Atria Corporation.

Estas adiciones conducen a un conjunto general de principios que fueron definidos por Rational y articulados dentro de RUP como las seis mejores prácticas para la ingeniería de software moderna:

  1. Desarrollar de forma iterativa, con el riesgo como principal impulsor de la iteración [4]
  2. Gestionar requisitos
  3. Emplear una arquitectura basada en componentes
  4. Modele el software visualmente
  5. Verificar continuamente la calidad
  6. Controlar cambios

Estas mejores prácticas estaban estrechamente alineadas con la línea de productos de Rational y ambas impulsaron el desarrollo continuo de los productos de Rational, además de ser utilizadas por los equipos de campo de Rational para ayudar a los clientes a mejorar la calidad y la previsibilidad de sus esfuerzos de desarrollo de software.

Se incluyeron técnicas adicionales que incluyen pruebas de rendimiento, diseño de interfaz de usuario, ingeniería de datos y una actualización para reflejar los cambios en UML 1.1.

En 1999, se introdujo una disciplina de gestión de proyectos, así como técnicas para soportar el desarrollo de software en tiempo real y actualizaciones para reflejar UML 1.3. Además, el primer libro que describe el proceso, The Unified Software Development Process ( ISBN  0-201-57169-2 ) de Ivar Jacobson , Grady Booch y James Rumbaugh , se publicó en el mismo año.

Entre 2000 y 2003, una serie de cambios introdujeron orientación a partir de la experiencia de campo actual de Rational con desarrollo iterativo, además de soporte de herramientas para implementar instancias de RUP y para personalizar el marco de trabajo de RUP. Estos cambios incluyeron:

  1. la introducción de conceptos y técnicas de enfoques como la Programación Extrema (XP), que luego se conocerían colectivamente como métodos ágiles. Esto incluyó técnicas como programación en pares, diseño de prueba primero y artículos que explicaban cómo RUP permitió que XP escalara para su uso en proyectos más grandes.
  2. una revisión completa de la disciplina de pruebas para reflejar mejor cómo se llevó a cabo el trabajo de pruebas en diferentes contextos de desarrollo iterativo.
  3. la introducción de orientación de apoyo, conocida como "mentores de herramientas", para implementar las prácticas de RUP en diversas herramientas. Básicamente, estos proporcionaron soporte de métodos paso a paso a los usuarios de herramientas Rational.
  4. automatizar la personalización de RUP de una manera que permita a los clientes seleccionar piezas del marco de proceso de RUP, personalizar su selección con sus propias adiciones y seguir incorporando mejoras en versiones posteriores de Rational.

IBM adquirió Rational Software en febrero de 2003.

En 2006, IBM creó un subconjunto de RUP diseñado para la entrega de proyectos ágiles , lanzado como un método OpenSource llamado OpenUP a través del sitio web de Eclipse . [5]

Temas de procesos unificados racionales

Bloques de construcción de RUP

RUP se basa en un conjunto de componentes básicos y elementos de contenido, que describen lo que se va a producir, las habilidades necesarias y la explicación paso a paso que describe cómo se deben lograr objetivos de desarrollo específicos. Los principales componentes básicos, o elementos de contenido, son los siguientes:

Dentro de cada iteración, las tareas se clasifican en nueve disciplinas:

Cuatro fases del ciclo de vida del proyecto

Fases y disciplinas de RUP.

El RUP ha determinado un ciclo de vida del proyecto que consta de cuatro fases. Estas fases permiten que el proceso se presente a un alto nivel de manera similar a como se podría presentar un proyecto estilo 'cascada', aunque en esencia la clave del proceso radica en las iteraciones de desarrollo que se encuentran dentro de todas las fases. . Además, cada fase tiene un objetivo clave y un hito al final que denota el objetivo que se está logrando. La visualización de las fases y disciplinas de RUP a lo largo del tiempo se conoce como gráfico de jorobas de RUP .

Fase de comienzo

El objetivo principal es definir el alcance del sistema de manera adecuada como base para validar los costos y presupuestos iniciales. En esta fase se establece el caso de negocio que incluye el contexto empresarial, los factores de éxito (ingresos esperados, reconocimiento del mercado, etc.) y la previsión financiera. Para complementar el caso de negocio, se genera un modelo de caso de uso básico, un plan de proyecto, una evaluación de riesgos inicial y una descripción del proyecto (los requisitos centrales del proyecto, las limitaciones y las características clave). Una vez completados, el proyecto se compara con los siguientes criterios:

Si el proyecto no supera este hito, llamado objetivo del ciclo de vida, puede cancelarse o repetirse después de ser rediseñado para cumplir mejor con los criterios.

Fase de elaboración

El objetivo principal es mitigar los elementos de riesgo clave identificados mediante el análisis hasta el final de esta fase. La fase de elaboración es donde el proyecto empieza a tomar forma. En esta fase se realiza el análisis del dominio del problema y la arquitectura del proyecto adquiere su forma básica.

El resultado de la fase de elaboración es:

Esta fase debe superar los criterios de hitos de la arquitectura del ciclo de vida respondiendo las siguientes preguntas:

Si el proyecto no puede superar este hito, todavía hay tiempo para cancelarlo o rediseñarlo. Sin embargo, después de salir de esta fase, el proyecto pasa a ser una operación de alto riesgo donde los cambios son mucho más difíciles y perjudiciales cuando se realizan.

El análisis de dominio clave para la elaboración es la arquitectura del sistema.

Fase de construcción

El objetivo principal es construir el sistema de software. En esta fase, el foco principal está en el desarrollo de componentes y otras características del sistema. Esta es la fase en la que tiene lugar la mayor parte de la codificación. En proyectos más grandes, se pueden desarrollar varias iteraciones de construcción en un esfuerzo por dividir los casos de uso en segmentos manejables para producir prototipos demostrables.

Fase de transición

El objetivo principal es "transmitir" el sistema desde el desarrollo a la producción, haciéndolo disponible y comprendido por el usuario final. Las actividades de esta fase incluyen capacitar a los usuarios finales y a los mantenedores y realizar pruebas beta del sistema para validarlo según las expectativas de los usuarios finales. El sistema también pasa por una fase de evaluación, cualquier desarrollador que no esté produciendo el trabajo requerido es reemplazado o eliminado. El producto también se compara con el nivel de calidad establecido en la fase inicial.

Si se cumplen todos los objetivos, se alcanza el hito del lanzamiento del producto y finaliza el ciclo de desarrollo.

El producto IBM Rational Method Composer

El producto IBM Rational Method Composer es una herramienta para crear, configurar, visualizar y publicar procesos. Consulte IBM Rational Method Composer y un proyecto de marco de procesos Eclipse (EPF) de versión de código abierto para obtener más detalles.

Certificación

En enero de 2007 se lanzó el nuevo examen de certificación RUP para IBM Certified Solution Designer - Rational Unified Process 7.0, que reemplaza la versión anterior del curso llamado IBM Rational Certified Specialist - Rational Unified Process . [6] El nuevo examen no solo evaluará los conocimientos relacionados con el contenido de RUP sino también con los elementos de la estructura del proceso. [7]

Para aprobar el nuevo examen de certificación RUP, una persona debe realizar la Prueba 839 de IBM : Rational Unified Process v7.0 . Tiene 75 minutos para realizar el examen de 52 preguntas. La puntuación aprobatoria es del 62%. [8]

Seis mejores prácticas

Se definen seis mejores prácticas de ingeniería de software para proyectos de software para minimizar fallas y aumentar la productividad. Estos son: [9] [10]

Desarrollar iterativamente
Lo mejor es conocer todos los requisitos con antelación; sin embargo, muchas veces este no es el caso. Existen varios procesos de desarrollo de software que se ocupan de proporcionar soluciones para minimizar los costos en términos de fases de desarrollo.
Gestionar requisitos
Tenga siempre presente los requisitos marcados por los usuarios.
Usar componentes
Desbaratar un proyecto avanzado no sólo es una sugerencia sino que, de hecho, es inevitable. Esto promueve la capacidad de probar componentes individuales antes de integrarlos en un sistema más grande. Además, la reutilización de código es una gran ventaja y se puede lograr más fácilmente mediante el uso de programación orientada a objetos .
Modelar visualmente
Utilice diagramas para representar todos los componentes principales, los usuarios y su interacción. "UML", abreviatura de Unified Modeling Language , es una herramienta que puede utilizarse para hacer esta tarea más factible.
Verificar calidad
Haga siempre de las pruebas una parte importante del proyecto en cualquier momento. Las pruebas se vuelven más complejas a medida que avanza el proyecto, pero deberían ser un factor constante en la creación de cualquier producto de software.
Controlar cambios
Muchos proyectos son creados por muchos equipos, a veces en varias ubicaciones, se pueden usar diferentes plataformas, etc. Como resultado, es esencial asegurarse de que los cambios realizados en un sistema estén sincronizados y verificados constantemente. (Ver Integración continua ).

Ver también

Referencias

  1. ^ IBM adquiere racional
  2. ^ Jacobson, Sten (19 de julio de 2002). "El proceso de objeción racional: un proceso de ingeniería de software basado en UML". Software racional Escandinavia AB. Archivado desde el original el 27 de mayo de 2019 . Consultado el 17 de diciembre de 2014 .
  3. ^ Kruchten, Philippe (1 de mayo de 2004). El proceso unificado racional: una introducción. Addison-Wesley . pag. 33.ISBN 9780321197702. Consultado el 17 de diciembre de 2014 .
  4. ^ Aked, Mark (25 de noviembre de 2003). "RUP en breve". IBM . Consultado el 12 de julio de 2011 .
  5. ^ "Abrir". Archivado desde el original el 6 de enero de 2014 . Consultado el 3 de agosto de 2013 .
  6. ^ Krebs, Jochen (15 de enero de 2007). "El valor de la certificación RUP". IBM . Consultado el 5 de mayo de 2014 .
  7. ^ "Diseñador de soluciones certificado por IBM Spacer: IBM Rational Unified Process V7.0". IBM . Consultado el 13 de mayo de 2008 .
  8. ^ "Prueba 839: Proceso unificado racional v7.0". IBM . Consultado el 13 de mayo de 2008 .[ enlace muerto permanente ]
  9. ^ Stephen Schach (2004). Ingeniería de Software Clásica y Orientada a Objetos . 6/e, WCB McGraw Hill, Nueva York, 2004.
  10. ^ Documento técnico de Rational Unified Process Archivado el 1 de mayo de 2009 en Wayback Machine.

Otras lecturas

enlaces externos

  1. ^ Szymkowiak, Pablo; Kruchten, Philippe (febrero de 2003). "Pruebas: la filosofía RUP". Academia.Edu . Software Rational (revista electrónica Rational Edge). pag. 11 . Consultado el 13 de octubre de 2022 .