Materiales del evento: Conferencia Agile Spain 2010

Los pasados días 10 y 11 de junio tuvo lugar la Conferencia Agile Spain 2010, fue una experiencia bastante enriquecedora, en la cual tuvimos la oportunidad de ponernos al día en todo lo relacionado con el desarrollo ágil de software.

Os dejo aquí el material que utilicé para las sesiones que tuve el placer de presentar. También hicimos un taller de construcciones automatizadas e integración continua en entornos Microsoft (sobre todo con MSBuild y TFS, aunque también tocamos otros sistemas como Cruise Control), pero en ése no hubo presentación, ya que fue todo en plan práctico, trabajando con las herramientas sobre la marcha.

Gestión ágil de la configuración

Gestión ágil de requisitos: construyendo nuestro backlog

Muchas gracias a todos los asistentes y al resto de ponentes, y espero volver a veros a todos en la próxima.

 

Un saludo!!!

AgileSpain2010Horizontal

Eventos: Conferencia Agile Spain 2010

Los próximos días 10 y 11 de junio se celebrará en Madrid la Conferencia Agile Spain 2010. Es una buena oportunidad para ponerse al día en todo lo relacionado con el desarrollo ágil de software, ya que habrá cabida para la mayor parte de los temas relacionados con la gestión del ciclo de vida de las aplicaciones: metodologías, herramientas, buenas prácticas, etc.

La keynote correrá a cargo de Henrik Kniberg, autor del excelente Scrum y XP desde las trincheras.

La conferencia se estructura en una serie de sesiones, y en varios talleres donde se podrá profundizar y ponerse manos a la obra en temas específicos.

Plain Concepts tendrá una presencia destacada en el evento, tanto a nivel de patrocinio, como participando como ponentes en distintas sesiones y talleres.

Mis compañero Rodrigo estará presentes con las sesiones “Control de proyectos y métricas en las metodologías ágiles” y “Diez maneras infalibles de asegurar que Scrum será un fracaso”. Por su parte Ibon hablará sobre “Herramientas avanzadas de testeo unitario: Pex y Moles”

Yo mismo participaré como ponente con dos sesiones y un taller, espero no saturar mucho al personal ;-). Las sesiones son “Gestión ágil de la configuración” y “Gestión ágil de requisitos – construyendo nuestro backlog”, y el taller “Construcciones automatizadas e integración continua en entornos Microsoft”.

Esperamos veros a todos por allí…

Un saludo!!!

Intellitrace: una buena razón para comenzar a probar VS2010

De todas las novedades que trae Visual Studio 2010, creo que una que nos facilitará la vida en gran medida a los desarrolladores, es Intellitrace. Este tema ya ha sido tratado en geeks (por ejemplo en varios posts de el gran Bruno), pero me gustaría dar una visión general y un ejemplo muy sencillo que permita intuir su potencia.

Intellitrace (antes conocido como Historical Debugger), supone una gran evolución en la forma en que podemos depurar nuestras aplicaciones. Se trata de un concepto bastante simple, pero que nos proporciona grandes posibilidades: Intellitrace puede grabar la mayoría de eventos y estados que se van sucediendo durante la ejecución de una aplicación. A medida que vamos teniendo todos estos datos grabados, Intellitrace nos permite utilizarlos para reproducir ejecuciones pasadas, e incluso “rebobinar”, o volver a estados anteriores de la aplicación, durante una sesión de depuración.

Como complemento a la capacidad de grabar, reproducir y volver atrás en el estado de las ejecuciones, además disponemos de una completa interfaz de usuario que nos permite analizar con todo detalle las grabaciones de ejecuciones efectuadas, teniendo de forma simple, acceso a datos muy valiosos. Entre estos datos podemos tener por ejemplo los sucesivos valores que van tomando nuestras variables, las posibles excepciones que se hayan producido, los accesos a ficheros y/o registro, e incluso las interacciones del usuario con la aplicación.

Con esto es muy fácil que los desarrolladores de .NET, podamos ir dejando un poco de lado técnicas de depuración basadas en cosas como Debug.WriteLine, bucear entre interminables ficheros de log, y torturas chinas similares.

Intellitrace da soporte a la depuración en diversos escenarios, incluyendo:

  • Grabación de eventos durante la ejecución de la aplicación, de modo que podemos saber fácilmente qué demonios está haciendo nuestra aplicación
  • Depuración basada en reproducir una ejecución grabada anteriormente. Extremadamente útil para reproducir y trazar bugs, y también para facilitar la colaboración de varios desarrolladores durante la depuración
  • Grabación y reproducción de fallos encontrados durante pruebas manuales, de gran interés para trabajar con nuestro equipo de pruebas o QA en la estabilización de nuestra aplicación (se acabó “en mi máquina funciona…”)
  • Depuración pruebas lanzadas durante construcciones automatizadas. Respuesta rápida a preguntas del tipo: las pruebas se ejecutan en mi máquina pero hacen fallar la build… ¿por qué?
  • Depuración de fallos encontrados como resultado de la ejecución de pruebas unitarias
  • Depuración de problemas encontrados durante pruebas de carga (por lo general bastante difíciles de investigar, si no es con la ayuda de mecanismos como las trazas o de la gente del DOT de Plain Concepts)

Como breve introducción a Intellitrace voy a poner un ejemplo extremadamente simple, pero espero que bastante ilustrativo. Es relativo al primer escenario: la grabación de eventos durante la ejecución de la aplicación.

  1. Crear una aplicación de consola en VS 2010 con un código como el siguiente (WARNING: lo que viene a continuación es un cúmulo de burradas, y puede herir la sensibilidad del lector en casi todas las líneas, pero cuanto más cafre sea el código, mejor para el ejemplo. Al fin y al cabo nuestro objetivo es depurar ¿no? :-P)
    using System;
    
    using System.Collections.Generic;
    
    using System.Linq;
    
    using System.Text;
    
    
    
    namespace HelloIntellitrace
    
    {
    
        class Program
    
        {
    
            static void Main(string[] args)
    
            {
    
                while (true)
    
                {
    
                    try
    
                    {
    
                        Console.Write("Introduce un número: ");
    
                        int a = Int32.Parse(Console.ReadLine());
    
                        int b = 1;
    
                        Console.WriteLine((b / a).ToString());
    
                    }
    
                    catch (Exception)
    
                    {
    
                    }               
    
                }
    
            }
    
        }
    
    }
    
    
    
  2. En el menú Tools – Options – Intellitrace – Intellitrace Events, marcar el checkbox “Console”
  3. Iniciar la depuración. Cada vez que se nos pida en consola un número, introducir lo que nos venga en gana: números (incluido el cero), letras, etc.
  4. Sin parar la depuración, pulsar “Break All” en la ventana de Intellitrace y prestar atención a lo que aparece. Como podéis ver, tenemos en orden cronológico, todo lo que la aplicación ha ido haciendo durante su ejecución: excepciones lanzadas, excepciones capturadas, eventos del depurador… incluso la interacción del usuario con la consola. Al hacer click en cualquier entrada, obtendremos información adicional, enlaces a otras acciones, y además iremos al código fuente involucrado en dicho evento. Y en las ventanas de autos y pila tendremos toda la información correspondiente a cada evento grabado. Impresionante ¿no?

 image

Como podéis ver, extremadamente sencillo y potente, y eso que sólo hemos visto muy por encima el primero de los escenarios. Y lo tenéis disponible desde ya, en cuanto os decidáis a bajar la Beta 2 de Visual Studio 2010.

Un saludo!!!

Material del evento: ALM’09 Ecosistemas heterogéneos de desarrollo en TFS

Aquí os dejo la presentación que utilicé durante la charla del ALM’09, Ecosistemas Heterogéneos de Desarrollo en TFS.

Durante la sesión pudimos ver cómo Team Foundation Server, junto a las herramientas de Teamprise y a otros muchos complementos que tenemos disponibles (power tools, herramientas de línea de comandos, etc.), pueden servirnos para gestionar el ciclo de vida de nuestras aplicaciones sea cual sea la tecnología que utilicemos, incluyendo .NET, Java, C y C++, Ruby, Phyton y una larga lista de posibilidades.

Gracias a todos los asistentes, organizadores y a los compañeros que nos obsequiaron con un montón de sesiones de calidad.

Un saludo!!!

Evento ALM’09: Ecosistemas heterogéneos de desarrollo con Team Foundation Server

El próximo 24 de Noviembre, en el Palacio de Congresos del Campo de las Naciones de Madrid, tendré el gusto de participar en el evento ALM Sessions 2009, donde a lo largo de más de 30 ponencias daremos un buen repaso a todo lo que nos ofrecen las herramientas Microsoft para dar soporte a la gestión del ciclo de vida de las aplicaciones, con atención especial a todas las novedades que se acercan con las versiones 2010 de las mismas.

480x325_est

Mi sesión tratará sobre ecosistemas heterogéneos de desarrollo con Team Foundation Server, y en ella intentaré dar una visión general de cómo TFS puede ayudarnos en la gestión del ciclo de vida de proyectos en una gran variedad de plataformas, no sólo limitados a .NET o Visual Studio, sino también Java con eclipse y otros lenguajes y entornos. Las facilidades de uso, administración e integración que proporciona Team Foundation Server, junto al gran trabajo realizado por Teamprise en proporcionarnos acceso a TFS desde una lista cada vez más amplia de entornos, hace que se perfilen como una solución óptima para dar soporte a equipos de desarrollo que trabajen con un conjunto heterogéneo de tecnologías.

Con la reciente adquisición de Teamprise por Microsoft, creo que es un tema que puede suscitar gran interés y que seguramente nos traerá novedades muy pronto.

Aunque no es la primera vez que utilizaré eclipse en un evento de Microsoft, es algo que no deja de parecerme cuanto menos curioso 😉

Y si no os convence del todo mi charla, os recomiendo que no dejéis de asistir al ALM’09, porque seguro que después de ver a monstruos de la talla de Pablo Peláez, Rodrigo Corral, Luis Fraile, Bruno Capuano, o David Salgado (entre otros muchos que me dejo) no os arrepetiréis de haber asistido.

Un saludo y nos vemos el día 24!!!

Plain Concepts, galardonada con los premios Inner Circle 2009

El pasado 3 de noviembre Plain Concepts fue galardonada con los premios Inner Circle Partner Awards, como reconocimiento al trabajo realizado en el área de ALM con tecnologías y herramientas Microsoft. Rodrigo recogió el premio de manos de Julio Fernández Gayoso, Microsoft Sales Manager for Development Tools en Europa Occidental. En la foto podéis ver a Rodrigo junto a un servidor momentos después de recoger el premio 🙂

 

Los premios fueron entregados en el evento celebrado en Roma, en el cual tuvimos la oportunidad además de conocer algunos detalles más de Visual Studio 2010, Team Foundation Server y Test & Lab Manager.

Además de Plain Concepts, por parte de España también recibió el premio la gente de Avanade.

 

 

Enhorabuena a todos los que han trabajado duro en Plain Concepts para hacer posible este premio; espero que sirva de incentivo para hacerlo aún mejor para el año que viene, que además se presenta lleno de posibilidades para los que trabajamos en ALM con tecnologías Microsoft. Y felicidades también para los compañeros de Avanade!!!

Material del evento: CMMI, agilidad y Team System

Ya está disponible en el portal de Calidad del Software el material de la charla que el pasado 19 de junio tuve el placer de dar acerca de la aproximación a CMMI desde las metodologías ágiles y desde Team System. Es una pena que no hubiese mucho tiempo porque el tema puede dar para varias charlas como ésta.

En el enlace tenéis disponible tanto el vídeo de la charla como el powerpoint utilizado en la misma. Por los comentarios del post en el que anuncié el evento, vi que había gente interesada que no pudo asistir, así que espero que lo disfrutéis…

Un saludo!!!

Plain Concepts, distribuidor oficial de Teamprise en España

Un post con algo de publicidad… pero creo que la información puede ser útil.

Me complace anunciar que Plain Concepts ha comenzado a distribuir oficialmente en España los productos de Teamprise, tal y como podéis ver en su web. Junto a la distribución ofrecemos soporte para la instalación y el uso de los mismos desde nuestro departamento de ALM.

Teamprise ofrece principalmente una solución completa para el trabajo con Team Foundation Server desde plataformas basadas en Eclipse. La funcionalidad ofrecida es muy similar a la que tenemos con Team Explorer desde Visual Studio. Esto permite que desarrolladores de plataformas distintas a .NET (por ejemplo Java o C++) que trabajen con Eclipse, puedan utilizar TFS para gestionar todo el ciclo de vida de la aplicación, incluyendo no sólo el control de código fuente, sino la mayor parte de la funcionalidad ofrecida por TFS (gestión de elementos de trabajo, documentación, informes…). Incluso es posible trabajar desde entornos que no sean Windows pero que puedan ejecutar Eclipse, tales como Linux o Mac.

También ofrecen otros productos interesantes como el proxy de uso personal, que permite acelerar el trabajo con el control de código fuente de TFS para desarrolladores que trabajen individualmente, o las herramientas para la integración con Ant que permiten construir aplicaciones Java desde Team Build.

Si no conocéis los productos de Teamprise os recomiendo que les echéis un vistazo, porque pueden ser de gran utilidad sobre todo en organizaciones con equipos de desarrollo mixtos que aborden proyectos basados en distintas tecnologías. Permiten centralizar de forma sencilla toda la gestión del ciclo de vida de las aplicaciones en Team Foundation Server, con todas las ventajas que esto conlleva, empezando por no tener que mantener varios sistemas distintos de control de código fuente o de gestión de elementos de trabajo.

Y si os animáis a utilizarlos sabéis que desde Plain Concepts podemos ofreceros nuestra ayuda…

 

Un saludo!!!

Evento: CMMI, agilidad y Team System

El próximo viernes 19 de junio participaré como ponente en la V Semana del CMMI en Madrid como invitado de Microsoft. Contaré cómo es posible cubrir un gran número de áreas de proceso de CMMI mediante el uso de Scrum y Visual Studio Team System, y cómo podemos avanzar hacia la madurez minimizando la burocracia.

Si a alguien le interesa puede ver más detalles acerca del evento en la web de los organizadores.

Un saludo!!!

Material del evento: Metodologías ágiles y Team System en el mundo real

El pasado jueves 23 de abril tuve el placer de participar, junto a Rodrigo, como ponente en el evento fin de gira ALM’08 de Plain Concepts, “Metodologías ágiles y Team System en el mundo real”.

Tal y como indiqué a los asistentes, aquí dejo el material que utilicé durante el evento: la presentación y el código. Espero que os sea útil…

Un saludo!!!