List<Stuff>

Una colección de ideas, instanciada por Jose Luis Soria
Definiendo “Hecho” en XP2011

Aunque pueda parecer evidente, en ocasiones es difícil determinar cuándo hemos terminado de trabajar en una funcionalidad o característica durante un proyecto. Suele ocurrir especialmente por omisión; es decir, nos dejamos cosas sin hacer cuando se echa el tiempo encima, o porque no las consideramos importantes. El problema es que todo esto suele retornar al cabo del tiempo en forma de defectos, deuda técnica o simplemente trabajo pendiente, y en muchas ocasiones supone un inconveniente y un esfuerzo mucho mayor que si lo hubiésemos solucionado en su momento.

Definir explícitamente qué significa que algo esté “Hecho” (e intentar cumplir esa definición), es fundamental para evitar estas situaciones. Es lo que intenté resaltar en mi Lightning Talk del pasado jueves 12 en la conferencia XP2011; creo que la presentación refleja bastante bien el concepto:

Posted: 16/5/2011 14:13 por Jose Luis Soria | con no comments
Archivado en: ,,
The Spanish version of the Scrum Guide is now available

The Scrum Guide, written by the Scrum creators Ken Schwaber and Jeff Sutherland, represents the official Scrum Body of Knowledge, and is an essential resource if you want to begin learning about the framework, or to clarify any occasional doubt.

It has been translated to no less than 20 languages, and, although it was already available in Spanish, it has just been released a new version which represents a significant improvement on the translation, and which has been brought up to date according to the last English original.

It has been a pleasure for me to take part in the translation effort, and I hope that the outcome will be valuable for many people… so I encourage you to visit scrum.org and have a look to the Scrum Guide in Spanish.

 

Scrum.org-small2[5]

Ya está disponible la Guía de Scrum en Español

La Guía de Scrum, escrita por los creadores de Scrum, Ken Schwaber y Jeff Sutherland, constituye la Base de Conocimiento oficial de Scrum, y es un recurso imprescindible para comenzar a aprender sobre el marco de trabajo, o como herramienta de consulta puntual que ayude a despejar dudas.

Ha sido traducida a más de 20 idiomas, y aunque ya estaba disponible en Español, acaba de ser liberada una versión que supone una mejora sustancial en la traducción, y que ha sido puesta al día a partir del último original en Inglés.

Ha sido un placer para mí poder colaborar en dicha traducción, y espero que sea de utilidad para mucha gente… así que te animo a que entres en scrum.org y eches un vistazo a la Guía de Scrum en Español.

 

Scrum.org-small2

Recursos sobre integración de Project Server y TFS 2010, incluso para proyectos ágiles ;-)

Las características de integración entre Project Server y TFS, liberadas con el SP1 de TFS, permiten compartir información de forma sencilla y transparente entre los equipos de desarrollo y los gestores de proyecto, de modo que cada uno de ellos además va a poder seguir trabajando en la herramienta que le resulte más natural y productiva.

Es bastante típico, sobre todo al ver que algunos elementos de trabajo en TFS permiten introducir información de horas, preguntarse si TFS puede utilizarse para que los desarrolladores reporten el avance en el proyecto desde el propio TFS. Utilizando sólo TFS esto no es fácil de conseguir, ya que, aunque en la mayoría de las plantillas de proceso tenemos la posibilidad de actualizar las horas trabajadas en una tarea, no es posible indicar información adicional necesaria, tal como las fechas concretas en las que se han realizado dichas horas.

Por si te lo estás preguntando al leer todo esto, y crees que he tenido una crisis y me he pasado del agilismo al command & control, quiero recalcar que es perfectamente posible ser ágil, y a la vez beneficiarse de usar Project Server. De hecho el equipo estará incluso menos interrumpido y podrá dedicarse mejor a lo suyo, que es la entrega de valor. Es una percepción errónea muy común, pensar que las personas y herramientas dedicadas a la gestión de proyectos a alto nivel en una organización, deben desaparecer si se introducen prácticas ágiles en ella.

Por muy ágiles que seamos en cualquier proyecto en concreto, siempre habrá trabajo de coordinación entre proyectos, de lanzamiento de los mismos, de gestión a nivel organizativo, de mantenimiento del portfolio de proyectos…, y en definitiva de optimizar y sincronizar los esfuerzos que los distintos equipos vayan llevando a cabo. Esto no impide que cada equipo pueda trabajar con Scrum o beneficiarse de las prácticas ágiles; los problemas vienen cuando los gestores de proyecto intentan controlar demasiados detalles, e imponen decisiones relacionadas con el trabajo de desarrollo, que deberían ser tomadas por el equipo.

Por otra parte, un desarrollador ágil estaría cometiendo asimismo un error si no favoreciese la visibilidad de la información necesaria para el seguimiento de proyecto a nivel organización. El control empírico de procesos, que es el corazón de Scrum y de otros modelos ágiles, tiene en la visibilidad su primer requisito. Y si la visibilidad es vital para la buena marcha de un proyecto, más aún lo es un nivel por encima, a la hora de trabajar en los distintos proyectos en conjunto.

Todo esto queda ilustrado de forma muy sencilla en el escenario descrito en los siguientes enlaces, que constituye uno de los modos de funcionamiento de la integración de TFS con Project Server:

Para aprender más acerca de la integración de Project Server y TFS 2010, son útiles los siguientes enlaces:

Además de todo esto, incluyo los enlaces y las diapositivas relacionadas con la sesión que tuvo lugar en marzo en Madrid, y en la cual hablé acerca de la gestión de proyectos en general, Project Server y TFS, y cómo integrar ambas herramientas. Ojo porque se trata de la versión extendida, de 4 horas, de la sesión que posteriormente dio Ibon en evento “Destino la Nube” Smile.

Grabación íntegra y resumen del evento: http://www.globbtv.com/microsite.aspx?id=12&cmd=0&cat=111

Diapositivas:

Some resources about Project Server and TFS 2010 integration, even for agile projects ;-)

Project Server and TFS integration feature pack, released with TFS SP1, enables information sharing in a simple and transparent way between development teams and project managers, while everyone being able to continue working with the tool that suits better his needs.

It is very common, specially after realizing that some work items in TFS can receive information about worked hours, to ask oneself if TFS can be used by developers to inform about the progress made on the project. This is not easy to achieve by only using TFS; although most process templates allow us to update worked hours on a task, it is not possible to provide some necessary information, like the actual dates when these hours were worked.

In case you were wondering, while reading, if I’ve suffered a crisis and I’ve stepped from agile to command & control, I’d like to emphasize that it’s perfectly OK to be agile, and at the same time benefit from using Project Server. In fact, the team is going to be less interrupted and thus they’re going to be able to work more on delivering value, which is what they are supposed to do. It is a common misconception to think that people working on high level project management within an organization should move away if agile practices are adopted into it.

No matter how agile we are in any particular project, there always will be some work of coordination between projects, kick-off, enterprise-level management, portfolio maintenance…, and at the end, of optimizing and synchronizing the efforts which each team is performing. This doesn’t impede each team from working with Scrum or from benefiting of agile practices; in fact, trouble usually comes when project managers try to take control of too much details, and impose decisions related to development work, which should be left up to the team.

On the other hand, any agile developer would be mistaken if he didn’t facilitate visibility of the information, necessary for project tracking at the organization level. Visibility is the first requirement for empirical process control, which is the heart of Scrum and other agile models. And, if visibility is a key for assuring any project’s good health, it is even more important one level higher, when working on different projects as a whole.

These concepts are well described in the scenario presented in the following links, which is one of the ways the TFS and Project Server integration works:

If you want to learn more about Project Server and TFS 2010 integration, these links will be useful:

Besides that, I'm including the links and slides from the session that took place last March in Madrid, where I spoke about project management in general, Project Server and TFS, and integrating them. Warning: it's the extended version, 4-hour long, of the session given later by Ibon at the event “Destino la Nube” Smile (everything in Spanish).

Entire recording and summary of the session: http://www.globbtv.com/microsite.aspx?id=12&cmd=0&cat=111

Slides:

Diez buenas razones para asistir a un curso Professional Scrum Developer

 

ProfessionalScrumDeveloper_500px

 

Coincidiendo con la ScrumWeek Madrid 2011, se va a realizar el primer curso Professional Scrum Developer .NET en España, organizado por Plain Concepts (impartido por Rodrigo y un servidor), y con el apoyo de Microsoft.

Me gustaría resumiros por qué os puede interesar un curso PSD, y qué os puede aportar de valor a los que estáis trabajando como desarrolladores en proyectos Scrum o tenéis pensado empezar a hacerlo.

En cuanto a los cursos en general:

1. PSD es un curso orientado específicamente a desarrolladores. La mayoría de los cursos Scrum que se ofrecen, suelen ser generalistas y presentan todos los roles sin profundizar en ninguno en concreto, o se centran más en el ScrumMaster. PSD está diseñado para desarrolladores en un equipo Scrum, que al fin y al cabo constituyen la gran mayoría de los comprometidos en un proyecto.

2. Un equipo Scrum es multi-funcional; debe ser capaz de afrontar cualquier tarea que sea necesaria para convertir el compromiso adquirido en un incremento de valor en cada Sprint. En un curso PSD se tratan prácticas y herramientas que facilitan esta multi-funcionalidad, no sólo relacionadas con la programación, sino también desde el punto de vista de la arquitectura, las pruebas, la gestión de defectos y otros muchos aspectos a los que un equipo, y por lo tanto sus miembros, se enfrentan durante un proyecto.

3. Un curso PSD es fundamentalmente práctico. Por lo general, la mejor forma de asentar los conceptos que se aprenden es aplicarlos en la práctica, y en un curso PSD vas a hacer precisamente esto, trabajando en equipo, utilizando desde el principio las prácticas y herramientas presentadas, y empleándolas en construir incrementos de valor tal y como se haría en un proyecto real.

4. Durante un curso PSD se realiza una inmersión total en Scrum. No sólo se presentan los elementos que constituyen Scrum, además se trabaja durante varios días en el marco de un proyecto, realizando Sprints y el resto de prácticas de Scrum como reuniones de planificación de Sprint, retrospectivas y demos. Se obtiene una experiencia Scrum completa.

5. Un curso PSD se basa en la definición correcta de Scrum, tal y como fue concebido por Ken Schwaber y Jeff Sutherland, y está recogido en la Scrum Guide. Se podría discutir bastante acerca de si es posible o beneficioso modificar Scrum, pero al menos al terminar un curso PSD, tendrás la base correcta sobre la que comenzar a trabajar y a perseguir mejoras.

6. Durante el curso se tratan específicamente disfuncionalidades, y dificultades típicas que suelen suponer un problema a la hora de aplicar Scrum en proyectos reales. Por lo tanto cuando aparezcan los problemas, tendrás un criterio que te guíe en la búsqueda de soluciones.

7. Uno de los mayores atractivos del curso es la interacción con los demás asistentes. No sólo te vas a divertir, sino que vas a aprender un montón de la experiencia de compartir varios días trabajando en equipo con personas que tienen diferentes puntos de vista y modos de enfrentarse a los problemas.

En cuanto a los cursos PSD.NET en particular:

8. PSD.NET tiene el respaldo oficial de Microsoft. Ha sido desarrollado por Scrum.org y Microsoft en conjunto, y es EL CURSO con mayúsculas para Visual Studio 2010. No hay más cursos sobre Visual Studio 2010 y ALM en los que Microsoft haya participado en el desarrollo; éste es el del grupo de producto de Visual Studio.

9. Es el único curso respaldado por Microsoft en el que se trata Team Foundation Server a fondo, desde la perspectiva del desarrollador. Sólo existe un curso oficial en MSLearning para TFS, pero está centrado en administración.

Y por último, pero no menos importante:

10. Asistir al curso te la la posibilidad de obtener la certificación PSD.NET, una certificación reconocida internacionalmente por la industria que demuestra el conocimiento adquirido acerca de cómo desarrollar software con Scrum en la plataforma .NET. Pasar la evaluación es duro, pero con la ayuda del curso irás bastante bien preparado.

 

Después de escribir el título del post, se me han ocurrido un par de razones más que aplican al curso concreto de la ScrumWeek Winking smile:

11. Al ser el primer curso en España, queremos que se pueda beneficiar del mismo el máximo numero de personas posible. Por esta razón tiene un precio muy ajustado que supone un 50% de descuento sobre el precio oficial recomendado.

12. Por si el Inglés es un impedimento para ti, el curso va a ser en Español. Eso sí, los materiales, y el examen de certificación (si te animas a hacerlo), por ahora sólo están disponibles en Inglés.

 

Ánimo que todavía queda alguna plaza disponible. ¡Nos vemos en la ScrumWeek!

Ten good reasons to attend a Professional Scrum Developer course

 

ProfessionalScrumDeveloper_500px_thu

 

During ScrumWeek Madrid 2011, it’s going to take place the first Professional Scrum Developer .NET course in Spain, arranged by Plain Concepts (given by Rodrigo and myself), and with the support from Microsoft.

I’d like to summarize why a PSD course can be interesting for you, and why it can be valuable for any of you working as developers in Scrum projects or planning to do so.

About courses in general:

1. PSD is specific for developers. Most Scrum courses available tend to be generic, and present all the Scrum roles without going in depth into any of them, or taking care only of the ScrumMaster. PSD is designed with developers in mind, within a Scrum Team, who at the end make up the majority of the ones committing to a project.

2. A Scrum Team is cross-functional; it must be able of facing any task needed to turn the agreed commitment into a valuable increment each Sprint. During a PSD course you’ll deal with practices and tools that enable this cross-functionality, not only related to coding, but also from architecture, testing, bug management and many other aspects which a team, and thus, its members, face during a project.

3. A PSD course is mainly practical. Usually, the best way to lay down learned concepts is to apply them in practice, and during a PSD course you’re going to do exactly that, working as a team, using the presented tools and practices from the beginning, and employing them in building value increments the same way you’d do during a real project.

4. During a PSD course you’ll experiment a total immersion in Scrum. Not only the elements which make up Scrum are presented, but also work is done along several days within a project, doing Sprints and the rest of the Scrum practices like Sprint Planning meetings, Sprint Reviews and Retrospectives. You’ll obtain a complete Scrum experience.

5. A PSD course is based on the right Scrum definition, as it was conceived by Ken Schwaber and Jeff Sutherland, and is gathered into the Scrum Guide. You can discuss a lot about if it’s possible or beneficial to modify Scrum, but at least, once you’ve finished a PSD course, you’ll have the right base on which you’ll be able to begin working and pursuing improvements.

6. During the course we’ll specifically deal with typical dysfunctions and difficulties which usually represent a problem while applying Scrum for real projects. Therefore, when problems arise, you’ll have support that will guide you in the search for solutions.

7. One of the greatest advantages of the course is the interaction with the attendants. Not only you’re going to have fun, but also you’ll learn a lot from the experience of sharing several days, working as a team with people who have different points of view and ways of facing the problems.

About PSD.NET courses in particular:

8. PSD.NET is endorsed by Microsoft. It has been jointly developed by Scrum.org and Microsoft, and is THE COURSE for Visual Studio 2010. There’re not any other courses about Visual Studio 2010 and ALM where Microsoft has participated in developing; this is the one from the Visual Studio product group.

9. This is the only Microsoft supported course where Team Foundation Server is presented in depth, from a developer’s perspective. There’s only one official course from MSLearning for TFS, but it is centered around administration.

And at last, but not least:

10. Attending the course will give you the chance of obtaining the PSD.NET certification, a worldwide industry-recognized certification, that assures the knowledge about developing software with Scrum in .NET platform. It’s not easy to pass the assessment, but the course will prepare you pretty well to take it.

 

After writing the title for the post, I thought about two more reasons regarding specifically to the course being held during ScrumWeek Winking smile:

11. Since it’s the first course in Spain, we’d like to give to the maximum number of people the opportunity to take it. Because of this, it has a very tight price which means a 50% discount over the official recommended price.

12. If English is an issue for you, the course is going to be given in Spanish. But have in mind that materials and assessment (if you finally go for it) are in English at the moment.

 

There are still some remaining seats! See you at the ScrumWeek.

I attended Agile Open Spain 2010

Last weekend (November 12th and 13th) I attended Agile Open Spain 2010, which took place at La Salle (Barcelona) and counted with Plain Concepts as the main sponsor.

It’s very difficult to get bored at an event like an Open Space, so my expectations got easily fulfilled. This is a short summary of my experience around there:

  • Working Software, session proposed by Xavi Gost. It was about the importance of working software as the only valid measure of the progress and the commitment acquired to our customers. Big (and often uncomfortable) truths got surfaced
  • Software Craftsmanship with Enrique Comba. It was a quite interesting session, where it was described nicely the approach to software development as an activity closer to craftsmanship than to industrial production (even taking into account that the craftsmen manifested a preference for growing apart from what they called “Rugby people”)
  • Frameworks, yes or not?, with Xavi Gost and Roberto Canales. A discussion took place about the convenience of using frameworks for development. For my taste, the conversation derived too much into “philosophical” terms (I was hoping something more concrete or maybe more close to development with frameworks, rather than the “social” implications that can be derived). But nevertheless very interesting
  • Scrumban, proposed by Ángel Medinilla, Frogtek and Biko. A very convenient way of dealing with all that non-planned demand that tends to be the source of many problems during Scrum projects
  • Training and certification. This session was proposed by me, and during it we were talking about the available options for getting training and certification in the Agile world. We put special attention to the Professional Scrum Developer program from scrum.org, that I’ll explain around here soon
  • Slack (sorry, but I can’t remember the name of the person that proposed the session). We were talking about different ways of assuring a minimum time for relax during the day, which allows the team get to the necessary degree of concentration and make their work better
  • Retrospective. It consisted in several group activities intended to review what happened along the day, and potential improvements. To be honest, the first part, where the most relevant ideas were surfaced by means of a game involving post-its, was not very valuable for me. Mainly because each individual will have something more valuable for her, and does not have to match another’s vision, neither I find a lot of benefit in comparing it with the global vision. On the other hand, subsequent “tribes” game, intended for identifying improvements for future events, revealed itself as very interesting and fruitful for me

As the closing act for the event, we attended an additional session held at a quite different place, sharing dinner, drinks and conversation with a handful of the attendants to the event. Of course, it was at least as enriching as the rest of the sessions that took place during the day Smile

Congratulations to the organization crew, and hope to see you at the next Agile Open…

Estuve en el Agile Open Spain 2010

El pasado fin de semana (12 y 13 de noviembre) asistí al Agile Open Spain 2010, celebrado en La Salle (Barcelona) y que contó con Plain Concepts como principal patrocinador.

Es muy difícil aburrirse en un evento tipo Open Space; de hecho, como era de esperar, en general se cumplieron las expectativas con creces. Éste es un pequeño resumen de mi experiencia:

  • Software que funciona, sesión propuesta por Xavi Gost. Se intentó poner de manifiesto la importancia de el software que funciona como única medida válida del avance del compromiso adquirido con nuestros clientes. Salieron a la luz grandes (y también incómodas) verdades
  • Software Craftmanship con Enrique Comba. Me pareció una sesión interesante en la que se describió muy bien la aproximación al desarrollo de software como una actividad más cercana a la artesanía que a la producción industrial (pese al distanciamiento que manifestaron los artesanos de lo que llamaban “la gente del Rugby”)
  • Frameworks sí o no, con Xavi Gost y Roberto Canales. Se estuvo discutiendo acerca de la conveniencia del uso de los frameworks en los proyectos de desarrollo. Para mi gusto la conversación derivó demasiado a temas “filosóficos” (yo esperaba algo más concreto o quizá más centrado en el propio desarrollo con frameworks que en las implicaciones “sociales” que pueda tener). Pero muy interesante en cualquier caso
  • Scrumban, propuesta por Ángel Medinilla, Frogtek y Biko. Una forma muy buena de tratar con toda la demanda no planificada que suele provocar bastantes problemas durante los proyectos Scrum
  • Formación y certificación. Esta sesión fue propuesta por mí, y en ella estuvimos hablando acerca de las opciones de formación y certificación disponibles en el mundo ágil. Nos detuvimos en especial en el programa Professional Scrum Developer de scrum.org, del cual os daré más detalles por aquí en breve
  • Slack (lo siento, no recuerdo el nombre de la persona que la propuso). Estuvimos hablando de maneras de asegurar un mínimo de tiempo de descanso a lo largo del día, que permita al equipo llegar a la concentración necesaria y hacer mejor su trabajo
  • Retrospectiva. Consistió en unas actividades de grupo en las que se recapituló lo acontecido y se buscaron posibles mejoras. La verdad es que a la primera parte, en la que se buscaron las ideas más relevantes mediante un juego con post-its, no le encontré mucho valor. Sobre todo porque cada uno tendrá algo que haya valorado más y no tiene por qué coincidir con la visión de otro, ni le veo mucho beneficio en compararlo con la visión global. En cambio, el juego de las “tribus” posterior para identificar puntos de mejora para próximos eventos, me pareció muy interesante y fructífero

Como cierre al evento tuvimos una sesión adicional en un escenario un poco distinto, compartiendo cena, copas y conversación con buena parte de los asistentes al evento. Por supuesto que fue como mínimo igual de enriquecedor que el resto de sesiones del día Smile

Felicidades a la organización, y nos vemos en el próximo Agile Open…

Plain Concepts just got the Microsoft ALM Inner Circle Western Europe 2010 Award (twice in a row!)

Plain Concepts has just received the ALM Inner Circle Western Europe 2010 Award from Microsoft, which acknowledges the effort carried on for the ALM area in Europe, helping our customers to work better with Microsoft tools in the field of Application Lifecycle Management. In the photo below, you can see Rodrigo taking the Award at the partners event, which took place this week in Antwerp, from Julio Fernández Gayoso.

entrega_ALM_IC_WE_2010_thumb

Our fellows at Test House received the award too, congratulations for them!

This is the second consecutive year that we’ve been awarded, which in addition to the fact that we’re the first (and at the moment, the only) Spanish partner that has achieved the ALM  Competency at Microsoft, proves the outstanding performance of the Plain Concepts team.

My warmest congratulations to everyone devoted to ALM in Plain Concepts, and of course, we’ll keep on working in order to keep the same level of quality and commitment.

 

ALM_IC_WE_2010_thumb1

Plain Concepts, premio Microsoft ALM Inner Circle Western Europe 2010 (¡y van dos consecutivos!)

Plain Concepts ha recibido el premio ALM Inner Circle Western Europe 2010 de Microsoft, que reconoce el esfuerzo llevado a cabo en el área de ALM a nivel europeo, ayudando a nuestros clientes a trabajar mejor con las herramientas de Microsoft en el ámbito de la gestión del ciclo de vida de las aplicaciones. En la imagen podéis ver a Rodrigo recogiendo el premio en el evento de partners celebrado esta semana en Amberes, de manos de Julio Fernández Gayoso.

entrega_ALM_IC_WE_2010

Nuestros compañeros de Test House también fueron premiados, mi enhorabuena para ellos.

Es el segundo año consecutivo que recibimos el premio, lo cual unido a que somos el primer (y hasta el momento único) partner en España en conseguir la competencia ALM en Microsoft, demuestra el excelente desempeño del equipo de Plain Concepts.

Enhorabuena a todos los que nos dedicamos a esto en Plain Concepts, y por supuesto seguiremos trabajando para mantener el mismo nivel de calidad y compromiso.

 

Taller: Gestión de la configuración y compilación automatizada con TFS

El próximo jueves 21 de octubre estaré en el CIIN de Cantabria para dar un repaso a todo lo relacionado con gestión de la configuración y compilación automatizada. La idea es exprimir un poco el control de código fuente de TFS, y hacer unas cuantas builds ;-)

Tenéis todos los detalles aquí.

Espero veros en el taller, un saludo!!!

Setting up the VS 2010 RTM virtual machine for VirtualBox

As you maybe already know, a new Visual Studio 2010 RTM virtual machine is available, so you can play around with VS, TFS, and the provided hands-on-labs.

There are versions available for Hyper-V, Windows Virtual PC and Virtual PC 2007. But if for any reason you do want to use VirtualBox (I’ll not deal with the reasons for choosing a virtualization platform here ;-) ), you can run into problems when trying to start the virtual machine.

I downloaded the Virtual PC 2007 version with the idea of creating a new VirtualBox machine and attaching the .vhd to it. But after setting up the machine with the standard configuration, during booting process, it a blue screen appears with a “STOP 0x0000007B” error message.

It seems that the issue is related to the fact that the installed operating system is configured for an IDE controller (the one used in Virtual PC 2007), while the VirtualBox configuration wizard leaves the .vhd attached to a SATA controller.

The fix consists simply on taking away the SATA controller and attaching the .vhd to the IDE controller. After doing it, the virtual machine should manage to boot, and from that point you’d be ready to install the VirtualBox guest additions and start having fun!

This is how the working configuration looks for me (Spanish interface here, but it’d be straightforward to figure it out for other languages):

 

image

70-512 Exam: TFS 2010 Administration

A little more than two weeks have gone since 70-512 exam is available, which qualifies for MCTS certification in TFS 2010 administration. It’s the successor of 70-510, which covered TFS 2005. In fact, five years and two versions later seem a bit of too much time from my point of view, but at least the exam has been made available short after the new TFS 2010 bits were released. This is an important point, since 2010 means a dramatic evolution from former versions, thus there are many new features in 70-512 that were not covered in 70-510.

Whishing to renew my certification, last June 24th I passed the exam, just after my fellow Ibon who took me over only by a day; as you can see, here at Plain Concepts we’re a bit of impatient, and when we want something we want it delivered right now!!! ;-)

The exam was a bit more difficult for me than 70-510, because there’re many more things to take into account, and the time to gain the required experience has been much shorter. But I think it’d be not so difficult if you have been working deploying and administering TFS 2010, and even less if you’ve worked with former versions.

In many aspects, TFS administration has been simplified with the release of tools like the administration console or TFSConfig.exe.

But without any doubt, there are other areas where complexity has grown much more: high availability for application tier, build agents and controllers, process templates changes, and an endless bunch of new details. And even more if you take into account that monster, from the point of view of administration, which is Lab Manager. Of course, all of these things and many more are evaluated during the exam.

Another problem that arises is that, as you can see at the exam’s site, preparation materials are not quite abundant; for example, there’s not any book available, so TFS installation and administration guides are the best tools that you can rely on.

Nevertheless, as I said before, I think that if you’ve been into working with TFS, and giving a thorough read to the administration guide, there’d be not any problem to pass it. So go for it!!!

LEGO + Scrum: freak out!

When I found, while reading Agile Spain mailing list, that someone had the idea of using LEGO as an aid for Scrum Coaching, I thought that it could be a very enjoyable way of reinforcing some concepts that are addressed during the training.

But after using it during several sessions, I only can confirm what I suspected. Not only we enjoyed it like little Childs, but even more, I think that it was much easier for everyone to begin to get in touch with all the learned issues.

 IMAG0076 Digimax A50 / KENOX Q2

Simply put, the idea consists on going through a handful of Sprints, where the Team tries to build a LEGO town, committing to a backlog that has been proposed by me (as the product owner), and that has been estimated and prioritized by all the attendants working together (as members of the different Teams). As you can imagine, people gets fascinated when you show them the pile of LEGO bricks and you ask them for getting to work ;-). The process I followed, with some minor modifications, is the one described in the link which I included at the beginning of the post.

 IMAG0073 Digimax A50 / KENOX Q2

Following you can find my retrospective, based on the experience gained during several sessions carried out with different teams.

Things that went well

  • You can play the game no matter which is the technology or the kind of projects in which the Team is involved
  • Concepts are quickly settled down because of the practical approach
  • People get involved immediately
  • Lots of fun!!!

Things that didn’t go so well

  • Usually time gets too short to finish it properly
  • It’s a bit confusing to find out the tasks for the Sprint Backlog
  • There are several key concepts in Scrum that you can’t cover quite well, because the lack of time or the difficulty to carry them out; for example, Daily Scrum. But it’s always possible to complement this game with other related ones
  • If you are not careful, sometimes people pays more attention to playing with the bricks than to learning the process

Improvement actions

  • Better adjustment of Sprint length and cadence
  • Include essential Scrum practices not covered yet
  • Buy more LEGO bricks (ok, I don’t really need them, but this is the perfect excuse… you never can get enough LEGO bricks)

 Digimax A50 / KENOX Q2 Digimax A50 / KENOX Q2

Posted: 4/7/2010 13:47 por Jose Luis Soria | con 1 comment(s) |
Archivado en: ,,,
Materiales del evento: Conferencia Agile Spain 2010

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

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

Gestión ágil de la configuración

Gestión ágil de requisitos: construyendo nuestro backlog

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

 

Un saludo!!!

AgileSpain2010Horizontal

Posted: 18/6/2010 13:32 por Jose Luis Soria | con no comments
Archivado en: ,,,
Eventos: Conferencia Agile Spain 2010

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

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

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

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

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

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

Esperamos veros a todos por allí...

Un saludo!!!

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

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

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

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

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

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

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

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

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

 image

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

Un saludo!!!

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

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

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

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

Un saludo!!!

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

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

480x325_est

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

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

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

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

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

Más artículos < Página anterior - Página siguiente >