












Quels sont les enjeux techniques, métier et organisationnels de la qualité logicielle ?
Bernard Homès : les testeurs impliqués dès le début du cycle et agissent conjointement avec les équipes de développeurs. Cette collaboration améliore la rentabilité et la qualité des logiciels. D'autant que les rapports de tests garantissent une traçabilité des exigences, de la spécification jusqu'à la livraison. En termes d'organisation, l'implication de testeurs compétents, connaissant plusieurs techniques et méthodes, est rassurante tant pour les clients que pour les sociétés de services et les éditeurs de logiciels. Pourtant, en France, les tests ont encore une marge de développement, car ils sont trop souvent perçus par les sociétés comme un coût plutôt qu'un moyen d'améliorer la satisfaction des clients et les marges de rentabilité. Une perception probablement due à la méconnaissance de leur valeur ajoutée.
Comment voyez-vous l'évolution des pratiques et des outils de tests ?
BH : les divers aspects d'un test demandent de nombreux outils. Hélas, la tendance est plutôt de choisir un seul éditeur (et donc une suite), plutôt que d'utiliser des moyens adaptés aux besoins spécifiques de chaque projet. Ce qui génère une exploitation non optimale des ressources et une augmentation des coûts sans que cela améliore la qualité ou la rentabilité. Mais nous constatons que les testeurs cherchent à connaître de plus en plus d'outils afin de travailler avec le plus adapté à la tâche en cours.
Quel peut être l'apport des pratiques agiles dans la qualité logicielle ?
BH : les pratiques agiles se scindent en deux grands groupes : les répétitives et les non-répétitives. Parmi les premières, on peut citer la méthode Scrum, qui améliore la rentabilité et l'adéquation avec les résultats attendus. Dans le second groupe, aux résultats moins sûrs pour les décideurs et les clients, on trouve le test exploratoire ou encore l'utilisation d'outils de conception de tests avant celle du code. L'efficacité de ses méthodes dépend de l'individu et du contexte. Et elles n'offrent pas l'industrialisation que procurent les techniques systématiques. Enfin, quelles que soient les pratiques choisies, agiles ou non, il est nécessaire de s'assurer que les résultats seront au rendez-vous grâce à des métriques et des mesures tout au long du cycle de développement. Une démarche loin d'être rentrée dans les mœurs de nombreuses sociétés.
Quelles conséquences ont les nouvelles démarches telles que la prise en compte de la qualité tout au long du cycle de vie de l'application ou l'usine à test logiciel ?
BH : toutes ces pratiques s'inscrivent dans une recherche de rentabilité, qui passe par la mesure des coûts actuels et leur suivi dans le futur. En attendre une amélioration immédiate est illusoire. Il faut miser sur des progrès à plus long terme. Les directions des ressources humaines et les DSI doivent s'assurer que leurs testeurs possèdent les connaissances nécessaires. Dans cette optique, le CFTL (Comité français des tests logiciels) a mis en place des certifications qui permettent une spécialisation dans différents domaines (responsable de test, analyste, testeur technique) et garantissent un niveau de connaissance validé par des examens indépendants.
Ces pratiques entraîneront-elles une redistribution des rôles entre les différents intervenants (développeurs, testeurs, chefs de projet, DSI) ?
BH : une synergie entre développeurs et testeurs est nécessaire, car ils sont complémentaires. Il est donc utile que les premiers aient une connaissance minimum des tests et les seconds des notions de base du développement. Un chef de projet ou un DSI qui ne réalise pas le bénéfice qu'il peut tirer des tests, n'a pas conscience de ce qu'il est en droit d'attendre de ses équipes (locales ou offshore) et n'évalue pas ce que cela coûte en ressources et en temps, sera handicapé et ne réussira jamais à augmenter la rentabilité de ses développements. La mise en place par les grandes SSII d'usines à test et d'industrialisation avec des méthodologies adéquates montre que la profession de testeur devient une option réelle, avec une progression de carrière cohérente. Ceux qui l'exercent, maîtrisant à la fois les besoins utilisateurs et les techniques de tests et de développement, deviendront des ingénieurs multicompétences bien placés pour atteindre des positions de chefs de projets, voire de DSI.
