La clave para alcanzar el delicado equilibrio entre proporcionar un software de calidad y proporcionarlo con rapidez
(la paradoja del software) es comprender los elementos esenciales del proceso y seguir ciertas directrices para adaptar
el proceso a las necesidades específicas del usuario. Esta adaptación debería hacerse en el momento de adherirse a las
recomendaciones demostradas en la industria para que los proyectos de desarrollo de software concluyan de manera
satisfactoria.
El adjetivo pequeño puede hacer referencia al número de personas del proyecto, a la longitud del proyecto o a la
cantidad de software desarrollado. En este mapa, un "proyecto pequeño" se define como un proyecto con:
-
de 3 a 10 personas
-
proyecto de duración inferior a un año.
Una característica clave de la mayoría de los proyectos pequeños es el nivel inferior de formalidad. Aunque hay
excepciones, cuantas más personas haya en el proyecto y más largo y complejo sea el producto, mayor será la necesidad
de un proceso formal. Por ejemplo, si el proyecto tiene un equipo de 100 personas distribuidas geográficamente, o
trabaja simultáneamente en varios productos relacionados con varios clientes y subcontratistas, necesita un proceso
mucho más formal que un equipo típico de cinco personas. De forma similar, un sistema de guía de proyectiles requiere
artefactos más formales que una actualización del sistema de inventario.
¿Por qué es necesario tener un proceso? Un proceso permite repetir prácticas que han sido satisfactorias y eliminar o
mejorar prácticas que no lo han sido. RUP, en particular, proporciona:
-
guía de recomendaciones
-
conjunto de tareas, roles y productos de trabajo que debe tener en cuenta el proyecto, con instrucciones sobre
cuándo son necesarios
-
mucha información detallada que puede ayudarle a aplicar eficazmente las técnicas que considere adecuadas para el
proyecto. Por ejemplo, si va a realizar un modelo de diseño UML, debe averiguar qué diagramas son adecuados y cómo
debe estructurar el modelo. Además, si utiliza herramientas de Rational, dispone de instrucciones adicionales sobre
cómo utilizarlas eficazmente como parte del proceso general.
-
instrucciones sobre cómo adaptar el proceso para tratar problemas relacionados con el proceso específico. Por
ejemplo, si el proyecto tiene una gran cantidad de requisitos cambiantes, las instrucciones sobre cómo gestionar
eficazmente los requisitos le resultarán útiles.
Muchos de los artefactos y actividades del mismo RUP son necesarios tanto en proyectos pequeños como en proyectos
grandes, las diferencias residen más en términos de formatos de producto de trabajo y nivel de formalidad, detalle y
esfuerzo aplicado a cada tarea. En este mapa, un "proceso pequeño del proyecto" se centrará en los proyectos que
requieren poca formalidad. Algunas características de este proceso pequeño del proyecto son las siguientes.
-
El número de documentos suele ser inferior y menos detallado. En lugar de planes de gestión de riesgos y planes de
aceptación del producto detallados, los proyectos pequeños deben dedicar un par de párrafos a estos temas, como
parte del plan de desarrollo de software general. El plan de prueba para cada iteración pueden ser unos cuantos
párrafos en el plan de iteración.
-
Los proyectos pequeños suelen empezar con un mínimo de herramientas de desarrollo de software. A medida que un
proyecto evoluciona satisfactoriamente (lo que es el objetivo de todos los proyectos pequeños satisfactorios) , es
importante incluir herramientas eficaces que ayuden a automatizar la implementación del proceso.
-
Las revisiones formales se pueden reemplazar con discusiones y reuniones informales.
-
Muchos de los artefactos se pueden capturar informalmente. Se puede crear una lista de riesgos en una pizarra, y
las evaluaciones del estado pueden consistir en unos cuantos párrafos en un correo electrónico.
Para definir un proceso para el proyecto pequeño, antes debe revisar los siguientes elementos básicos de RUP:
A continuación, evalúe los procesos existentes que pueden estar ejecutándose en estos elementos fundamentales y centre
las revisiones en los puntos débiles. Muchos proyectos escogen la opción de adoptar incrementalmente herramientas y
procesos nuevos y, en un principio, utilizar únicamente pequeñas partes de RUP.
Mediante el Rational Method
Composer (RMC), puede seleccionar y anular la selección de paquetes de contenido de RUP para realizar una
adaptación poco detallada del proceso y, a continuación, un ajuste más preciso con las vistas del proceso, incluida la
adición de directrices específicas del proyecto. Tenga en cuenta que RMC incluye una configuración de método para
proyectos pequeños. Consiste en una configuración más pequeña de RUP que incluye plantillas "informales" y excluye
instrucciones aplicables a proyectos más grandes o más formales. Los proyectos pequeños deberían empezar con esta
plantilla y aplicar su adaptación específica del proyecto. Si desea más información sobre la personalización de
RUP, consulte Concepto: Personalización de RUP.
El Ejemplo: Un proyecto pequeño adopta RUP, nos proporciona un ejemplo de cómo puede
enfocar un proyecto pequeño la definición de un proceso. En el apartado Tarea: Personalizar el proceso de desarrollo para el proyecto, se
proporcionan instrucciones detalladas para definir y documentar un proceso de desarrollo de software para un proyecto.
Es recomendable que los proyectos más pequeños, en particular, adopten prácticas y técnicas asociadas con "procesos
Agile". Este tema se trata en Concepto:
prácticas de Agile en RUP y en Documentación: Utilización de RUP para proyectos pequeños: expansión a partir de la
programación eXtreme.
|