10 Stimmen

Methodik der Fehlerverfolgung

Ich arbeite an einer Software für ein Unternehmen, das niemals Fehlerberichte einreicht, sondern sich nur beschwert: "So und so funktioniert es nicht." Manchmal kann ich herausfinden, wovon sie reden, manchmal nicht. Meine Bitten um Screenshots und mehr Details stoßen auf taube Ohren (einmal haben sie einen Screenshot gemacht, ihn dann ausgedruckt, mit ihrem Faxgerät eingescannt und als TIFF an meinen Chef gemailt).

Ich habe mehrere Methoden entwickelt, um die benötigten Daten zu erhalten. Hier sind die Schritte, die ich unternommen habe:

  • Einen Bug-Tracker, in den sie Fehler eingeben können (nur einer wurde jemals eingegeben)
  • Fehlerprotokollierung. Jedes Mal, wenn ein Fehler auftritt, wird er mit Hilfe von NLog in eine Protokolldatei geschrieben
  • Das Programm hat eine Try-Catch-Funktion um die erste Methode herum, um Ausnahmen aufzuzeichnen.
  • Wenn eine unerwartete Ausnahme auftritt, mache ich einen Screenshot des Programms.
  • Der Zugriff auf alle Formulare wird protokolliert, und bis zu einem gewissen Grad auch, was sie tun. (obwohl das normalerweise nur funktioniert, wenn sie erfolgreich sind)

Welche anderen Methoden kann ich anwenden, um Fehler zu finden und mehr Daten über sie zu sammeln, damit ich weiß, wie ich sie reproduzieren kann?

5voto

Daniel May Punkte 8106

Fairerweise muss man sagen, dass es sich so anhört, als ob Sie Ihren Teil der Arbeit gut genug machen, Sie haben die Software implementiert, Sie protokollieren aktiv die Fehler, Sie haben fast keine Möglichkeiten mehr.

Ich würde eine formelle Besprechung ansetzen, in der Sie die Bedeutung der Fehlerverfolgung erörtern - warum diese eingeführt werden muss und warum das derzeitige System versagt. Erklären Sie ihnen, wie dies Ihre Arbeit verlangsamt - was bedeutet, dass Geld verloren geht.

Erziehe sie und sie werden folgen . Anstatt zu sein "der nervige Entwickler, der will, dass wir Stunden mit irgendeiner Software verbringen" werden Sie "der Entwickler, der aktiv neue Lösungen für festgestellte Probleme und Fragen findet und die richtigen Schritte unternimmt, um solche Situationen zu korrigieren".


Um auf Ihren Kommentar zu antworten, dass Sie "nur ein Praktikant" sind - das sollte irrelevant sein. Sie haben genauso das Recht, Ihre Meinung zu äußern, vor allem, wenn Sie damit sowohl Ihre als auch die Zeit, das Geld und die Mühe anderer sparen. Sprechen Sie mit einem Vorgesetzten, vereinbaren Sie einen Gesprächstermin, es wird sich zeigen. Initiative, Pflege und Wohlstand - drei wichtige Faktoren, die sie sollte wertgeschätzt werden.

3voto

DisgruntledGoat Punkte 66021

Wenn Sie eine Software zur Fehlerverfolgung haben, verwenden Sie sie. Selbst wenn Sie nur die Informationen eingeben, die Ihre Benutzer Ihnen mitteilen, ist das ein Anfang. Sagen Sie ihnen, dass Fehler nicht behoben werden können, wenn Sie nicht wissen, wie sie zu reproduzieren sind. Außerdem sollten alle Ihre Kollegen und Tester die Fehlerverfolgungssoftware selbst verwenden.

2voto

jldupont Punkte 87330

Verwenden Sie einen "Supervisor", der die Anwendung überwacht und kontextbezogene Informationen über sie aufzeichnet, z. B. die Menge des von ihr verwendeten Speichers, die Menge des auf dem Host verfügbaren Speichers, die Anzahl der geöffneten Dateien usw.

Die Art von Daten, die nützlich sein könnten, um zu wissen, wann die Anwendung abstürzt und (natürlich) keine Zeit für die Protokollierung hatte.

1voto

gahooa Punkte 121696

Es klingt, als müssten Sie Ihren Kunden darüber aufklären, wie er mit Ihnen angemessen über gefundene Probleme oder Anfragen kommunizieren kann. Ich habe kürzlich einen unserer Kunden gebeten, SnagIt zu kaufen. Das ist ein Tool, mit dem das Aufnehmen, Kommentieren und Versenden von Screenshots zum Kinderspiel wird.

https://store.techsmith.com/order/snagit.asp

Seien Sie geduldig und arbeiten Sie mit ihnen (individuell) an der Verbesserung der Kommunikation.

1voto

Larry Watanabe Punkte 9916

Sie sind Kunden und gehören nicht zu Ihrem Unternehmen. Es gibt ein Sprichwort: "Der Kunde hat immer Recht". Als Kunden haben sie vielleicht das Gefühl, dass Sie zu viel von ihnen verlangen, wenn sie Ihre Fehlerverfolgungsmethoden und -werkzeuge nutzen, um Ihnen das Leben zu erleichtern.

Aber eine wichtigere Frage ist: Hat Ihre Software zu viele Fehler? Ein Teil ihrer Unzufriedenheit könnte mit der Qualität der Software zusammenhängen! Ihre Erwähnung, dass Sie gerade jetzt try-catch-Schleifen einbauen, scheint darauf hinzudeuten.

Verbesserung der Softwarequalität.

  1. Verfügen Sie über eine von Ihrer Entwicklungsumgebung getrennte Testumgebung, in der Sie die gesamte Software, Szenarien, Einheitstests, automatisierte Tests und manuelle Tests gründlich testen, bevor Sie sie an den Kunden ausliefern?

  2. Haben Sie Tester, deren einzige Aufgabe es ist, die Software zu testen?

  3. Haben Sie eine Reihe von Tests und Testplänen für die Prüfer dokumentiert?

  4. Haben Sie automatisierte Unit-Tests für Ihren gesamten Code?

  5. Verfügen Sie über Konventionen und Standards für die Codierung, Konventionen und Standards für Anforderungen/Design, Konventionen und Standards für Tests/Testpläne, einen Prozess für den SDLC und eine Ursachenanalyse?

  6. Haben Sie Peer Reviews?

  7. Gibt es Überprüfungen, um sicherzustellen, dass alle Probleme aus den Peer-Reviews behoben werden, bevor sie in eine Test-/Produktionsumgebung übertragen werden?

All diese Dinge könnten die Anzahl der Softwarefehler verringern und den Kunden zufriedener machen, was eigentlich das Hauptziel ist.


Nun zu Ihrer ursprünglichen Frage.

Offensichtlich verwenden sie nicht gerne Software zur Fehlerverfolgung. Sie müssen also proaktiv vorgehen und die Vorschläge der Vorposter befolgen. Es klingt so, als ob Sie genau das tun, und Sie haben einige gute Schritte unternommen. Sie sind auf dem richtigen Weg!

  1. Verbessern Sie Ihre Protokollierung, damit Sie auch im Nachhinein noch Informationen erhalten. Sie tun dies.

  2. Wenn möglich, sollten Sie auch Fernzugriff haben, damit Sie sehen können, was los ist, wenn der Fehler dupliziert werden kann.

  3. Wenn sie Informationen über einen Fehler an eine Kontaktperson in Ihrem Unternehmen senden, muss diese Person sicherstellen (entweder indem sie es selbst tut oder einem Delegierten unterstellt (ich vermute, Ihr Chef ist die Kontaktperson und Sie sind der Delegierte :)), dass der Fehler mit allen relevanten Informationen eingetragen wird.

  4. Idealerweise könnten Sie einen Modus haben, in dem Sie Benutzerinteraktionen aufzeichnen und den Fehler über die Wiedergabefunktion reproduzieren können.

  5. Sie könnten eine Videokamera installieren und aufzeichnen, was sie tun. So können Sie genau sehen, was sie tun, wenn sie sich wegen eines Fehlers melden und ihn reproduzieren können.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X