Dans la littérature des méthodes agiles, on y lit souvent qu'une équipe devrait être plutôt composée de membres généralistes plutôt que spécialistes. Pour quelle raison ? Essentiellement, parce qu'on dit d'un spécialiste qu'il est souvent focusé sur une seule solution à un problème, qu'il peut parfois manquer de modestie et d'introspection et qu'il est difficile de travailler avec lui en équipe, car il ne comprends pas bien les autres membres de l'équipe. À l'inverse, on prête aux généralistes, une plus grande facilité à travailler ensemble, ils connaissent mieux ce que les autres font et n'ayant pas de spécialisation précise dans un domaine donné, ils sont plus ouverts à regarder plusieurs alternatives pour étayer leur solution.
Qu'en est-il dans la réalité ? Pour ma part, je trouve cela un peu paradoxal, car en TI, le domaine est tellement vaste et les possibilités infinies, que chaque individu en vient à se faire une niche, une spécialisation dans un domaine plus ou moins précis. Je crois que c'est inévitable si on veut survivre dans le domaine des TI.
À mon avis, dans une équipe agile, on doit avoir toute sortes d'individus, généralistes, spécialistes, plus ou moins généralistes, plus ou moins spécialistes, peu importe ... Cependant, ils doivent partager certaines qualités communes : l'ouverture d'esprit, la capacité à travailler en équipe et à collaborer et le désir d'apprendre et de se dépasser. Il n'y a pas de mal à avoir un expert (spécialiste) d'une technologie dans une équipe pour autant qu'il est en mesure de partager sa connaissance et d'accepter qu'il a peut-être tord et qu'il existe une solution mieux adaptée au problème à résoudre. Il doit être ouvert à faire des compromis ou même à changer son fusil d'épaule. Au même titre que, le généraliste doit être en mesure de profiter de la connaissance de son collègue pour ajouter une corde à son arc et reconnaître qu'il est plus expérimenté dans un domaine donné.
Ce qui tue une équipe, c'est la hiérarchie et l'individualisme. En TI, nous avons la fâcheuse tendance à vouloir hiérarchiser les rôles dans une équipe en leur accordant plus ou moins d'importance : programmeur, analyste, architecte, gestionnaire de projet, directeur, etc. Chaque joueur d'une équipe a un rôle important. Enlever vos programmeurs, pensez-vous réaliser une solution complète ? De plus, qu'est-ce qui empêche un programmeur de participer à l'architecture du système ? Ou vice-versa, à l'architecte de participer à la programmation ? Chacun a ses forces et faiblesses et chacun a à tirer profit de l'expérience et la connaissance de l'autre.
La force d'une équipe est donc d'exploiter les forces de chacun, de les mettre à profit pour acquérir une plus grande maturité collective. Pour ma part, le débat n'est pas de savoir si mes membres qui composent mon équipe sont des généralistes ou des spécialistes ou les deux. Ma préoccupation et plutôt de mettre en place une équipe en mesure d'affronter n'importe quel défi en équipe tout en étant flexible. Au final, ce qui compte, ce que mon équipe soit AGILE !
samedi 22 août 2009
Agile : spécialistes ou généralistes ?
Libellés :
agile,
équipe,
généraliste,
méthodes,
méthodologie,
SCRUM,
spécialiste
dimanche 2 août 2009
Solutions libres ou propriétaires : une bataille à finir ...
Un sujet qui soulève bien des passions, même dans mon quotidien ! D'entrée de jeu, je tiens à dire que je suis pas un expert du domaine ni un partisan de l'un ou l'autre des côtés. Je remarque que dans ce domaine, on en voit de toute sorte ! D'un côté, les solutions propriétaires incarnant le diable en personne et de l'autre, les solutions libres incarnant la voie de rédemption.
Pardonnez-moi cette image un peu forte et caricaturale, toutefois, force est d'admettre que nous en sommes pas si loin à entendre certaines personnes débattre sur le sujet. Il est évident que lorsqu'on s'attaque à un plus fort, c'est plus facile de passer pour le "gentil" de l'histoire.
Maintenant que la table est mise, qu'est-ce que le logiciel libre ? Cela se définit par un logiciel dont la licence donne à chacun le droit de l'utiliser, de le modifier et de le diffuser librement. Par ailleurs, un logiciel libre est souvent à code ouvert (open source). La promesse du logiciel libre est d'offrir souvent plus de fonctionnalités et des solutions fiables et sécuritaires, car ils sont développés par une communauté qui peut rassembler des centaines, voire des milliers de personnes. Ce sont aussi des solutions qui affirment être respectueuses des standards et indépendantes. De plus, plusieurs affirment que ce sont des solutions économiques grâce à la liberté et la flexibilité de la license qui les accompagnent.
Passons maintenant au logiciel propriétaire. Le logiciel propriétaire a une license qui relève du droit d'auteur et est accompagné de certaines conditions d'utilisations (contrat). Comme son nom l'indique, le logiciel demeure l'entière propriété de son éditeur. Habituellement, un logiciel propriétaire ne permet pas les droits d'une solution libre. Les solutions propriétaires, à leur défense, promettent une intégration étroite et une homogénéité de leurs produits. Ils garantissent avoir une plus grande maturité et expertise du champs d'application et assure un support de leur gamme de produits.
Bon j'entends déjà les partisans des deux camps me crier des bêtises défendant allèguant que je confère des caractéristiques ou des avantages à l'une ou l'autre des alternatives et que ce n'est pas vrai ! Je vous l'accorde, rien n'est tout noir ou tout blanc. En effet, il y a beaucoup de zones grises dans ce domaine. Je répondrais simplement qu'il y a de mauvais logiciels libres et de mauvais logiciels propriétaires.
Avoir une solution libre ou propriétaire ne garantit souvent en rien sa qualité. Quand je parle de qualité, je parle de qualité globale. Le choix de l'une ou l'autre de ces solutions ne se limitent pas à un seul critère.
On ne choisit pas une solution parce que son coût de licences est moins élevé ou nul. Par exemple, pour une automobile, on s'attend que tout véhicule aille quatre roues et permet de se rendre du point A au point B. Il y a des véhicules à partir de 10 000 $, pourquoi chaque individu n'achète pas le véhicule le moins cher ? Sans doute, parce que nous avons des exigences et/ou des besoins et/ou des attentes différent(e)s.
On ne choisit pas uniquement une solution parce qu'il y a des meilleures possibilités de maintenance ou d'extensibilité. Encore une fois par analogie, on peut choisir son automobile pour sa renommée en terme de fiabilité et son faible coût d'entretien, car on espère la conserver longtemps. On peut aussi opter la louer à court terme et ne vouloir aucun tracas sachant qu'on la changera rapidement. On peut aussi être en mesure de faire sa mécanique chez soi ou opter pour un contrat d'entretien prolongé, car on a pas les connaissances techniques pour faire son propre entretien de véhicule.
En fait, unitairement, on peut descendre chacun des avantages/désavantages de l'une ou l'autre des solutions et trouver un contre-exemple dans le monde du logiciel. Un choix technologique ne passe pas par une idéologie dite libre ou propriétaire. Tout passe par une bonne analyse de besoins (exigences) et ensuite, on peut et plutôt, on DOIT regarder également toutes les alternatives qui peuvent répondre en partie ou totalement à notre besoin. Combien de fois j'ai vu un projet dans lequel, on sait déjà avec quelle technologie il sera réaliser, mais on a même pas fait une analyse préliminaire du projet.
Libre ou propriétaire, les deux voies sont des options viables pour autant qu'on accepte les avantages/désavantages que chacune nous offre. De plus, il faut faire preuve de plus d'objectivité que ce soit dans un cas ou l'autre, malgré que la subjectivité et les passions soient plus souvent tentantes. Dans notre domaine, libre VS propriétaire, c'est un faux débat. Le vrai débat est de déterminer comment les firmes en TI peuvent mieux réaliser les mandats qui leur sont confiés et de livrer des solutions de qualité répondant parfaitement aux attentes et besoins du client. Pour cela, il faut être en mesure d'avoir une offre variée et ne pas se buter à ce genre d'idéologie réductrice à mon avis.
Et pour terminer, vous avez beau avoir les meilleurs arguments de vente, si un client veut une voiture sport dont il rêve depuis longtemps coûtant plusieurs milliers de dollars et que vous lui proposez un choix plus rationnel telle une compacte fiable et économique. Vous passez à côté de son besoin (plutôt discutable vous me direz), mais dans toute chose, il y a la perception et une bonne dose de subjectivité. Il faut donc travailler fort pour changer les perceptions et convaincre, mais ce n'est pas en dénigrant l'une ou l'autre des solutions qu'on y parvient. Par conséquent, partisan de l'un ou l'autre des camps, au lieu de vous taper dessus, travaillez fort et concentrez-vous plutôt à répondre aux besoins de vos clients en lui offrant LA meilleure solution. C'est beaucoup plus constructif de prouver la qualité de sa solution que de défendre la légitimité de sa solution en s'attaquant aux faiblesses de son compétiteur ...
Pardonnez-moi cette image un peu forte et caricaturale, toutefois, force est d'admettre que nous en sommes pas si loin à entendre certaines personnes débattre sur le sujet. Il est évident que lorsqu'on s'attaque à un plus fort, c'est plus facile de passer pour le "gentil" de l'histoire.
Maintenant que la table est mise, qu'est-ce que le logiciel libre ? Cela se définit par un logiciel dont la licence donne à chacun le droit de l'utiliser, de le modifier et de le diffuser librement. Par ailleurs, un logiciel libre est souvent à code ouvert (open source). La promesse du logiciel libre est d'offrir souvent plus de fonctionnalités et des solutions fiables et sécuritaires, car ils sont développés par une communauté qui peut rassembler des centaines, voire des milliers de personnes. Ce sont aussi des solutions qui affirment être respectueuses des standards et indépendantes. De plus, plusieurs affirment que ce sont des solutions économiques grâce à la liberté et la flexibilité de la license qui les accompagnent.
Passons maintenant au logiciel propriétaire. Le logiciel propriétaire a une license qui relève du droit d'auteur et est accompagné de certaines conditions d'utilisations (contrat). Comme son nom l'indique, le logiciel demeure l'entière propriété de son éditeur. Habituellement, un logiciel propriétaire ne permet pas les droits d'une solution libre. Les solutions propriétaires, à leur défense, promettent une intégration étroite et une homogénéité de leurs produits. Ils garantissent avoir une plus grande maturité et expertise du champs d'application et assure un support de leur gamme de produits.
Bon j'entends déjà les partisans des deux camps me crier des bêtises défendant allèguant que je confère des caractéristiques ou des avantages à l'une ou l'autre des alternatives et que ce n'est pas vrai ! Je vous l'accorde, rien n'est tout noir ou tout blanc. En effet, il y a beaucoup de zones grises dans ce domaine. Je répondrais simplement qu'il y a de mauvais logiciels libres et de mauvais logiciels propriétaires.
Avoir une solution libre ou propriétaire ne garantit souvent en rien sa qualité. Quand je parle de qualité, je parle de qualité globale. Le choix de l'une ou l'autre de ces solutions ne se limitent pas à un seul critère.
On ne choisit pas une solution parce que son coût de licences est moins élevé ou nul. Par exemple, pour une automobile, on s'attend que tout véhicule aille quatre roues et permet de se rendre du point A au point B. Il y a des véhicules à partir de 10 000 $, pourquoi chaque individu n'achète pas le véhicule le moins cher ? Sans doute, parce que nous avons des exigences et/ou des besoins et/ou des attentes différent(e)s.
On ne choisit pas uniquement une solution parce qu'il y a des meilleures possibilités de maintenance ou d'extensibilité. Encore une fois par analogie, on peut choisir son automobile pour sa renommée en terme de fiabilité et son faible coût d'entretien, car on espère la conserver longtemps. On peut aussi opter la louer à court terme et ne vouloir aucun tracas sachant qu'on la changera rapidement. On peut aussi être en mesure de faire sa mécanique chez soi ou opter pour un contrat d'entretien prolongé, car on a pas les connaissances techniques pour faire son propre entretien de véhicule.
En fait, unitairement, on peut descendre chacun des avantages/désavantages de l'une ou l'autre des solutions et trouver un contre-exemple dans le monde du logiciel. Un choix technologique ne passe pas par une idéologie dite libre ou propriétaire. Tout passe par une bonne analyse de besoins (exigences) et ensuite, on peut et plutôt, on DOIT regarder également toutes les alternatives qui peuvent répondre en partie ou totalement à notre besoin. Combien de fois j'ai vu un projet dans lequel, on sait déjà avec quelle technologie il sera réaliser, mais on a même pas fait une analyse préliminaire du projet.
Libre ou propriétaire, les deux voies sont des options viables pour autant qu'on accepte les avantages/désavantages que chacune nous offre. De plus, il faut faire preuve de plus d'objectivité que ce soit dans un cas ou l'autre, malgré que la subjectivité et les passions soient plus souvent tentantes. Dans notre domaine, libre VS propriétaire, c'est un faux débat. Le vrai débat est de déterminer comment les firmes en TI peuvent mieux réaliser les mandats qui leur sont confiés et de livrer des solutions de qualité répondant parfaitement aux attentes et besoins du client. Pour cela, il faut être en mesure d'avoir une offre variée et ne pas se buter à ce genre d'idéologie réductrice à mon avis.
Et pour terminer, vous avez beau avoir les meilleurs arguments de vente, si un client veut une voiture sport dont il rêve depuis longtemps coûtant plusieurs milliers de dollars et que vous lui proposez un choix plus rationnel telle une compacte fiable et économique. Vous passez à côté de son besoin (plutôt discutable vous me direz), mais dans toute chose, il y a la perception et une bonne dose de subjectivité. Il faut donc travailler fort pour changer les perceptions et convaincre, mais ce n'est pas en dénigrant l'une ou l'autre des solutions qu'on y parvient. Par conséquent, partisan de l'un ou l'autre des camps, au lieu de vous taper dessus, travaillez fort et concentrez-vous plutôt à répondre aux besoins de vos clients en lui offrant LA meilleure solution. C'est beaucoup plus constructif de prouver la qualité de sa solution que de défendre la légitimité de sa solution en s'attaquant aux faiblesses de son compétiteur ...
Libellés :
contrat,
libres,
licence,
open source,
projet informatique,
propriétaires,
solutions
Inscription à :
Articles (Atom)
