Une bonne qualité garantie un fonctionnement sans problème. Les problèmes peuvent être détectés assez tôt et résolus. Cela permet d’économiser des coûts à moyen et long terme. En revanche, la qualité à court terme à un prix, puisque l’assurance qualité doit être garantie durant toutes les activités du développement logiciel. Tous les employés ainsi que le client sont impliqués.

Tous les documents sont soumis à un processus de révision interne. Les directives et les instructions pour le GUI doivent être établies, les tests unitaires permettent d’automatiser les tests des fonctionnalités de base.

Les revues de code permettent d’assurer une bonne qualité du code et le respect des directives. Les exigences doivent continuellement être clarifiée et être à jour. Des builds automatisés construisent chaque nuit nos projets et produits actuels, exécutent des tests unitaires automatisés et créés en plus d’une version installable et d’analyses, une l’infrastructure nécessaire au testing (base de données de test, données de test).

Les tests permettent d’avoir une assurance qualité structurée et continue. Une exploitation systématique de ces résultats livre aux clients un aperçu de l’état actuel et des étapes d’avancement du développement. A la fin de chaque itération un test complet du système est effectué. Ce dernier couvre tous les cas de test pour les cas d’application déjà implémentés. Après le test système et la correction des défauts trouvés l’itération peut être réceptionné par les utilisateurs finaux dans le cadre d’un test utilisateur.

A la fin de réalisation d’un paquet, un test des composants est effectué.

Nous effectuons des tests hebdomadaires pour les gros projets. Le but est de vérifier les nouvelles fonctions et de donner un feedback rapide en cas d’écart ou d’insuffisance.  Ces tests sont complétés au travers de simulations. Ceci est particulièrement intéressant, en fin du développement d’un composant et lorsqu’il n’y a plus aucune grosse modification des fonctionnalités et de l’interface utilisateur.

Les prérequis pour un bon processus de test sont à la fois de bon tests ainsi que des environnements de tests appropriés (généralement tous les environnements courants que l’on rencontre chez le client), des bonnes données de test (pas de dépendance entre les applications) ainsi qu’une manipulation simple des bases de données test (réinitialisation et mise en place simple).