Usando Rational Team Concert para un proyecto de software de clase de ingeniería: Parte 2. Introducción a los planes de iteración y control de fuente Jazz

Los equipos de desarrollo de software deben llevar a cabo actividades como descomponer un proyecto de desarrollo en tareas manejables, creando y cambiando código fuente, comunicándose con colegas desarrolladores y administrando equipos. El software de administración colaborativa de proyectos de IBM® Rational Team Concert™ soporta varias de esas actividades de ingeniería y por lo tanto puede conformar la piedra angular de proyectos de desarrollo de software. Este tutorial en dos partes describe algunos de los principales conceptos de Rational Team Concert, como elementos de trabajo, equipos, control de fuente y planes de iteración, y cómo se pueden usar estos conceptos para desarrollar un pequeño proyecto de software usando el proceso agile en una configuración de clase.

Thomas Fritz, Postdoctoral Researcher, University of British Columbia

author photoThomas Fritz recibió su Licenciado en ciencias de la computación de la Ludwig-Maximilians-University en Munich, Alemania, en el 2005. Recibió su título de doctorado en ciencias de la computación de la University of British Columbia (UBC) en el 2011. Cuenta con experiencia trabajando como practicante con varias compañías, incluyendo los laboratorios IBM OTI en Zurich y Ottawa donde trabajó con el elemento de trabajo Jazz y los equipos de control de fuente. Ha sido profesor en el curso de pregrado de introducción a la ingeniería de software en el departamento de ciencias de la computación de la UBC y actualmente es investigador post-doctorado en la UBC. Su investigación se enfoca principalmente en cómo ayudar a los desarrolladores de software a administrar la información y los sistemas con los que trabajan.



Meghan Allen, Lecturer, University of British Columbia

author photoMeghan Allen recibió sus títulos de licenciado y máster en ciencias de la computación de la University of British Columbia (UBC) en el 2001 y el 2006. Cuenta con experiencia trabajando como desarrolladora de software, donde ha usado herramientas de coordinación de equipo "en su hábitat". Desde 2007, ha sido catedrática en el departamento de ciencias de la computación en la UBC, donde ha enseñado en una variedad de cursos de pregrado, incluyendo el curso introductorio a la ingeniería de software que usa Rational Team Concert.



12-03-2012

Visión general

La Parte 1 de este tutorial en dos partes le introdujo a los conceptos fundamentales del software de administración colaborativa de desarrollo de software IBM® Rational Team Concert™. Este se concentró principalmente en equipos de trabajo y elementos de trabajo. Esta parte le muestra cómo puede usted usar el Rational Team Concert para hacer seguimiento de la evolución del proyecto a través de su mecanismo de control fuente y un proceso de desarrollo de software definido con iteraciones.

Cada estudiante (en el ejemplo de la Figura 1: Thomas), tiene un espacio de trabajo local separado, de la misma forma que usted tiene un espacio de trabajo en Eclipse en su máquina local. Cada estudiante tiene también un espacio de trabajo repositorio en el servidor (en la Figura 1: El Repository WS de Thomas, donde WS es la abreviación de espacio de trabajo), el cual sirve como una copia segura para todo el código de proyecto que un estudiante en particular haya ingresado.

Procesos agile y scrum

Usted entenderá mejor este artículo si también está familiarizado con los procesos de desarrollo de software agile y con el proceso de administración de proyectosscrum . Consulte la sección Recursos para una lista de sitios y artículos que le proporcionarán una buena orientación.

Nota:
Si usted está familiarizado(a) con Concurrent Versions System (CVS), puede pensar en su espacio de trabajo repositorio como su propio CVS, dentro del cual usted estará registrando código.

Además de su propio espacio de trabajo repositorio, usted necesitará compartir código con sus compañeros de equipo. Para este propósito, cada equipo tiene su propio flujo de datos en el servidor.

Después de cambiar el código del proyecto, guarde sus cambios registrándolos en su espacio de trabajo de repositorio (check-in). Cuando usted está listo para compartir estos cambios con el equipo para que todos puedan verlos, usted simplemente losentrega al flujo. Después que son liberados, sus compañeros de equipo verán que hay cambios próximos, y pueden aceptarlos en sus espacios de trabajo. Cuando ellos los aceptan, sus cambios están en sus espacios de trabajo de repositorio, así como sus espacios de trabajo locales. Así el flujo sirve para compartir y para que usted guarde el código de su equipo, y los cambios fluyen de ida y regreso entre el espacio de trabajo local, el espacio de trabajo de repositorio y el flujo de datos.

Figura 1. Espacio de trabajo básico y configuración de flujo para un proyecto
Espacio de trabajo básico y configuración de flujo para un proyecto

Terminología

Aceptar
El acto de mover cambios en el código, de un flujo hacia su trabajo de espacio de repositorio.
 
Conjunto de cambios
Varios cambios a varios archivos fuente. Un conjunto de cambios es una unidad de cambios que debe asociarse con un elemento de trabajo individual.
 
Entregar
El acto de mover cambios en el código, desde su espacio de trabajo de repositorio hacia un flujo.
 
Flujo objetivo
El flujo objetivo de un espacio de trabajo de repositorio indica el flujo en el cual se efectúan las operaciones de entrega y aceptación .
 
Repositorio local
Es la copia del código que está en su disco duro, bien sea en el laboratorio o en casa.
 
Reporte Backlog de producto
Es una lista priorizada de elementos de backlog de producto en forma de argumentos de usuario. Esta captura toda la funcionalidad deseada para un release particular.
 
Espacio de trabajo repositorio
Es su propia copia de seguridad controlada por fuente, la cual está en el servidor Jazz.
 
Reporte Backlog Sprint
Es una lista de elementos de backlog sprint (iteración) desglosada en tareas específicas que el equipo scrum está comprometido a completar en el sprint.
 
Flujo
Nombre corto para flujo de datos, es el lugar donde los equipos intercambian código.
 
Argumento de usuario
Descripción en texto de una solicitud que está descrita desde la perspectiva del usuario y que expresa lo que un usuario desea.
 

Flujos de datos

Antes de comenzar a usar control de fuente Jazz, usted necesita crear un flujo de datos. Los flujos de datos son utilizados por los equipos para compartir código fuente. Por lo tanto, usted necesitará solo un flujo para todo su equipo de desarrollo.

Cree su flujo de datos

Recuerde: su equipo de desarrollo solo necesita un flujo. Así, el primer miembro en completar esta parte del tutorial debe crear el flujo.

Para revisar si ya ha sido creado, asegúrese de estar usando la perspectiva Work Items y luego seleccione la vista Team Artifacts y, bajo el elemento Project Area, expanda Source Control (para este ejemplo: CPSC 310 - Spring 11 > Source Control).

Si usted ve un flujo para su equipo, este ya ha sido creado y usted puede saltar a la sección Espacio de trabajo repositorio .

Si el flujo de trabajo todavía no existe, siga el resto de instrucciones de esta sección para crearlo:

  1. Desde la perspectiva Work Items, abra la vista Team Artifacts y expanda su área de proyecto (CPSC 310 – Spring 11 en este caso).
  2. Haga clic derecho en el nodo Source Control, y seleccione New > Stream para abrir un editor de flujo.
  3. En el campo Name escriba el nombre de su flujo.
  4. Luego haga clic en Navegue y seleccione su equipo de desarrollo.
  5. (Opcional) Usted puede añadir una corta descripción de este flujo.
  6. Luego necesita añadirle un componente. En este ejemplo, cada equipo de desarrollo utilizará solo un componente, pero su componente puede contener múltiples proyectos Java.
    1. Para añadir los componentes, en la sección Components haga clic en New.
    2. Ingrese un nombre para su componente y haga clic en OK.
  7. Haga clic en Save para guardar este flujo.

Espacio de trabajo repositorio

Antes de comenzar a utilizar el control de fuente Jazz, usted necesitará configurar su espacio de trabajo repositorio. Como mencionamos antes, el espacio de trabajo repositorio reside en el servidor Jazz y sirve como copia de seguridad de su espacio de trabajo local. Sin embargo, es mucho más que una simple copia de seguridad; es una copia con versión controlada. Esta hace seguimiento de todos los cambios que usted realiza y siempre puede regresar hacia una versión previa si las cosas salen mal.

Cree un espacio de trabajo repositorio

Como todos los miembros del equipo deben tener sus propios espacios de trabajo de repositorio, usted necesita completar este paso para su propio espacio de trabajo:

  1. Primero, asegúrese de estar usando la perspectiva Work Items .
  2. Desde allí, seleccione la vista Team Artifacts , y bajo el nodo de área de proyecto, expanda el nodo Source Control (para este ejemplo: CPSC 310 - Spring 11 > Source Control).
  3. Ubique su flujo, haga clic derecho sobre él y seleccione New Repository Workspace.
  4. Para el campo Name el espacio de trabajo repositorio, ingrese su nombre Repository Workspace (reemplace su nombre por su propio nombre, naturalmente)
  5. Haga clic en Next, seleccione Public y haga clic en Next de nuevo.
  6. Asegúrese de que el componente creado en la sección previa esté seleccionado y haga clic en Finish.

Si el asistente Load Repository Workspace inicia, usted puede seleccionar Find and load Eclipse Projects y luego haga clic en Finish.

  1. En la vista Team Artifacts, ahora usted puede expandir My Repository Workspaces para ver su espacio de trabajo de repositorio creado recientemente. Haga doble clic en él, y usted deberá obtener la pantalla de editor mostrada en la Figura 2 (excepto que su flujo objetivo debe ser el flujo de su equipo).
Figura 2. Editor de espacio de trabajo repositorio
Editor de espacio de trabajo repositorio

Control de fuente Rational Team Concert

Su entorno está ahora configurado correctamente para usar control de fuente. Esta sección del tutorial le muestra cómo usar el control de fuente para que use control de fuente para hacer copia de seguridad e intercambiar su código.

Cree el proyecto

Una persona de su equipo necesita crear el proyecto Java en el que usted estará trabajando.

  1. Cambie a la perspectiva Java y abra el Package Explorer.
  2. Si usted puede ver el proyecto (HockeyPool en este ejemplo), es porque uno de sus miembros de equipo ya lo ha creado, por lo que puede saltar a la sección Intercambie código fuente con su equipo . Si no ve el proyecto, necesitará crearlo.
  3. Después de haber creado el proyecto (si todavía no existía), haga clic derecho en el nombre del proyecto y seleccione Team > Share Project,
  4. Seleccione Jazz Source Control y haga clic en Next.
  5. Seleccione el componente en su repositorio W=workspace (creado en la sección Cree su flujo de datos , previamente) y luego haga clic en Finish.

Para compartir el proyecto con sus miembros de equipo usted debe registrarlo en su espacio de trabajo de repositorio y luego entregarlo al flujo.

  1. Para registrar su proyecto, haga clic derecho en el nombre del proyecto y seleccione Team > Check-in.
  2. Ahora, para entregar el proyecto al flujo de su equipo, haga clic derecho en el nombre del proyecto y seleccione Team > Deliver.

Sobre el registro de archivos

Recuerde: cada vez que usted registra un archivo, automáticamente se le realiza copia de seguridad en su espacio de trabajo repositorio. Por lo tanto, usted puede trabajar desde su laptop, desde casa o desde cualquier otra computadora.

Intercambie código fuente con su equipo

Edite código

Para ver el efecto de los cambios de código, haga algunos cambios en el código, como adicionar una nueva clase o cambiar una clase o método ya existente.

Busque sus cambios

  1. Después de haber modificado algo de su código, busque el fondo amarillo en el ícono del archivo. El fondo amarillo indica que usted ha hecho cambios que todavía no han sido registrados en su espacio de trabajo repositorio (Figura 3).
Figura 3. Indicación de cambios en la vista Package Explorer
Indicación de cambios en la vista Package Explorer
  1. Para registrar estos cambios, haga clic derecho en el archivo y luego seleccione Team. > Check-in.

Ahora sus cambios han sido guardados en su espacio de trabajo repositorio.

  1. Cuando esté listo para compartir sus cambios con su equipo, entréguelos.
  2. Busque la vista Pending Changes (probablemente en la parte inferior de su pantalla).

Consejo:
Si no puede encontrar una vista, simplemente seleccione: Window > Show View.

El símbolo de cambio (triángulo) identifica un conjunto de cambios, el cual incluye todos los archivos que usted ha modificado desde la última entrega de código que usted hizo al flujo. Si usted desea ver estos cambios, puede hacer doble clic en cualquier archivo Java y aparecerá un editor de diferencias, mostrando cuáles líneas fueron insertadas y cuáles fueron eliminadas.

Asocie su conjunto de cambios con un elemento de trabajo

En la Parte I de este tutorial en dos partes (vea el enlace "Ver más contenido en esta serie"), mencionamos que cada tarea que usted realice necesita corresponder a un elemento de trabajo. Esto es especialmente importante cuando se está editando código. Así, los cambios que usted está realizando al código deben corresponder al elemento de trabajo.

  1. Por lo tanto, cree una tarea y llámela Mi primera edición de código.

Nota:
Normalmente, el elemento de trabajo debe ser creado antes de que usted comience a editar código. Este elemento de trabajo será una tarea cuando un nuevo recurso necesite ser implementado, o un defecto si usted está corrigiendo un error.

  1. Ahora, en la vista Pending Changes, haga clic derecho en el conjunto de cambios y seleccione Associate Work Item.
  2. Seleccione el elemento de trabajo correspondiente (es posible que usted necesite ingresar el nombre), y haga clic en OK.

Ahora usted deberá ver la descripción del elemento de trabajo más que <Enter a Comment> junto al conjunto de cambios.

Consejo:
Si usted especificó que actualmente está trabajando en un elemento de trabajo, (cambiando su estado a Start Working en el editor de elemento de trabajo), este será asociado automáticamente con su conjunto de cambios y usted no tendrá que pasar por ese procedimiento.

Entregue el conjunto de cambios

Para entregar su conjunto de cambios, haga clic derecho sobre el conjunto de cambios y seleccione Deliver and Resolve Work Item.

Esto abrirá una ventana de diálogo donde usted puede añadir comentarios al elemento de trabajo. Ahora los cambios quedarán disponibles para cada miembro de su equipo.

Importante:
Entregue únicamente los cambios que compilen correctamente y que pasen las pruebas. Si los cambios que usted entregue no compilan, usted va a frenar a todo el equipo.

Si la entrega falla

La operación de entrega puede fallar si alguno de sus compañeros de equipo entregó cambios al mismo proyecto antes que usted. Esto es porque el sistema requiere que usted acepte sus cambios antes de que pueda entregar los suyos. Esto garantiza que todo el equipo esté trabajando en la misma versión del proyecto y que los conflictos potenciales se resuelvan siempre.

Acepte los cambios

Para aceptar los cambios, haga clic en el ícono Aceptar (triángulo con una flecha apuntando hacia abajo encima).

Esto puede generar conflictos si los cambios aparecen en el mismo archivo que usted modificó. No se preocupe, Rational Team Concert iniciará un editor especial para que usted pueda resolver estos conflictos.


Informes de producto y Sprint Backlog, y argumentos de usuario

Un proceso de desarrollo de software normalmente está dividido en cierto número de iteraciones (también conocidas como fases). La naturaleza de estas iteraciones cambiará con base en el modelo de proceso elegido por el equipo, pero el concepto de iteración permanecerá. Este concepto es una parte integral del Rational Team Concert, y una forma en la que es visible es a través de Iteration Plans.

En este caso, usaremos un proceso Scrum con un release principal y dos sprints (dos iteraciones). Si usted no está familiarizado(a) con Scrum, debe leer rápidamente sobre Scrum en la web para entender los conceptos básicos.

Cree un informe Product Backlog

Un Product Backlog contiene toda la funcionalidad deseada para un release particular en forma de una lista priorizada de elementos Product Backlog y argumentos de usuario. Este es usado por un equipo completo.

Consejo:
Cualquier miembro del equipo puede crear un Product Backlog. Pero asegúrese de que solo uno de ustedes sea responsable de crearlo.

  1. Desde la vista Team Artifacts, seleccione Plans > All Plans > Main Development > Release 1.0, haga clic derecho y seleccione New > Plan.
  2. En la ventana de diálogo (Figura 4), asigne un nombre a su plan de iteración.
  3. Asegúrese de que el Owner sea su equipo y de que la Iteration sea Release 1.0.
  4. Luego expanda Advanced Options, seleccione Product Backlog en el menú desplegable y haga clic enFinish.
Figura 4. Ventana de diálogo New Plan
Ventana de diálogo New Plan

Cree argumentos de usuario

Ahora, añada los argumentos de usuario para su proyecto en el Product Backlog Plan.

  1. Cuando usted abre su Product Backlog Plan en el editor y vaya a la pestaña Planned Items , haga clic derecho en Release 1.0 y podrá añadir sus argumentos de usuario seleccionando Add Work Item > Story.
  2. Complete el resumen del argumento de usuario en el campo de texto.
  3. Guarde el plan de manera que también se guarde el argumento de usuario y haga doble clic en el argumento de usuario para abrirlo en el editor.
  4. Ahora añada la información relevante, como los puntos de argumento (si también decidió añadirlos), la prioridad, y los criterios de aceptación (bajo la pestaña Acceptance Test).
  5. Además, asegúrese de archivar el argumento de usuario para su equipo: seleccione su categoría de equipo en el menú desplegable Filed Against (si la categoría de equipo no aparece inicialmente, haga clic en Más y luego deberá poder encontrarla).

Usted todavía no necesita especificar un propietario.

Cree un informe Sprint Backlog

Después de la reunión de planificación de sprint en la cual usted decidió sobre los argumentos de usuario que va a incluir en el sprint, uno de sus compañeros de equipo debe crear el Sprint Backlog (básicamente un plan de iteración). De nuevo, asegúrese de que solo uno de ustedes sea responsable de crearlo .. En caso contrario, tendrán duplicados.

Además, usted debe asegurarse de crear el Sprint Backlog en el sprint apropiado.

  1. Para el primer sprint, seleccione All Plans > Main Development > Release 1.0 > Sprint 1 (1.0), haga clic derecho sobre él y cree un nuevo plan.
  2. Asigne un nombre a su Sprint Backlog y no olvide seleccionar a su equipo como propietario.
  3. Seleccione el sprint (Sprint 1 para el primer sprint) en la iteración y, en la sección Advanced Option, seleccione Iteration Plan.

Cada Sprint Backlog necesita una descripción corta para el resultado principal del sprint.

  1. Bajo la pestaña Overview, haga clic en el enlace Start Editing y describa brevemente lo que su equipo desea hacer en el sprint.
  2. Haga clic en Save.
  3. Para mover argumentos de usuario desde su Product Backlog hacia su Sprint Backlog, en la pestaña Planned Items, abra su Product Backlog y arrastre los argumentos de usuario desde la sección Release 1.0 hacia la sección ()Sprint 1 .

    Nota:
    1. Si usted no ve las secciones Release 1.0 y Sprint 1 en la pestaña Planned Items del Product Backlog, bajo "View as" seleccione Edit.
    2. Luego, bajo Grouping, seleccione Iteration.
    3. Save esto, y el Product Backlog debe contener ahora secciones para el release y todos los sprints.

Arrastrar los elementos hacia el sprint apropiado automáticamente los asociará con el sprint y los añadirá a su Sprint Backlog. Ahora, si usted abre su Sprint Backlog de nuevo y va a la pestaña Planned Items, deberá ver los argumentos asociados con ese sprint.

Cree tareas sprint

Ahora que usted ha seleccionado los argumentos de usuario para su primer sprint, necesitará refinar los argumentos de usuario y crear las tareas reales con las que usted trabajará.

  1. Primero, abra el Sprint Backlog. Por ahora todos los argumentos de usuario deben estar en la sección Unassigned.
  2. Haga clic derecho en un argumento de usuario y siga Add Work Item >Task para crear una tarea.
  3. Complete el campo Summary y haga clic en Save para guardar la tarea.
  4. Abra la tarea haciendo doble clic en ella y luego complete la otra información.
  5. Si la tarea es parte de un argumento de usuario, haga explícita esta relación añadiendo el argumento de usuario como su padre (bien sea añadiendo un padre a la tarea o bien arrastrándola hacia el argumento de usuario).

Importante:

  • Asegúrese de archivar sus argumentos de usuario y sus tareas o defectos para su equipo (seleccione la categoría adecuada en el campo Filed Against). En caso contrario, el argumento, tarea o defecto no aparecerá en sus informes Product o Sprint Backlog.
  • Cuando decida comenzar a trabajar en una tarea o argumento de usuario, asegúrese de cambiar el propietario para que sea usted mismo, de manera que todas las personas del equipo puedan ver en qué está trabajando usted.

Al comienzo de la iteración, todos los elementos de trabajo contenidos en el Iteration Plan correspondiente deben resolverse. Si usted tiene elementos de trabajo restantes, puede moverlos hacia la siguiente iteración, o resolverlos, por ejemplo, señalando "no se arreglará" en el campo apropiado.

Como su Iteration Plan es una herramienta tan buena, usted puede hacer que sea parte de sus páginas favoritas. Simplemente haga clic derecho en la vista Team Artifacts y seleccione Add to Favorites. A hora aparecerá en la carpeta Favorites.


Lo que usted aprendió

Tras completar este tutorial, usted debe tener una comprensión básica de los siguientes conceptos importantes relacionados con Eclipse y el Rational Team Concert:

  • La diferencia entre su espacio de trabajo local y el espacio de trabajo repositorio
  • El concepto de un flujo para intercambiar código con otros miembros de su equipo
  • Cómo crear un flujo y un espacio de trabajo de repositorio
  • El concepto de conjunto de cambios
  • Cómo asociar un elemento de trabajo con un conjunto de cambios
  • Cómo registrar código en su espacio de trabajo de repositorio
  • Cómo aceptar y entregar cambios entre usted y sus compañeros de equipo
  • Cómo integrar sus cambios con los de sus compañeros de equipo de proyecto
  • Que un proceso de desarrollo de software es una serie de iteraciones
  • Cómo crear el Product Backlog y un Sprint Backlog
  • Cómo añadir argumentos de usuario a un Product Backlog y a un Sprint Backlog
  • Cómo escribir la visión general de un Sprint Backlog
  • Cómo añadir tareas a un Sprint Backlog y cómo administrarlas

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Rational
ArticleID=800835
ArticleTitle=Usando Rational Team Concert para un proyecto de software de clase de ingeniería: Parte 2. Introducción a los planes de iteración y control de fuente Jazz
publish-date=03122012