42 votes

L'analyse du Code et l'attribution des tâches en java

J'ai récemment regardé un discours intéressant sur la façon dont une partie de la Jet Propulsion Laboratory est en train de faire leur examen de code.

Essentiellement, ils ont un outil (Gommage) que:

  1. Exécute divers analyseurs de code sur le code
  2. Correspond à la problématique de la ligne contre le promoteur qui a commis
  3. Crée une tâche/un bug pour que développeur.

Ensuite, le développeur peut :

a) d'Accord (résoudre le problème - il s'en va) b) en Désaccord c) Discuter

L'outil conserve trail de toutes les conversations. Ensuite, lors de leurs réunions hebdomadaires, ils ne discuter que le Désaccord/en Discuter éléments de.

Je me promenais si quelqu'un a déjà rencontré un outil similaire dans Java?

Par exemple, je peux utiliser le Sonar - pour l'analyse du code, mais il n'y a aucun moyen de créer automatiquement des tâches ou de garder une trace des échanges.

Toutes les suggestions sont les bienvenues! Merci.

10voto

sblundy Points 27163

Il est le Creuset d'Atlassian, mais c'est payant.

5voto

Danny D'Amours Points 606

Sonar 2.7 a ajouté plus d'intégration avec les SCM, de sorte que vous pouvez maintenant voir les développeurs touché une ligne de code. http://www.sonarsource.org/sonar-2-7-in-screenshots/

Bien qu'il s'agit d'un processus manuel, à l'aide du Sonar plug-in Eclipse, il est possible de créer rapidement une tâche directement à partir de l'violations vue par un clic droit sur la violation et certains bug du champ est pré-rempli. Espérons que les futures mises à jour du Sonar plugin va ajouter en dernier valider les informations de la SCM afin de remplir le champ affecté à dans le bug / tâche.

Mise à jour:

Sonar 2.8 et 2.9 ont ajouté des fonctionnalités à déclencher manuellement des examens à partir de Sonar. http://www.sonarsource.org/sonar-2-8-in-screenshots/ http://www.sonarsource.org/sonar-2-9-in-screenshots/

Deux choses qui manquent sont un moyen pour l'examen des violations et l'intégration dans la tâche externe des systèmes de suivi tels que Bugzilla.

Mise à jour 2:

Sonar 3.1 a ajouté un point d'extension de lien externe de suivi de Sonar violations et au processus d'examen (détails).

L'utilisation de ce point d'extension plus tard JIRA plug-in (1.0) permet de créer un lien JIRA question d'une violation soulevées par le Sonar. Plus de détails dans le JIRA question et plugin détails page.

Je n'ai pas vu les plans pour l'intégration dans d'autres systèmes de suivi encore.

4voto

ymajoros Points 1024

Nous avons assez bien réussi processus qui pourrait faire ce que vous voulez.

Nous avons une grande application d'administration, composé de quelques 20+ modules.

  • tout est sous subversion (tout scm ferait)
  • chaque changement de code doit passer par Jira (mais vous pouvez utiliser n'importe quoi, de mantis pour bugzilla)
  • vous devez mettre un jira id du problème dans vos commits; un pre-commit hook blocs s'engage qui n'en ont pas, de sorte que tous les commits sont conformes à la règle
  • d'intégration continue Hudson (encore une fois, vous pouvez utiliser d'autres produits)
  • DEV/TEST/QA/PROD branches
  • via des scripts personnalisés, hudson peut prendre un ou plusieurs jira questions, faire un patch et de l'appliquer à l'assurance qualité, de compiler et déployer; PROD est un copier-à-temps de la validation de l'AQ de la branche (stricte des règles de validation)
  • champs personnalisés dans Jira pour rendre le processus automatique: par exemple, vous pouvez déclencher un patch en précisant que vous souhaitez dans Jira.

Il serait assez facile d'avoir un script inspecter dernière, les billets, s'engage, en exécution de la DGM/Checkstyle/Findbugs etc. et ouvrir de nouvelles questions dans Jira en cas de besoin (ou ajouter un champ personnalisé de valeur sur des titres de transport existants, à vous de décider). Vous définissez les règles pour l'ensemble du processus, de sorte que vous pouvez bloquer des correctifs ou des rejets basée sur jira état du problème. Vous pourriez mettre en œuvre ce que vous voulez (et plus) de cette façon.

Le résultat est que les développeurs s'engager, ils n'ont même pas besoin de savoir comment la ramification des œuvres de trucs, et tant qu'ils ont une certaine discipline avec leurs jira questions, beaucoup de choses peuvent se faire automatiquement et encore être en sécurité.

1voto

AlistairIsrael Points 3673

D'autres ont mentionné Sonar , mais personne ne semble avoir soulevé le fait que, depuis 2.8 Sonar prend désormais en charge la révision Manuelle du Code: http://docs.codehaus.org/display/SONAR/Manual+Commentaires

Combiné avec le SCM Plugin, cela semble très proche de ce que vous cherchez.

0voto

Yeameen Points 553

Dans mon entreprise, nous avons commencé à utiliser GitHub pour des projets SCM. GitHub offre de magnifiques intégrée de l'examen du code de l'outil (basé sur valider). Il suffit d'aller à commettre tout et ajoutez votre commentaire sur une ligne, fichier ou l'ensemble de la commettre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X