Like diving and traveling

InnerSourcing: Les Mécanismes

Comment puis-je présenter cela à mes managers?

Le développement d’une culture open source présente un certain nombre de gros avantages.

Avantages de l’équipe

Décentralisation de l’expertise

Quand quelqu’un quitte l’entreprise ou l’équipe, l’expertise est perdue. En ayant plus de personnes impliquées dans votre projet, vous décentraliserez cette expertise. La décentralisation de l’expertise permet de se prémunir contre les coûts cachés et croissants en raison du temps de montée en puissance phénoménal nécessaire pour exécuter les modifications d’un corps de code.

Moins de redondance d’effort

Avec une visibilité accrue sur quoi les autres équipes travaillent et les problèmes qu’elles ont résolus, il y aura moins de temps passé à reconstruire la roue. (Mais il en faudra du temps) Le code peut être réutilisé, partagé et modifié par plusieurs parties prenantes. Dans une culture de modularité, de partage et de réutilisabilité, il y a intrinsèquement moins de duplication des efforts. Il y a une prise de conscience accrue des problèmes que les autres équipes avec des piles technologiques comparables résolvent.

Ressources partagées sur les objectifs du projet

Quelle meilleure façon d’obtenir un meilleur productivité de fonctionnalités si il est possible de recevoir des contributions d’autres équipes? Avec une faible barrière à l’entrée et le partage des meilleures pratiques, d’autres au sein des organisations seront encouragés à contribuer car il n’y a pas de frais généraux importants – et de nombreux avantages – à le faire.

Déblocage

En encourageant les autres à contribuer à votre projet, vous leur donnez les moyens de se dissocier de la planification de votre équipe. Permettre à ceux qui ont la capacité de résoudre leurs propres problèmes en utilisant votre code est une chose puissante, un changement de culture important, suite à des années de mise en silot.

Modularité et réutilisation du code

Lors de l’écriture de code pour résoudre un problème très spécifique, le code n’est généralement pas pris en compte dans son propre ensemble de bibliothèques et repose à la place dans le projet parent. Beaucoup de temps est passé à copier / coller et à refactoriser le code pour répondre aux nouvelles exigences. La plupart sinon la totalité de ce temps pourrait être allégée si une approche plus généralisée avait été adoptée dès le début du projet. Il faut donc prendre la mesure du partage et des bon élements à co-élaborer, c’est un chalenge. Attention toutefois il est possible que les avantages de la co-elaborations impliquent de bien prendre en compte le choix client et le client est ici une communautés de développeurs dont il faut garantir la communauté d’intérêt.

Briser les murs

Quelle meilleure façon de faire parler les gens que de travailler ensemble sur des projets? Il y a toujours quelque chose à dire pour les happy hours et autres, mais de vrais liens sont forgés dans les tranchées de l’écriture de code, des discussions de conception et des révisions de code.  Il est important de meyttre en place des rituels en dehors de la structure du travail pour faciliter les échanges.

Avantages individuels

Pollinisation croisée

Comment peut-on mieux faire progresser sa carrière qu’en influent sur plusieurs projets? En passant du temps à contribuer à des projets en dehors de votre domaine spécifique, vous découvrirez des facettes de votre organisation qui autrement seraient rester opaques, vous opuvrez des portes à des opportunités en essayant quelque chose de nouveau.

Plus d’informations sur la «vue d’ensemble»

Un effet secondaire de la pollinisation croisée est d’adopter une vision plus holistique de l’architecture (deux mots galvodées et mal aimés) au sein de votre organisation. Vous pouvez souvent constater que vous avez pas vraiment bien compris ou que vous aviez une hypothèse erronée sur quelque chose avant de fouiller dans l’opérationnel du code et de l’infrastructure associée.

Grande exposition aux autres équipes

Quelle meilleure façon de s’impliquer avec d’autres équipes que de contribuer à leurs projets?
Si votre organisation prend en charge la migration entre équipes, cela vous donne une excellente occasion d’apprendre leur pile technologique, d’examiner les processus et les personnalités de l’équipe. Cela leur donne également une exposition à votre prisme, ce qui est inestimable si vous les interviewer.   

Exposition aux pratiques OSS

Vous n’avez jamais fait de travail open source, il n’y a pas à vous inquiétez, il y a des miriades de gens qui ne l’ont pas fait ou qui crois l’avoir fgait. Préparez-vous à un léger choc culturel ! 
La transparence et la communication sont essentielles à la fois en interne et en open source. Comme l’exposition initiale à cette culture est interne à votre organisation, vous réduisez la portée de l’interaction des parfaits inconnus dans le monde open source à des collègues contrôlés que vous connaissez personnellement ou par réputation. Vous serez généralement plus susceptible de poser des questions à des personnes que vous connaissez plutôt qu’à des inconnus.  

Mises en garde

Comme pour tout, il y a des pièges potentiels et des choses à penser si vous commencez à construire une culture sourcing interne… Il Ne faut pas faire l’éco,nomie de penser que se sera trivial.

Une chaussure ne convient pas à tous

Ce n’est pas parce qu’une communauté open source fait quelque chose qu’elle conviendra à votre équipe ou organisation dans son ensemble. En fait, les communautés open source fonctionnent toutes différemment en fonction de leurs besoins spécifiques. Choisissez ce qui fonctionne le mieux pour vous et les autres membres de votre organisation et ne cherchez pas La Solution universelle.

Changement de culture

Si vous êtes dans une entreprise depuis un certain temps, il y a de fortes chances que la documentation ne soit pas toujours très élevée sur la liste des priorités. Surtout si une serie de mode se sont succédés se concentrant sur la forme en oubliant le fond… Cela peut signifier que vous êtes habitué à travailler dans les limites de votre équipe ou d’un très petit sous-ensemble d’équipes au sein de l’entreprise et que ce mode de fonctionnement est encouragé car une culture du blame régne. Vous êtes aussi habitué aux barrières politiques plus ou moins invisibles entre les équipes et la technologie. Lorsque ces types de pratiques de développement sont courants au sein d’une entreprise, le développement collaboratif est en fait étouffé le changement passera par une prise de concience de cet état de fait par les dirigeants. Les pratiques qui ne se prêtent pas bien au développement collaboratif doivent être identifiées et doivent en quelque sorte changer pour vraiment favoriser un modèle d’approvisionnement interne. La manière dont ce changement est effectué dépend entièrement de vous et des équipes de l’entreprise. La quantité de travail requise variera considérablement d’une entreprise à l’autre. De même, le rythme du changement variera. Il est important de ne pas se décourager tant que des progrès sont réalisés.    

Gestion du fluage de la portée

Au fur et à mesure que « les projets » gagnent du terrain et que d’autres commencent à y contribuer, vous pouvez commencer à utiliser plus de fonctionnalités que vous ne l’aviez jamais imaginé. C’est là que l’importance pour le responsable et les responsables d’être sur la même longueur d’onde devient critique. Si une fonctionnalité ne correspond pas à la vision globale du projet, le responsable ou les responsables ne doivent avoir aucun scrupule à rejeter une proposition de fonctionnalité et expliquer pourquoi la fonctionnalité ne correspond pas à la vision du projet.

PS : Fluagee phénomène de déformation lente d’un métal solide soumis, dans un espace fermé et ne présentant qu’un trou d’échappement, à des pressions fortes et constantes, à une température normale ou supérieure à la normale, et qui le fait se comporter comme un liquide visqueux

En d’autres termes il faudrat vous attendre à un peu de visosité dans l’adoption et sa portée.

Les étapes

À présent, vous avez une idée de la façon dont la mise en œuvre d’une culture de développement collaboratif peut profiter à l’entreprise dans son ensemble. Vous avez maintenant une idée de certains des outils et pratiques nécessaires pour créer une culture source interne. Vous disposez également de quelques munitions pour favoriser l’adoption et la mise en œuvre de certains, sinon de tous, des outils et des pratiques. Développez-en également de nouveaux qui vous aideront à résoudre des problèmes spécifiques à votre organisation. Commençons par abattre ces murs et commençons à travailler ensemble  n’est pas une mince affaire et necéssite de grand changement. Établissons une culture collaborative qui peut demain dépasser la production totale générée par les sociétés de développement de logiciels classiques centrées sur l’équipe! Puis nous reviendrons sur le cycle de replis sur soi et les objectifs court terme plus tard …

InnerSourcing: Les Mécanismes