Metodologia Agil de Desarrollo SXP

Revisión del 16:44 21 feb 2012 de Metodologo1 jc (discusión | contribuciones)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Metodología Ágil de Desarrollo de Software SCRUM-XP
Información sobre la plantilla
Concepto:Metodología compuesta por las metodologías SCRUM y XP, especialmente indicada para proyectos de pequeños equipos de trabajo, rápido cambio de requisitos o requisitos imprecisos, muy cambiantes, donde existe un alto riesgo técnico y se orienta a una entrega rápida de resultados y una alta flexibilidad.


SXP es una metodología compuesta por las metodologías SCRUM y XP que ofrece una estrategia tecnológica, a partir de la introducción de procedimientos ágiles que permitan actualizar los procesos de software para el mejoramiento de la actividad productiva fomentando el desarrollo de la creatividad, aumentando el nivel de preocupación y responsabilidad de los miembros del equipo, ayudando al líder del proyecto a tener un mejor control del mismo.

Metodologías que la conforman

  • SCRUM es una forma de gestionar un equipo de manera que trabaje de forma eficiente y de tener siempre medidos los progresos, de forma que sepamos por dónde andamos.
  • XP más bien es una metodología encaminada para el desarrollo; consiste en una programación rápida o extrema, cuya particularidad es tener como parte del equipo, al usuario final, pues es uno de los requisitos para llegar el éxito del proyecto.

Fases de la metodología SXP

Consta de 4 fases principales:

  • Planificación-Definición donde se establece la visión, se fijan las expectativas y se realiza el aseguramiento del financiamiento del proyecto.
  • Desarrollo, es donde se realiza la implementación del sistema hasta que este listo para ser entregado.
  • Entrega, puesta en marcha.
  • Mantenimiento, donde se realiza el soporte para el cliente.

De cada una de estas fases se realizan numerosas actividades tales como el levantamiento de requisitos, la priorización de la Lista de Reserva del Producto, definición de las Historias de Usuario, diseño, implementación, pruebas, entre otras; de donde se generan artefactos para documentar todo el proceso. Las entregas son frecuentes, y existe una refactorización continua, lo que nos permite mejorar el diseño cada vez que se le añada una nueva funcionalidad.

Gestión de los proyectos utilizando SXP

La Gestión de Proyectos implica la planificación, supervisión y control no solo del proceso de software, sino también del personal y los eventos que ocurren mientras evoluciona el software desde la fase preliminar a la implementación operacional. El proyecto debe planificarse estimando el esfuerzo y el tiempo para cumplir las tareas, definiendo los productos del trabajo, estableciendo puntos de control de calidad y estableciendo mecanismos para controlar y supervisar el trabajo definido en la planificación. Lo que se obtiene del mismo es un plan de proyecto que se realiza al comienzo de la actividad de gestión, el plan define el proceso y las tareas a realizar el personal que realizará el trabajo y los mecanismos para evaluar los riesgos, controlar el cambio y evaluar la calidad. Además de la gestión del alcance del proyecto. En SXP esta gestión le viene directamente complementada de SCRUM, que más que una metodología de desarrollo de software, es una forma de auto-gestión de los equipos de programadores. Un grupo de programadores deciden cómo hacer sus tareas y cuánto van a tardar en ello. SCRUM ayuda a que trabajen todos juntos, en la misma dirección, con un objetivo claro. Permite además seguir de forma clara el avance de las tareas a realizar, de forma que los jefes pueden ver día a día cómo progresa el trabajo. Es una de las más conocidas metodologías ágiles, y se basa en un enfoque iterativo, donde cada iteración se denomina Sprint. El principio básico es que es muy difícil contar desde el principio con un catálogo completo de funcionalidades, ya que los requisitos van surgiendo conforme el propietario de la aplicación y los usuarios de la misma van haciendo sucesivas aportaciones. Así pues, SCRUM plantea el desarrollo de sucesivas versiones ampliadas, todas ellas plenamente usables y evaluables por el usuario. SCRUM es, además, una metodología especialmente indicada para pequeños equipos de desarrollo y se orienta a una entrega rápida de resultados y una alta flexibilidad.

Artefactos para lograr una efectiva gestión del alcance para SXP

Plan de Gestión del Alcance del Proyecto

El plan de gestión del alcance del proyecto proporciona orientación sobre cómo el equipo de dirección del proyecto definirá, documentará, verificará, gestionará y controlará el alcance del proyecto. Los componentes de un plan de gestión del alcance del proyecto incluyen:

  • Un proceso para preparar un enunciado del alcance del proyecto detallado basado en el enunciado del alcance del proyecto preliminar.
  • Un proceso que permite la creación de la EDT a partir del enunciado del alcance del proyecto detallado, y establece cómo se mantendrá y aprobará la EDT.
  • Un proceso que especifica cómo se obtendrá la verificación y aceptación formal de los productos entregables completados del proyecto.
  • Un proceso para controlar cómo se procesarán las solicitudes de cambio al enunciado del alcance del proyecto detallado. Este proceso está directamente vinculado con el proceso de control integrado de cambios.

Un plan de gestión del alcance del proyecto está comprendido en el plan de gestión del proyecto, o bien, es un plan subsidiario de éste. Dependiendo de las necesidades del proyecto, el plan de gestión del alcance del proyecto puede ser informal y ampliamente esbozado, o formal y muy detallado. El proceso Desarrollar el Plan de Gestión del Proyecto incluye las acciones necesarias para definir, integrar y coordinar todos los planes subsidiarios en un plan de gestión del proyecto. El contenido del plan de gestión del proyecto variará de acuerdo con el área de aplicación y la complejidad del proyecto. Este proceso da como resultado un plan de gestión del proyecto que se actualiza y revisa a través del proceso Control Integrado de Cambios. El plan de gestión del proyecto define cómo se ejecuta, se supervisa y controla, y se cierra el proyecto. El plan de gestión del proyecto documenta el conjunto de salidas de los procesos de planificación del Grupo de Procesos de Planificación e incluye:

  • Los procesos de dirección de proyectos seleccionados por el equipo de dirección del proyecto
  • El nivel de implementación de cada proceso seleccionado
  • Las descripciones de las herramientas y técnicas que se utilizarán para llevar a cabo esos procesos.
  • Cómo se utilizarán los procesos seleccionados para dirigir el proyecto específico, incluidas las dependencias y las interacciones entre esos procesos, y las entradas y salidas esenciales.
  • Cómo se ejecutará el trabajo para alcanzar los objetivos del proyecto
  • Cómo se supervisarán y controlarán los cambios
  • Cómo se realizará la gestión de la configuración
  • Cómo se actualizará y usará la integridad de las líneas base para la medición del rendimiento
  • La necesidad y las técnicas para la comunicación entre los interesados
  • El ciclo de vida del proyecto seleccionado y, para los proyectos de múltiples fases, las fases del proyecto relacionadas
  • Las revisiones clave de dirección acerca del contenido, la extensión y la oportunidad para facilitar la gestión de polémicas sin resolver y decisiones pendientes.

Enunciado del Alcance del Proyecto

El enunciado del alcance del proyecto describe, en detalle, los productos entregables del proyecto y el trabajo necesario para crear tales productos entregables. El enunciado del alcance del proyecto también proporciona un entendimiento común del alcance del proyecto entre los interesados del proyecto, y describe los principales objetivos del proyecto. También permite al equipo del proyecto realizar una planificación más detallada, guía el trabajo del equipo del proyecto durante la ejecución y proporciona la línea base para evaluar si las solicitudes de cambio o trabajo adicional están comprendidas dentro o fuera de los límites del proyecto. El grado y nivel de detalle con que el enunciado del alcance del proyecto defina qué trabajo se realizará y qué trabajo quedará excluido puede determinar el nivel de éxito con que el equipo de dirección del proyecto podrá controlar el alcance del proyecto en general. A su vez, gestionar el alcance del proyecto puede determinar el nivel de éxito con que el equipo de dirección del proyecto podrá planificar, gestionar y controlar la ejecución del proyecto. El enunciado del alcance del proyecto detallado incluye, ya sea de forma directa o mediante referencia a otros documentos, lo siguiente:

  • Descripción del alcance del producto. Describe las características del producto, servicio o resultado para el cual se creó el proyecto. Generalmente, estas características serán menos detalladas en las fases iniciales y más detalladas en las fases posteriores, a medida que las características del producto se van elaborando gradualmente. Si bien la forma y el contenido de las características pueden variar, la descripción del alcance deberá ser siempre lo suficientemente detallada como para que sirva de apoyo a la planificación posterior del alcance del proyecto.
  • Requisitos del proyecto. Describen las condiciones que deben cumplir o las capacidades que deben tener los productos entregables del proyecto para satisfacer un contrato, norma, especificación o cualquier otro documento formalmente impuesto. El análisis de los interesados que incluyen la totalidad de sus necesidades, deseos y expectativas se traducen en requisitos priorizados.
  • Productos entregables del proyecto. Los productos entregables incluyen tanto las salidas que comprenden el producto o servicio del proyecto, como los resultados secundarios, tales como informes y documentación de la dirección del proyecto. De acuerdo con el enunciado del alcance del proyecto, los productos entregables pueden describirse en forma resumida o muy detallada.
  • Criterios de aceptación del producto. Definen el proceso y los criterios para aceptar los productos completados.
  • Restricciones del proyecto. Enumeran y describen las restricciones específicas del proyecto asociadas con el alcance del proyecto que limitan las opciones del equipo del proyecto.
  • Especificaciones del proyecto. Identifica aquellos documentos de especificaciones con los que debería cumplir el proyecto.
  • Requisitos de aprobación. Identifica los requisitos de aprobación que pueden aplicarse a aspectos tales como objetivos, productos entregables, documentos y trabajo del proyecto.

El enunciado del alcance del proyecto preliminar se desarrolla a partir de la información suministrada por el iniciador o el patrocinador. El equipo de dirección del proyecto durante el proceso Definición del Alcance será el encargado de refinar el enunciado del alcance del proyecto preliminar, para así obtener el enunciado del alcance del proyecto. El contenido del enunciado del alcance del proyecto variará de acuerdo con el área de aplicación y la complejidad del proyecto, y puede incluir algunos o todos los componentes identificados con anterioridad. (PMBOK, 2004).

Diccionario de la EDT

Es un documento que tiene el contenido detallado de los componentes que se incluyen en una EDT, incluidos los paquetes de trabajo y las cuentas de control, pueden describirse en el diccionario de la EDT. Para cada componente de la EDT, el diccionario de la EDT incluye un identificador de código de cuenta, un enunciado del trabajo, la organización responsable y una lista de hitos del cronograma. Otra información para un componente de la EDT puede incluir información sobre contratos, requisitos de calidad y referencias técnicas para facilitar la realización del trabajo. Otra información correspondiente a una cuenta de control sería un número de cargo. Otra información para un paquete de trabajo puede incluir una lista de las actividades del cronograma relacionadas, recursos necesarios y una estimación de costes. Cada componente de la EDT tiene una referencia cruzada, según corresponda, a otros componentes de la EDT en el diccionario de la EDT.

Control del Alcance

Enunciado del Alcance del Proyecto (Actualizaciones) Si las solicitudes de cambio aprobadas tienen efecto sobre el alcance del proyecto, el enunciado del alcance del proyecto se revisa y se emite nuevamente para reflejar los cambios aprobados. El enunciado del alcance del proyecto actualizado se convierte en la nueva línea base del alcance del proyecto para cambios futuros. Estructura de Desglose del Trabajo (Actualizaciones) Si las solicitudes de cambio aprobadas tienen efecto sobre el alcance del proyecto, la EDT se revisa y se emite nuevamente para reflejar los cambios aprobados. Diccionario de la EDT (Actualizaciones) Si las solicitudes de cambio aprobadas tienen efecto sobre el alcance del proyecto, el diccionario de la EDT se revisa y se emite nuevamente para reflejar los cambios aprobados. Acciones Correctivas Recomendadas Una acción correctiva recomendada es todo paso recomendado para alinear el rendimiento del proyecto futuro esperado con el plan de gestión del proyecto y el enunciado del alcance del proyecto. Para este caso esta información se recogera en la plantilla de Lista de Riesgos contenida dentro del espediente de proyecto. Plan de Gestión del Proyecto (Actualizaciones) Si las solicitudes de cambio aprobadas tienen efecto sobre el alcance del proyecto, los correspondientes documentos de componentes y la línea base de coste, así como las líneas base de cronograma del plan de gestión del proyecto, se revisan y se emiten nuevamente para reflejar los cambios aprobados.

Glosario de Términos

Agilidad: Nos dice el diccionario que es una calidad de un ágil o persona ágil. Definición de ágil: Ligero, pronto, expedito, se dice de la persona que mueve o utiliza sus miembros con soltura. También podemos describir a la agilidad como una combinación de flexibilidad, velocidad y elasticidad. En el contexto de la investigación es la habilidad de responder de forma versátil al cambio para maximizar los beneficios. Artefactos: En tecnología, es un dispositivo concebido y fabricado, sea de modo artesanal o industrial, por una o más personas. Builds: Estructuras. Calidad: La palabra calidad tiene múltiples significados. La calidad de un producto o servicio es la percepción que el cliente tiene del mismo. Es una fijación mental del consumidor que asume conformidad con un producto o servicio determinado, que solo permanece hasta el punto de necesitar nuevas especificaciones. La calidad es un conjunto de propiedades inherentes a un objeto que le confieren capacidad para satisfacer necesidades implícitas o explícitas. Ciclo de vida: Es un proceso por el cual los analistas de sistemas, los ingenieros de software, los programadores y los usuarios finales elaboran sistemas de información y aplicaciones informáticas. CMM: Por sus siglas en Ingles, en español, Modelo de Capacidad y madurez. Es un modelo de evaluación de los procesos de una organización. Desarrollo evolutivo: Forma en la que la especificación y el desarrollo están intercalados. Cuenta con tres actividades concurrentes: Especificación, Desarrollo y Validación. Desarrollo incremental: Forma de reducir la repetición del trabajo en el proceso de desarrollo y dar oportunidad de retrasar la toma de decisiones en los requisitos hasta adquirir experiencia con el sistema. Es una combinación del Modelo de Cascada y Modelo Evolutivo. Estándares: Es una especificación que regula la realización de ciertos procesos o la fabricación de componentes para garantizar la interoperabilidad.

Resumen

SXP esta especialmente indicada para proyectos de pequeños equipos de trabajo, rápido cambio de requisitos o requisitos imprecisos, muy cambiantes, donde existe un alto riesgo técnico y se orienta a una entrega rápida de resultados y una alta flexibilidad. Ayuda a que trabajen todos juntos, en la misma dirección, con un objetivo claro, permitiendo además seguir de forma clara el avance de las tareas a realizar, de forma que los jefes pueden ver día a día cómo progresa el trabajo.(Peñalver, 2008)

Fuente

  • Metodología Ágil para proyectos
  • Guía de los Fundamentos de la Dirección de Proyectos (Guía del PMBOK) Tercera Edición 4, 2004 Project Management Institute, Four Campus Boulevard, Newtown Square, PA 19073-3299 EE.UU.
  • Henrik, K., “SCRUM y XP desde las trincheras”. Disponible en: http://infoq.com/minibooks/scrum-xp-fromthetrenches. 2009.
  • Peñalver Romero, G.M., “Trabajo de diploma: Metodología ágil para proyectos de software libre”. Ciudad de La Habana, Universidad de las Ciencias Informáticas. 2008.