Anda di halaman 1dari 5

Team Foundation Service es el servicio de ALM que provee Microsoft.

Est
basado en las capacidades que posee Team Foundation Server. En la versin
Cloud de TFS se han personalizado ciertas caractersticas para poder ser un
servicio 100% orientado al Cloud. As es que tenemos un entorno 100% elstico,
sin limitaciones de crecimiento, basado en GIT como Source Control Provider y
otras caractersticas ms que lo hacen destacar sobre sus competidores. Los
siguientes prrafos te ayudarn a tener argumentos para elegir Team Foundation
Server y adems para evaluar si puedes utilizar la versin On the Cloud.

UNA HERRAMIENTA DE ALM


IMPRESCINDIBLE
Todos los desarrolladores son conscientes de la importancia de trabajar con
buenas herramientas (con las mejores dira yo). Despus de probar muchas
opciones, afirmo sin temor a equivocarme que Visual Studio 2012 es el mejor
entorno de desarrollo del mercado (a partir de ahora IDE: Integrated Development
Environment). Durante los ltimos meses, con el auge de los Smart Devices y
otras tecnologas de consumo, he tenido que cambiar de IDE para trabajar con
Java y otros lenguajes de desarrollo, y es en estos puntos donde vuelvo a valorar
a Visual Studio 2012 como el mejor IDE del mercado.

Existen productos como Xamarin(1) que nos permiten desarrollar para mltiples
dispositivos utilizando Visual Studio 2012 como nica herramienta de desarrollo.
Este es un ejemplo de cmo hay empresas que deciden apostar por el IDE de
Visual Studio 2012 como nica herramienta de desarrollo.

Ahora bien, si tu rol es de jefe de equipo, seguramente tu preocupacin no solo


abarque una buena herramienta de desarrollo, sino una herramienta de gestin del
ciclo de vida de desarrollo (ALM Application Lifecycle Management). Aqu Visual
Studio ALM se lleva la palma, es de lejos una de las mejores opciones inclusive si
no trabajas con tecnologas Microsoft.

Veamos un ejemplo simple, lo mnimo que necesitas para poder tener un equipo
de desarrollo funcionando es:

Un control de versiones de cdigo fuente

Un servidor de integracin continua (build server)

Un registro de incidencias (Bug Tracker)

Este es un escenario de mnimos con el que podremos crear aplicaciones,


controlar la calidad de forma automtica (2) y tener un registro de los errores que
se reportan para asegurar la estabilizacin de versiones. Si queremos asociar
un Bug a una entrega especfica del cdigo fuente, pues es muy probable que
debamos crear un pequeo proceso personalizado.

Existen muchas opciones en el mercado para cada opcin, sin embargo tienes
que tener en cuenta que para poder tener las herramientas enlazadas entre s,
necesitas dedicar un par de horas por semana para mantener este entorno en
funcionamiento. Y, qu pasa cuando sale una nueva versin de alguna
herramienta? Por ejemplo, del Bug Tracker es necesario migrar el contenido del
repositorio de Bugs a la nueva versin, verificar que la integracin entre las tres
herramientas siga funcionando, etc.

Siendo optimista, y no asignando un tiempo de setup inicial para el entorno,


podemos definir que la persona encargada de mantener el entorno de desarrollo
dedicar cinco horas semanales a esta tarea. Haciendo nmeros de forma rpida
podemos ver lo siguiente:

5 horas por semana

20 horas al mes

240 horas al ao

Con este esquema tenemos a una persona ms de un mes al ao SOLO


DEDICADA a mantener el entorno de desarrollo. S que intentar convencer a la
direccin de este coste es casi imposible, y que esta tarea termina siendo
absorbida por el equipo de desarrollo de forma transparente.

La solucin: Team Foundation Server. TFS es una solucin transparente en este


aspecto, ya que todos los componentes que la conforman estn integrados de
forma natural. Como con cualquier herramienta hay que dedicar un tiempo inicial
de setup, pero luego el tiempo dedicado al mantenimiento y actualizacin es
mnimo comparado con plataformas heterogneas.

Como referencia, solo comentar que un servidor TFS sobre el que trabajan ms
de 50 personas en mi empresa, ha sido montado hace dos aos y no tiene
dedicadas ms de 20 horas de soporte. En su mayora han sido actualizaciones o
mantenimientos rutinarios.

Otro punto a tener en cuenta es que TFS posee muchos ms elementos, por
ejemplo:

Un control de versiones de cdigo fuente, en formato centralizado o


distribuido con GIT
Un servidor de integracin continua (build server)

Un registro de incidencias (Bug Tracker)

Gestin de proyectos AGILE

Varios tableros Kanban para gestionar User Stories o PBIs, tareas, etc.

Integracin nativa con Microsoft Office

Gestin de pruebas y casos de pruebas automatizados

Integracin con entornos no Microsoft como Eclipse, Cobol, etc.

Etc.

Team Foundation Server es una solucin de ALM pensada para todo tipo de
escenarios. Por ejemplo, entornos con dos personas, donde recomendara utilizar
la versin Express que es gratis hasta cinco personas. En la otra cara de la
moneda puede existir un proyecto distribuido con equipos en diferentes
ubicaciones, con diferentes zonas horarias, etc. En este caso, es posible montar
una nica capa de datos de TFS, y luego varios servidores de aplicacin para
garantizar un entorno de alta disponibilidad.Adems, en este segundo escenariola
integracin con herramientas de comunicacin como LYNC o SKYPE, ayuda a
que la comunicacin entre los equipos distribuidos sea mucho ms natural.

CUNDO DEBO OPTAR POR TEAM


FOUNDATION SERVICE?
Cuando ya has elegido Team Foundation Server llega el momento de elegir el tipo
de instalacin que deseas realizar. Es probable que tengas dudas como:
Qu versin de TFS debo instalar: Express, Basic, Advanced?

Me alcanza con una instalacin Single Server, o debo separar servidor de


datos y capa de aplicacin?

Necesito SharePoint? o Reporting Services?

Cmo debo dimensionar el hardware en cada capa?

Creo uno o varios servidores dedicados de Build?

Para responder estas cuestiones el equipo de ALM Rangers ha creado Visual


Studio Team Foundation Server Planning Guide. Esta gua ayuda a definir la
planificacin e instalacin de un entorno con Team Foundation Server.

Una cuestin que tambin puedes plantearte es:

Puedo utilizar Team Foundation Service? http://tfs.visualstudio.com

Team Foundation Service es un servicio de TFS on the Cloud. El siguiente grfico


nos muestra las principales diferencias que hay entre la versin Express, la
versin on Premise y la versin on the Cloud (Service).
En la versin Service no hay integracin con SharePoint ni tampoco un servicio de
Data Warehouse y Reporting disponible. Estos no suelen ser los factores
determinantes para elegir la versin On The Cloud, sin embargo la ubicacin de
los datos es algo que hay que tener en cuenta. Si tu organizacin requiere que los
datos no salgan de tu organizacin, pues debes descartar esta opcin.

Ahora bien, la versin Service posee las siguientes ventajas:

Cero horas de mantenimiento. Esto supone ms horas dedicadas a la


construccin de aplicaciones.

Actualizaciones automticas. Durante los ltimos dos aos, el equipo de


producto de TFS se ha encargado de aplicar las actualizaciones de forma mensual
en el entorno Cloud.

Fcil creacin y acceso. En solo tres minutos puedes tener un entorno de


ALM plenamente funcional. Adems es accesible desde cualquier parte del
mundo, solo es necesario tener una Microsoft Account (Live ID) para conectarse a
TFS.

Automatizacin de despliegues en AZURE. Si tu equipo se dedica a


desarrollar aplicaciones sobre AZURE, TFS posee mecanismos de despliegue
automtico desde TFS hacia AZURE.

Utilizacin de GIT como Source Control. El equipo de producto de TFS ha


reconocido el valor de trabajar con un DVCS y es posible utilizar GIT como gestor
de cdigo fuente en proyectos de TFS.

Gratis hasta cinco usuarios e ilimitado con una suscripcin MSDN.


Actualmente Team Foundation Service no posee lmites de cantidad de usuarios,
ya que est en modo trial. En el modelo final de licenciamiento se podr utilizar de
forma gratuita hasta cinco usuarios, y si posees una licencia de MSDN se
eliminar este lmite.

CONCLUSIN
Para no explayarme ms, simplemente comentar que Team Foundation Service es
una opcin a tener en cuenta en muchos escenarios actuales. Adems de tener
todas las ventajas de un servicio Cloud, es tal vez la nica opcin de ALM en
el Cloud gratuita que brinda tantas caractersticas integradas entre s.

Anda mungkin juga menyukai