dimanche 23 mai 2010

Quelle est le meilleur outil pour construire le Web ?

Quelle est le meilleur outil pour construire le Web ?

Lors du dernier #WEBCAMP #QC, cette question a été lancée. Il y a eu un débat intéressant !

Mais, j'aimerais si vous me permettez, d'y réponde en plus de 140 caractères.

Toujours lorsque me pose ce genre de question, je réponds à peu près la même réponse. « un petit calepin, un crayon,  mes deux (2) oreilles et mon équipe ».

Car, avant toute de choses, l'origine de l'application web que nous voulons construire est un « CLIENT ».  Sans lui, il n'y aurait pas de projet !

Mes 2 oreilles me permettent l'écouter, mon calepin et mon crayon prendre des notes sur son besoin. C'est seulement après pris conscience de son besoin que je puisse enfin choisir qu'elle sera le meilleur outil pour répondre à son besoin.

Peut-être parfois, je prendrai des plates-formes #OpenSource ! D'autres du .Net ou même du Java (J2EE). Mais,  peu importe vers quoi se tournera mon choix, il devra absolument répondre à ces critères.

1-Techniquement et efficacement rentable pour mon Client !  Si pour arriver à construire l'application qui rempli son besoin ! Que parce que j'ai choisi le langage « X » dans l'environnement « Y », le projet me prend 6 mois de plus avec des « Gourous » qui seront seules à comprendre ce qu'ils font. À mes yeux, je me tire dans le pied.

2-Une fois le projet terminé ! Est-ce que le client ou encore une équipe réduire, sera capable de supporter et d'entretenir l'application et son environnement ! J'ai trop vu souvent ! De belles applications, qui faisait pour quelque chose de simple (informatiquement parlant) et qui demandait une armée pour la supporter. Et là, je ne parle pas d'une plate forme de gestion de grandes entreprises. !

3-Mes choix technologiques sont-ils compatibles avec l'environnement de mon Client. Exemple, si mon client est ORACLE-JAVA-LINUX-Progress mur à mur, et que je lui arrive avec une application construire en ASP.NET sur une base de données SQL SERVER. Comme on dit l'application a besoin d'être belle ..!

4-L'expertise, l'expertise (les ressources humaines) nécessaire pour la mettre en œuvre existe-t-elle sur le marché local ou régional de MON CLIENT. Si mon client est perdu dans le Grand Nord et les seuls programmeurs qui peuvent l'aider et qui habite sa région, ne connaît que le PHP. Je n'irais pas l'écrire en JSF parce que tout simplement moi j'aime ça. On attache nos clients par la qualité des services qu'on lui rend et non par notre expertise technique qu'on possède.

5-Le web existe depuis longtemps, il a vu passé plus d'un langage ! C Pour faire les CGI-BIN, de l'ASP standard, Java pour faire des applets et tout le reste.  La question n'est pas de répondre qui est le meilleur ! Mais, qui est le meilleur aujourd'hui ! Si refaisons le projet dans un an, dans 2 ans nos choix seront peut-être différents.

Je fais du Web depuis presque ses débuts ..! Et malgré toutes ces années, je n'ai pas trouvé le LANGAGE DE PROGRAMMATION meilleur que tous les autres. J'en ai juste trouve certain mieux adapter pour répondre à un besoin ou à contexte donné.
Rappelez-vous, le langage de programmation est un outil et non un moyen. L'outil est remplaçable par un autre. Quant au moyen, c'est la seule manière de faire la chose.

En résumé,  ayez un bon coffre à outils !

Invitation aux blogueurs participants aux #WEBCAMP #QC

J'invite tous les blogueurs qui étaient présents aux dernières #WEBCAMP #QC de faire ressortir la connaissance et ce qu'ils ont retenu de leurs expériences de cette belle aventure.

Nous étions 400 chanceux en salle, plusieurs autres en ligne. Mais, tout cela ne doit pas s'arrête là !

Le Web continue à vivre et à évoluer ! Donc, servons-nous de cette belle réflexion collective qu'est  le #WEBCAMP #QC et rédigeons ensemble des billets à la garder active et pour la prospérité !

Je vous invite aussi à utiliser les tags suivant #WEBCAMP #QC #after  et m'envoyer un lien vers vos billets. Il me fera le plus grand plaisir de les ajouter en référence aux bas de ce billet.

Allez procréer, faisons-nous ensemble d'excellents billets sur cette journée épique !


Denis F. GravelWebCamp Québec Live – 19 mai 2010
Bruno LaroucheQuelle est le meilleur outil pour construire le Web ?
Jonathan ParentEntrevue de Jonathan Parent suite aux #webcamp
Mario AsselinD'un WebCamp à l'autre...
Sandra Bellefoy« Twitter » le WebCamp de Québec…
Sandra BellefoyAutour d’un WebCamp québécois…
@jfvrville2ème édition du Webcamp Québec réussie
journal de QuébecWebCamp 2010: le happening web de Québec
CyberpresseLa politique a encore peur des médias sociaux
Billet de Québec t’aimeAll your "WebCamp" are belong to us
Patrick GrégoireRetour sur mon Webcamp Québec : 400 passionnés de Web se rencontrent

lundi 10 mai 2010

Mutatis mutandis, une réflexion sur le WebCamp de Québec

Le 19 mai prochain, environ 400 professionnels de tous acabits de l’industrie du Web se réuniront dans une conférence participative de type BarCamp, ce sera donc une belle occasion pour tous de discuter.
 
L’objectif de ce genre de conférence est souvent partagé sur un domaine donné. Dans le cas qui nous intéresse, ils échangeront sur le Web. Mais si, aujourd’hui nous amorcions ensemble une réflexion le WebCamp, n’on pas pour le changer, mais juste pour poser un nouveau regard.
 
Un regarde de ce qui devrait être changé. C’est là l’essence de cette expression latine.
« En change ce qui doit être changé, et d’apprendre la différence de ce qu’il ne l’est pas ». Le changement c’est bien, pourtant il ne faut le faire sans réflexion à prime à bord.
 
Le Web arrivera bientôt à son âge adulte. Longtemps, il a été un monde réservé aux Geeks tant pour son utilisation que son exploitation. Progressivement, il s’est démocratisé à tous les niveaux. Il passa du programmeur jusqu’à l’artiste pour se rendre jusqu’à l’utilisateur.
 
La science de jadis devient un art ! Les techniques inaccessibles qu’aux professionnels devient facilement utilisable par nos utilisateurs.  Donc, aujourd’hui, demain, et pourquoi pas le 19 mai prochain. Nous devons apporter une réflexion sur ce qu’il serait intéressant pour l’aider à devenir grand.
 
De venir en grand, en mettant en place des outils, des stratégies de développement et différentes actions pour enfin  qu’on puisse dirent :  « Adulte, tu es maintenant ! » au sujet du Web. Et je crois que c’est une belle occasion, ce WebCamp  de Québec.
 
Avec les années plusieurs outils ont été mise à la disposition de toute personne qui s’intéressait aux technologies Internet. Du simple « vi » (éditeur en mode ligne d’Unix) pour écrire le HTML jusqu’au CMS le plus sophistiqué par exemple WordPress ou Drupal.
 
Des langages de programmation pour les types de programmeurs, avec Framework pour faire à peu près tout ce qu’on voudrait faire dans ce merveilleux monde du Web. En passant de l’open source jusqu’aux distributions commerciales.
 
Je ne crois pas qu’il y a un meilleur langage qu’une autre, il n’y a qu’un meilleur pour combler le besoin dans l’environnement technologique et organisationnel qu’il doit être livré.
 
Avec l’ensemble des outils qui sont mis à notre disposition, nous devons passer du travail de l’artisan à un travail plus professionnel. Cependant, il plus que le temps de mettre en place des stratégies, surtout des stratégies de développements.
 
Des stratégies qui ramèneront les principaux intéressés à leur place respective. Bien sûr, l’utilisateur final, c’est lui qui utilisera ce que nous allons construire. Sans oublie, les différents membres de l’équipe ou des équipes qui construiront le site Web ou l’application et bien sur le client qui payera le projet.
 
Bien sûr les méthodologies Agiles font partie de ces stratégies sans pour autant en être la seule. Le choix d’une stratégie doit être basé le partage. Le partage entre les individus, le partage d’information de données, le partage entre les organisations. L’échange et la communication doivent être au cœur même de cette stratégie.
 
Il faut aussi profiter des acquis qui se sont faits aux files des années. Aujourd’hui, nous ne devons pas toujours réinventer la roue. Plusieurs des choses, des bonnes et des mauvaises. Mais, il faut prendre le temps de valider leur utilisation. En prenant conscience que nous ne sommes plus seules. Que peut-être quelqu’un à déjà résolu le même problème que nous avons. Ou encore, que notre solution pourrait aussi servir à quelqu’un d’autre.
 
De l’open source aux formats ouverts, en passant architectures orientées services (incluant les environnements « clouds computing ») jusqu’aux différents réseaux sociaux. 
 
Plus d’un changement cogne à nos portes, nous ne pouvons pas (ou plus) faire la sourde oreille. Les gouvernements, les grandes entreprises comme la petite doivent prendre le temps d’évaluer toutes les solutions. Même les solutions qu’il n’y pas si longtemps, ne semblaient pas acceptable.
 
N’oublions pas, le Web n’est plus seulement dans nos ordinateurs bien assis à nos bureaux (au travail ou à la maison). Aujourd’hui, avec un ordinateur portable et un accès WIFI on peut avoir accès presque partout. Et ce n’est plus seulement l’ordinateur qui nous donne accès ce merveilleux monde !
 
Du petit téléphone intelligent, en passant les tablettes PC  ou le fameux IPAD. Et même, la télévision qui servira bientôt comme terminal  pour naviguer sur Internet. En plus, programme télévisé qui sont webdiffusé.
La TÉLÉVISION qui s’annonce de se présenter dans le WEB et bien sûr le présenter aussi ! Nous n’avons qu’à penser ToutTv.com démontré ce point.
 
Mais, il ne faut pas oublier notre ami Google que presque chaque jour, repousse les limites. Une vraie « vague » d’évolution que nous ne sommes pas les seules à utiliser.  Il n’est pas loin, le jour où un client va nous demander une application comme Google Earth. Car, lui aussi l’utilise maintenant.
 
Je ne sais pas ce comment demain sera fait. Mais, une chose est sûre ! Ce sera au moins Web. Donc, c’est important de tenir des activités comme le WebCamp et d’y apporter une réflexion sur le changement en cours.

Au plaisir de discuter avec vous au WebCamp.  

samedi 24 avril 2010

Si vous me racontiez une petite histoire ?

C’est souvent comment, j’aborde mes séances d’ « User Storie » avec des usagers.
Au cours des prochaines lignes de ce billet, je vais essayer d’apporter mes lumières sur l’utilisation de cette méthodologie d’identifications de besoins et des fonctions de l’application des utilisateurs.
Beaucoup de gens plus traditionnels on peur de s’y impliquer trop à font ou encore ne savent pas comment le faire, sans embarqué dans dans une spirale de besoins. Ou encore pire, en utilisant un langage trop compliquer pour l’utilisateur.
L’utilisateur moyen comprend souvent mieux son son travail que le pense ! Pourquoi pas, de lui proposer une technique simple pour nous l’expliquer. Si on leur permet de nous parler, sans qu’ils sentent moins compétant ou inférieur à nous. Généralement, ils vont nous faire de belles surprises. Nous connaissons l’informatique, mais eux connaisse leur domaine. Notre logiciel doit s’adapter à leur besoin et aussi à leur domaine d’affaires. Laissons-les-nous en parler !
Les histoires utilisateurs (ou en anglais « User Stories ») permet de créer cet environnement facilitateur, et ce, sans l’utilisation d’outils complexes. Il est rare de trouver une personne qui est incapable de parler ce qu’il fait à tous les jours.
Qui ne sait pas dessiner grossièrement un écran juste pour donner un premier ébauche de ce quoi il pourrait ressembler. Mais, surtout prendre le temps d’écouter l’utilisateur sur ce qu’ils voudraient en faire.

Car, n’oublions pas, notre quête ultime dans cet exercice, c’est de livrer en fin de projet la meilleure application. La meilleure application qui correspond tant aux besoins de notre utilisateur. Mais, aussi selon contexte organisationnel (incluant sa capacité de payer aussi).
Trop souvent pour atteindre cet objectif, on utilisait un jargon trop technique; peut-être pour nous monter un peu trop savant ! Mais en restreignant notre langage à celui que tout le monde peut comprendre et surtout l’utilisateur. Il sera vite à l’aise de nous parle de toutes ses préoccupations. Il sera toujours temps d’écrire une belle documentation pour conserver ou officialiser ce besoin.
Nous en méthodologies Agiles, nous acceptons le changement. C’est vrai. Mais, plus rapidement ce changement arrive. Mais, aussi sa compréhension devient claire plus vite nous adapter dans le projet. Plus, nous aurons la capacité de l’adresser et d’y faire face. Plus auront la facilité d’atteindre notre objectif final.
Cette belle histoire que l’usager va nous raconter. Elle ne doit pas être laissée à tous les vents. Mais, accompagner tant dans son traitement que dans son discours. On peut bien raconter, les contes des mille et une nuits. Si cela n’apporte rien à la compréhension, cela ne sert à rien.
Il aussi intéressant, de permet à l’occasion de parler de sont travail d’une manière plus générale. Car, en racontant ces petits à côtés. À une oreille, bien à viser, on peut découvrir bien choses qui vont nous aider dans notre quête.
J’aime bien entendre raconter mon utilisateur ce qu’il fait en prenant son café en arrivant le matin. J’y ai découvert de vraies petites perles. Souvent même, sans que l’utilisateur se rendre compte de ce qu’il m’avait raconté, de l’importance de son histoire.

Raconter une histoire, c’est bien beau. Mais, comment faut-il le faire. Comme dit l’expression, nous avons deux oreilles et une bouche. C’est qu’il faut écoute 2 fois plus qu’on parle. Prendre des notes au besoin, des petits schémas, de petits dessins et l’utilisateur n’y voit pas d’inconvénient, enregistrer les conversations.
Il faut aussi, bien sûr, prendre des notes de ce que l’utilisateur nous explique. La manière le plus simplement, c’est par l’utilisation de grand Post-it ou d’un tableau. Si vous utiliser un tableau, d’apporter une caméra pour prendre une photo de ce qui a été écrit au tableau. C’est important de garder ces grands Post-it ou photos pour conserver une trace de ce qu’il a été discuté avec les utilisateurs.
Il est très conseillé de limiter à 4 ou 5 points de formes par fiche. On se croit toujours avoir une mémoire très supérieur à la réalité. Mais, il est facile de se rappeler de l’information comprise dans 4-5 items. Plus que ça, il sera difficile de combler l’information des points formes.
Et quand on dit, des points de forme. On ne dit pas de romans. Il faut se limiter à une ou deux phrases courtes. Une phrase d’actions et surtout affirmative. Nous voulons décrire ce qu’on veut faire et non l’inverse.
Restons simples, restons Agile tant notre approche que dans nos actes. Et faisons- le ensemble, en impliquant l’utilisateur, nous atteindrons notre objectif. De créer la meilleure application pour notre utilisateur. Et j’en suis sur, il en sera d’autant satisfait. Car, il se sentira impliqué dès le début et jusqu’à la fin.
Lors de ces séances d’ « user stories » vous ne devez pas diriger la conversation ou la rencontre. Mais, vous devez l’animer, idéalement nous en voulons toujours plus, avoir toute l’information d’un seule coup. Mais, parfois, il sera nécessaire, tant pour compréhension du système système ou domaine d’affaires. Ou parce que l’utilisateur avait plus d’information à nous donner.
Il sera toujours le temps, d’en refaire une autre pour compléter ou même améliorer la compréhension du besoin. Parler, s’assoir avec notre utilisateur, lui donner l’occasion de nous parler de son besoin, c’est aussi ça d’être Agile.
Avez-vous une petite histoire à me raconter ?

mardi 16 mars 2010

L’intégralité de l’équipe de développements.

L’un des principes à la base de SCRUM, est l’intégralité de l’équipe de développements pour la durée du cycle (l’itération).

Mais, pour plusieurs organisations qui sont habituées d’avoir une mobilité des ressources en cas d’urgence. Cette impossibilité de bouger des individus durant la période du cycle pourrait être problématique. Beaucoup d’organisation ajuste leurs équipes selon les besoins du moment, surtout selon les urgences de l’organisation.

Donc, demander à de telle organisation de respecter l’intégralité de l’équipe durant le cycle de développement. Ce n’est pas une chose facile.

Je travaille comme consultant en informatique depuis plusieurs années, dans différentes organisations du Québec (province de Québec). Et il m’est arrivé de voir ou d’entendre parler des équipes qui évoluaient selon le besoin et les urgences de l’organisation.
« L’expression on sait comme l’équipe est construite, au moment la regarde. La seconde d’après, elle peut changer. »

Ce n’est pas mal en soi, mais toutes décisions organisationnelles à des conséquences positives et négatives. Comme on dit, je ne veux pas faire un procès à ces organisations. Mais, si elles veulent faire le passage à Agile. Ils devront effectuer une bonne réflexion sur les impacts que cela aura sur leur gestion des ressources et des impacts organisationnels.

N’oublions pas que l’engagement est individuel, mais aussi en d’équipe. Donc, si nous brisons cette équipe, l’engagement ne risque de plus tenir. En agile, les individus qui composent l’équipe ne sont pas juste un numéro remplaçable. Mais, une personne importante au sein du projet et que les autres membres compte sur ces efforts pour mener à bien le projet, ou le cycle. Une équipe SCRUM qui s’engage sur la livraison d’une série de taches. Elle fait sur la base de la confiance que chacun à envers les autres.

Donc, lorsqu’on me parle, qu’on me demande de briser cette intégralité. Je demande toujours. Si tu t’engages à livrer quelque chose avec une personne, et le lendemain, je la changerais. Est-ce que cela affecterait ta capacité à livrer, mais surtout la confiance de le faire ?

Je n’ai jamais eu personne qui n’avait pas d’impact sur son travail ou sa vision du projet. Par conséquent, j’accompagne toujours mes clients afin qu’ils comprennent et acceptent les inconvénients et les avantages, avant de lancer dans un premier projet Agile.

Et de notre coté, nous devons prendre aussi conscience que pour certaine organisation, souvent pour les petites, c’est difficile voir impossible de respecter cette intégrité de l’équipe.

En conclusion, il n’a pas de solutions parfaites pour gérer cette intégralité. Il faut juste trouver votre solution à vous. Tout en cherchant, à viser l’intégralité complète de l’équipe de développement.

L’intégralité organique, fonctionnelle, une petite définition.

Suite à la rédaction d’un billet sur la revue de code   et dans laquelle je parlais d’intégralité organique et fonctionne du code. Et j’ai reçu un commentaire judicieux d’une personne qui me demandait d’expliquer ces concepts.

Donc, voici ma vision (une définition qui n’en est pas une) sur ces deux concepts.

Commençons par l’intégralité fonctionnelle. Lorsque nous écrivons du code. Nous ne le faisons pas parce que cela fait joli. Pour démontrer, que nous capable de faire des algorithmes complexes, du code qui ne sert à rien, juste écrire du code.

Une fonction, une classe ou simplement quelques lignes doivent avoir un objectif à remplir. Si j’écris la fonction SupprimerLesEspacesDansUneChaine (la fameuse fonction « TRIM »). Son objectif est de supprimer les espaces dans une chaine et la retourner à la fin, une fois le traitement terminé.

Dans notre exemple, on ne devrait jamais trouver du code pour le calcul de Pi dans cette fonction. Par contre, elle doit contenir le traitement de validations des entrées et une gestion d’erreurs adéquates.

On doit aussi avoir les outils qui démontrent l’atteinte d’objectif. Ce n’est pas juste la parole de son programmeur qui le valide. Souvent, je conseille d’avoir de petits programmes de tests (Unit Test and Fonctionnal Test). Mais, une série d’exemples d’utilisation, lorsque c’est une classe ou fonction d’utilités (la fonction « Trim », ne fait rien de spécifique dans l’application. Mais, elle aide d’autre traitement à atteindre leur objectif à eux.)

Cette intégralité fonctionnelle devrait être couverte par les tests unitaires bien sûr. Mais aussi, par des tests fonctionnels; automatiser si possible. Il est intéressant, de conserver une copie des tests et de leurs résultats aux fins d’archives.

L’intégration organique (ou logiciel),  couvre plusieurs aspects. Bien entendu, le respect de la nomenclature de l’écrire du code (Nom de la classe, des fonctions et méthodes, des variables, etc).

Mais, il faut aussi vérifier que le code produit, ne compile pas juste le poste du développeur qui l’a écrit. Il doit aussi compiler dans les environnements continus ou sur les « Build Machines ».  J’ai déjà vu du code qui compilait sur tous les postes des développeurs. Mais, lorsque nous avions voulu, faire une version officielle avec la Build Machine. Ça avait fait « Boom », le code ne compilait pas du tout.

Pourtant, ce code avait révisé par toute l’équipe. Il respectait les standards de programmations. Mais,  il n’avait jamais été compilé entièrement avec les sources de la version officielle qui était pour la livraison chez les clients.

L’autre aspect souvent oublié, c’est la manière de faire les choses. Beaucoup, d’organisation on des librairies de composantes utilitaires. Et il faut les utiliser, lorsque nous travaillons.

Par exemple, on a beau avoir construit la meilleure fonction de validation d’un NAS (Numéro d’Assurance sociale). Si nous n’avons pas utilisé, la fonction standard de l’organisation. A mes yeux, nous avons un problème d’intégrité organique (ou logiciel).

Il faut chercher à ne jamais réinventer la roue. Il faut l’utilisé au besoin, encore plus en orientés objets avec les principes de la surcharge et de l’héritage.

L’autre aspect, les fameux algorithmes géniaux. Mais, donc le nom du programmeur est marqué en dessous. A moins, que nous lancions une fusée sur Mars.  Je n’aime pas voir, du code que seul le programmeur qui l’a écrit comprend. Que pour toutes corrections ou modifications, nous avons besoin de lui.

Nous devons toujours écrire, du code pour les 10 programmeurs qui vont faire la maintenance de celui-ci. Il existe encore du code qui a été écrit avec des cartes perforées.

La continuité du désigne est aussi une autre chose importante. Les architectes ou les concepteurs des modèles organiques de l’application. Ne sont pas toujours à côté des programmeurs, lorsqu’ils ont besoins d’ajouter une classe ou une fonction dans cet ensemble.

Dans un mode idéal, je sais que c’est la responsabilité du concepteur de prendre cette décision. Mais, nous savons tous qu’en tant programmeur ou analyste qu’il arrive parfois de prendre cette décision sans l’approbation immédiate du concepteur.

Il faut voir l’intégralité comme une gestion des impacts du code produit dans le reste de l’application ou de la solution logiciel.

Et je me répète, encore et encore, les programmes de tests avec leurs résultats sont aussi importants.

Donc, l’intégralité fonctionnelle et organique d’un code est bien plus que le regarde de la qualité d’écriture du code lui-même. C’est une vue d’ensemble dans la validation du code produit.

samedi 13 mars 2010

La revue de code, ce n’est pas l’Inquisition !
L’une des bonnes pratiques des méthodologies Agiles et de l’Extrem Programming, est la révision de code.
Mais, souvent la révision de code est utilisée comme une forme d’Inquisition, une forme de dictature par certains membres de l’équipe.
Les principes qui sont derrière la révision de code ont le but de vérifier le respect des standards de programmations, de la simplicité des algorithmes et ainsi que de la compréhension générale de l’ensemble du code produit par l’équipe.
Elle permet aussi d’augmenter les compétences générales des membres de l’équipe. On peut s’en servir pour aider et former des membres qui ont moins d’expériences.
Mais, malheureusement, dans certaine équipe, certains coéquipiers qui ont un égo trop grand, se serve de cette technique comme une forme d’Inquisition en vers les gens moins expérimentés ou moins forts techniquement qu'eux.
J’ai même vu que certains l’utilisaient pour régler des conflits personnels. Quelle horreur !
La révision de code doit suivre aux minimums ces règles.
  1. Le réviseur doit avoir une compétence égale ou supérieure de celui dont il révise le code. C’est aussi un exercice de formations.
  2. La révision est une recommandation, n’est pas un acte de dieux. Encore moins une condamnation par les pairs. La personne révisée peut, et a le droit de discuter toutes les corrections demandées par le réviseur. Il est même recommandé que cette discussion s’effectue en équipe.
  3. Le réviseur NE DOIT JAMAIS modifier lui-même le code révisé. S’il y a des modifications ou des améliorations à faire sur une partie ou l’intégralité du code, c’est la responsabilité de l’auteur du code. Je répète, le réviseur NE DOIT PAS CORRIGER lui-même le code révisé. Si on veut que l’auteur s’améliore, il doit lui-même faire les corrections.
  4. La révision de code ne doit pas se limité au fichier de code (le support) mais aussi sontintégration, tant organique que fonctionnel dans le reste du projet. L’intégration organique est respect de la culture technique du projet. L’intégration fonctionnelle est le respect de l’objectif de la fonction, de la classe révisée.
  5. On doit aussi inclure dans la révision de la qualité de la documentation. Pas la révision du français ou de l’anglais, oui, la documentation doit être bien écrite. Mais, elle doit aussi aider la compréhension du code qu’elle documente. C’est souvent la partie que les gens oublient. Pourtant, elle est aussi importante que le code lui-même. Car, elle servira à la maintenance de celui-ci.
  6. La recommandation de révision doit toujours être faite par écrit. Premièrement, un texte écrit permet de réduire l’émotivité que les paroles directes ne permettent pas toujours. Et deuxièmement, le texte pourra servir pour le suivi, l’augmentation de la connaissance générale et bien sûr la maintenance du code.
  7. Mais le plus IMPORTANT, toute transmission de révision à une autre personne doit se faire dans le plus GRAND RESPECT. Je dis toujours à mes réviseurs, imaginer que c’est pour vous que vous recevez cette recommandation que vous avez écrite. Donc, comment aimeriez-vous la recevoir ?
En utilisant, cette technique dans un profond respect de tous les membres de l’équipe. Nous allons t’en renforcer la compétence moyenne de l’équipe que de l’esprit d’équipe.
Car, lorsqu’il y a confiance mutuelle au sein de l’équipe, les membres de celle-ci n’ont plus peur de demander de l’aide. Cette demande s’effectue tout naturellement.
De plus, la qualité va aussi augment progressivement. Ce qui va réduire tant le temps de révision que le temps de corrections subséquentes. L’expérience m’a démontré que si on prend le temps de bien le faire et surtout dans le fait dans un profond RESPECT, cette technique est plus que profitable.