Team Development for Sitecore (TDS)

miércoles, 10 de julio de 2013

En la mayoría de los proyectos de IT estamos acostumbrados a trabajar en distintos ambientes, a pesar de tener infinidad de beneficios, esta forma de trabajo nos obliga a ocuparnos de un desarrollo sincronizado.
Hay dos cosas que necesitan ser sincronizadas en todos los entornos: código y datos. En el caso del código, lo solucionamos utilizando alguna herramienta de "Source Control "(GIT, TFS, etc).

La otra parte del problema es la sincronización de datos, en el caso de Sitecore no sólo nos referimos al contenido del sitio, sino que muchas de las cosas del código (.ASPX, .ASCX, .XSLT) están relacionadas como datos dentro del CMS (Layouts, Sublayouts, Renderings), una práctica común para estos proyectos, es crear paquetes Sitecore, seleccionando todos los items y luego generar un .ZIP.

A partir del Sitecore 6 se incluyo la Serializacion de Items (datos de Sitecore), esto nos permite exportar los datos a un archivo de texto y viceversa. Una vez que tenemos los items de Sitecore en el disco, nos da la posibilidad de incluirlos a un sistema de control de código fuente.
Ahi es donde aparece TDS (Team Development for Sitecore), plug-in para Visual Studio que permite serializar y deserializar items Sitecore para su proyecto directamente dentro de Visual Studio e interactuar con algún "Source Control", pudiendo aprovechar los beneficios que nos brinda: control de versiones, cambios realizados, etc.

Ademas, ahora cada desarrollador puede trabajar con una base de datos local conociendo sus cambios sobre una única base de datos en común, sin necesidad de invertir una increíble cantidad de tiempo en la generación de un paquete para compartir en el resto de los ambientes y poder tener una sincronizacion entre ellos. Esto servirá para centrarse en el código y no en las dependencias.

También nos facilita la comparación entre diferentes versiones de código y si algo que se ha hecho resulta ser un error, simplemente se puede volver a una versión anterior.

Es por eso que destacamos esta herramienta como fundamental y de gran ayuda para este tipo de proyectos, la cual nos ha facilitado mucho el trabajo desde comenzamos a implementarla.