Posts Tagged ‘ desarrollo de software ’

¿Que plantilla de TFS utilizar?


Si estas leyendo esta entrada es porque tienes la incognita de cual plantilla que provee Visual Studio es la que mas se adecua a tus necesidades.

Pues te cuento que no hay una receta para decidir cual utilizar, pero dependiendo el escenario que tengas trataré de ejemplificar cada opción para que, si así lo deseas, tomes en cuenta mis opiniones.

Antes que nada hay que resaltar que lo que Microsoft propone no lo es todo, ya que Microsoft ha definido una plantilla para desarrollo ágil y una plantilla para desarrollo con metodologías mas robustas, adicionalmente como la fiebre es el uso de Scrum, entonces a traves de la comunidadd y varios personajes de Microsoft se realizo la plantilla para Scrum.

Pero la pregunta de rigor es: ¿y en que me ayuda una plantilla de proceso?

Pues a mi entender la plantilla no solo la tenemos que ver como algo que me obligará a realizar determinados documentos o artefactos para apoyar la administración del ciclo de vida de una aplicación(ALM por sus siglas en ingles), sino que ademas de definir ciertas reglas para documentar el proceso de desarrollo de sistemas, tambien nos ayuda a no olvidarnos de lo mínimo necesario a documentar, eso con respecto a la documentación, pero ¿será que eso es suficiente?, pues la respuesta es «si» desde un punto de vista no tan actualizado …. pero a mi juicio el desarrollo de software no solo es documentar y documentar, todo tiene un propósito y para el caso el tener una plantilla determinada me ayudará a poder tener estadisticas con el tiempo y tomar las desiciones mas acertadas en el momento adecuado.
Ademas de ayudarnos a madurar con el tiempo de cual es la mejor forma de documentar, el que, como y la frecuencia de documentar, eso al final nos hará poco a poco en buenos referentes no solo en nuestro lugar de trabajo sino que tambien en el ambiente profesional.

Antes de entrar en mataria definamos que es un Equipo de Desarrollo para los escenarios planteados, entendamos todos los roles posibles desde analista, programador, probador, coordinador de proyecto, administrador de base de datos(DBA), etc. Un Equipo de desarrollo pequeño normalmente no tiene definidos roles muy definidos, todos hacen de todo, y no existen especialistas.

Pero entremos en materia y comparemos los escenarios posibles para tomar una decisión:

1) El equipo de desarrollo es pequeño(de 2 a 5 personas) y no tiene una metodología adoptada ni un estandar definido de como desarrollar una aplicación.

2) El equipo de desarrollo es pequeño y se ha definido una metodología y si se tienen definidos varios roles como DBA, Analista-Programador, Arquitecto de Software, Gerente de Proyecto, aunque una persona puede cubrir mas de un rol a la vez.

3) Son varios equipos de desarrollo por Proyecto con una metodología formal(RUP, CMMI, SDLC,etc) o su empresa/organización/institución tiene bien definidos los roles y posiblemente unidades por Rol, como Unidad de Programación, Unidad de Análisis de Sistemas, Unidad de Pruebas o Calidad de Software, etc.

Plantillas de Proceso en TFS:

a) Visual Studio Scrum 2.0: Utilizar si se tiene el escenario 2 y si la metodología a utilizar es Scrum.

b) MSF for Agile v6.0: Utilizar si se tiene el escenario 1 o 2, para el caso del escenario 2 solamente si la metodología no es Scrum.

c) MSF for CMMI v6.0: Utilizar si se tiene el escenario 3.

No es así de simple en la Practica ya que si te encuentras en el escenario 1 pero se tiene pensado adoptar una metodología en particular, sería mas saludable primero definir que tipo de metodología se utilizará y cual se adaptará mejor a tu lugar de trabajo y basado en eso tomar la desición de cual Plantilla de Proceso utilizar.

Si quieres ver un comparativo de lo que incluye cada Plantilla de Proceso ve al sitio de Microsoft aqui.

Atte. Elmer Carías

«El Señor te bendiga y te guarde, te muestre su rostro y tenga misericordia de ti, te mire benignamente y te conceda la paz, que el Señor te bendiga hermano», Paz y Bien