Bienvenidos a este curso donde vamos a hablar sobre la gestión del ciclo de vida completo de una aplicación Dynamics AX 2012 utilizando las herramientas disponibles en la suit Team Foundation Server de Microsoft, tanto en su versión on-premise, la que podemos instalar en nuestros servidores, como en la versión en la nube llamada Visual Studio Online.
En la primera cápsula revisaremos todas las posibilidades que nos ofrece TFS y las ventajas que nos va a aportar utilizarlas durante el desarrollo en Dynamics AX. A continuación entraremos en profundidad sobre el primer módulo del curso dedicado a la gestión de tareas y requerimientos desde TFS, y veremos cómo utilizar desde Dynamics AX estas tareas llamadas "elementos de trabajo" y cómo se adaptan a las diferentes metodologías de gestión de proyectos, dependiendo de la que utilicemos en nuestra empresa.
Esta primera cápsula es importante porque, aparte de la visión general del producto que veremos al principio, podremos entender cómo estos elementos de trabajo se integran con el resto de módulos de TFS permitiendo un sistema de trazabilidad muy completo entre los requerimientos o peticiones que nos llegan desde consultoría o desde quienes sean nuestros stakeholders y el trabajo que ha sido necesario para solucionar estos requerimientos, incluyendo tanto cambios en los objetos de AX, como el proceso de compilación donde fue procesado la primera vez o incluso cuándo ese cambio se instaló en cada uno de los entornos de trabajo que utilizamos, como pruebas, UAT, producción, etc. Para llegar a ese nivel de trazabilidad tendremos que poner en práctica todo lo que vamos a ver en este curso.
En la segunda cápsula aprenderemos a utilizar Team Foundation Server como un repositorio de código para Dynamics AX, lo que supone una mejora increíble en la calidad de vida de cualquier programador de Dynamics AX, ya que en otras tecnologías el uso de un gestor de código es algo imprescindible desde hace años. Veremos cómo conectar el código de AX con TFS y como realizar las funciones más habituales que permite cualquier gestor de código, prestando especial interés en cuáles de esas funciones no están disponibles en AX si no utilizamos un gestor de versiones, y también los problemas concretos que se solucionan al utilizarlas.
En una tercera cápsula profundizaremos más sobre este tema para convertirlo, aparte de un gestor del código fuente, en un control de versiones mediante el uso de ramas de desarrollo. Analizaremos para qué sirven las ramas, cuándo es útil utilizarlas y cómo facilitan el control de las versiones de nuestro sistema, o de nuestros productos, dependiendo del tipo de desarrollo que realicemos en nuestra empresa. Veremos que hay muchas estrategias para el uso de ramas, y cómo elegir las más apropiadas.
Y por último cerraremos el ciclo en la última cápsula hablando de procesos automatizados de compilado que nos van a permitir automatizar, o al menos automatizar mucho, el despliegue de las modificaciones entre nuestros diferentes entornos como son Desarrollo, Pruebas, Producción, etc. Hablaremos sobre las herramientas disponibles en TFS para facilitar esta automatización y cómo combinarlas con herramientas propias de Dynamics AX y con las herramientas del sistemas, como PowerShell, para que el paso de modificaciones de un entorno a otro sea totalmente seguro y lo más automatizado posible, lo que va a disminuir, no solamente nuestro trabajo, sino el tiempo que hay que detener el sistema para pasar estos cambios a produccion. Por ejemplo, en la empresa donde trabajamos un pase de producción al final de cada iteración de desarrollo, que son 3 semanas, no nos lleva más de 15 minutos.
Como todos los cursos de ERD dejamos la puerta abierta a nuevas cápsulas en el futuro. La arquitectura de Dynamics AX puede llegar a ser bastante complicada, depende mucho de la forma de trabajar de nuestra empresa y de los productos que estemos desarrollando. Si tienes una idea que crees que podría ser interesante, háznoslo saber y es posible que se convierta en una nueva cápsula en el futuro.