avril 2011Monthly :

Agile Lessons Learned 15 : Step Into The Light

This week I fell upon some old code I wrote back in 2006 when I was first learning Python. What a mess. I could not believe I was so proud of this code back then.

I remember being very proud of the fact that each and every single method, no matter how small or how high on McCabe’s cyclomatic complexity was thoroughly commented.

Back then, I was told this would greatly help other developers maintain the code. Well let me tell you what, I wrote the whole darn thing myself and the comments did not help me out one bit understand this code today. Talk about wasted time.

Time I could have spent writing automated tests. I spent the better part of two years building a system from the ground up WITHOUT a single automated system test. The system as a whole had a single class written using TDD and about two dozen unit tests ever executed on it.

Did it work ? Yes. Can I prove it to you ? Probably, but with great difficulty.

Would I like to maintain a system like that ? Not in a lifetime. The cold hard truth is that by the standards I have today, this code is terrible.

Was I a slacker ? Not at all. Quite the other way around actually. Back then, this code was a clean as any other code I had ever seen at that point in my life. I really did work hard on making this system the best I could. I even got praised on the results.

So is this blog a twisted way to tell the world I’m a better developer than I was 5 years ago ? Nope. Actually, it’s a praise to the developers I’ve met in the past 5 years. You see, 5 years ago I was not doing any pair-programming. I spent most of my days listening to indie rock* in my cubicle while writing Python all by myself.

Of course I was good. I was never challenged by anybody except when I went out of my way to get some help. Then it was back to more rock’n Python.

Then I met developers who were way better than me. First they put me through code reviews. Then I was pointed towards the right books. Then those crazy guys at Pyxis showed me how to do continuous pair programming.

It might seem intimidating to be constantly under the spotlight. I, for one, would never trade back the spotlight for my old cubicle.

So what are you waiting for ? Step out of your cubicle and step into the light. Grab the best developer your team has to offer and ask him to work with him. You’ll be surprised at how much you can learn in a single session.

Who knows, you just might show him a dew things too.

In the meantime, thanks to Xavier, Frank, J-F, J-S, Ben, Ernst, Patrice, J-C, the Marcouz, Vince, Bob, M-A, Carl, Nico, Phil, Monica, Cheng and all the others I have forgotten with whom I had the chance to pair with in the past few years. What I know now, I owe to you.

Nick

*I do admit it was a heck of a period for me music-wise, discovering the likes of Arcade Fire, the Black Keys, the Flaming Lips, Wolf Parade, DeVotchka, Interpol, Clap Your Hands Say Yeah, Bloc Party, etc. Music I still listen to today.

Transforming employees into shareholders may not be a good idea

image by risayv

Logic would tell us that offering shares of your company to your employees (assuming they are offered at a good price) should clearly boost performance and allow the organization to achieve exceptional results. After all, wouldn’t most people work harder, reduce inefficiencies, increase their performance and chase sale leads once they become shareholders?

Turns out logic does not necessarily prevail in this situation and results may not be extra-ordinary.

Let me share with you our not-so-successful experience.

Our experience

I’ve already stated that Pyxis is an experimental laboratory and like many people, we understand that money by itself is not a good motivator. We also believe that sharing the wealth with the people who contribute toward achieving the business results is not only a good idea, but it is for us a morale obligation.

So at the end of 2007, the founder and then CEO agreed to sell 25% of his shares to the employees with the intend to increase performance and share the resulting wealth – in addition to using it as an employee retention strategy. At the time, almost 100% of the employees created a cooperative to own shares of their company. It is important to specify that our province offers important tax credits to employee-owned cooperative – which was an important driver in creating a cooperative.

The conclusion after more than 3 years of having employee-shareholders is that the intend and the objectives were right but the way to achieve them weren’t done right. Why is that? I asked myself.

Below are my conclusions but before we get into those, I believe it is important to understand the distinction between being an employee and being a shareholder.

What is an Employee?

An employee contributes labor and expertise to an endeavour. Employees perform the discrete activity of economic production. Of the three factors of production, employees usually provide the labor.

Specifically, an employee is any person hired by an employer to do a specific “job”. In most modern economies, the term employee refers to a specific defined relationship between an individual and a corporation, which differs from those of customer, or client. Wikipedia

What is a Shareholder?

A shareholder or stockholder is an individual or institution (including a corporation) that legally owns one or more shares of stock in a public or private corporation. Shareholders own the stock, but not the corporation itself. Wikipedia

Clearly, there is a distinction between the role and contribution of an employee versus that of a shareholder. For one thing, transforming employees (with their behaviors and attitudes) into full-fledged active shareholders doesn’t happen over-night. To be honest, it still didn’t happen after over 3 years for almost 1/3 of the employees. Did we hire people who were not driven by results? Well, maybe for a couple of people but certainly not over 30% of the people. So why is it that results didn’t go through the roof?

After much analysis of the situation and heated debates, I believe there are a few reasons why transforming employees into shareholders didn’t give outstanding results:

  • Creating a cooperative has a non-capitalistic connotation: People who initiated the process of selling shares to the employees also wanted to implement a coop as a way to distribute wealth. Unless our implementation of a coop is very different than elsewhere in the world, many people understood a coop to be a non-profit driven initiative and as such, acted accordingly. Having a coop own 25% of the shares led to non-capitalistic behaviors and consequently slowed down growth and profitability.
  • Becoming an active shareholder isn’t the norm: Unless you have owned and operated a business in the past, the notion of becoming an active shareholder isn’t easily understood by most people. Many people – still to this day – ask themselves what it means to be a shareholder and how they should act differently. Transforming employees into shareholders is an educational process and unless you invest in training people what it means, the transformation will not give great results.
  • Lacking entry criteria brings performance downwards: Since everyone got access to shares without exception, there was no motivation to increase performance – why work harder than the next guy when the results are shared equally. On the other hand, when past performance is used to determine who gets the privilege to own shares, individual and collective performance is increased and as a consequence, the overall performance of the organization goes North.

Consequently, attempting to transform employees into shareholders overnight was a mistake in our case. If we had to do it again, I would still give employees the opportunity to own shares but it would be done according a different approach:

  • Owning shares is a privilege and would be based on past performance;
  • Allowing employees to own shares would be done in small increments, and annually (let’s say x% per year);
  • Potential shareholders would need to demonstrate their understanding of what it means to be an active shareholder and would need to agree to certain protocols;
  • The percentage of available shares would be results-based – the better the organizational results, the more shares would become available.

Based on this experience, I would gladly grant shares to employees who clearly understood the meaning and responsibilities of being an active shareholder and who have demonstrated (and are still demonstrating) outstanding performance. Otherwise, there is no wealth to share…

Don’t tell me you really want to increase your team’s performance – I won’t believe you

Image by Trucker TomI bet you $50 that even if I told you the way to boost your team’s performance without increasing your costs – you wouldn’t do it. The situation is actually worst than that! I’ll add another $50 that I even know what you will tell me once I tell you. You will say “We can’t do that in our organization“.

Ready to find out?

Stop assigning people to projects and let them pick the project they wish to work on – that’s it!

I can hear you - ”We can’t do that in our organization” – there, I just saved $100.

Seriously, it is that simple. Think back to a project you worked on – were you assigned or did you select it yourself? Now do this exercise. Think back to something you enjoy, I mean you truly enjoy - were you assigned or did you pick it yourself?

Have you ever heard of Tom Sawyer withewashing the fence? As Mark Twain once said, “Work is something you are forced to do while leisure is something you choose to do”.

I don’t mean to pretend that work is a hobby but many organizations ignore people’s intrinsic motivation and personal drive when they (i.e. the managers) assign people to projects. No matter what the project is about, there will always be people interested in working on such a project. Ever heard of Crowdsourcing?

In most organizations, it may not be easy to let people select their own project, but it is feasible. Some organizational constraints may need to be modified, project assignment may need to be done differently, some resource planning may be required but all of this is feasible.

As one of the participant highlighted “I used to be bored to death in my normal job until one day, I asked (begged) to be part of a specific project. I’m so glad they granted my wish. I now work 55 hours a week! I am super motivated and nothing is going to make me want to leave that project”. Still think letting people select their project is a bad idea? - Analytical-Mind.

Go ahead, give it a try and see the results for yourself. I have tried this approach on many occasions and the results always impress me.

Accompagner des leaders lors de transitions Agiles (partie 1)

Parlons des vraies choses

J’ai pris la route avec quatre de mes collègues lors des deux dernières semaines de mars pour animer des microconférences stimulantes à Montréal et à Québec. 

Comme promis aux participants de ces évènements, j’entreprends aujourd’hui une série de billets sur les commentaires reçus dans chacune des villes. 

J’espère que ce premier article s’avèrera utile aux leaders recherchant des conseils sur l’introduction de l’agilité dans leur organisation et les défis que cela représente. 

Une version anglaise de ce texte est disponible pour nos lecteurs et lectrices anglophones.

Microconférences ?

Nos « Déjeuners-Causeries » en bref : 50 dirigeants de l’industrie par ville, 5 tables rondes chacune assignée à un facilitateur et à un sujet spécifique lié à l’agilité. Le tout discuté pendant les 3 heures d’un déjeuner. Nous remercions tous les participants de s’être joints à nous et d’avoir ainsi constitué un auditoire varié représentant un large éventail de secteurs de l’industrie :

  • Aéronautique
  • Assurances
  • Bancaire
  • Finances
  • Gestion des talents
  • Juridique
  • Manufacturier
  • Santé
  • Secteur public
  • Télécommunications

Pour chaque ville, j’ai eu le plaisir d’animer un sujet riche : guider les dirigeants lors de transitions agiles. Un autre animateur de l’évènement, mon collègue Martin Proulx a publié récemment son propre billet sur l’entreprise autoorganisée. Je vous en recommande la lecture.

Écouter les dirigeants sur l’agilité

Mon intérêt pour le sujet est marqué, ayant récemment dirigé en tant que dirigeant, une transition agile majeure au sein d’une grande organisation, le Mouvement Desjardins.

Dans chaque ville, nous avons échangé entre participants nos points de vue, nos attentes et nos préoccupations concernant l’agilité.

Les 5 sujets marquants exprimés par nos leaders à Montréal et à Québec

En passant à l’agilité, nous avons obtenu de bons résultats dans certains secteurs de notre organisation, mais avons subi des échecs cuisants dans d’autres, pourquoi ?

Nous nous sentons démunis quant à certains impacts associés à l’adoption de l’agilité

Comment mesurer nos succès avec l’agilité ?

Nos hauts dirigeants et nos professionnels nous exhortent de passer à l’agilité, mais nous pensons que nous faisons aussi bien sans nous remettre en question

Il semble que la gouvernance, la conformité, les processus et les contrôles sont délaissés par lagilité sommes-nous voués à l’échec?

Quelques observations et leçons apprises

Le billet d’aujourd’hui se concentre sur le premier sujet ci-dessus. Je vous invite à surveiller mon blogue pour les prochaines publications qui traiteront plus en détail l’ensemble de ces 5 points exprimés par nos leaders des déjeuners-causeries. 

Promouvoir l’agilité – un seul concept, mais des raisons diverses pour en justifier son adoption

Un scénario fréquent d‘expérimentation des pratiques agiles est le projet pilote. Travailler en circuit fermé avec peu d’acteurs impliqués permet d’obtenir rapidement des résultats. Cependant, les équipes agiles découvrent habituellement que l’idée doit être diffusée à travers l’organisation pour concrétiser et récolter des retombées vraiment significatives.

Au fur et à mesure que les promoteurs de l’agilité présentent le concept à une audience plus large dans leur entourage, certains groupes d’influence ou décisionnels commencent à poser des questions difficiles. Leurs préoccupations pouvant éventuellement ralentir, voire tout simplement stopper l’adoption de l’agilité au sein de la société.

Les départements ou comités responsables de l’architecture d’entreprise ou le bureau de gestion de projets centralisée (Project Management Office) par exemple, peuvent émettre de réelles inquiétudes s’il y a suffisamment d’interrogations demeurant sans réponses ou encore, s’il subsiste des risques non adressés provenant de la mise en place de l’agilité au niveau de la compagnie.

À ce point, les conversations deviennent difficiles et peuvent s’avérer improductives si les leaders faisant la promotion de l’agilité n’ont prévu aucune stratégie de communication. 

Une bonne question de départ pour les promoteurs de l’agilité :

Pourquoi désirons-nous adopter lagilité, et nos partenaires partagent-ils la même vision et des objectifs communs?

Il existe plusieurs réponses potentielles à cette problématique, voici les plus populaires :
  • Nous voulons améliorer la qualité des solutions que nous livrons
  • Nous voulons améliorer notre productivité dans son ensemble et par conséquent réduire nos frais d’exploitation
  • Nous voulons que nos clients obtiennent plus de valeur d’affaires pour les investissements qu’ils effectuent auprès des technologies de l’information
  • Nous voulons améliorer notre compétitivité en livrant plus rapidement sur le marché et de façon nettement plus flexible
  • Nous voulons augmenter la mobilisation de nos équipes et ainsi accroitre l’acquisition et la rétention de talents
  • Nous voulons simplement livrer à temps, selon les prévisions budgétaires et dans le respect des devis techniques
Les promoteurs de l’agilité sélectionnent habituellement quelques-uns des éléments de la liste ci-dessus comme objectifs. Un de ces points s’avère la plupart du temps plus important que les autres.

 

Quelques leçons apprises à ce sujet :

Une fois que vous savez pourquoi vous passez à l’agilité, ne tenez pas pour acquis que l’ensemble de votre organisation comprend entièrement les objectifs et motivations de votre initiative

Ne présumez pas que les autres divisions de l’entreprise partagent les mêmes raisons que vous, pour justifier d’effectuer une transition agile

 

Alors, assurez-vous de définir clairement, en tout temps et avec chaque personne interagissant avec votre équipe, les motivations de votre transition vers l’agilité

 

Lorsque vous saurez pourquoi vous faites cela, vous serez en mesure de cibler les zones de l’organisation qui demandent votre attention immédiate et des efforts concrets

 

Bien qu’en apparence évidents, ces éléments sont souvent mis de côté par les promoteurs de l’agilité en entreprise. Une situation qui laisse place à la mise en oeuvre de canaux de communication dysfonctionnels et qui guide les initiateurs de l’agilité à tenter de convaincre les mauvais intervenants

De plus, il est fréquent de constater un accroissement des craintes en regard des activités reliées à lagilité. Des appréhensions fondées sur le sentiment deffectuer une transition agile pour les mauvaises raisons; transmettant ainsi des perspectives erronées sur les bénéfices et impacts dun tel projet

En conclusion : la définition d’une stratégie de communication de tout premier ordre est votre meilleure alliée et l’application concrète et quotidienne de cette stratégie, un de vos critères de succès sine qua non

Illustrons ceci avec un cas concret

Pour des raisons de confidentialité, l’exemple suivant est un mélange de plusieurs observations que j’ai pu faire au fil des années. 

Le contexte

L’entreprise Xyz publie des solutions web critiques utilisées par une clientèle internationale. Xyz est organisé selon une structure départementale typique basée sur les fonctions : lignes d’affaires, développement, finance, gestion de projet, production, etc. 

Xyz livre ses solutions en production pour sa base clients 4 fois par an, à des dates déterminées et non négociables. 

Le vice-président du développement de Xyz rencontre les problèmes suivants :

  • La qualité globale des solutions livrées par sa division est bien en dessous des standards de Xyz
  • Les coûts de résolution des régressions après livraison sont énormes
  • Son groupe livre constamment l’intégralité des caractéristiques demandées, mais ni à temps et ni dans le respect des budgets
Son équipe de développement utilise les meilleures pratiques de l’agilité pour :
  • Améliorer la qualité des solutions livrées
  • Simplement livrer à temps, dans le respect des devis techniques et des budgets

Des deux objectifs clés ci-dessus, sa principale préoccupation est sans l’ombre d’un doute la qualité des solutions livrées en production. L’excellence discutable des applications web de Xyz nuit considérablement à son image de marque.

Promouvoir sa transition agile au sein de l’organisation

Bien sûr, l’agilité peut apporter bien plus de bénéfices que ceux sélectionnés par le vice-président du développement. Je reviendrais ultérieurement sur ce sujet lors d’un prochain article, en lien avec le cycle de maturité de l’agilité. Surveillez la publication de la partie 3 de cette série : « Comment mesurer le succès avec l’agilité ? ».

Dans notre exemple, le bureau de gestion des projets (PMO) surveille étroitement les activités de la vice-présidence de développement et exige de cette dernière, de nombreux rapports et suivis d’avancement. Les chefs de projets affectés aux équipes de développement examinent la progression des tâches de façon excessivement granulaire.

Pour ceux d’entre vous qui sont familiers avec Scrum, cette situation peut s’avérer contreproductive et limitante dans la réalisation des bénéfices promis par l’agilité.

Lorsque la vice-présidence du développement a annoncé son intention de passer à l’agilité, le bureau de gestion de projets a interprété négativement cette nouvelle. Les dirigeants avaient « ouï-dire » que l’agilité et Scrum ne requièrent pas de gestion de projet.

Ils ont aussi entendu qu’avec Scrum, vous ne savez tout simplement pas de quoi sera composé la solution, vous n’en connaîtrez pas plus les coûts, ni quand celle-ci sera finalement livrée aux clients.

Un bon conseil de coach au vice-président du développement :

Assurez-vous que la direction du bureau de gestion projets devienne un partenaire clé et investissez du temps de qualité pour collaborer (non pas argumenter éternellement) avec ses équipes afin de définir une stratégie mutuelle d’adoption de l’agilité.

Une stratégie de collaborateurs qui tiennent autant compte des impacts, que des risques et des bénéfices reliés à ce type de meilleures pratiques

De toute évidence, cette collaboration amorcera de sérieuses discussions sur les implications des pratiques agiles sur les rôles et responsabilités des différentes fonctions en entreprise, ainsi que sur les processus de reddition de comptes gouvernant la gestion de programmes et projets : approbation par phase de projets (« go-no-go »), allocations budgétaires, tableaux de bords et indicateurs de performances, etc. 

Le dernier billet de cette série parlera des stratégies pouvant être envisagées sous une optique d’établir des conversations productives entre les promoteurs de l’agilité et les divers groupes fonctionnels d’une organisation.

Je vous invite à surveiller la publication du billet : « Il semble que la gouvernance, la conformité, les processus et les contrôles sont délaissés par l’agilité – sommes-nous voués à l’échec ? ».

Revenons à la préoccupation principale du vice-président au développement – la qualité

Ses équipes de génie logiciel réalisent avec succès de meilleures solutions en ayant recours à des pratiques agiles telles que le développement piloté par les tests (Test Driven Development), l’intégration continue et l’automatisation des tests. 

Ils ont aussi obtenu d’excellents résultats en modifiant leurs façons de fabriquer du logiciel en adoptant Scrum.

Cependant, ces gains s’opèrent à l’intérieur d’environnements de développement et de laboratoires, et non pas sur les plates-formes d’intégration systèmes et de production utilisés pour la mise en ligne des applications à la clientèle mondiale de Xyz.

Fait important à noter, les environnements d’intégration systèmes et de production sont gérés indépendamment par une autre vice-présidence : le groupe de production. 

Les équipes de la vice-présidence au développement savent que Scrum et les meilleures pratiques de développement logiciel peuvent grandement améliorer le niveau de qualité lorsque ces derniers sont introduits et mis en oeuvre jusqu’aux environnements de production dédiés à la livraison en ligne aux clients. 

Mais afin de réaliser ces bénéfices, des ajustements notables sont nécessaires sur les environnements d’intégration systèmes et de production. À cela s’ajoutent les impacts d’adhésion aux principes agiles tels que la modification du cycle de livraison des logiciels, ainsi que les transformations importantes affectant directement les rôles et les responsabilités des équipes liées aux fonctions assurées par les vice-présidences de développement et de production. 

Toutefois, le département de production accomplit de façon constante un haut degré de qualité de services sur ses plates-formes d’intégration systèmes et de production. Ses ressources publient infailliblement en ligne quatre fois par année, à temps et selon les prévisions budgétaires, les solutions de Xyz. 

La vice-présidence de production ne voit donc pas d’avantages à adopter des pratiques agiles. Il n’y a tout simplement pas de raisons évidentes d’envisager de tels changements à son infrastructure, à ses processus et à ses fonctions. Tout ce que son groupe désire est de recevoir des solutions fiables en provenance de la division de développement qui peuvent être mises en ligne efficacement selon les critères de production. 

À la lumière d’un examen critique de la situation, les modifications demandées par le service de développement semblent mettre en péril la stabilité des systèmes de production, d’en accroitre leurs frais d’exploitation, tout en créant un climat d’incertitude au sein des équipes par la venue de concepts novateurs et mal compris tels que Scrum, le développement piloté par les tests, l’intégration continue et les tests automatisés. 

Ce scénario est un classique dans l’industrie. De nombreuses variantes peuvent être observées dans votre entreprise autour de ce thème ; selon les différents acteurs impliqués, le degré de maturité de vos processus et le niveau de collaboration entre les parties prenantes. 

Une leçon importante émerge de tout ceci :

Les vice-présidents du développement et de la production doivent élever leurs débats d’un cran en se concentrant sur les avantages d’affaires clés attendus par Xyz, au lieu d’isoler l’analyse de leurs enjeux respectifs sur des bases départementales déconnectées de la réalité de leurs clients internationaux

La qualité inappropriée des solutions livrées par le service de développement met en péril la réputation de Xyz et réduit directement la loyauté de sa clientèle envers ses solutions web de classe mondiale, et ce, même si la production mets en ligne ces applications de façon efficace 

Sans l’aide d’un partenaire stratégique, en l’occurrence la vice-présidence production, le groupe de développement ne pourra matérialiser à un niveau adéquat les bénéfices promis par l’agilité

 

Le retour sur investissement sera décevant si seuls les avantages agiles émergeant du service de développement ne sont tenus en compte dans l’équation. L’intégration de la vice-présidence production au sein d’une stratégie commune de rehaussement majeur de la qualité des solutions web de Xyz occasionnera sans contredit un retour sur investissement nettement supérieur, pour ne pas dire impressionnant

 

Cela suggère que les coûts supplémentaires et les efforts requis pour adapter les environnements d’intégration systèmes et de production doivent être évalués sous l’angle d’un investissement d’entreprise visant l’atteinte des objectifs d’affaires de Xyz. Considérer ces injections de nouveau capital comme des dépenses additionnelles d’exploitation réduisant ainsi l’excellente productivité globale de la vice-présidence production, conduira inexorablement au refus de l’organisation d’aller de l’avant

 

Des métriques factuelles sont nécessaires pour capturer les frais de résolution des régressions impactant la qualité des solutions de Xyz

Des mesures qualitatives doivent aussi être collectées auprès des lignes d’affaires afin d’évaluer l’impact réel sur la réputation de Xyz de fournir des solutions de mauvaise qualité à ses clients

Guider les leaders durant leur transition vers les meilleures pratiques de l’agilité se résume à mettre en lumière qu’il n’existe pas de recette miracle et générique qu’il suffirait d’appliquer unilatéralement sans prendre en compte le contexte de l’organisation. 

La définition des motivations clés de l’entreprise à vouloir effectuer une migration agile demeure sans aucun doute le facteur numéro un qu’un bon coach s’emploiera immédiatement à circonscrire avec les dirigeants de la société qu’il accompagne.

S’en suivra naturellement l’identification des départements, unités et fonctions de l’organisation devant être mis à contribution au succès de l’initiative, et ce, de manières très différentes. 

Cela revient également à mettre en relation dans la même équation : les avantages, les impacts et les coûts d’un passage à l’agilité. En opposition aux avantages, aux impacts et aux coûts de ne pas résoudre les problèmes pour lesquels l’agilité est considérée comme une réponse aux enjeux de performances de l’entreprise. 

Dans le prochain billet de cette série, je discuterai des stratégies que les dirigeants peuvent envisager pour gérer efficacement les conséquences d’une évolution vers l’agilité dans leur cadre de travail. 

D’ici là, n’hésitez pas à me faire part de vos commentaires et réactions à ce premier article.

Quelques lectures d’intérêt en lien avec cette série :

 

15% discount for the first birthday of Visual Studio 2010

Tuesday April 12th marked Visual Studio 2010′s first birthday. “It seems not long ago that we had the world-wide launch celebrating the largest developer tool release from Microsoft in many years” said Somasegar about the first year of Visual Studio 2010 in his weblog.

For the Urban Turtle team, the launch of Visual Studio 2010 was an important milestone. Finally, Microsoft was adding the ability to break down work items into hierarchies to Team Foundation Server (TFS). This was a banner feature that made possible the addition of the Scrum process template to the Visual Studio Gallery.

TFS combined with the Scrum process template was the beginning of a solution to turn TFS Agile… but that was not enough. To be truly effective, one must add the right skin through an intuitive web interface that simplifies Agile project management. To meet this need, as a third-party partner, we created Urban Turtle. Today, jointly with Visual Studio 2010, Urban Turtle is the premier Scrum tool for TFS.

As Somasegar states in his weblog:

More than 1,600 Visual Studio 2010 extensions have been submitted to the Visual Studio Gallery, with over 4 million extension downloads by users. Our partners continue to be able to build businesses around Visual Studio, and over the past year, partners have generated over $400 million in revenue from Visual Studio-based extensions.

Urban Turtle is proud to join this exceptional group of partners. We want to go one step further and offer a promotion to all Visual Studio users. During the entire month of April, Urban Turtle is offering a 15% discount to all Visual Studio users who purchase an Urban Turtle license.

You can join in the party and benefit from this discount by entering the ‘Happy B-day VS2010’ promo code at the time of purchase. (http://urbanturtle.com/pricing/)

Pyxis compte 3 MVP de Microsoft

Pyxis est fière de compter dans ses rangs trois Most Valuable Professionals (MVP) de Microsoft :

Éric de Carufel a obtenu une nouvelle fois le titre en décembre dernier. Mario Cardinal en est à sa septième année consécutive tandis que Mathieu Szablowski vient de recevoir cette prestigieuse nomination.

Félicitations à nos trois Pyxissiens!

MVP de Microsoft
Le signe MVP de Microsoft est un prix décerné par Microsoft. Selon cette dernière, ‘Les MVP apportent des contributions exceptionnelles aux communautés techniques, partageant leur passion, leurs connaissances et leur savoir-faire. Ce faisant, les MVP reçoivent les avis et les besoins de nombreux autres membres et sont donc bien placés pour soumettre à Microsoft des commentaires très pertinents.’

The strength of a real team is under-estimated

Image by Dawn (Willis) ManserProject kick-offs have been used for years as a way to launch a new project. It is assumed that bringing people together in a room where the project sponsor presents the project’s objectives and time-lines is a good way to get things going. To be sure that the newly formed team will perform well, some organizations even order sandwiches or sushi and add diet software drinks or beer, and so the project begins.

I really don’t have a strong opinion about project kick-offs but I do see a great opportunity to start building a real-high-performing-team from day one is often missed.

Having been part of great (and not so great) teams over the years, I’m obsessed about creating real teams – the ones we remember forever because we delivered outstanding results while being highly energized, and had a great time doing it. It is similar to the concept of Flow proposed by Mihály Csíkszentmihályi.

Flow is the mental state of operation in which a person in an activity is fully immersed in a feeling of energized focus, full involvement, and success in the process of the activity. [...]

According to Csíkszentmihályi, flow is completely focused motivation. It is a single-minded immersion and represents perhaps the ultimate in harnessing the emotions in the service of performing and learning. In flow, the emotions are not just contained and channeled, but positive, energized, and aligned with the task at hand. To be caught in the ennui of depression or the agitation of anxiety is to be barred from flow. The hallmark of flow is a feeling of spontaneous joy, even rapture, while performing a task[2] although flow is also described (below) as a deep focus on nothing but the activity – not even oneself or one’s emotions.

Colloquial terms for this or similar mental states include: to be on the ball, in the moment, present, in the zone, wired in, in the groove, or keeping your head in the game. Wikipedia.

So back to creating a real strong project team (The Wisdom of Teams: Creating the High-Performance Organization). Why not start with something simple, real simple? Establishing rules and protocols of operation for the team.

As a first step in launching a new team, I usually start with an initial meeting (the duration varies based on the size of the team and the project being undertaken) during which I ask the team members to establish their working protocol – how they wish to work together.

Here are some of the questions the team members need to answer prior to doing anything else – including actually starting the project:

  • What do we wish to accomplish together?
  • What ground rules will we play by?
  • How do we make decisions?
  • How long can discussions and debates go on for? Do we use time-boxes in meetings? For decision making?
  • How do we resolve disagreements?
  • How often do we need to meet? For how long?
  • How will we communicate with each other?
  • How do we keep track of our action items?
  • How do we deal with team members who do not live up to the team’s expectations?
  • What rules do we have to include new team members? To expel existing team members?
  • How will we know if we are successful as a team?

Some of these questions may appear to be trivial. While establishing a team protocol doesn’t need to take a lot of time (and can easily be combined with a team building activity), not establishing such a protocol will quickly lead to inefficiencies, waste of time, and increased frustration for the team members. Want a few examples?

  • Did you ever find out that some project team members’ personal objectives had nothing to do with the project? Trying to motivate those people will drain your energy and your focus.
  • Has a detailed technical decision ever been taken by a senior manager with weird consequences? Guidelines may have prevented the decision from being escalated in the first place.
  • Have you participated in meetings where key people didn’t show up or showed up late with the consequence of having some decisions over-ruled? Determining up front the rules around meeting attendance and decision making will greatly alleviate such frustrations.

These are only a handful of examples but time and again, I have had the privilege to launch teams on the right foot. The consequences are positive and the cost is minimal. It may not be as cheap as buying sandwiches for the team during the project kick-off but the investment will last much longer.

Coaching Leaders on Agile Transitions (part 1)

Let’s talk about the real things

The last two weeks of March were stimulating as I hit the road with four of my colleagues, hosting micro-conferences in Montreal and Quebec City.

As promised to all attendees, I’m starting today a series of blogs on the feedback captured in both cities.

I hope this first entry will be valuable to leaders looking for guidance at introducing Agility in the workplace.

For our French readers, a translated version of each post will follow shortly after publication of its English counterpart.

Micro-conferences?

Our “Déjeuner-Causerie” in a nutshell: 50 industry leaders per city, 5 roundtables each assigned with a facilitator and a specific subject related to Agility discussed over a 3 hour breakfast. Thanks to all participants for having joined us. We had a very diverse crowd representing a wide spectrum of industry segments:

  • Aeronautics
  • Banking
  • Finance
  • Government agencies
  • Healthcare
  • Insurance
  • Law
  • Manufacturing
  • Talent Management
  • Telecommunication

For both cities I had the pleasure to facilitate a rich topic: Coaching Leaders on Agile Transitions. Another facilitator of the event, my colleague Martin Proulx just published his own blog entry on Enterprise Self-Organization. I do recommend the read.

Hearing leaders on Agile

My interests on the matter are obviously huge because of my recent involvement in leading, as an executive, a major Agile transition inside a large organization, the Desjardins Group.

In each city, we exchanged perspectives with participants on their expectations and concerns towards Agility.

Top 5 discussions with leaders in Montreal and Quebec City

We’ve been promoting Agility with great success in some areas of the organization, but got severely burned in others – why? 

We feel helpless with some of the impacts adopting Agility

How do we measure success with Agile? 

Top executives and professionals beg for Agility, but we think we are doing just great without it 

It seems like governance, compliance, processes and controls are left behind by Agility – are we doomed?

Some observations and lessons learned

Today’s entry focuses on the first subject listed above. Join me in upcoming blog posts as I will go through all 5 and discuss furthermore on each concern.

Promoting Agility – one concept, but many reasons for doing so

One common scenario used to experiment the best Agile practices is the pilot project. Working in a closed-loop with a few people involved allows quick successes. However, Agile teams usually discover that the idea needs to be promoted across the organization in order to materialize significant benefits.

While pushing forward the Agile concept, some authoritative groups starts asking tough questions, eventually slowing down Agile adoption or even simply stopping it. Departments or committees like enterprise architecture and project management office (PMO) can show real concerns if there are sufficient unanswered questions or unaddressed risks exposed by the Agile initiative.

At this point, the conversation begins to be difficult and may prove to be unproductive if leaders promoting Agility have no communication strategy.

Agile promoters may consider asking themselves one simple question:

Why are we adopting Agility, and do our partners share the same understanding and objectives?

There are many potential answers to this question. Here are some of the most popular ones:

  • We want to improve the quality of the solutions being delivered
  • We want to improve overall productivity, hence reducing cost of operations
  • We want to deliver better value to the end-user for the resources invested
  • We want to improve time-to-market, hence delivering faster with better flexibility
  • We want to improve team mobilization, talent retention and acquisition
  • We simply want to deliver on time, on specs and on budget

Promoters will combine several items from the list above as their business case for embracing Agility. Usually one point is significantly more important than the others.

Some great lessons I learned about this:

Once you know why you are going Agile, don’t take for granted that everybody in the organization fully understands the rationale supporting your endeavour

Don’t assume that other areas of the enterprise will share the same reasons for eventually embracing Agility

So, make sure to state clearly, at all times and with everyone interacting with your team, the reasons why you are transitioning to Agile

Once you know why you are doing this, you’ll be able to easily pinpoint areas of the organization that requires your immediate attention and efforts

Failing to do so creates dysfunctional communication channels, makes you invest time trying to convince the wrong people, generates fear of doing things for the wrong reasons and communicates misaligned perspectives on benefits and impacts related to Agile adoption

Bottom line: you’ll have to define a first-class communication strategy and execute on it on a daily basis

Let’s illustrate this with a real-life example

For the sake of confidentiality, the following example is a blend of several observations I made over the years.

The context

Organization Xyz produces mission-critical web-based solutions used by an international customer base. Xyz is organized in a typical departmental structure based on functions: lines of business, development, finance, project management, production, and so on.

Xyz gets its solutions into production for end-users available 4 times a year at defined dates; this schedule is not negotiable.

Xyz’s VP of development is facing the following issues:

  • Overall quality of solutions delivered by his group are way below Xyz’s standards
  • Costs of solving post-delivery regressions are huge
  • His unit constantly delivers everything on specs, but neither on time, nor on budget

His development group is using Agile as a mean:

  • To improve the quality of the solutions being delivered
  • To simply deliver on specs, on time and on budget

From the two key drivers listed above, his main concern is without a doubt on the quality of the solutions being delivered in production. The negative impact on Xyz’s corporate brand is significant.

Promoting his Agile transition inside the organization

Of course, Agility can bring a lot more benefits than the above two selected key drivers by the VP of development. I will touch base on the maturity cycle of an Agile transition later on in the series: “How do we measure success with Agile”.

In this example the project management office (PMO) has the development group on its radar and asks for a lot of detailed reports and follow ups. Project managers are monitoring development in a very granular way. For those of you familiar with Scrum, this can be somewhat counterproductive.

When development announced it was moving to Agile, PMO concluded this was bad news. Project managers had heard through the grapevine that Agility and Scrum do not need project management. They had also heard that with Scrum, you just don’t know what the solution to be delivered will be made of, for how much, and when…

One good coaching advice to the VP of development here:

Make sure the head of PMO becomes a key partner and invest quality time to truly collaborate (not argue) with his staff on building a mutual strategy on Agile adoption, impacts, risks analysis and materialization of benefits

Obviously, this collaboration will initiate serious discussions on the implications of Agility regarding roles and responsibilities, as well as the reporting and stage-gating processes from a project management perspective and governance.

Potential strategies for handling the conversation will be covered in the concluding entry of this series: “It seems like governance, compliance, processes and controls are left behind by Agility – are we doomed?”.

Going back to the VP’s (of development) top concern – quality

His software engineering teams have been successfully delivering better solutions by experimenting Test Driven Development (TDD), continuous integration and automated testing. They also changed their way of producing software by adopting Scrum and got excellent results.

However, all of this was experimented in lab setups and development infrastructures, not with real-life systems integration and live production environments which are managed by another department: production.

The development group knows that Scrum and software engineering best practices will increase their quality ratio by a significant amount, if pushed to production.

But in order to really make the leap and reach outstanding quality rates, important adjustments will be necessary on systems integration and live production environments. Also, adopting Scrum modifies the software delivery cycle, plus roles and responsibilities, just to name a few.

On the other hand, the production department happens to rate high regarding quality of its services and performs great at delivering on time and on budget 4 times a year when bringing Xyz’s solutions online.

The head of production really sees no advantages of considering Agile; there are simply no obvious reasons to do so. All his team wants is to receive well-done software packages from development that will get put into production flawlessly.

Likewise, changes requested by the development group appear to hinder the stability of production infrastructures, to generate significant expenses for modifying environments, and last but not least, Scrum changes the processes in place as well as roles and responsibilities.

This scenario is a classic in the industry. There are many variations and changes between players involved, the maturity of their processes and the level of collaboration they’ve been achieving.

Important lessons learned emerge from this:

The VP of development and head of production need to elevate the debate up one notch by focusing on business key drivers rather than concerns specific to each of their units

The inappropriate quality of solutions delivered by the development group jeopardizes Xyz’s brand and customer base

Without the help of its strategic partner in production, benefits promised by Agility will be somewhat average and not sufficient

The Return on investment will be disappointing if Agile benefits emerge only from the development group. Having the production unit go the extra mile will invert this and generate an outstanding ROI

However, this means that extra money and efforts required to adapt production environments will need to be spent from a corporate investment perspective, rather than perceived as additional expenses reducing the overall productivity of the production group

Factual metrics will need to be captured regarding the costs of software regressions for Xyz

Qualitative metrics will also need to be gathered from lines of business on how Xyz’s brand gets impacted by delivering low-quality solutions to its customer base

Coaching leaders on Agile transitions is really about guiding an organization in understanding that there is no “one-size fits all” secret recipe one could blindly apply without factoring in the context of the enterprise.

A lot of care is required for defining the corporate motivations for going Agile and to expose rapidly areas of the organization that will need to contribute, in many different ways, to the success of the initiative.

It is also about factoring into the equation the benefits, impacts and costs of going Agile, against the benefits, impacts and costs of not addressing the issues for which Agile is being considered as a mean to improve the situation.

In the next entry of this series, I will discuss the strategies leaders can use to effectively manage impacts that usually arise when introducing Agile concepts into the workplace.

In the meantime, I’m looking forward to your comments on this first article.

Here’s some suggested reading:

New screencasts to easily get started with Urban Turtle

Early in the design of Urban Turtle, we envision a product so simple to use that one would use it without having to consult documentation. We have partially achieved this goal but we believe we can do better (and, we plan to do better but without violating our motto which is “less is more”). In this connection, stay tuned for the upcoming major upgrade of Urban Turtle (version 4.0).

However, in the meantime, there are training needs that remain to be met. For example, simple questions such as how to install Urban Turtle or how to launch Urban Turtle using Team Web Access are recurring themes. In addition, over time, we discovered that explaining how Urban Turtle support Scrum needs to be more explicit. That’s why we have created a “Quick Start” section on our website.

This getting started section provided short screencasts (2-3 minutes videos) to answer these recurring questions. Because it allows getting “inside” the product to show how small parts work, screencasts work particularly well to a highly-technical product such as Urban Turtle.

On the “Quick Start” page you will find the following screencasts:

  • Installing Urban Turtle
  • Launching Urban Turtle
  • Explaining Scrum in less than 120 seconds
  • Grooming the backlog with Urban Turtle
  • Planning the Sprint with Urban Turtle
  • Tracking day to day work with Urban Turtle

Furthermore, this is where you can download documentation about how to configure Urban Turtle. Learn about the hidden gems that you can access only through the global settings file.

Here is the link to visit the “Quick Start” page: http://urbanturtle.com/quickstart

Congratulations! You have received the Microsoft MVP Award

Hi! My name is Mario Cardinal and I am a team member of Urban Turtle. People here not only helps software development organizations to become places where results, quality of life and pleasure coexist in a sustainable manner but they are also an example of that we propose to our customers. Each of us fulfills this mission in different ways. In my case, I am deeply involved in the Microsoft .Net community. Thus, I was proud last week when I received an email from Microsoft that my MVP-title has been “renewed” for the seventh year in a row. Here is an excerpt from the notification email:

Congratulations! We are pleased to present you with the 2011 Microsoft® MVP Award! This award is given to exceptional technical community leaders who actively share their high quality, real world expertise with others. We appreciate your outstanding contributions in Visual Studio ALM technical communities during the past year.

With fewer than 5,000 awardees worldwide, Microsoft MVPs represent a highly select group of experts. MVPs share a deep commitment to community and a willingness to help others. They represent the diversity of today’s technical communities. MVPs are present in over 90 countries, spanning more than 30 languages, and over 90 Microsoft technologies. MVPs share a passion for technology, a willingness to help others, and a commitment to community. These are the qualities that make MVPs exceptional community leaders. MVPs’ efforts enhance people’s lives and contribute to our industry’s success in many ways.

To recognize the contributions they make, MVPs from around the world have the opportunity to meet Microsoft executives, network with peers, and position themselves as technical community leaders. This is accomplished through speaking engagements, one on one customer event participation and technical content development. MVPs also receive early access to technology through a variety of programs offered by Microsoft, which keeps them on the cutting edge of the software and hardware industry.

As a recipient of this year’s Microsoft MVP award, I am proud to join an exceptional group of individuals from around the world who have demonstrated a willingness to reach out, share their technical expertise with others and help individuals maximize their use of technology. Being an MVP has opened many doors for me as a software architect and (sometimes rather pushy) Microsoft customer and the relationships I’ve been able to develop have added a great richness to my life. Thanks Microsoft ;-)