Luis Fraile - MVP Team System

Welcome to Luis Fraile - MVP Team System Sign in | Join | Help
in Search

Luis Fraile

Blog acerca de Team Foundation Server, Team System, metodologías de trabajo ágiles, y acerca del desarrollo y la tecnología en general

January 2007 - Posts

  • Mis primeros pasos con ASP.NET Ajax

    Hasta ahora, por razones de tiempo, sólo había podido ver algo de ASP.NET Ajax en charlas como en el TechEd y las típicas pruebas que todos hacemos, pero ahora ya por fin, estoy empezando a usarlo en un proyecto de verdad.

    Las primeras impresiones son buenas, es bastante fácil de usar, y lo cierto es que la experiencia de usuario mejora mucho, eso sólo con los ejemplos básicos de Ajax ya lo podemos conseguir.

    También estoy probando algunos controles del Ajax Control Toolkit, y bueno, aquí, aún siendo sencillo de usar, hay algunas cosas que tienen algo más de truco, por ahora, con los que me he pegado más "en serio", han sido con el control de slider, y con el accordion, si bien son fáciles de usar (y ciertamente llevan dentro mucho trabajo que es de agradecer), hay algunas cosillas, como el data binding en el accordion, que son algo mejorables, pero de todos modos, por ahora estoy contento con lo que han hecho y os animo a que lo probéis, yo creo que a nivel de experiencia de usuario merece la pena.

    Y ahora, algunos contras, retomando algunos de los consejos que pude tener en las charlas del TechEd, veo que es muy fácil que, si bien la experiencia de usuario la mejoremos, la eficiencia final de nuestras aplicaciones web se vea afectada, ya que es muy tentador ponerse a crear UpdatePanels, y Autopostbacks, para todo, sin pensar que eso está haciendo una ejecución completa (vaya un postback) en el servidor, aunque nosotros (el usuario que es de lo que se trata) no lo veamos, y por tanto estemos aumentando el tráfico de subida y de bajada (aunque sólo se manden los datos necesarios para actualizar el panel), y las llamadas al servidor.

    Por tanto es importante estudiar bien antes el uso de los controles, el uso del UpdateMode con "Conditional" en los paneles que no necesitemos que se actualicen siempre, y usando los Triggers para actualizarlos, así como comprobar si podemos conseguir la misma experiencia de usuario con otros mecanismos como es el uso de llamadas a webservices desde Ajax.

    Pues nada, a probar y aquí os dejo un link a los tutoriales de ASP.NET Ajax y a una herramienta desarrollada por Nikhil Kothari que nos puede ayudar bastante en el desarrollo de aplicaciones web, el web developer helper

    Ya os iré contando con más detalle que tal acabo con el Ajax ...

    Posted Jan 31 2007, 09:53 AM by lfraile with no comments
    Filed under:
  • Atajos de teclado para Visual Studio 2005

    Acabo de ver en el blog de Rob Caron, los posters de los atajos de teclado para Visual Studio 2005 para C#, VB.NET y C++, aquí os dejo los links, que es interesante tenerlo:

    Si sois fanáticos del uso del teclado, como yo, os vendrá bien tener el del lenguaje que más uséis impreso.

    En el TechEd 2006 en Barcelona, dieron copias ya impresas, pero lógicamente volaron y no pude pillar ninguna L

  • Leido: Software Engineering With Microsoft Visual Studio Team System

    Acabo de terminar de leer este libro de Sam Guckenheimer, otro compañero de geeks.ms, Rodrigo Corral, ya habló de este libro, y ahora me toca a mí, lo compré ya que otro MVP de Team system habló de el en el TechEd, y me pareció interesante, si ya ha pasado mucho tiempo, pero hasta ahora no he podido leerlo, ya que he estado ocupado sacándome el carnet de moto J

    El libro en general se hace bastante sencillo de leer, y eso me ha gustado, ya que es un libro perfecto para la gente que está empezando a gestionar o a trabajar en proyectos con Team System, y habla de cómo usar Team System en los proyectos de un modo muy sencillo, quizá se echa en falta algo más de profundidad en ciertos temas, pero como el propio autor dice en las conclusiones, pretende ser un libro introductorio.

    Todo el libro lo centra desde la perspectiva de la gestión de los proyectos desde la perspectiva de "value-up", que, resumiendo bastante, ya que ocupa dos capítulos del libro en detallarla, esto es, trabajar siempre desde la perspectiva de construir la solución iterativamente, centrándonos en aportar siempre valor al cliente, y tomando los cambios como oportunidades de incrementar ese valor, adaptándonos a ellos.

    Casi todo el libro se centra en metodologías ágiles de gestión, pero también hace bastantes apuntes acerca de cómo utilizar Team System en proyectos con CMMI, que requieren más datos para ser auditados a posteriori.

    Otro punto interesante del libro es la diferenciación que hace siempre, entre la utilización de métricas de modo descriptivo contra las métricas usadas de modo prescriptivo, teniendo que tener mucho cuidado con estas últimas, ya que se pueden volver fácilmente en contra del proyecto. Esto lo podemos ver a lo largo de todo el capítulo de gestión de proyectos, así como el capítulo de "troubleshooting" de proyectos.

    También dedica capítulos acerca del desarrollo, el testing y la gestión de bugs que se puede hacer en Team System, como son las Team Builds, la integración contínua, la gestión de bugs con work items, y que son "armas" muy valiosas para después poder afinar en la gestión del proyecto, usando los datos proporcionados por estas herramientas en los informes de Team System, todo este proceso de descubrimiento de los puntos "débiles" del proyecto, y de cómo solucionarlos, los da en el capítulo 9, el de "troubleshooting" de un proyecto, este capítulo, a pesar de no entrar en mucha profundidad, es bastante interesante, ya que aquí podemos ver algunos de los típicos problemas que se dan en los proyectos, como detectarlos con Team system, y que posibles soluciones se le dan, en definitiva un capítulo bastante recomendable.

    Y ya por último, me gustaría comentar el capítulo acerca de la arquitectura, y que nos explica como debemos empezar a definir una arquitectura, para hacerla lo suficientemente flexible a la hora de los cambios, esto es bastante importante a la hora de gestionar un proyecto "ágil" en el que se promuevan los cambios, y es un punto en en el que no siempre se acierta, creando a veces arquitecturas muy rigídas y que luego nos dificultan el cambio.

    Por último, igual que Rodrigo, también es interesante el capítulo de gestión de los requerimientos y las estimaciones de proyecto y de las iteraciones, aunque sea bastante por encima, da una visión de cómo se deben gestionar estos elementos, que son la base de los proyectos (recordemos que lo más importante es dar soluciones que aporten valor a los requerimientos del cliente).

    En definitiva, y como decía al principio, os recomiendo que leáis este libro todos aquellos que estéis interesados en metodologías de gestión de proyectos y/o estéis involucrados en un proyecto con Team System.

  • Uno o dos ficheros con detalles de instalación de TFS

    Los que ya habéis instalado Team Foundation Server, sabéis que, a pesar de ser tan "sencillo" como seguir los pasos de instalación del documento, no siempre se llega a instalar bien, siendo especialmente sensible y teniendo que tener en cuenta todos los detalles de la instalación.

    Actualmente existe el fichero de guía de instalación, y también un documento "readme" que está en el MSDN, con los posibles problemas de instalación, pues bien, el equipo de User Education de Team Foundation, está pidiendo opinión sobre si poner todo en un único fichero, o seguir como hasta ahora,, así que os animo a todos los que estéis involucrados con esto, a que deis vuestra opinión, aquí tenéis el post del equipo para que podáis dar vuestra opinión.

    Why aren't installation issues in the installation guide?

    La mía es: un único fichero, con un índice detallado para que no haya dudas de dónde buscar la información dentro del fichero.

  • TFSBuildManager

    La semana pasada leí en el blog de Buck Hodges acerca de una herramienta que han puesto en Codeplex, que permite trabajar con las Team Builds sin el Team Explorer, y después de pegarme un poco con las builds y los ficheros xml de configuración me he deidico a probarla, la herramienta en cuestión es el TFSBuildManager. Lo que nos permite básicamente es trabajar con tipos de builds (y sus resultados) ya existentes.

    Lo primero que me llama la atención es que no tiene un instalable, simplemente la descargamos, extraemos los ficheros del zip, y ya podemos empezar a trabajar, una vez arrancada, seleccionamos el servidor y el proyecto de Team Foundation. En la primera pantalla se nos muestra el listado de los resultados de las builds del proyecto seleccionado, y aquí podemos filtrar ya sea por proyecto o por tipo de build y por supuesto cambiar la "calidad" de una build.

    Una cosa que me gusta de esta primera pantalla, aunque no sea muy ortodoxo, es la posibilidad de borrar un resultado de una build, cosa que no se puede hacer desde el Team Explorer, y aunque no estoy de acuerdo en hacerlo, pero a veces, al configurar la build se nos escapa algo, y la primera vez no funciona, no porque la build esté mal, si no por la propia configuración de la build, de este modo podemos eliminar estos resultados, al borrar, se eliminan tanto los resultados, como los binarios (de existir) del directorio de deploy.

    También desde esta primera pantalla, seleccionando una build, se nos permite ejecutarla, parar su ejecución, y algo muy interesante: editarla, esto me ha gustado bastante, la edición de team builds, que no se puede hacer en team explorer más que modificando manualmente el xml de la build.

    Esta edición nos permite cambiar el servidor de team build, los directorios donde se compilará y se dejarán los binarios, una cosa muy interesante, que es la posibilidad de personalizar el work ítem asociado que se crea cuando falla una build, y cambiar los campos título, descripción, el texto de dónde está el fichero de log, y el texto indicativo de los errores y warnings, también nos permite cambiar si queremos ejecutar el análisis de código estático, ejecutar los test unitarios (aunque aquí parece que no se le puede especificar la lista de test) , también nos permite cambiar la configuración de la build (debug, Release, mixed plataforms, etc), y la solución a compilar.

    Vaya que esto de editar las builds me ha gustado bastante, y os recomiendo la herramienta, que por ahora no me ha dado ningún problema.

    La versión 1 ya está en producción, y ya tienen pensadas nuevas mejoras.

    Así que nada, os animo a que la probéis.

  • Nueva versión CTP de “Orcas”

    Noticia rápida, ya está disponible la nueva CTP de la siguiente versión de Visual Studio, con codename "Orcas". Esta es la CTP de enero, la podéis descargar por partes aquí: http://www.microsoft.com/downloads/details.aspx?FamilyId=1FF0B35D-0C4A-40B4-915A-5331E11C39E6&displaylang=en

    Es una maquina virtual, por lo que necesitaremos Virtual PC o Virtual Server R2, la pena es que hay que descargarla por partes (son 8) y no hay un descargable único L

    A ver si la bajo y os cuento las nuevas mejoras de las que ya están hablando en los blogs de producto.

  • Plantilla de Scrum para Team Foundation I

    Como ya comenté, desde diciembre estoy como "independiente", y en el proyecto que estoy actualmente, estoy colaborando con un amigo mío de hace mucho tiempo, en introducir una metodología de trabajo para un grupo de desarrolladores de software, y basándome en su modo de trabajar actual, y lo que están haciendo, estoy introduciendo una metodología ágil y bastante ligera, que me gusta especialmente, y que es Scrum (os recomiendo la lectura de los post de Scrum de Rodrigo Corral en castellano).

    Para ello también están evaluando el uso de Team Foundation como herramienta de gestión del ciclo de vida completo de un desarrollo de software, con lo que estamos probando las plantillas realizadas por Conchango y que podéis descargar aquí.

    Esta plantilla ya la había estado viendo (estuve probando la Beta), pero hasta ahora no había tenido la oportunidad de probarla en un entorno real, con lo que tampoco podía dar mucho feedback de ella, como ahora si que la estoy usando, vamos a ver unos primeros apuntes sobre su uso y capacidades.

    Una vez descargado el zip (tenéis que registraros), tenemos dos partes a instalar:

    • Utilites: estas son herramientas de "cliente", estás herramientas de cliente incluyen un gestor de listas, ya que como contaré más adelante, hay ciertos valores de los campos de Work Items que se sacan de listas globales, un instalador de informes para los proyectos creados con esta plantilla, y un gestor del datawarehouse del servidor (para reconstruirlo). También incluye una utilidad de migración de proyectos.
    • Scrum for Team System: esta es la parte de plantillas a instalar en el servidor.

    Empezaré por la parte de servidor, la instalación es bastante sencilla con un msi, esta instalación nos agrega la plantilla de proyectos, esta plantilla de proyectos nos agrega:

    • Tipos de work ítem:
      • Product backlog: mediante este tipo de work ítem podremos agregar todos los entregables de nuestro producto tal como define Scrum. Tampoco hay mucho que decir de este tipo de work ítem, le podemos asignar so valor relativo para priorizarlo, así como el "owner", que en este work ítem, no se corresponde con los usuarios de TFS, si no con uan lista global que se crea durante la instalación de la plantilla, y que podemos editar con las utilidades de cliente.
      • Sprint: con este tipo de work ítem daremos de alta los diferentes sprints que tengamos (recordad que Scrum es iterativo con iteraciones de un mes), en este tipo de work ítem tenemos que darle obligatoriamente un número de sprint, que será usado después en los backlog ítems del sprint, otros campos que también informaremos, es el número de horas disponible para este sprint( "Capacity"), si es un sprint de release, así como las fechas. Por supuesto tenemos también la descripción, enlaces a otros work ítems y/o documentos, etc.
      • Sprint backlog ítem: en estos work ítems daremos de alta las tareas que se han decidido completar en este sprint, estas no tienen porque coincidir exactamente con los product backlog ítems, pero si han de ser parte de alguno de los entregables del proyecto, con el objetivo de que todas las tareas que se hagan estén orientadas hacia las necesidades del producto, para poder comprobar esto tenemos un informe que nos agrega esta plantilla y que a mi me ha parecido bastante interesante para evitar las tareas "huérfanas", este informe es el Product Backlog Composition que nos relaciona, para cada sprint, los items del product backlog que se están realizando, y la composición de tareas para cada uno de ellos (los sprint backlog items), mostrándonos como "Orphan" los sprint backlog items que no pertenecen a ninguna tarea del product backlog. Además estos items, podrán ser de tipo tarea, bug o impedimento.
      • Sprint retrospective ítem: estos items se crearán en la reunión de retrospectiva de un proyecto, y tenemos tres tipos de ítem de retrospectiva: What didn't go so well, What we can do better y What went well. Estos se los podemos asignar, tanto a un usuario concreto, como a un grupo de la lista globales de grupos.

    Como podéis ver, el conjunto de work items es muy sencillo de gestionar, y al igual que Scrum está orientado a ser lo más ligero posible. Con respecto a los work items, si bien es bastante cómodo trabajar con ellos, hay un par de aspectos que pueden resultar algo "incómodos" en proyectos grandes, el principal que le veo, aunque no es nada crítico, es la necesidad de introducir manualmente el número de sprint en cada sprint backlog ítem, lo ideal sería que se pudiesen sacar de una lista global, como los equipos, que podría popularse mediante el sistema de eventos de TFS cada vez que se crea un nuevo work ítem de tipo sprint. Pero la sensación general es que es bastante cómodo trabajar con ellos.

    Otro punto interesante de la plantilla es la guía de proceso que nos crea (y que es el único documento que se genera en la librería de sharepoint), y que es bastante útil a la hora de gestionar el proyecto, si bien echo en falta algo más de detalle a la hora de explicar los distintos work items que hay y los datos que hay que introducir para personas que no tengan muchos conocimientos de Scrum, pero también es cierto, que si vamos a trabajar con Scrum, antes, como mínimo, deberíamos leer el libro de Ken Schwaber, sobre gestión de proyectos con Scrum: Agile Project Management with Scrum.

    También con la plantilla se nos crean todo un conjunto de informes que podremos consultar, y que son informes relativos a la marcha del proyecto, como no quiero alargar mucho este post, lo dejo para un siguiente capítulo sólo para ellos.

    Y ahora vamos con las herramientas de cliente, estas las instalaremos, generalmente, en la máquina del ScrumMaster: estas herramientas son:

    • Editor de listas globales: con esta herramienta editamos las dos listas globales que tenemos para los work items, estas son:
      • Lista de entornos: en esta lista vamos a definir los entornos que tenemos estos pueden ser como :desarrollo, preproducción, producción,… o como: servidor, cliente, los que nosotros queramos definir, estos entornos se usan en los work ítem de sprint backlog de tipo bug, en la pestaña de bug details, para gestionar los errores.
      • Lista de equipos: estos son los distintos equipos que tenemos y a los que se les asignaran items de product backlog y los sprint retrospective items.

    Me ha gustado este modo de poder extender el sistema de propietarios de tareas de TFS, para poder crear grupos, que es bastante útil en determinadas situaciones, y el poder editar estas listas desde una herramienta.

    Otras herramientas y que voy a mencionar sólo brevemente son, la herramienta de migración, que nos permite migrar los datos de un proyecto de Scrum existente a otro, el instalador de informes que comentaba al principio y del que comentaré más cuando escriba el post sobre los informes, y la herramienta de gestor del datawarehouse, que nos permite popular los cubos del datawarehouse, sin necesidad de esperar a la ejecución del scheduler de TFS, mediante la llamada a los webservices (ojo con esto que no está ni recomendado ni soportado por Microsoft), de TFS.

    Pues nada por ahora esto queda aquí, con una explicación de los componentes de la plantilla, y una primera opinión acerca de la parte de los work items.

    Hasta la siguiente entrega J

  • Interesante wiki acerca de arquitectura

    Un link interesante acerca de arquitectura de sistemas que ha encontrado Enrique Blanco:

    System Arquitecture

    Interesante lectura para todos los interesados en temas de arquitectura de software.

  • Me han marcado

    Bueno mi ex compañero de Universidad Jorge Serrano me ha marcado, y ahora tengo que contar 5 cosas sobre mi que no mucha gente conozca, lo cual es difícil, porque no tengo demasiados secretos ocultos, pero bueno.

    1. No me gustan nada los deportes tipo fútbol, baloncesto, y cualquier cosa que incluya objeto esférico que pueda estrellar a gran velocidad contra mi cara, no me gusta ni siquiera verlos por la tele, me aburre, sin embargo, cualquier deporte que incluya naturaleza, como puede ser bici de montaña, senderismo, escalada, alpinismo (aunque este no le practico) y por debajo del agua como el buceo me encantan, tanto practicarlos (aunque algunos como la escalada los tengo abandonados), como leer artículos, ver fotos o vídeos sobre ellos, de hecho me encanta ir a la librería Desnivel a ver conferencias de alpinistas y escaladores.
    2. Me gusta la música, casi todo tipo de música, de jovenzuelo me encantaba la música rock tipo La P***a Records, Rosendo, y similares, música Ska (pero de la buena, no los SkaP), tipo Specials, Skatalites y similares, y también el heavy metal, desde lo más flojito hasta lo más duro, luego también me ha gustado bastante la música electrónica (que no el bakalao), y ahora procuro oir de todo un poco, excepto toda la música "enlatada" tipo OT que se lleva ahora, esa no la soporto. De hecho de "adolescente" tuve dos grupos de música, uno de música Thrash metal, y otro de músca más punk, yo tocaba la batería, y era muy malo J, pero nos divertíamos, hasta que el sitio en el que ensayábamos y dábamos conciertos (mi antiguo colegio, los Salesianos de Estrecho), decidieron que ese tipo de grupos no encajaban muy bien allí.
    3. Siempre me ha gustado colaborar en proyectos de tipo "social", llevo desde muy joven involucrado en una asociación de trabajo con drogodependientes, la Asociación Proyecto Hogar, y por ahí he pasado, desde ayudar a los trabajadores con la informática cuando tenía unos 14 ó 15 años (ese wordperfect, Lotus 123, …), ser voluntario en proyectos de "calle" (aunque yo no hacía trabajo de calle), objetor en un piso de estancia de menores (que fue un proyecto pionero), hasta ser miembro de la junta directiva de la asociación pasando por casi todos los puestos de la junta: vocal, secretario y "vice" (sólo me faltan tesorero y "presi"), ahora mismo soy un socio más, y les ayudo con el tema de cuentas de correo electrónico, ordenadores (cada vez menos esto último), y estoy a ver si hacemos una web. También he colaborado en otros proyectos como por ejemplo en la famosa acampada por el 07 que se hizo en Madrid, y que yo estuve yendo todos los fines de semana que duró la acampada a la que entré por una persona que ha influido en este aspecto de mi vida bastante, y que es Pablo Martínez Osés.
    4. No me gusta el tema de las modas de vestir ni similares, sólo compro ropa cuando la que tengo está demasiado destrozada, y compro lo que en el momento me guste más sin preocuparme de si está de moda, como me puede quedar ni nada, lo único en este aspecto que si que me considero algo "pijo" es que siempre compro colonia Calvin Klein Be, que me encanta J.
    5. Me encantan cualquier artilugio con ruedas, desde las bicicletas (me encanta la bici de montaña), pasando por coches, motos, etc…, me encanta todo lo relacionado con ello, y también me gustan mucho las carreras de coches y de motos, así como la velocidad, actualmente tengo bicicleta de montaña, coche, una moto de 125cc (Suzuki VanVan, preciosa), y me estoy sacando el carnet de moto para comprarme una BMW F650GS, lo que me da pena, es que tendré que vender la Suzuki VanVan que me encanta. Pero bueno, quiero una moto más grande porque me encantaría empezar a hacer viajes en moto, que es otra de mis pasiones: viajar, a dónde sea y como sea, pero viajar y conocer gente.

    Pues nada ya he puesto 5 cosas sobre mí, y ahroa me toca marcar a otros, pues nada a ello vamos, al primero que voy a marcar es a César de la Torre, por haberme nominado a MVP J, después Enrique Blanco, a Roberto González (cuenta lo del bocata de gofresss), a Daniel Matey otro nuevo MVP de este año, y a alguien que hace mucho que no tengo contacto con él, pero que me gustaría recuperar, a Alfredo Reino.

  • Nueva guía de instalación de Team Foundation Server

    Hola a todos, espero que los reyes os traigan muchas cosas (si os habéis portado bien este año) a todos, yo aquí os dejo un regalito: ha salido una nueva actualización de la guía de instalación de Team Foundation Server, que incluye actualizaciones para soportar Visual Studio 2005 SP1, la nueva versión es la 8.0.61230, aquí os dejo el link:

    Guía de instalación de Team Foundation

    Fuente: Installing Team Foundation Server with Visual Studio 2005 SP1

  • Un buen comienzo de año – MVP de Team System

    Feliz año 2007 a todos J. Espero que esté comenzando el año igual de bien para todos que para mí.

    Para mí ha sido un muy buen comienzo de año, ya que acabo de recibir un correo que me confirma como MVP de Team System J, para los que no lo conozcáis, MVP es un programa para los profesionales que trabajamos con tecnologías Microsoft, y que te reconoce una especial colaboración (en foros, eventos, etc. …) en una determinada tecnología, en mi caso en Team System.

    Como os podéis imaginar, me alegra bastante que me hayan hecho este reconocimiento (que además tiene bastantes ventajas que podéis consultar en la página de MVP), y simplemente quería mostrar mi agradecimiento a gente como César de la Torre, o Martin Woodward, que me han dado su apoyo, así como a Cristina, la MVP Leader de España por su apoyo, gracias.

    Y bueno, ahora espero estar a la altura de la nominación, y seguir colaborando activamente en los foros y comunidades de usuario, a ver si puedo incrementar mi participación también en grupos locales como el grupo de usuarios de .NET de Madrid (http://madriddotnet.com ), a ver si hago de esto un propósito de año nuevo, … pero de los que se cumplen.

    Posted Jan 01 2007, 08:32 AM by lfraile with 2 comment(s)
    Filed under:
Powered by Community Server (Non-Commercial Edition), by Telligent Systems