2011-01-11 11 views
3

Wir sind gerade dabei, unseren Softwareentwicklungsprozess zu definieren und wollten von der Gruppe Feedback zu diesem Thema erhalten.Verwendung statischer Analysewerkzeuge - mit klarem Fall/Quest

Unser Team ist verteilt - USA, Kanada und Indien - und ich möchte einige einfache Standardregeln einführen, die alle Teams auf ihren Code anwenden.

Wir nutzen Clear Case/Quest RAD

Ich habe bei PMD, CPP, und Check FindBugs als Start suchen.

Mein Gedanke ist, nur diese in ANT zu setzen und die Entwickler diese manuell ausführen zu lassen. Mir ist bewusst, dass Sie darauf vertrauen müssen, dass jeder Entwickler das tut. Der andere Gedanke ist, einige Builder in die IDE einzufügen, die eine Teilmenge der Regeln ausführen (den Buildprozess hell halten) und dann einen weiteren Satz (schwer) hinzufügen, wenn sie den Code einchecken.

Einige andere Ideale bestehen darin, etwas wie Cruse Control zu verwenden und es so einzurichten, dass diese statischen Analysewerkzeuge zusammen mit dem Komponententest ausgeführt werden, wenn Clear Case/Quest im Leerlauf ist.

Fragen, ob andere dies getan haben und ob es erfolgreich war oder Lektionen erlernt werden kann.

Antwort

1

Wir haben:

  • Clearcase mit Hudson verwendet für alle "schweren" statische Analyseschritt
  • Eclipse-IDE mit den Tools, die Sie mit einem kleineren Satz von Regeln

Hinweis integriert erwähnt: Wir haben es nicht wirklich geschafft, Repliken mit unseren verschiedenen Benutzerbasen (US-Europe-Hong-Kong) zu erstellen, und wir verwenden CCRC anstelle von Multi-Sites. Da ClearCase hauptsächlich in Europa verwendet wird, findet der Analyseschritt während der Nacht dort (UMT-Zeit) statt und es werden Snapshot-Ansichten verwendet, um sicherzustellen, dass es so schnell wie möglich abläuft (eine dynamische Ansicht beinhaltet zu viel Netzwerkverkehr beim Zugriff auf große Daten) Dateien).

+0

Also haben Sie in Ihrer Eclipse-IDE Builder, die die statischen Tools ausführen, wenn der Code kompiliert? Oder verlassen Sie sich darauf, dass die Entwickler diese Elemente ausführen, bevor sie den Code einchecken? – boyd4715

+0

@ bod4715: Die IDE wird mit diesen Tools beim Kompilieren eingerichtet (nur für Klassen, die sich geändert haben, für Findbugs). Die Entwickler könnten sie jedoch deaktivieren. – VonC

1

Ich würde Hudson statische Analyse auf SCM Änderungen ausführen, wenn Ihre Codebasis nicht zu groß ist, oder auf periodische Builds, wenn es ist.

OK, ich kann nicht widerstehen ... Wenn Ihr Team verteilt ist, warum in der Welt würden Sie Clearcase verwenden? Als jemand, der das nutzen musste, als unsere Firma zu Mercurial wechselte, verbesserte sich die Teamgeschwindigkeit enorm. Dieser Multi-Site-Müll ist einfach schrecklich.

+0

einfache Antwort auf Clear Case - Unternehmenspolitik - SOX Compliance - plus, Offshore und Near Shore sind neu für das Unternehmen. – boyd4715

Verwandte Themen