Une fois de plus je n'ai pas la prétention de vous livrer une vérité universelle sur de tels sujets. Des vieux de la vieille le feraient peut-être bien mieux que moi.

Ce que je souhaite cependant, c'est vous parler de mes expériences et ouvrir un débat. Je vois déjà les centaines de commentaires qui affluent et le serveur dédié qui s'écroule sous les requêtes (on a le droit de rêver).

Je crois que la relation client c'est un peu comme une vie de couple. Parfois tout va bien (souvent heureusement) mais les conflits sont aussi très fréquents. Essayons donc d'éviter la rupture :)

Je vais tenter de rester neutre au cours de cet article.
Intéressons-nous à la naissance d'un conflit. Je pars du postulat où tout le monde est honnête et de bonne foi même si j'ai de nombreuses anecdotes à ce sujet :D C'est d'ailleurs sûrement aussi le cas pour vous.

La naissance d'un conflit est la plupart du temps la conséquence d'un problème de communication. Il est souvent du à un manque de connaissances. En effet nos clients ne sont pas forcément des informaticiens et ne disposent pas toujours du vocabulaire adéquat.
Ce n'est pas une critique négative, chacun son métier. Pour éviter les quiproquos il est important d'écrire un maximum de choses sur le papier. Ce travail permet de dégager un certains nombre d'interrogations qui n'auraient sûrement pas été soulevées avant le milieu du projet.

Attention ne vous réjouissez pas trop, il restera toujours des coquilles qui perturberont le projet à un moment ou un autre. Moins il y en a, mieux c'est ... Durant cette phase de réflexion, le dialogue est très important et nous devons poser les bonnes questions afin d'orienter notre client vers les points critiques qui ne le sont peut-être pas pour lui.
C'est une tâche bien difficile car nous ne maîtrisons pas forcément les connaissances métier de nos clients. C'est une alchimie complexe et nous devons essayer de doser au mieux.

Anticiper les cas particuliers permettront de chiffrer correctement le projet et d'éviter ainsi les conversations musclées lorsqu'il faudra repasser un budget. Si ce travail a été réalisé correctement mais que votre client dégage un nouveau cas, un nouveau besoin il sera alors naturel de facturer.
Si vous n'avez pas été assez loin dans cette démarche, il ne comprendra pas forcément car pour lui "c'était évident". C'est assez amusant de voir parfois comme certaines modifications paraissent compliquées à un client alors qu'elle va nous prendre quelques minutes. Une autre très simple pour lui peut remettre en cause l'ensemble du développement. Il est vraiment capital de minimiser au maximum ces situations car elles sont stressantes et démotivantes pour tout le monde.

Rédigez donc un cahier des charges même s'il est informel. Je vois déjà les grosses SSII me taper dessus. Cependant, soyons honnête, je n'ai pas vu beaucoup de cahier des charges impeccables où rien n'est oublié.

Essayez de traiter les retours au fur et à mesure en faisant des points réguliers sur l'avancée des travaux. Si la direction empruntée n'est pas celle attendue par le client, il sera plus simple de limiter la casse tout de suite au lieu de découvrir la catastrophe à la fin du développement. Pour cela il est nécessaire de découper le projet en étapes distinctes et de valider chacune de celle-ci.

Un autre atout de taille est sans doute l'expérience. Plus on termine de projets, plus on décèle des similitudes permettant d'anticiper les difficultés. Pas de secret pour ça, on l'acquiert avec le temps :)

Gardez au maximum les différentes versions de votre travail. Les gens sont souvent indécis et il arrive régulièrement qu'on me dise "finalement je préférais le fonctionnement initial". Soit vous êtes stricts et vous refusez le retour en arrière et là c'est le conflit assuré, soit vous avez prévu le coup, vous le faites remarquer mais vous pouvez revenir en arrière sans difficulté.

Pour parler purement technique, commentez les points sensibles de votre code et codez au maximum de manière modulaire et générique. L'adaptation du travail s'en trouvera vraiment facilitée.

A cela peuvent s'ajouter des conflits humains, la fatigue, la mauvaise humeur, les problèmes personnels. Bref rien est tabou et on parle bien ici d'humains qui travaillent ensemble. Parfois un "coup de gueule" est nécessaire et il ne faut pas hésiter. Vous pouvez avoir raison ou avoir tord mais si les choses doivent être remises à plat, il faut le faire le plus tôt possible.

Concernant les délais, il peut avoir des débordements sur le planning initial pour différentes raisons. (modifications non prévues, un problème d'équipe etc ...). Tant que ceux-ci sont raisonnables, je n'ai jamais assisté à de grandes crises. En revanche, il faut garder un contact régulier à travers un petit mail ou un coup de téléphone et ne pas "disparaitre". Cette erreur pourrait engendrer une paranoïa destructrice ;) Si vous respectez cela, il n'y a pas de raison que ça se passe mal.

Cet article, je le répète, n'est vraiment pas destiné à dénigrer les relations clients <--> fournisseurs mais je pense que c'est un sujet intéressant puisque nous le vivons tous au jour le jour. De plus nous pouvons être fournisseur un jour, client le lendemain et se retrouver de l'autre côté de la barrière.

J'ai réussi à éviter les anecdotes croustillantes qui auraient pu dénaturer la nature de ce petit exposé :p

Et vous, comment gérez-vous ces relations ? des astuces ?