Question

Je suis nouveau à l'assurance de la qualité du logiciel. On m'a dit par mon patron pour savoir comment nous pouvons aller à ce sujet dans notre société. S'il vous plaît quelqu'un pourrait me dire ce que l'assurance de la qualité des logiciels est tout au sujet et quels outils open source que je pourrais utiliser pour l'assurance de la qualité logicielle.

Était-ce utile?

La solution

Vous pouvez essayer de lire des blogs de "le grand et le bon", des gens comme Martin Fowler salut 'Bliki' et Robert Martin sur Blatherings Uncle Bob ... et Joel Spolsky de défunte Joel On Software. Tout bon pour avis sur ce que la qualité est au sujet.

Actuellement en utilisant Java et des outils tels que Macker.Le et Findbugs pour vérifier l'exactitude du code et le respect des directives.

Pour la répétabilité et la gestion de plaire, les tests unitaires exécutés automatiquement par un serveur de build tels que Hudson ou Régulateur de vitesse sur le code extrait d'un système de contrôle de code source est une bonne idée. Il donnera également les « pouvoirs en place » des mesures afin que vous puissiez montrer comment la construction de votre code, test, etc.

En fin de compte, il est juste en bas de bonnes personnes qui se soucient de ce qu'ils font.

Autres conseils

Il est tout au sujet des tests, des essais, des tests. Il existe de nombreux outils qui peuvent vous aider à atteindre cet objectif, comme les cadres tests unitaires, analyseurs de code, profileurs de mémoire, etc. Les outils que vous utilisez sont fonction du langage de programmation et plateforme de développement utilise votre entreprise pour son logiciel.

Comme les autres l'ont dit, le test est une partie essentielle du logiciel QA. Mais je suis surpris que personne n'a encore parlé des revues de code. Jetez un oeil comment vous pouvez intégrer des revues de code pairs dans votre processus de développement; il est un excellent moyen d'améliorer la qualité et partager les connaissances du code dans toute l'équipe. Le plus tôt vous détectez un problème, plus facile et moins cher est de le fixer, donc envisager une révision de code pour chaque changement de code source.

Si vous voulez une introduction excellente et complète à l'AQ, lisez les parties II et V de code complet par Steve McConnell . En fait, tout lu - il fournit des exemples pratiques de la façon d'améliorer la qualité du code et des mesures (que vous pouvez montrer à la gestion) qui expliquent les avantages des différentes techniques d'AQ

.

Les chapitres que je mentionne des sujets tels que:

  • concepts de conception et pratiques pour améliorer la qualité
  • routines de haute qualité
  • Programmation défensive
  • Programmation pseudocode
  • Les techniques d'amélioration (y compris une évaluation de l'efficacité relative) Qualité Logiciel
  • Quand faire l'assurance qualité
  • construction collaborative (y compris la programmation paire, inspections de code)
  • test de développeur
  • Debugging (y compris les considérations psychologiques)
  • Refonte
  • stratégies code de réglage et techniques

Pour citer Principe général de la qualité du logiciel de McConnell:

  

L'amélioration de la qualité réduit les coûts de développement

Il est également au sujet du processus de validation qui est utilisé. Vous pouvez tester votre logiciel toute la journée, mais si vous ne savez pas ce qu'il voulait faire et ce que le résultat attendu est que vous pourriez être testé pour la mauvaise chose tout à fait. Il y a un vrai bon livre qui établit un cadre solide pour commencer (qui couvrirons également les exigences ISO si votre entreprise est certifiée ISO): http://www.amazon.com/Computer-System-Management-Validation-Cycle/dp/1932828095

Comme dit Bernard ci-dessus, vous devez faire des tests. Si vous développez en Java, vous pouvez utiliser JUnit (NUnit fonctionne de façon similaire en .Net). Les tests unitaires sont juste le début cependant, vous pouvez regarder des outils de couverture de code pour vous donner une indication de la façon dont compléter votre test unitaire est (outils open source EMMA et Cobertura fournissent ce pour Java). Vous pouvez également utiliser hudson pour exécuter automatiquement ces tests chaque fois qu'un changement est vérifié dans l'arborescence de votre source (hudson vous donnera une indication de la stabilité de vos développements sont, beaucoup de fluctuations des taux de réussite de cas de test indiquent que vous faites beaucoup de rupture change par exemple).

Après cela, vous pouvez regarder quelque chose comme Findbugs pour Java de repérer les pratiques douteuses. Si vous utilisez Eclipse pour le développement Java vous pouvez obtenir les paramètres de plugin pour effectuer diverses autres pièces d'analyse sur votre code, mais vous devez savoir ce que ces mesures indiquent en fait.

En fin de compte, la qualité de votre produit sera défini par le fait que vous pouvez introduire des changements de manière fiable qui permettent d'atteindre leur but sans provoquer des régressions. Les outils ci-dessus ne sont que le début, il faut beaucoup de temps pour devenir bon à tester (je ne suis pas moi-même), mais si vous introduisez les outils et pratiques pour votre organisation, vous pouvez travailler à partir de là.

En général, tombent dans le piège Do not commun de penser que c'est un seul problème IT-personnel. Il est clair que vous ne voulez pas des bugs dans votre code, et il y a un certain nombre d'outils / processus qui aident à cela - QA est vraiment un processus de plus grande portée. Comme mentionné ci-dessus par DBA_Alex, vous devez savoir quel problème vous résolvez pour l'entreprise avec votre logiciel, et à la fin de la journée, les organismes d'affaires doivent participer à répondre à cette question. Assurez-vous que votre solution finale comprend les personnes à la fois l'information et des affaires ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top