<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">El Blog de Guino</title><subtitle type="html">Tecnologias, Arquitectura y Mejores Prácticas en .NET</subtitle><id>http://blogs.3devnet.com/blogs/guino/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.3devnet.com/blogs/guino/atom.aspx" /><generator uri="http://communityserver.org" version="2.0.60210.2610">Community Server</generator><updated>2006-11-05T02:19:00Z</updated><entry><title>.NET Language Integrated Query - LINQ</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/04/25/18375.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/04/25/18375.aspx</id><published>2007-04-25T07:26:00Z</published><updated>2007-04-25T07:26:00Z</updated><content type="html">&lt;P&gt;Ahora que, con la ayuda de Alex, estamos revisando la capa de datos de DinnerNow que esta implementada integramente con &lt;A href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx"&gt;LINQ&lt;/A&gt;, me puse a buscar entre mis cosas y encontre un documento que me dieron en el MVP Summit&amp;nbsp;2005 y que lo hice autografiar con el mismo &lt;A href="http://en.wikipedia.org/wiki/Anders_Hejlsberg"&gt;Anders Hejlsberg &lt;/A&gt;, a las pruebas me remito :)&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/linq.jpg"&gt;&lt;/P&gt;
&lt;P&gt;Ademas en Junio del 2006 asisti al TechEd donde en una excelente charla, &lt;A href="http://blogs.msdn.com/lucabol/"&gt;Luca Bolognese &lt;/A&gt;hacia una comparacion entre lo lindo que es programar con C# o VB.NET donde se tiene las capacidades de un lenguage Orientado a Objetos, un depurador, intellisense, el object browser&amp;nbsp; y es como navegar en el mar calmado bajo el sol radiante y de pronto el programador se encuentra con bases de datos relacionales o XML y es como que el mar se comienza a agitar, se oculta el sol y comienza a llover, ya no hay mas lenguaje Orientado a Objetos ya no hay mas intellisense ni depurador, se perdio el encanto.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx"&gt;LINQ &lt;/A&gt;viene a devolver esa "alegria" al programador al proporcionarle a las caracteristicas de su lenguaje (C#, VB.NET) capacidades de trabajar con datos manteniendo la sintaxis del lenguaje de programacion y abstrayendo la complejidad de lidiar con SQL o XML directamente.&lt;/P&gt;
&lt;P&gt;En un link posterior estaremos comentando cosas mas tecnicas de &lt;A href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx"&gt;LINQ &lt;/A&gt;y sobre todo como se utilizo para implementar la capa de datos de la aplicacion en estudio.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=18375" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>En que andamos :)</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/04/23/18240.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/04/23/18240.aspx</id><published>2007-04-23T05:34:00Z</published><updated>2007-04-23T05:34:00Z</updated><content type="html">&lt;P&gt;Es domingo por la noche y no queria irme a dormir sin postear luego de bastante tiempo, actividades propias del trabajo entre consultorias, dictado de clases y charlas me han tenido algo ocupado pero siempre pensando en que debo seguir manteniendo el blog y sobre todo colocar informacion que sea de utilidad para los interesados en la plataforma .NET.&lt;/P&gt;
&lt;P&gt;Pues bien, este post no contiene informacion muy util :) sino mas bien comentarles en que ando y las cosas sobre las que posiblemente estare escribiendo en los siguientes dias.&lt;/P&gt;
&lt;P&gt;Estoy preparando un &lt;A href="http://www.microsoft.com/learning/syllabi/en-us/2933afinal.mspx"&gt;curso oficial de Biztalk Server 2006 &lt;/A&gt;con Ruben (Porras) y aunque ando atrazado en esto, alcanzare a colocar algun post sobre este tan interesante producto para &lt;A href="http://en.wikipedia.org/wiki/Business_process_management"&gt;BPM&lt;/A&gt;, &lt;A href="http://en.wikipedia.org/wiki/Enterprise_service_bus"&gt;ESB&lt;/A&gt;, &lt;A href="http://en.wikipedia.org/wiki/Enterprise_application_integration"&gt;EAI&lt;/A&gt;, y &lt;A href="http://en.wikipedia.org/wiki/Service-oriented_architecture"&gt;SOA&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Seguire desarrollando la &lt;A href="http://www.microsoft.com/learning/exams/70-510.mspx"&gt;guia para el examen de Team Foundation Server&amp;nbsp;&lt;/A&gt;que aun no libera Microsoft en su version final, de hecho estoy por iniciar unas consultorias para&amp;nbsp;implantaciones de Visual Studio Team System en importantes empresas del medio asi que ya estare comentando las experiencias, ademas el Jueves 26 sere expositor de un evento sobre &lt;A href="http://www.seeweekly.com/hosting-qa-microsofts-somasegar-touts-value-of-68617.html"&gt;ALM&lt;/A&gt; en Microsoft Peru teniendo como base para esto a Visual Studio Team System.&lt;/P&gt;
&lt;P&gt;Junto con Alex, quien gentilmente me esta apoyando en investigacion, estamos viendo la aplicacion de distintas tecnologias Microsoft recientes, ademas de las que vienen con el &lt;A href="http://www.netfx3.com/"&gt;.NET Framework 3.0&lt;/A&gt; (WPF, WWF, WCF y CardSpace), toda la capa de datos con &lt;A href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx"&gt;LINQ&lt;/A&gt;, otras tecnologias&amp;nbsp;en Windows Vista como &lt;A href="http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx"&gt;Powershell &lt;/A&gt;y &lt;A href="http://www.microsoft.com/windows/products/windowsvista/features/details/sidebargadgets.mspx"&gt;Gadgets&lt;/A&gt;, ademas de &lt;A href="http://www.iis.net/Default.aspx?tabid=1"&gt;IIS 7&lt;/A&gt;. Tomando como base una interesante aplicacion creada por un equipo de especialistas de Microsoft y llamada &lt;A href="http://www.dinnernow.net/default.aspx?tabindex=0&amp;amp;tabid=1"&gt;DinnerNow.NET&lt;/A&gt;. Esta aplicacion la presentamos ya en un evento el TechNET Peru el Sabado 14 en un overview sobre el &lt;A href="http://www.netfx3.com/"&gt;.NET Framework 3.0&lt;/A&gt;, el siguiente paso es ahora dar otras charlas donde se muestre mas detalles de la arquitectura e implementacion de &lt;A href="http://www.dinnernow.net/default.aspx?tabindex=0&amp;amp;tabid=1"&gt;DinnerNow.NET&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=18240" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>ASP.NET AJAX, haciendo historia</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/03/11/14687.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/03/11/14687.aspx</id><published>2007-03-12T00:42:00Z</published><updated>2007-03-12T00:42:00Z</updated><content type="html">&lt;P&gt;Hace unos días me llamaron para pedirme que haga una charla de &lt;A href="http://ajax.asp.net/"&gt;ASP.NET AJAX &lt;/A&gt;el&amp;nbsp;31 de Marzo fuera de Lima. Me sorprendió un poco la convocatoria pero de algún modo me agrado el poder seguir aportando en lo que más me gusta que es la tecnología.&lt;/P&gt;
&lt;P&gt;Habiendo sido un espectador pasivo de cómo iba evolucionando "Atlas" (Codename de &lt;A href="http://ajax.asp.net/"&gt;ASP.NET AJax&lt;/A&gt;) durante su fase beta, desde principios de año estoy viendo mas detalles de algo que no considero novedoso conceptualmente hablando, pero si desde el punto de vista de cómo la tecnología ha madurado gracias a aporte de estándares.&lt;BR&gt;&lt;A href="http://ajax.asp.net/"&gt;ASP.NET Ajax &lt;/A&gt;es un nuevo framework de Microsoft para crear aplicaciones web más sofisticadas aprovechando el "lado-cliente" y fue liberado en Enero pasado. Hay que tener en cuenta que ASP.NET 2.0 es un framework del lado-servidor, es decir, cada vez que se requería cierta funcionalidad de ASP.NET 2.0 se tenía que hacer un POST al servidor para ejecutar&amp;nbsp; el código lo cual causaba un "refresh" de la pagina entera, algo que se intenta evitar, dependiendo del caso, con la introducción de este nuevo actor en el escenario del desarrollo web, ósea &lt;A href="http://ajax.asp.net/"&gt;ASP.NET Ajax&lt;/A&gt;, con el principal beneficio ahora de no depender de un Browser en particular (digamos IE) sino que es cross-platform y cross-browser.&lt;BR&gt;En lugar de comenzar a hablar de la arquitectura de &lt;A href="http://ajax.asp.net/"&gt;ASP.NET Ajax &lt;/A&gt;y mostrar ejemplos de código, prefiero hablar de&amp;nbsp;las cosas que conoci y utilice antes para hacer Aplicaciones Web del lado-cliente más ricas.&lt;BR&gt;Por ejemplo, &lt;A href="http://www.microsoft.com/mind/0498/cutting0498.asp"&gt;Remote Scripting &lt;/A&gt;(1998) utilizaba script del lado cliente para comunicarse con un applet de java el cual mediante un socket enviaba una solicitud&amp;nbsp;hacia un URL remoto que era una página ASP que representaba la capa-servidor de &lt;A href="http://www.microsoft.com/mind/0498/cutting0498.asp"&gt;Remote Scripting&lt;/A&gt;, en este caso el valor de retorno era un string que era procesado en el cliente, haciendo una actualización dinámica del contenido mediante scripting.&lt;/P&gt;
&lt;P&gt;Casi por la misma época se comenzó a utilizar &lt;STRONG&gt;&lt;EM&gt;Remote Data Services (RDS)&lt;/EM&gt;&lt;/STRONG&gt; que, al igual que Remote Scripting, tenia un componente cliente (proxy) y un componente servidor (stub) solo que todo esto estaba basado en COM sobre HTTP. Utilizando Script desde una pagina HTML podía conectarme al servidor y hacer consultas a la base de datos.&lt;BR&gt;Recuerdo haber utilizado esto junto con los famosos (por aquella época) "Data Islands" que se creaban en base a un contenido XML y utilizando un Data Source Object (DSO) se podría presentar en una pagina contenido con distintos filtros u ordenamientos sin necesidad de hacer llamadas adicionales al servidor eliminando la "recarga" de la pagina.&lt;BR&gt;Si les interesa saber detalles de cómo funcionaba todo esto puede ver &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/workshop/author/databind/data_binding.asp"&gt;Data Binding Architecture&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;En la década del 2000 aparecerían los DHTML Behaviors. Usando un tipo especial de behavior, el &lt;STRONG&gt;&lt;EM&gt;Web Service DHTML Behavior&lt;/EM&gt;&lt;/STRONG&gt; (webservice.htc) se podía hacer una invocación a métodos remotos vía el protocolo SOAP (requerían de IE 5.0 o posterior) &lt;BR&gt;Si desean&amp;nbsp;ver un ejemplo de este Behavior haga click en &lt;A href="http://aspalliance.com/713_Consuming_a_Web_Service_from_an_HTML_Page"&gt;Consuming a Web Service from an HTML Page.&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Luego tendríamos al objeto &lt;A href="http://msdn.microsoft.com/msdnmag/issues/0400/cutting/"&gt;XmlHttpRequest&lt;/A&gt;, este objeto fue desarrollado originalmente por Microsoft como parte de Outlook Web Access 2000, y&amp;nbsp; ha estado disponible desde Internet Explorer 5.0, siendo accesible via JavaScript, VBScript y otros lenguajes soportados por navegadores IE. Se usa para transferir y manipular datos XML hacia y desde el navegador web, estableciéndose un canal de comunicación independiente entre el lado-cliente, de la pagina web, y el servidor.&lt;BR&gt;Desde el 2002, otros navegadores comenzaron a tener sus propias implementaciones compatibles con el &lt;A href="http://msdn.microsoft.com/msdnmag/issues/0400/cutting/"&gt;XmlHttpRequest&lt;/A&gt;, por ejemplo Mozilla, Safari, Opera, etc. El objeto &lt;A href="http://msdn.microsoft.com/msdnmag/issues/0400/cutting/"&gt;XMLHttpRequest &lt;/A&gt;es una parte fundamental de la técnica de desarrollo web conocida como &lt;A href="http://www.adaptivepath.com/publications/essays/archives/000385.php"&gt;AJAX&lt;/A&gt; (Asynchronous JavaScript And XML) , y es usada en muchos sitios web para implementar aplicaciones dinámicas e interactivas como el servicio Gmail de Google, Meebo, Virtual Earth de Microsoft, y los mapas de MapQuest..&lt;BR&gt;Finalmente el consorcio Web, entidad que norma los estándares internet, publico una &lt;A href="http://www.w3.org/TR/XMLHttpRequest/"&gt;especificación del objeto XmlHttpRequest &lt;/A&gt;para ayudar a mejorar y asegurar la inteoperabilidad del código en las diferentes plataformas Web. &lt;BR&gt;Cuando salió ASP.NET 2.0, este vino con una API denominada &lt;A href="http://msdn.microsoft.com/msdnmag/issues/04/08/CuttingEdge/"&gt;ASP.NET Script Callback &lt;/A&gt;que proporcionaba la habilidad de ejecutar llamadas asíncronas sin dejar la pagina actual; sin embargo el modelo de programación no es muy completo para tareas complejas, además que el código no es muy fácil de leer y mantener para desarrolladores sin experiencia avanzada.&lt;BR&gt;El equipo de producto de ASP.NET comienza, entonces, a trabajar en un framework como extensión de ASP.NET 2.0 que permita a los desarrolladores crear, de una manera más sencilla, aplicaciones Web interactivas tomando ventaja de las características del browser y el servidor, es así como comienza la historia de ASP.NET "Atlas", hoy conocido como &lt;A href="http://ajax.asp.net/"&gt;ASP.NET Ajax&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Unas de las cosas que me encantan de las tecnologías Microsoft es el siempre están a la vanguardia, innovando, muchas veces acusados de "copiar" ideas, aunque creo que en el caso del objeto &lt;A href="http://msdn.microsoft.com/msdnmag/issues/0400/cutting/"&gt;XmlHttpRequest &lt;/A&gt;no pueden decir aquello. Yo lo veo de otro modo, lo más importante es como todo eso contribuye a lograr soluciones de valor para las empresas, reduciendo costos y llegando al mercado más rápidamente, que son algunos requerimientos que recojo de las empresas que me toca visitar a diario.&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=14687" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>NET Framework 3.0 Training Kit</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/03/07/14543.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/03/07/14543.aspx</id><published>2007-03-07T22:39:00Z</published><updated>2007-03-07T22:39:00Z</updated><content type="html">&lt;P&gt;Tengo que dar una charla en Abril sobre el .NET Framework 3.0 sobre Windows Vista para profesionales de TI y quiero preparar algo que integre las cuatro caracteristicas nuevas en el .NET Framework 3.0 osea &lt;A href="http://wpf.netfx3.com/"&gt;WPF&lt;/A&gt;, &lt;A href="http://wcf.netfx3.com/"&gt;WCF&lt;/A&gt;, &lt;A href="http://wf.netfx3.com/"&gt;WWF&lt;/A&gt; y &lt;A href="http://cardspace.netfx3.com/"&gt;CardSpace&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;En la busqueda de recursos que me sirvan para tal proposito encontre el &lt;STRONG&gt;.NET Framework 3.0 training kit for WF, WCF and CardSpace&lt;/STRONG&gt;&amp;nbsp;se los recomiendo, lo pueden descargar desde &lt;A href="http://wf.netfx3.com/files/folders/presentations/entry8793.aspx"&gt;aqui&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;Este material&amp;nbsp;formó parte del Windows Server Ascend Training, estos cursos son muy buenos a nivel de entender tempranamente sobre la visión e implementación de nuevas herramientas, estuve el año 2005 en Redmond para el Ascend de VSTS y fue una experiencia muy interesante, Ronald posteo en su &lt;A href="http://blog.wmugperu.org/rarmas/PermaLink,guid,a80ccc0d-23f1-43fe-82ce-d2d563545dc3.aspx"&gt;blog&lt;/A&gt;&amp;nbsp;&amp;nbsp;la informacion de aquella epoca :)&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=14543" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Administrando Team Foundation Server</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/03/06/14449.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/03/06/14449.aspx</id><published>2007-03-06T15:19:00Z</published><updated>2007-03-06T15:19:00Z</updated><content type="html">&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(1) Implementando una Lista Global&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;Se puede compartir un lista (de elementos) a través de múltiples tipos de Work Items incluyendo la lista (de elementos) en uno o mas elementos GLOBALLIST.&lt;BR&gt;Una Lista Global es un conjunto de elementos LISTITEM que puede ser almacenado y usado por todos los proyectos y servidores en una implementación de Team Foundation Server. Cada elemento GLOBALLIST debe tener al menos un elemento LISTITEM definido. &lt;BR&gt;Las Listas Globales pueden ser utiles especialmente cuando una lista debe obtenerse a desde otro sistema. Por ejemplo, supongamos que una compañía mantiene una base de datos separada para algunas definiciones estandar de su metodologia (que es compartida a través de multiples sistemas), la lista de Disciplinas (en un campo del Work Item) debe ser actualizada periodicamente desde una fuente de datos externa.&lt;BR&gt;Se pueden usar los comandos glimport y glexport para actualizar las listas globales de Team Foundation Server con los valores actuales de una base de datos y luego en un campo de un tipo de Work Item (por ejemplo Disciplinas) se hace referencia a dicha lista global.&amp;nbsp; &lt;BR&gt;En la figura se muestra un posible esquema de solución de lo descrito anteriormente: 
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/GlobalList1.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;Veamos los pasos a seguir para implementar una lista Global (se requiere ser Administrator de Team Foundation Server para trabajar con Listas Globales) : 
&lt;P&gt;&lt;STRONG&gt;a) &lt;/STRONG&gt;Se debe crear el archivo XML con la definicion de los elemento de la lista Global (este puede ser generado a partir de una base de datos a través de algun programa)&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;BR&gt;&amp;lt;gl:GLOBALLISTS xmlns:gl="&lt;/FONT&gt;&lt;A href="http://schemas.microsoft.com/VisualStudio/2005/workitemtracking/globallists"&gt;&lt;FONT face="Courier New"&gt;http://schemas.microsoft.com/VisualStudio/2005/workitemtracking/globallists&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Courier New"&gt;"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;GLOBALLIST name="Disciplinas"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Requerimientos Iniciales" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Analisis" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Diseno" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Desarrollo" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Pruebas" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Estabilizacion" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Implantacion" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/GLOBALLIST&amp;gt;&lt;BR&gt;&amp;lt;/gl:GLOBALLISTS&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;b) Grabar el archivo con el nombre Disciplinas.XML, en el directorio&amp;nbsp; &lt;FONT face="Courier New"&gt;&amp;lt;drive&amp;gt;:\Program Files\Microsoft Visual Studio 8\Common7\IDE &lt;/FONT&gt;&lt;BR&gt;c) Desde el mismo directorio anterior ejecutar:&lt;BR&gt;&lt;FONT face="Courier New"&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp; glimport /f Disciplinas.xml /t "TFSRTM"&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;TFSRTM&lt;/STRONG&gt; es, en nuestro caso, el nombre del servidor Team Foundation&lt;/P&gt;
&lt;P&gt;d) Mostrar la lista global de TFS para comprobación:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;nbsp;&amp;nbsp; glexport /t "TFSRTM"&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Debe mostrarse una lista tal como:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;BR&gt;&amp;lt;gl:GLOBALLISTS xmlns:gl="&lt;/FONT&gt;&lt;A href="http://schemas.microsoft.com/VisualStudio/2005/workite"&gt;&lt;FONT face="Courier New"&gt;http://schemas.microsoft.com/VisualStudio/2005/workite&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face="Courier New"&gt;mtracking/globallists"&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;GLOBALLIST name="Builds - ReportSample"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Debugx86_20060513.1" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR&gt;&amp;nbsp; &amp;lt;/GLOBALLIST&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;GLOBALLIST name="Builds - Module09"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="VersionTask_20060807.1" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;BR&gt;&amp;nbsp; &amp;lt;/GLOBALLIST&amp;gt;&lt;BR&gt;&amp;nbsp; ...&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;GLOBALLIST name="Disciplinas"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Requerimientos Iniciales" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Analisis" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Diseno" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Desarrollo" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Pruebas" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Estabilizacion" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Implantacion" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;lt;/GLOBALLIST&amp;gt;&lt;BR&gt;&amp;lt;/gl:GLOBALLISTS&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;e) Ejecutar &lt;STRONG&gt;witexport&lt;/STRONG&gt; para exportar el tipo "Task" de Work Items.&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;witexport /f "TaskModified.xml" /t "TFSRTM" /p "TicTacToe" /n "Task" &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;"TFSRTM" &lt;/STRONG&gt;es el nombre del servidor Team Foundation, &lt;STRONG&gt;"TicTacToe"&lt;/STRONG&gt; es el nombre del Team Project. &lt;STRONG&gt;"Task"&lt;/STRONG&gt; es el tipo de WorkItem.&lt;/P&gt;
&lt;P&gt;Al finalizar, debe aparecer el mensaje:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp; Work item type export complete.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;f) En el archivo &lt;STRONG&gt;TaskModified.xml&lt;/STRONG&gt;, cambiar el elemento :&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;FIELD name="Discipline" refname="Microsoft.VSTS.Common.Discipline" type="String" reportable="dimension"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;HELPTEXT&amp;gt;The discipline to which the task belongs&amp;lt;/HELPTEXT&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ALLOWEDVALUES expanditems="true"&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Development" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Test" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Project Management" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Requirements" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Architecture" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;LISTITEM value="Release Management" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/ALLOWEDVALUES&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/FIELD&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; Debe verse de esta forma:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&amp;lt;FIELD name="Discipline" refname="Microsoft.VSTS.Common.Discipline" type="String"&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;HELPTEXT&amp;gt;The discipline to which the task belongs&amp;lt;/HELPTEXT&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;ALLOWEDVALUES&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;GLOBALLIST name="Disciplinas" /&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;/ALLOWEDVALUES&amp;gt;&lt;BR&gt;&amp;lt;/FIELD&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;g) Importar los cambios a la definicion del WorkItem&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;witimport /f "TaskModified.xml" /t "TFSRTM" /p "TicTacToe" &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;h) Desde el Team Explorer refrescar el proyecto "TicTacToe"&lt;BR&gt;i) Agregar un WorkItem de tipo Task&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/admCreateWorkItem1.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;
&lt;P&gt;j) Verificar que se han actualizado los elementos de Disciplinas:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/admCreateWorkItem2.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;
&lt;P&gt;Pueden encontrar mayor información en:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms194977(VS.80).aspx"&gt;Visual Studio Team System Global Lists&lt;/A&gt;&amp;nbsp; &lt;BR&gt;&lt;A href="http://blogs.msdn.com/team_foundation/archive/2005/05/06/415268.aspx"&gt;Populating Lists on Work Items from an External Source&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(2) Modificando Propiedades mediante el uso de Web Services&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;U&gt;Estableciendo el tamaño maximo de adjuntos para Work Items&lt;BR&gt;&lt;/U&gt;Por defecto los adjuntos (Attachments) en un Work Item no pueden exceder de 4MB. Supongamos que desea crear un Work Item de tipo Bug con varias imagenes adjuntas que superan los 4MB, en estos casos necesitara modificar la configuracion de Team Foundation para ampliar el tamaño maximo de los adjuntos.&lt;BR&gt;Los pasos son los siguientes:&lt;BR&gt;a) En el Servidor de Aplicacion de TFS, navegar hacia:&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;A href="http://localhost:8080/WorkItemTracking/v1.0/ConfigurationSettingsService.asmx"&gt;http://localhost:8080/WorkItemTracking/v1.0/ConfigurationSettingsService.asmx&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Se mostrará la siguiente pagina:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/ConfigSettings1.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;b) Si lo requiere, haga Click en GetMaxAttachmentSize para obtener el tamaño maximo actual (por defecto es 4194304 bytes)&lt;BR&gt;&amp;nbsp;&lt;BR&gt;c) Haga Click en SetMaxAttachmentSize, y especifique el tamaño en bytes (hasta un maximo de 2GB) y haga click en invoke. 
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;U&gt;Estableciendo el intervalo de procesamiento para los datos del warehouse &lt;BR&gt;&lt;/U&gt;En Team Foundation Server los datos del warehouse se actualizan en un proceso que se ejecuta periodicamente cada hora. Normalmente notara un incremento en el uso de la CPU mientras se esta ejecutando el proceso.&lt;BR&gt;Puede cambiar el intervalo de ejecución en la capa de aplicacion siguiendo los siguientes pasos:&lt;/P&gt;
&lt;P&gt;a) Parar el servicio TFSServerScheduler usando 'net stop TFSServerScheduler'&lt;BR&gt;b) Ir a &lt;A href="http://localhost:8080/Warehouse/warehousecontroller.asmx"&gt;http://localhost:8080/Warehouse/warehousecontroller.asmx&lt;/A&gt; utilizando un browser en la capa de aplicacion.&lt;BR&gt;&amp;nbsp;&amp;nbsp; Se mostrará la siguiente pagina:&lt;/P&gt;
&lt;P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/dwcontroller1.JPG"&gt;&lt;/IMG&gt;&lt;/P&gt;
&lt;P&gt;c) Haga click en ChangeSetting e ingrese los siguientes valores y luego presione el boton 'Invoke' (3600 segundos = ejecuta cada hora). &lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/dwcontroller2.JPG"&gt;&lt;/IMG&gt;&lt;/P&gt;
&lt;P&gt;d) Reinicie TFSServerScheduler usando 'net start TFSServerScheduler'&lt;/P&gt;
&lt;P&gt;Tambien puede ejecutar el proceso de carga del warehouse manualmente haciendo utilizando el metodo 'Run' desde &lt;A href="http://localhost:8080/Warehouse/warehousecontroller.asmx"&gt;http://localhost:8080/Warehouse/warehousecontroller.asmx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Al actualizar los datos del warehouse, se refrescara la informacion de los reportes.&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=14449" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Viendo Mapas con Live.com</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/03/05/14382.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/03/05/14382.aspx</id><published>2007-03-05T10:22:00Z</published><updated>2007-03-05T10:22:00Z</updated><content type="html">&lt;P&gt;Siempre que voy a viajar me gusta reconocer el terreno (y sus alrededores), si hay un mapa mejor. Cuando viajo a USA, reviso mi software &lt;A href="http://www.microsoft.com/streets/default.mspx"&gt;Microsoft Streets &amp;amp; Trips&lt;/A&gt;, pero esta vez se me ocurrió revisar los &lt;A href="http://maps.live.com/"&gt;mapas en live.com&lt;/A&gt;&amp;nbsp;y la verdad me impresiono la vista en 3D que tiene. Por ejemplo el TechEd 2007 se realizara en el &lt;A href="http://www.occc.net/Default.asp"&gt;Orange County Convention Center&lt;/A&gt; en Orlando, FL.&lt;/P&gt;
&lt;P&gt;El mapa como plano en 2D, en el formato que solemos usar hoy en día, se vería así:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/mapa1.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;El mismo mapa pero en vista fotográfica desde arriba:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/mapa2.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;Si aplicamos 3 dimensiones podemos acercarnos más y conocer el &lt;A href="http://www.occc.net/Default.asp"&gt;Orange County Convention Center &lt;/A&gt;:)&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/mapa3.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;Bueno ahora que ya conozco donde será el TechEd 2007, luego me toca revisar sus alrededores para familiarizarme con el lugar y también la ubicación de los hoteles del evento.&lt;/P&gt;
&lt;P&gt;No, no he olvidado de postear sobre TFS ni otros temas sobre la plataforma Microsoft ya pronto sale el siguiente articulo :)&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=14382" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>3Dev libera Materiales de Entrenamiento y Presentaciones de .NET, Arquitectura, BI y otros</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/28/14067.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/28/14067.aspx</id><published>2007-02-28T23:26:00Z</published><updated>2007-02-28T23:26:00Z</updated><content type="html">&lt;P&gt;En 3Dev hemos decidido poner a disposicion de profesionales de sistemas, estudiantes, comunidades y publico&amp;nbsp;en general, los materiales que hemos venido utilizando durante el 2006, en entrenamiento interno y nuestros principales clientes.&lt;/P&gt;
&lt;P&gt;Esperamos les sean de utilidad. Pueden bajar los materiales gratuitamente desde:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.3devnet.com/download.aspx"&gt;http://www.3devnet.com/download.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=14067" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>&amp;#191;Guino ha revivido?</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/26/13967.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/26/13967.aspx</id><published>2007-02-26T20:33:00Z</published><updated>2007-02-26T20:33:00Z</updated><content type="html">&lt;P&gt;No suelo hablar de cosas personales, pero en este caso tienen que ver con&amp;nbsp; mi experiencia diaria, ademas como vi que el chino &lt;A href="/blogs/wmugperu/default.aspx"&gt;Fong &lt;/A&gt;puso "Guino ha revivido" comence a pensar que efectivamente el blog&amp;nbsp;esta no solo para escribir articulos tecnicos&amp;nbsp;sobre experiencias de trabajo, sino&amp;nbsp;tambien para comentar cosas que a uno le pasan en estos menesteres de la informatica.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Como dice el dicho "&lt;STRONG&gt;Tras cuernos palos&lt;/STRONG&gt;", la semana pasada habia ya cancelado mi viaje al MVP Summit, evento mundial de los MVPs al cual he venido asistiendo los ultimos 4 años, y cuando ya me estaba recuperando de la tristeza, el Sabado muere mi disco duro externo con casi 150GB de informacion y del cual solo tenia 4GB de la data mas importante como backup. Es una de las peores cosas que le puede suceder a una persona relacionada con la informatica perder su valiosa informacion.&lt;/P&gt;
&lt;P&gt;Despues de consultar con varios amigos (gracias Ruben, Percy, Roberto y Ddaz) las esperanzas de recuperar mi data regresaron y con ello parte de mi alma. Encontre una herramienta llamada &lt;A href="http://www.runtime.org/"&gt;getdataback&lt;/A&gt;, con la que pude ver mi informacion y ahora solo espero comprarme un disco duro externo nuevo esta semana y comenzar a rescatar la data, cuando haya terminado con eso volvera mi alma completamente al cuerpo. &lt;img src="/emoticons/emotion-1.gif" alt="Smile [:)]" /&gt;&lt;/P&gt;
&lt;P&gt;Bueno y continuando con los dichos, hay otro que dice "&lt;STRONG&gt;No hay mal que por bien no venga&lt;/STRONG&gt;", asi que el Domingo pude ver con alegria que a traves del programa MVP, al cual le estoy bastante agradecido por los beneficios que brinda &amp;nbsp;(Gracias Fer y Nestor), a los MVPs nos toco un descuentazo para incribirse al &lt;A href="http://www.microsoft.com/events/teched2007/default.mspx"&gt;TechEd 2007 &lt;/A&gt;en Orlando, FL, durante el 4 al 8 de Junio, asi que ya me incribi y alli estare!, mas aun que tambien estoy postulando a ser MCT Ambassador por el programa &lt;A href="http://www.microsoft.com/learning/mcp/mct/default.mspx"&gt;Microsoft Certified Trainer &lt;/A&gt;(la ventaja de ser MVP y MCT :) y a lo mejor me sale parte de las cosas gratis &lt;img src="/emoticons/emotion-5.gif" alt="Wink [;)]" /&gt;&lt;/P&gt;
&lt;P&gt;Por las exigencias propias del programa MCT tengo que dar mi examen &lt;A href="http://www.microsoft.com/learning/exams/70-431.mspx"&gt;70-431&lt;/A&gt; de&amp;nbsp; SQL Server 2005, asi que pronto estare posteando articulos y tips de SQL Server (lo&amp;nbsp;manejo desde la version 6.5)&amp;nbsp;que les pueda servir tambien para el examen, ademas&amp;nbsp;seguire posteando articulos de Team Foundation Server para el examen &lt;A href="http://www.microsoft.com/learning/exams/70-510.mspx"&gt;70-510&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=13967" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Personalizando la configuraci&amp;#243;n de Team Foundation Server</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/26/13949.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/26/13949.aspx</id><published>2007-02-26T13:43:00Z</published><updated>2007-02-26T13:43:00Z</updated><content type="html">&lt;P&gt;Una vez instalado Team Foundation Server y habiendo verificado la misma, veamos algunos aspectos iniciales de configuracion:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(1) Configurando Alertas&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;En lugar del tedioso trabajo de enviar E-mail manualmente cuando liberamos una nueva version o hacemos check-in de cambios en el codigo, en Team Foundation Server se puede configurar alertas de proyecto para enviar esos tipos de E-mails automaticamente via el menú&amp;nbsp; Team-&amp;gt;Project Alerts.&lt;/P&gt;
&lt;P&gt;Hay cuatro opciones de notificacion via E-mail disponibles en una instalacion por defecto en Team System,&amp;nbsp;estas son:&lt;/P&gt;
&lt;P&gt;Alert when my work items are changed by others &lt;BR&gt;Alert when anything is checked in &lt;BR&gt;Alert when the build status changes &lt;BR&gt;Alert when a build completes&lt;/P&gt;
&lt;P&gt;Normalmente se envia notificaciones a un alias de grupo tal como: &lt;A href="mailto:teamdevelopers@3devnet.com"&gt;teamdevelopers@3devnet.com&lt;/A&gt;, pero tambien puede ser enviado a un correo en particular como se muestra en la figura:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/ProjectAlerts.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;Veamos una muestra de como se recibiria el E-mail de notificacion:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/AlertMail.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;Si requiere una suscripcion personalizada, puede utilizar la herramienta &lt;STRONG&gt;BisSubscribe.exe&lt;/STRONG&gt; del servidor (&amp;lt;Program Files&amp;gt;\Microsoft Visual Studio 2005 Team Foundation Server\TFSetup&amp;gt;BisSubscribe.exe). Por ejemplo en la siguiente expresion de filtro, solo los &lt;U&gt;nuevos cambios&lt;/U&gt; generaran E-mails:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;BisSubscribe.exe /userId &amp;lt;domain\username&amp;gt; /eventType WorkItemChangedEvent /deliveryType EmailHtml /domain &amp;lt;server name&amp;gt; /address &amp;lt;email address&amp;gt; /filter "PortfolioProject = '&amp;lt;project&amp;gt;' AND ChangeType = 'New' "&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(2) Configurando Team Foundation Server para acceso extranet&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;La version inicial de Visual Studio Team Foundation Server solo soporta Autenticacion Integrada con Windows, la cual permite a los cliente utilizar sus credenciales de Windows para acceder a la funcionalidad de Team Foundation Server.&lt;BR&gt;La Autenticacion Integrada con Windows es una buena alternativa para escenarios en un entorno corporativo, sin embargo no es la mejor alternativa en escenarios Internet donde los proxy servers y firewalls pueden limitar el uso de este tipo de autenticación.&lt;BR&gt;Actualmente solo se soporta conexiones remotas a TFS a través de una red privada virtual (VPN) debido a las limitaciones de usar Autenticacion Integrada con Windows para escenarios Internet. Esto &lt;STRONG&gt;no&lt;/STRONG&gt; significa que no pueda acceder a TFS a traves de internet, sino que puede usar una VPN si tiene que acceder a TFS fuera de la intranet local.&lt;BR&gt;&lt;EM&gt;Team Foundation Server&amp;nbsp;Service Pack 1 &lt;/EM&gt;puede soportar modos de autenticacion Basic y Digest&amp;nbsp; ademas configurando el despliegue de TFS para usar HTTPS con Secure Sockets Layer (SSL) y autenticacion Basic o Digest, se puede soportar conexiones externas al servidor TFS sin tener que utilizar una conexion VPN.&lt;/P&gt;
&lt;P&gt;En la siguiente figura se muestra como configurar el metodo de autenticación desde IIS.&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/Authentication.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;Puede encontrar mas informacion en:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.microsoft.com/kb/916845"&gt;Limitations on access to Visual Studio Team Foundation Server over the Internet&lt;/A&gt;&lt;BR&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/aa833874(VS.80).aspx"&gt;Team Foundation Server, Basic Authentication, and Digest Authentication&amp;nbsp; &lt;BR&gt;&lt;/A&gt;&lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(3) Configurando opciones en tiempo de ejecución de TFS&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;La informacion de configuracion de Team Foundation Server esta contenida en varios archivos web.config. El archivo de configuracion global se encuentra en: &lt;EM&gt;\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\WebServices\web.config&lt;/EM&gt;, sin embargo dentro de dicho directorio se pueden encontrar carpetas por cada componente de Team Foundation&amp;nbsp; (&lt;EM&gt;Build, Services, VersionControl, etc&lt;/EM&gt;) cada una conteniendo su propio &lt;EM&gt;web.config&lt;/EM&gt;.&lt;/P&gt;
&lt;P&gt;Se puede modificar directamente los archivo s web.config o tambien se puede hacer desde el Internet Information Server 6.0.&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(4) Habilitando el tracing para los componentes de Team Foundation Server&lt;BR&gt;&lt;/FONT&gt;&lt;/STRONG&gt;Se puede cambiar el directorio de salida para los archivos de trace de los componentes de TFS editando el web.config de dicho componente. &lt;/P&gt;
&lt;P&gt;Desde Internet Information Server 6.0 se puede hacer accediendo a Administrador de IIS (&lt;STRONG&gt;inetmgr&lt;/STRONG&gt;) y luego expandiendo &lt;EM&gt;"Web Sites"&lt;/EM&gt; y finalmente "&lt;EM&gt;Team Foundation Server".&lt;/EM&gt;&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/IIS_tfs.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;&lt;BR&gt;Luego tiene que hacer doble-click sobre el archivo web.config que se encuentra en la raiz o dentro de cada componente de TFS, se mostrara el cuadro &lt;EM&gt;ASP.NET Configuration Settings:&lt;/EM&gt;&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/ConfigSettings.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(5) Habilitando el rastreo de actividad (activity logging)&lt;BR&gt;&lt;/FONT&gt;&lt;/STRONG&gt;Los creadores de TFS disenaron un mecanismo para registrar la actividad de los metodos web para todas las aplicaciones web de Team Foundation.&lt;BR&gt;No se proporciona forma de obtener dicha data, sin embargo desde la capa de datos se puede escribir consultas SQL para ver que estan haciendo las aplicaciones Web de TFS.&lt;BR&gt;El rastreo de actividad es controlada por una configuracion en el archivo web.config de cada componente de TFS. La configuracion por defecto desahbilita el Logging pero es simple habilitarlo. &lt;/P&gt;
&lt;P&gt;En el archivo de configuracion que se encuentra en &lt;EM&gt;%ProgramFiles%\Microsoft Team Foundation 2005\Web Services\Web.config&lt;/EM&gt; o en el &lt;EM&gt;.config&lt;/EM&gt; de cada componente revisar por &lt;STRONG&gt;commandLogging&lt;/STRONG&gt;, dentro de &lt;EM&gt;AppSettings&lt;/EM&gt;, como se muestra a continuación.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;EM&gt;&amp;nbsp; &amp;lt;!--&amp;nbsp; WEB METHOD LOGGING&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Specify whether web methods are to be logged always, never, or only&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; when errors occurs. Without a value for commandLogging, web methods&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; are not logged.&amp;nbsp; Valid values are:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; None&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (web methods are never logged)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Normal&amp;nbsp;&amp;nbsp; (log everything, except certain high-frequency web methods)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; All&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (log everything, even certain high-frequency web methods)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnError&amp;nbsp; (only log web methods that have errors)&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Values specified here take precedence over values set administratively via&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; web method.&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;add key="commandLogging" value="None"/&amp;gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Si se cambia el &lt;STRONG&gt;CommandLogging&lt;/STRONG&gt; a, por ejemplo "Normal", todos los comandos seran rastreados en la base de datos &lt;EM&gt;TFSActivityLogging.&lt;/EM&gt;&lt;BR&gt;Para ver la informacion del Log tendra que ejecutar un Query tal como "select * from tbl_Command" sobre la base de datos &lt;EM&gt;TFSActivityLogging&lt;/EM&gt; de SQL Server.&lt;BR&gt;El Log es utilizado para distintos propositos incluyendo el calculo de la carga y tambien determinar el patrón de uso de TFS. &lt;/P&gt;
&lt;P&gt;Mas informacion en &lt;A href="http://blogs.msdn.com/abhinaba/archive/2005/12/27/507499.aspx"&gt;Snooping into TeamSystem activity logging&lt;/A&gt;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;(6) Configurando el tamaño y ubicacion de la cache web&lt;BR&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;BR&gt;El cache de archivos, en la capa de aplicacion de TFS, esta habilitado por defecto y permite mejorar el rendimiento ya que los archivos se obtienen del cache el lugar de acceder directamente a la base de datos.&lt;BR&gt;Es posible cambiar la configuracion del cache de archivos,editando el archivo web.config que se encuentra localizado por defecto en &lt;EM&gt;…\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControl&lt;/EM&gt;&lt;BR&gt;Por ejemplo se puede cambiar la ubicacion de la carpeta del cache mediante la opcion:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;lt;add key="fileCacheRoot" value="NewCacheRootFolderLocation" /&amp;gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Por defecto esta carpeta esta en &lt;EM&gt;…\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControl\Data&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Se puede especificar un limite en la cantidad de espacio de almacenamiento que la capa de aplicacion utiliza para el cache de archivos, cuando se alcanza este limite los archivos antiguos en el cache son eliminados dejando espacio libre para colocar en dicho cache los archivos recientemente requeridos. Los archivos se eliminan basados en la fecha y hora en que fueron accedidos, los que no hayan sido accedidos por mayor tiempo son eliminados primero.&lt;BR&gt;El siguiente ejemplo especifica que el cache debe llenarse hasta un 60% de la capacidad de espacio disponible en disco antes de remover archivos anteriores:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;lt;add key="CacheLimitPercent" value="60" /&amp;gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Tambien puede especificar un tamaño fijo en MB con el elemento &lt;EM&gt;&amp;lt;add key="CacheLimit"&amp;gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Si instalo Team Foundation Server Proxy tambien puede habilitar el cache, para esto ubique la carpeta de instalacion del Servidor Proxy, por defecto es&amp;nbsp;&lt;EM&gt;…\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControlProxy&lt;/EM&gt;, y&amp;nbsp; abra el archivo &lt;EM&gt;Proxy.config&lt;/EM&gt;.&lt;BR&gt;Especifique el servidor TFS y el puerto de comunicacion entre el servidor proxy y la capa de aplicacion de TFS, por ejemplo:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;lt;Server&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Uri&amp;gt;http://ApplicationTierServerName:8080/VersionControl&amp;lt;/Uri&amp;gt;&lt;BR&gt;&amp;lt;/Server&amp;gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;La comunicacion entre la capa de aplicacion de TFS y el servidor proxy es normalmente a traves de una WAN y entre los clientes y el servidor proxy a traves de una LAN.&lt;/P&gt;
&lt;P&gt;Para configurar Visual Studio 2005 de modo que pueda usar un Team Foundation Proxy server, elija el menú &lt;EM&gt;Tools-&amp;gt;Options-&amp;gt;Source Control-&amp;gt;Visual Studio Team Foundation Server&lt;/EM&gt;. En la figura se muestra un ejemplo de configuración:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/VS2005ProxyCfg.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;El puerto 8081 es el puerto por defecto diseñado para comunicación entre el cliente y el Team Foundation Server Proxy.&lt;/P&gt;
&lt;P&gt;Para comprobacion, luego de haber seguido los pasos anteriores, realice un Check-out de un archivo desde el explorador del controlador de versiones, si no hay errores se debe mostrar algunas carpetas nuevas y archivos en &lt;EM&gt;“%program Files%\Microsoft Visual Studio 2005 Team Foundation Server\Web Services\VersionControlProxy\Data\&amp;lt;guid&amp;gt;”&lt;/EM&gt; en el servidor proxy. &lt;BR&gt;Tambien puede utilizar Internet Explorer y, desde el proxy server, navegar hacia&amp;nbsp; &lt;A href="http://localhost:8081/VersionControlProxy/v1.0/ProxyStatistics.asmx"&gt;http://localhost:8081/VersionControlProxy/v1.0/ProxyStatistics.asmx&lt;/A&gt; , luego comprobar si se muestran valores distintos a cero en los contadores de performance.&lt;/P&gt;
&lt;P&gt;Puede encontrar mas informacion en &lt;A href="http://msdn2.microsoft.com/en-us/library/ms245478(VS.80).aspx"&gt;How to: Configure Team Foundation Source Control to use Proxy Server&amp;nbsp;&lt;/A&gt; &lt;BR&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=13949" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Verificando la instalaci&amp;#243;n de TFS</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/12/13134.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/12/13134.aspx</id><published>2007-02-13T02:21:00Z</published><updated>2007-02-13T02:21:00Z</updated><content type="html">&lt;P&gt;Luego de instalado Team Foundation Server nos tocaria verificar que todo esta Ok para lo cual se recomienda seguir los siguientes pasos:&lt;/P&gt;
&lt;P&gt;(1) &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;Examinar el Registro de la Instalación (Log)&lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;Luego de concluido el proceso de instalacion, se crearan archivos de Registro o log (conteniendo la lista de operaciones realizadas) dentro de la ruta de instalacion (C:\Program Files\Microsoft Visual Studio 2005 Team Foundation Server\) SOLO si la instalacion se completo satisfactoriamente, de lo contrario estaran en el directorio C:\Documents and Settings\TFSSETUP\Local Settings\Temp, los archivos tienen prefijo dd_*.*.&lt;BR&gt;Adicionalmente a los archivos de Registro, en el Visor de Eventos (Panel de Control), se registran los eventos de instalacion capturados durante el proceso de instalacion, recomiendo revisarlo porque siempre he logrado identificar problemas desde alli.&lt;/P&gt;
&lt;P&gt;(2) &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Verificar los componentes de la base de datos&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Verifique que en SQL Server 2005 se hayan creado las Bases de datos que se muestran en la figura:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_databases.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;&lt;STRONG&gt;ReportServer:&lt;/STRONG&gt;&amp;nbsp; La base de datos de Reporting Services que contiene los reportes y configuracion de los mismos para Reporting Services.&lt;BR&gt;&lt;STRONG&gt;ReportServerTempDB:&lt;/STRONG&gt;&amp;nbsp; La base de datos temporal de Reporting Services es usada para almacenamiento de informacion temporal utilizada para ejecutar reportes especificos para reporting services.&lt;BR&gt;&lt;STRONG&gt;STS_Config_TFS:&lt;/STRONG&gt; La base de datos de configuracion de Sharepoint contiene informacoin de instalacion y configuracion para el sitio Team project de Sharepoint.&lt;BR&gt;&lt;STRONG&gt;STS_Content_TFS :&lt;/STRONG&gt; La base de datos de contenido de Sharepoint contiene el contenido actual en el site de Sharepoint del Equipo.&lt;BR&gt;&lt;STRONG&gt;TfsBuild:&lt;/STRONG&gt; La base de datos build contiene data de builds (Team Foundation Build) y resultados de pruebas publicadas.&lt;BR&gt;&lt;STRONG&gt;TfsIntegration: &lt;/STRONG&gt;Proyectos, Areas, Iteraciones y otros datos de registro.&lt;BR&gt;&lt;STRONG&gt;TfsVersionControl: &lt;/STRONG&gt;La base de datos del Control de codigo fuente de Team Foundation&lt;BR&gt;&lt;STRONG&gt;TFSWarehouse:&lt;/STRONG&gt; La base de datos de Analysis Services&lt;BR&gt;&lt;STRONG&gt;TfsWorkItemTracking:&lt;/STRONG&gt; La base de datos de seguimiento de Work Items de Team Foundation.&lt;BR&gt;&lt;STRONG&gt;TfsWorkItemTrackingAttachments:&lt;/STRONG&gt; La base de datos de adjuntos de work items de Teamn Foundation.&lt;BR&gt;&amp;nbsp;&lt;BR&gt;(3) &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;Verificar&amp;nbsp;los componentes del servidor Team Foundation&lt;/STRONG&gt;&lt;/FONT&gt;&lt;BR&gt;Ingresar a Internet Information Server ("inetmgr.exe" desde linea de comandos), luego:&lt;BR&gt;Verificar que se hayan creado los siguientes Pool de aplicaciones:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_AppPools.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;- Verificar que se haya instalado las aplicaciones de Reporting Services tal como se muestra en la figura:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_RS.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;- Verificar que se haya instalado el sitio de administracion de Sharepoint, como se muestra en la figura:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_SharepointAdmin.JPG"&gt;&lt;/IMG&gt; 
&lt;P&gt;- Verificar que se haya creado un sitio pata Team Foundation Server con las aplicaciones que se muestran en la figura:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_ServerComponents.JPG"&gt;&lt;/IMG&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;(4)&lt;STRONG&gt;&lt;FONT color=#ff0000&gt; Verificar que el Cliente se puede conectar a un Servidor TFS:&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/Connect_To_TFS.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/Connect_To_TFSDialog.JPG"&gt;&lt;/IMG&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TeamExplorer.JPG"&gt;&lt;/IMG&gt; &lt;/P&gt;
&lt;P&gt;(4) &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Verificar que el Team Project&amp;nbsp;se crea&amp;nbsp;satisfactoriamente:&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFS_NewTeamProject.JPG"&gt;&lt;/P&gt;&lt;/IMG&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=13134" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Instalando Team Foundation Server</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/11/13072.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/11/13072.aspx</id><published>2007-02-12T04:47:00Z</published><updated>2007-02-12T04:47:00Z</updated><content type="html">&lt;P&gt;Sobre este tema recibi muchas llamadas y mensajes de amigos preguntandome por problemas al instalar Team Foundation Server, cuando instale el Beta&amp;nbsp;2 y Beta&amp;nbsp;3 tuve muchos problemas al instalar, pero habiendo instalado varias veces la version final del RTM y superados los problemas, solo les aconsejo una cosa: "Seguir al pie de la letra la mas reciente&amp;nbsp;&lt;A href="http://go.microsoft.com/fwlink/?LinkID=40042"&gt;guia de instalación&lt;/A&gt;", normalmente tienen problemas porque no han seguido estrictamente la guia, por ejemplo no han creado los usuarios con los permisos adecuados, no han instalado bien el WSS o algunos de los pre-requisitos no estaba instalado, en fin, hagamos un resumen de la instalación:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;(1)&lt;FONT color=#0000ff&gt; Instalacion y configuracion de los pre-requisitos de TFS&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Los requerimientos de CPU y procesados dependen de la cantidad de usuarios que va a soportar TFS y tambien si es Single-Server o Dual-Server. El software base simplicando es : &lt;/P&gt;
&lt;P&gt;Windows Server 2003 SP1 o Windows Server 2003 R2 y&amp;nbsp; IIS 6.o con ASP.NET habilitado.&lt;/P&gt;
&lt;P&gt;TFS NO se puede ser instalado en un Domain Controller.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;(2) &lt;FONT color=#0000ff&gt;Instalacion y configuracion de TFS&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Asegurarse de crear las cuentas locales para Single-Server o a nivel de dominio para Dual-Server, esta son TFSSETUP, TFSSERVICE, TFSREPORTS y TFSPROXY ,&amp;nbsp;los&amp;nbsp;nombres podrian varias pero hay que tener&amp;nbsp;en cuenta los permisos y rol de cada cuenta.&lt;/P&gt;
&lt;P&gt;Si estan detras de un firewall tener en cuenta los puertos TCP necesarios como el 80, 1433, 2382, etc.&lt;/P&gt;
&lt;P&gt;El procedimiento de instalacion&amp;nbsp;simplificado es:&lt;/P&gt;
&lt;P&gt;- Loguearse a Windows con la cuenta Domain\TFSSETUP. &lt;/P&gt;
&lt;P&gt;- Instalar Internet Information Services (IIS) con&amp;nbsp;ASP.NET enabled (si no esta instalado)&lt;/P&gt;
&lt;P&gt;- Instalar Microsoft SQL Server 2005 SP1 (Incluyendo Reporting Services)&lt;/P&gt;
&lt;P&gt;- Instalar el&amp;nbsp;hotfix para Microsoft SQL Server 2005, habilite, y restureel servicio&amp;nbsp;SQL Browser.&lt;/P&gt;
&lt;P&gt;- Instalar el hotfix&amp;nbsp;para Microsoft .NET Framework 2.0.&lt;/P&gt;
&lt;P&gt;- Instalar Windows SharePoint Services 2.0&amp;nbsp;con Service Pack2. (NO!, no se puede usar WSS 3.0)&lt;/P&gt;
&lt;P&gt;- Instalar Team Foundation Server (Bases de Datos y Servicios)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;(3) &lt;FONT color=#0000ff&gt;Instalacion y configuracion de TF Proxy Server&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;- Crear una cuenta dedicada (TFSPROXY) y añadirla el grupo Team Foundation Server Valid Users&lt;/P&gt;
&lt;P&gt;- Instalar IIS 6.0 &amp;nbsp;con ASP.NET y el .NET Framework 2.0 con el hotfix KB913393 &lt;/P&gt;
&lt;P&gt;- Ejecutar el wizard de instalacion de Visual Studio 2005 Team Foundation Server Proxy desde el CD e instalacion.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;(4) &lt;FONT color=#0000ff&gt;Instalacion y configuracion de TF Build Server&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;- Team Foundation Build Server puede instalarse en Windows Server 2003 SP2, Windows Server 2003 R2 o aun sobre Windows XP Professional&amp;nbsp;SP2.&lt;/P&gt;
&lt;P&gt;- Ejecutar el wizard de instalacion de Visual Studio 2005 Team Foundation Build Server Setup&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;(5) &lt;FONT color=#0000ff&gt;Instalacion y configuracion de Team Explorer&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Team Explorer tiene los mismos pre-requisitos de Visual Studio 2005. Dependiendo de lo que requiera de TFS necesitara instalar previamente Microsoft Office Excel 2003 o Office Excel 2007 (se requiere el SP1 de VS 2005) lo mismo para Microsoft Office Project.&lt;/P&gt;
&lt;P&gt;En la pantalla de instalacion de Team Foundation Server setup wizard, haga clic en "Install Team Explorer".&lt;/P&gt;
&lt;P&gt;Para detalles exactos del procedimiento de instalacion siga la &lt;A href="http://go.microsoft.com/fwlink/?LinkID=40042"&gt;Guia de Instalacion de Visual Studio Team Foundation&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Ademas ya se encuentra disponible el&amp;nbsp;&lt;A href="http://go.microsoft.com/fwlink/?LinkId=79224"&gt;Visual Studio 2005 Team Foundation Server Service Pack 1&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=13072" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Planificando la instalacion de Team Foundation Server</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/09/12947.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/09/12947.aspx</id><published>2007-02-09T23:58:00Z</published><updated>2007-02-09T23:58:00Z</updated><content type="html">&lt;P&gt;El esquema de despliegue de Team Foundation Server variará dependiendo de las necesidades del negocio. Basado en esas necesidades puede elegir las caracteristicas de&amp;nbsp;TFS que mejor encajen en su entorno.&lt;/P&gt;
&lt;P&gt;En el siguiente diagrama se muestran los clientes y servidores de TFS:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/TFSServerClient.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;Los clientes y servidores pueden estar distribuidos desde una forma simple hasta una forma compleja. Una topologia de TFS simple es con el servidor y los clientes contenidos dentro de un solo dominio como se muestra en esta figura:&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/SimpleTopology.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;En una topologia de TFS moderada, los componentes del servidor estan instalados en nodos de servidor separados siendo accedidos por clientes en múltiples dominios.Topologias de esta complejidad estan dirigidas a equipos de desarrollo muy grandes en el rango de 50 a 500 usuarios.&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/ModerateTopology.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;En una topologia compleja de TFS, los componentes de TFS estan en nodos de servidores separados y son accedidos por clientes en multiples dominios desde ubicaciones geograficamente distantes. Adicionalmente a los componentes de tolerancia a fallas, se ha instalado un TFS Proxy.&lt;/P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/AdvancedTopology.jpg"&gt;&lt;/IMG&gt; 
&lt;P&gt;Algunas consideraciones para la planificación son:&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Consideraciones de Rendimiento &lt;/FONT&gt;&lt;/STRONG&gt;: Varios factores afectan el rendimiento, tales como &lt;/P&gt;
&lt;P&gt;(1) &lt;FONT color=#0000ff&gt;Tamaño de la organizacion&lt;/FONT&gt;, por ejemplo para menos de 100 usuarios podria ser suficiente un&amp;nbsp;instalación "single-server", para mas de 100 usuarios o una alta demanda se requeriria una instalación "dual-server".&lt;/P&gt;
&lt;P&gt;&amp;nbsp;(2) &lt;FONT color=#0000ff&gt;Alcance del despliegue&lt;/FONT&gt;, considerar los tipos de tareas que los usuarios deben realizar, por ejemplo si los usuarios requieren la ejecucion organizada de pruebas de software y cuantos usuarios estaran corriendo las pruebas? Que tan frecuentemente?.&lt;/P&gt;
&lt;P&gt;(3) &lt;FONT color=#0000ff&gt;Hardware&lt;/FONT&gt;, el rendimiento de TFS esta ligado directamente a la velocidad de CPU, memoria y espacio en disco duro disponible en las computadoras donde se instalara cada componente, para eso hay que determinar exactamente los requerimientos de hardware. &lt;/P&gt;
&lt;P&gt;(4) &lt;FONT color=#0000ff&gt;Conectividad de red&lt;/FONT&gt;, considerar la latencia de la red y como los usuarios clientes se conectaran a TFS. Una latencia de red de mas de 350 milisegundos puede afectar significativamente el rendimiento de TFS o hacer que el servidor no este disponible de forma intermitente. Durante las distintas operaciones TFS se conecta a los servicios y componentes apropiados en la capa de datos, capa de aplicacion y capa cliente, la velocidad con que TFS complete la transferencia de grandes cantidades de datos&amp;nbsp;depende, en parte, de la velocidad de la red. Frecuentemente el establecer la tarjeta de red al modo full-duplex y una velocidad mas rapida (100Mbps)&amp;nbsp; puede reducir el tiempo que demora la transferencia de datos.&lt;/P&gt;
&lt;P&gt;(5) &lt;FONT color=#0000ff&gt;Mantenimiento&lt;/FONT&gt;, considere&amp;nbsp; las tareas de mantenimiento diario o semanal que tendra que realizar, como se manejara los backups y cuanto tiempo tomaran? Por ejemplo una instalacion Dual-Server esta optimizada para rendimiento del servidor, pero tomara mas tiempo de mantener que una instalacion&amp;nbsp;single-server. Hay que tomar estas consideraciones en cuenta junto con el tamaño de la organizacion y cantidad de usuarios.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Licenciamiento&lt;/FONT&gt;&lt;/STRONG&gt; : Debe comprar licencias tanto del servidor como del cliente pata utilizar TFS. El numero de licencias que requiera dependeran del numero de computadoras sobre las cuales quiere instalar y el numero de usuarios que requiere que tengan acceso a TFS.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;Estimacion&amp;nbsp;de Necesidades&lt;/STRONG&gt;&lt;/FONT&gt; : Aparte de considerar varios factores como el tamaño de la organización, las tareas y roles de los usuarios, las especificaciones de hardware actual y la configuracion de la red, tambien se debe tener en cuenta cuantas personas estan disponibles para hacer el soporte de TFS y realizar las tareas de mantenimiento.&lt;/P&gt;
&lt;DIV class=seeAlsoNoToggleSection id=sectionSection0&gt;Para mas informacion sobre Planeamiento y Administracion de TFS descargue: &lt;A href="http://go.microsoft.com/fwlink/?linkid=55995"&gt;Team Foundation Administrator's Guide&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV class=seeAlsoNoToggleSection&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV class=seeAlsoNoToggleSection&gt;Para mas informacion sobre Licenciamiento, descargue: &lt;A href="http://go.microsoft.com/fwlink/?LinkId=55164"&gt;Microsoft Visual Studio 2005 Team System Licensing White Paper&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV class=seeAlsoNoToggleSection&gt;&lt;BR&gt;&lt;A HREF="/photos/sample/picture1.aspx" target=_blank&gt;&lt;/A&gt;&lt;A HREF="/photos/sample/picture1.aspx" target=_blank&gt;&lt;/A&gt;&amp;nbsp;&lt;/DIV&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=12947" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Arquitectura de Team Foundation Server</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/09/12866.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/09/12866.aspx</id><published>2007-02-09T07:56:00Z</published><updated>2007-02-09T07:56:00Z</updated><content type="html">&lt;P class=Lb1&gt;La &lt;FONT color=#000080&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Arquitectura logica&lt;/FONT&gt;&lt;/STRONG&gt; &lt;/FONT&gt;de Team Foundation Server esta basada en&amp;nbsp;multiples capas: Una capa de datos, una capa de aplicacion y la capa cliente.&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;STRONG&gt;&lt;FONT color=#000000&gt;Capa de Datos&lt;/FONT&gt;&lt;/STRONG&gt; : Esta basada en Microsoft SQL Server 2005&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;STRONG&gt;&lt;FONT color=#000000&gt;Capa de Aplicacion&lt;/FONT&gt;&lt;/STRONG&gt; : Esta compuesta de SQL Server 2005 Reporting Services, Servicios Web Base de&amp;nbsp;Team Foundation y Windows Sharepoint Services.&lt;/P&gt;
&lt;P class=Lb1&gt;Tambien incluye Team Foundation Build Services, que permite conectarse a Build Servers y Team Foundation Server Proxy que maneja un cache de archivos del source control previamente accedidos para mejorar el rendimiento de las operaciones sobre conexiones de bajo ancho de banda.&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;STRONG&gt;Capa Cliente&lt;/STRONG&gt; : Consiste del Team Explorer, aunque tambien se integra con Microsoft Office Project 2003 y Microsoft Office Excel 2003&lt;/P&gt;
&lt;P class=Lb1&gt;La &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;Arquitectura fisica&lt;/STRONG&gt;&lt;/FONT&gt; de Team Foundation Server puede estar distribuida en una (Single) o mas&amp;nbsp;computadoras (Dual)&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;STRONG&gt;Single-Server&lt;/STRONG&gt;&amp;nbsp;: La capa de datos y de aplicacion estan en la misma computadora. La capa cliente en las estaciones.&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;STRONG&gt;Dual-Server&lt;/STRONG&gt; :&amp;nbsp; La capa de datos y de aplicacion se encuentran&amp;nbsp; en computadoras separadas. Se debe tener instalada la capa de datos antes instalar los componentes de la capa de aplicacion. La capa cliente en las estaciones&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;U&gt;Team Foundation Build&lt;/U&gt; : Permite la automatizacion de los builds, se puede instalar en computadoras separadas o en la misma computadora de la capa de aplicacion de Team Foundation.&lt;/P&gt;
&lt;P class=Lb1&gt;&lt;U&gt;Team Foundation Server Proxy&lt;/U&gt; : Mejora el rendimiento del controlador de versiones de Team Foundation colocando en cache los archivos previamente accedidos. Se puede instalar en una computadora separada o en la misma computadora de la capa de aplicacion de Team Foundation.&lt;/P&gt;
&lt;P class=Lb1&gt;En la figura se muestra las distintas aplicaciones y servicios involucrados en Team System, el software pre-requisito y sistemas operativos y la ruta de comunicacion entre componentes. Notar que toda la comunicacion entre la capa cliente&amp;nbsp; y la capa de aplicacion es realizada sobre http y https.&amp;nbsp;.NET Remoting es utilizado para manejar el servicio de releases en el build server. La comunicacion via SQL TCP entre el Cliente de Reporte y la capa de datos es solo para presonalizar reportes -&amp;nbsp; los reportes estandar que vienen con Team System son alojados por SQL Reporting Services en la capa de aplicacion.&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/blogs/tfsarchitecture1.jpg" border=0&gt;&lt;/P&gt;
&lt;P&gt;Puede encontrar mas informacion en capitulo "Team Foundation Installation" en el Visual Studio 2005 Team Foundation &lt;A href="http://go.microsoft.com/fwlink/?LinkID=40042"&gt;Installation Guide&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=12866" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Team Foundation Server Certification</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2007/02/05/12093.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2007/02/05/12093.aspx</id><published>2007-02-05T20:27:00Z</published><updated>2007-02-05T20:27:00Z</updated><content type="html">&lt;P&gt;Bueno esta era la pregunta que muchos me hacian y la verdad que no sabia que responder hasta que la semana pasada me llego un e-mail del MVP Lead de invitacion para el examen 70-510 TS: Visual Studio 2005 Team Foundation Server para la nueva certificacion &lt;STRONG&gt;MCTS: Visual Studio 2005&amp;nbsp;Team Foundation Server&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;Justo al dia siguiente Rob Caron publico en su &lt;A href="http://blogs.msdn.com/robcaron/archive/2007/02/02/1584258.aspx"&gt;blog &lt;/A&gt;la invitacion para el examen.&lt;/P&gt;
&lt;P&gt;El examen esta dividido en 5 grandes areas con su respectivo porcentaje de peso en el examen:&lt;/P&gt;
&lt;LI&gt;Installing and configuring Microsoft Team Foundation Server (12%) 
&lt;LI&gt;Administering Team Foundation Server instances and team projects (25%) 
&lt;LI&gt;Administering Team Foundation Server version control (19%) 
&lt;LI&gt;Administering work item types and process templates (19%) 
&lt;LI&gt;Administering a team build (14%) 
&lt;LI&gt;Managing team project reporting and documentation (11%)&lt;/LI&gt;
&lt;P&gt;Se que he estado bastante alejado de los blogs pero ahora hay un motivo para mantenerlos informados, voy a ir colocando (eso espero) informacion sobre cada punto del examen con informacion de donde encontrarla y algun comentario personal.&lt;/P&gt;
&lt;P&gt;Para los interesados que ya han visto charlas sobre Visual Studio 2005 Team Foundation Server y creen que estan preparados para un nivel 200 no se olviden de descargar el curso:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=527E2A17-1DEA-4D0B-9484-6AE43D00E570&amp;amp;displaylang=en"&gt;Visual Studio 2005 Team System Basics Training&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Hace un tiempo dicte un curso de TFS Nivel 300 algunos materiales de ese curso los estare colocando de acuerdo al tema que se vaya posteando en el Blog.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=12093" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry><entry><title>Gente de Microsoft</title><link rel="alternate" type="text/html" href="http://blogs.3devnet.com/blogs/guino/archive/2006/11/05/1286.aspx" /><id>http://blogs.3devnet.com/blogs/guino/archive/2006/11/05/1286.aspx</id><published>2006-11-05T06:19:00Z</published><updated>2006-11-05T06:19:00Z</updated><content type="html">&lt;P&gt;Bueno, como siempre reaparezco de vez en cuando, espero poder aportar sobre cosas tecnicas mas seguido, esta vez solo queria colocar una de mis fotos favoritas con gente de Microsoft que conoci personalmente en distintos eventos y a quienes&amp;nbsp;admiro.&lt;/P&gt;
&lt;P&gt;Estan: &amp;nbsp;Don Box (el padre de SOAP), Anders Heljsberg (creador de C#), Scott Guthrie (padre de ASP.NET),&amp;nbsp;Michael Howard (Guru en Seguridad en Microsoft autor de "Writing secure code"), Keith Short y Jack Greenfield (Autores del libro Software Factories). Dejo la tarea para que ustedes reconozcan quien es quien :)&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.3devnet.com/guino/msleads.jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.3devnet.com/aggbug.aspx?PostID=1286" width="1" height="1"&gt;</content><author><name>guino</name><uri>http://blogs.3devnet.com/members/guino.aspx</uri></author></entry></feed>