[VS2010] HowTo: Invocar el formulario de seleccion de Team Project desde C#

image47dd1de4

Buenas,

este es un post donde me apunto para no olvidarme las 10 líneas de código que se necesitan para lanzar el formulario de selección de Team Project en Visual Studio 2010.

El siguiente ejemplo, utiliza la clase TeamProjectPicker y muestra un formulario de selección modal para la selección de una Team Project Collection:

 

   1: private static Uri SelectTeamProjectCollection()

   2: {

   3:     Uri uri = null;

   4:     var projectPicker = new TeamProjectPicker(TeamProjectPickerMode.NoProject, false)

   5:                             {

   6:                                 Text = "Selección de Team Projects",

   7:                                 AcceptButtonText = "Seleccionar"

   8:                             };

   9:  

  10:     if (projectPicker.ShowDialog() == System.Windows.Forms.DialogResult.OK)

  11:         uri = projectPicker.SelectedTeamProjectCollection.Uri;

  12:     return uri;

  13: }

 

El formulario resultante es el siguiente, donde vemos que podemos seleccionar elementos a nivel de Team Project Collection:

image

 

Si en cambio queremos seleccionar un Team Project, la siguiente función es el ejemplo:

   1: private static Uri SelectTeamProject()

   2: {

   3:     Uri uri = null;

   4:     var projectPicker = new TeamProjectPicker(TeamProjectPickerMode.SingleProject, false)

   5:     {

   6:         Text = "Selección de Team Project",

   7:         AcceptButtonText = "Seleccionar"

   8:     };

   9:  

  10:     if (projectPicker.ShowDialog() == System.Windows.Forms.DialogResult.OK)

  11:         uri = projectPicker.SelectedTeamProjectCollection.Uri;

  12:     return uri;

  13: }

 

Y al ejecutar la misma, se nos mostrará el siguiente formulario:

image

 

El código fuente de los ejemplos se puede descargar desde

Saludos @ Alicante

El Bruno

   

[TFS2010] HowTo: Refrescar los contenidos del cache de Team Web Access

image47dd1de4

Buenas,

hace una pila de tiempo, escribí un post donde mostraba como configurar el path del Cache para el Team System Web Access. Un par de versiones de Team Foundation después, esto es mucho más simple, y además también es mucho más simple el refresco de los datos con los que trabaja Visual Studio 2010 Team Web Access.

Para esto simplemente tenemos que desplegar el menú superior a la derecha y seleccionar la opción [Settings // Refresh Cache]

image

Más simple no se puede Open-mouthed smile

Saludos @ Here

El Bruno

   

[TFS2010] HowTo: Crear un plan de BackUp de los elementos de un server Team Foundation

image47dd1de4

Buenas,

hacer un BackUp de los elementos de un servidor Team Foundation Server es una tarea que no tiene muchos problemas. Todo el contenido del servidor se encuentra en la base de datos SQL Server, con lo que si está bien configurado el BackUp del mismo, pues muchos más problemas no hay. Sin embargo, como también tenemos información en otros repositorios, como por ejemplo SharePoint, pues el concepto de BackUp se complica un poco más. Por suerte, con el lanzamiento de las TFS Power Tools de Marzo del 2011, se ha incorporado una feature más que nos ayuda a definir un BackUp y ejecutar el mismo.

El siguiente tutorial demuestra como crear un plan de BackUp para un servidor Team Foundation Server 2010.

Tutorial

1. Abrir la consola de administración de Team Foundation Server y seleccionar la opción [Team Foundation BackUp]

image

2. Dentro de la misma seleccionar la opción [Create Backup Plan]. Esta opción lanza el asistente para la definición de un plan de BackUp.

3. En primer paso es definir una ruta de red donde almacenar el resultado del proceso de BackUp. Además de opciones como la política de retención y las extensiones a guardar.

image

4. A continuación se definen los contenidos extras, además del TFS que se almacenarán en el BackUp. Las opciones son bases de datos de Reporting Services y bases de datos de SharePoint.

image

5. El próximo paso es definir la cuenta de usuario con la que se ejecutará el proceso de BackUp.

image

 

6. Si tenemos acceso a un servidor SMTP, podemos configurar una alerta por correo para la ejecución de cada BackUp. Hace un tiempo escribí un post al respecto sobre como hacer esto utilizando una cuenta de GMAIL.

image

 

7. El siguiente paso es la definición de la agenda de ejecución del Backup, con las opciones básicas para esta acción.

image

 

8. Se realiza una verificación de los datos del plan de BackUp.

image

9. Y listo, ya podemos crear el plan de BackUp de nuestros contenidos de TFS.

image

 

10. A partir de este momento, ya podemos lanzar un BackUp de forma manual, consultar el estado de los procesos de BackUp o restaurar los contenidos desde un Backup realizado anteriormente.

image

Saludos @ Here

El Bruno

   

[VS2010] Spec Explorer 3.5

image47dd1de4

Buenas,

si quieres un poco de ayuda al momento de generar tus pruebas: Spec Explorer puede serte de bastante utilidad. Esta extensión para visual Studio 2010, permite definir Behaviors a través de reglas en C# o de expresiones basadas en un patrón. A partir de estos contenidos, que se consideran “modelos”, luego la herramienta nos permite trabajar en modo “test-case”.

Ahora que en la versión 3.5 se incorpora la capacidad de reinspeccionar los cambios en un modelo para reflejar los mismos en las pruebas y que las “exploraciones” se han mejorado bastante, creo que ya lo considero bastante maduro como para dejar de utilizarlo en proyectos de prueba y darle una oportunidad en algún proyecto real.

Si te gusta probar algo nuevo, pues Spec Explorer puede darte una álegría Open-mouthed smile

Saludos @ Alicante

El Bruno

   

Descarga: http://visualstudiogallery.msdn.microsoft.com/271d0904-f178-4ce9-956b-d9bfa4902745/

[MSRESEARCH] Debugger Canvas

Buenas,

de la mano de los padres de Code Contracts y Reactive Extensions, los chicos de DevLabs se sacan otro productazo de la manga con “Debugger Canvas”. Debugger Canvas es una extensión para Visual Studio 2010 (Ultimate exclusivo) que nos permite ver para “step” en un proceso de depuración en un canvas nuevo, conectando a los mismos entre sí. Esto es realmente útil ya que podemos ver el flujo de ejecución de un proceso simplemente por los miembros que pasa el mismo. Es mucho más cercano al ideal de tratar a los objetos y clases como lo que son, en lugar de archivos de texto.

Bueno, es mucho pedir que siendo tan corto de expresiones como soy pueda explicar Debugger Canvas, mejor un video y a esperar hasta junio que será la fecha de release:

Saludos @ Here

El Bruno

   

[EVENTO] Materiales de Kinect SDK for Windows en MIX

image

Buenas,

hace unos minutos he terminado mi sesión sin demo sobre el SDK de Kinect para Windows. Ha sido la primera presentación en años que hago en la que no abro Visual Studio, cosa rara para mi. Las slides de la presentación se puede descargar desde:

Y el video completo de la presentación del SDK en el MIX se puede descargar desde http://channel9.msdn.com/Blogs/C9Team/Kinect-Demos-with-the-Channel-9-team

En el video, los minutos interesantes para ver son los siguientes:

  • 01:00 Kinect for windows SDK
  • 02:00 hello world app
  • 03:00 DrawLine
  • 07:00 KinectCar
  • 10:15 Microsoft Worldwide telescope
  • 14:45 NAVI
  • 18:00 FROG Game

Saludos @ Here

El Bruno

   

[VS2010] HotFix: Mejora en el editor de WF (¿mejora?)

image47dd1de4

Buenas,

hace un tiempo publiqué en un post, un truco no oficial para desactivar las validaciones en tiempo de ejcución en el editor de Workflow Foundation de Visual Studio 2010. Esto lo hice porque al momento de editar definiciones de Builds de Team Build 2010, pues el IDE de Visual Studio 2010 se iba a dar una vuelta por Narnia y era imposible trabajar con el mismo.

Después de tocar muchos los huevos seguir pidiendo soluciones al equipo de producto, pues parece que hay un HotFix por allí que ayuda a mejorar un poco más el rendimiento del editor, el mismo se puede descargar desde > http://support.microsoft.com/kb/2484841.

Un par de detalles relacionados con el HotFix:

  • El editor sigue igual de lento, asi que un #FAIL en este punto
  • Es probable que Visual Studio 2010 se cuelgue un par de veces antes de comenzar a funcionar correctamente. Deberías probar desinstalando e instalando el HotFix una segunda vez para ver si funciona mejor.

In the meantime, yo seguiré preguntado al equipo de producto de TFS para que molesten a los de VS que a su vez molestan a los de WF para ver si hay una solución decente por allí Open-mouthed smile

 

Saludos @ Home

El Bruno

   

[EVENTO] MIX-Legacy > Windows Phome, Kinect, HTML5, Silverlight … mas?

Buenas,

si todavía estas con resaca del MIX y no tenés tiempo para terminar de absorber las novedades del TechEd, el próximo lunes 23 en Madrid y el Martes 24 en Barcelona, te podes pegar un poco con parte de las novedades que se comentan estos días sobre desarrollos para Windows Phone, Azure, Kinect, HTML 5, Silverlight, etc.

Todo esto de la mano de Microsoft Spain y Netalia, y de grandes como Marino Posadas, Braulio Diez, Miguel Jimenez, Gisela Torres, Jose Luis Latorre, Jose Miguel Torres, Nicolas Sanchez, algún otro que se cuele por allí además del que suscribe.

El registro > http://msdn.microsoft.com/es-es/gg191710

Saludos @ Here

El Bruno

   

[ENTLIB] Enterprise Library 5.0 Silverlight Integration Pack Released

patterns & practices Developer Center

ELSLBuenas,

casi se me olvida, el equipo de Patterns & Practices de Microsoft ha liberado el Silverlight Integration Pack para Enterprise Library. Este conjunto de componentes nos permite aprovechar las ventajas de Enterprise Library para los desarrollos sobre Silverlight.

Inicialmente esta release incluye:

  • Caching Application Block with support for:
    • In-memory cache
    • Isolated storage cache
    • Expiration and scavenging policies
    • Notification of cache purging
  • Validation Application Block with support for:
    • Multi-level complex validation
    • Attribute-based specification of validation rules
    • Configuration-based specification of validation rules
    • Simple cross-field validation
    • Self-validation
    • Cross-tier validation (through WCF RIA Services integration)
    • Multiple rule-sets
    • Meta data type for updating entities with external classes in Silverlight
    • Rich set of built-in validators
  • Logging Application Block, including:
    • Notification trace listener
    • Isolated storage trace listener
    • Remote service trace listener with support of batch logging
    • Implementation of a WCF Remote logging service that integrates with the desktop version of the Logging Application Block
    • Logging filters
    • Tracing
    • Logging settings runtime change API
  • Exception Handling Application Block, including:
    • Simple configurable, policy-based mechanism for dealing with exceptions consistently
    • Wrap handler
    • Replace handler
    • Logging handler
  • Unity Application Block – a dependency injection container
  • Dependency injection container independence (Unity ships with the Enterprise Library, but can be replaced with a different container)
  • Unity Interception mechanism, with support for:
    • Virtual method interception
    • Interface interception
  • Policy Injection Application Block, including:
    • Validation handler
    • Exception Handling handler
    • Logging handler
  • Flexible configuration options, including:
    • XAML-based configuration support
    • Asynchronous configuration loading
    • Interactive configuration console supporting profiles (desktop vs. Silverlight)
    • Translation tool for XAML config (needed to convert conventional XML configuration files):
      • Standalone command-line tool
      • Config console wizard
      • MS Build task
    • Programmatic configuration support via a fluent interface
  • StockTrader V2 Reference Implementation (RI) (via a separate download; final version to be released in the coming days)

Otra de las novedades interesantes que posee EntLib desde hace tiempo, es que la además del instalador clásico de instalación, hoy podemos utilizar EntLib a través de paquetes NuGet

Descargas:

Saludos @ Home

El Bruno

   

Fuente: http://blogs.msdn.com/b/agile/archive/2011/05/11/silverlight-integration-pack-for-microsoft-enterprise-library-5-0-released.aspx

[VNEXT] El proximo Visual Studio vNext (II)

Serie:

Buenas,

vamos con algunas de las novedades que se comentan en el TechEd sobre la nueva versión de Visual Studio:

IntelliTrace en Producción

Si utilizas IntelliTrace ya te puedes hacer una idea de la potencia que puede llegar a tener esta herramienta si la activamos en producción para la detección de bugs en tiempo real. Aquí no me quiero olvidar de recalcar que esto es “nefasto”, que nunca deberíamos buscar Bugs en Producción, pero cuando nos toca, mejor tener las mejores herramientas posibles. Las demos del TechEd son muy bonitas porque muestran un website, al que se le activa el IntelliTrace utilizando PowerShell en 5 segundos, se reproduce un error y luego se lee la traza histórica del IT hasta dar con el mismo. Esto en un entorno real es muchísimo más complejo, pero bueno, con tiempo y las trazas de IT bien seccionadas, es una ayuda más.

Nuevos DashBoards en Team Explorer Web Access

Seguramente este no será el nombre oficial al final, pero este es uno de los avances más esperados ya que incorpora funcionalidades 100% orientadas al trabajo ágil para la gestión de proyectos con Team Foundation Server. En el menú superior del WebAccess podemos ver los accesos a los WorkItems, Source, Build, etc. que ya conocemos.

image

Pero los interesantes en este punto son las 2 nuevas vistas de información que se incorporarán con vNext. Por ejemplo, en el caso de BackLog, en el mismo podremos ver un vistazo rápido de nuestro PB, con la capacidad para agregar elementos rápidamente al mismo y además la vista del trabajo pasado, actual y futuro. Se incorporan funcionalidades muy cool, como la de ordenar los elementos directamente con Drag & Drop, y luego nuevamente con Drag & Drop, poder colocar los elementos del PB en la situación que deseemos: pasado, actual y futuro. Arriba a la derecha, es posible ver un pequeño chart con los puntos de usuario que se han podido “utilizar” en las iteraciones pasadas, comparados con la capacidad disponible, de forma que podemos ir refinando nuestro concepto de capacidad a medida que avanzamos.

image

Otra vista en el nuevo Team Foundation Server Web App, es la que tenemos para analizar y trabajar con nuestros Sprints. La siguiente imagen, muestra como el siguiente dashboard nos permite ver de un plumazo el estado actual de los elementos del Sprint, tanto a nivel User Stories como Tasks, y además ver la carga de trabajo para cada uno de los integrantes del equipo. Una vez más en las secciones Top-Right tengo diferentes charts que me muestran información en tiempo real relacionada con mi proyecto. Si por ejemplo, veo que la capacidad de trabajo de mi equipo está en peligro, puedo arrastrar una User Story a una iteración futura y los datos de los charts se actualizarán en tiempo real.

image

Si eres un fanático de los tableros y los PostIts, pues esta nueva vista de Boards seguramente te gustará mucho. En la misma podemos descomponer cada una de las User Stories de nuestro PB en las tareas que tiene, y ver la clásica vista de pizarra con los elementos dentro de la misma. En este punto, el gran aliado es el Drag & Drop … Open-mouthed smile. Existen reglas para validar los elementos, tiempos de vacaciones, filtros por personas, etc. para agilizar nuestro trabajo sin necesidad de jugar con Excel + VS para este trabajo.

image

Panel Team Navigator

Otro gran avance es este nuevo panel que además ser una especie de acceso directo a los elementos de trabajo con Team Foundation, nos pemite realizar acciones rápidas de CheckIn, revisión de Builds, status, etc. Un ejemplo interesante que se muestra en el TechEd, es un escenario donde se me pide una modificación urgente en un archivo, y para no perder mi entorno de trabajo actual, pues el mismo se graba con un snapshot (o shelveset), realizo el cambio que me han solicitado y luego puedo volver al mismo en 2 clics.

image

Análisis para identificar secciones de Copy & Paste

Un gran número de problemas en los desarrollos se dan por nuestro querido “Copy & Paste”, por lo general, copias una porción de código para “hacer una prueba” y a partir de allí, ese código queda vivo por siempre, desconectacto de su “origen verdadero”, etc. Vamos, que no cuento nada nuevo. Pues bueno, en vNext, se incorpora una nueva herramienta que analiza el código fuente buscando patrones de Copy & Paste (Code Clones para no ser tan agresivos).

image

Además de analizar el código completo de una solución,  es posible seleccionar una porción de código, que nos “huele mal” y a partir de la misma realizar una búsqueda de código duplicado.

image

Code Review incorporado

Una vez más utilizando el panel [Team Navigator] podemos aprovechar las nuevas funcionalidades de Code Review que se incorporarán en vNext. Para esto, y basado en el trabajo actual que estamos realizando, creamos una tarea (no es una task de TFS) de Code Review y la compartimos con un compañero de trabajo.

image

Cuando nuestro compañero de trabajo recibe la petición de Code Review, el mismo puede acceder a toda la información de contexto para esta actividad, incluyendo cosas tan potentes como ver las secciones de código modificadas en el estado original y el estado para el Code Review como muestra la siguiente imagen.

image

A partir de este momento, es posible hacer recomendaciones sobre clases, líneas de código, etc. con un flujo muy interesante para el ciclo de desarrollo.

Customer Feedback Tool

Finalmente llegamos a una versión de Microsoft Test Manager para clientes finales, en la que los mismos podrán aportar sus comentarios, sugerencias, etc. sobre un producto específico utilizando esta herramienta. por lo que tengo entendido, la misma funciona en modo offline, ya que no tiene sentido abrir nuestro servidor TFS hacia nuestros clientes y después es posible sincronizar esta información como datos locales para procesar este feedback.

image

Saludos @ Here

El Bruno

   

Fuente: http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/FDN03