Welche Informationen gebt ihr dem Kunden bei einem Fehler der Software aus?

07/01/2009 - 12:46 von Susann Markward | Report spam
Hallo,

dass eine Software fehlertolerant sein soll und eben gerade _nicht_
abstürzen soll, sondern den Fehler versuchen soll zu beheben, ist mir
soweit klar.

Ich arbeite derzeit _noch_ nach dem Modell:

,
|Privat Sub ProzedurName()
|
|On Error GoTo ErrorAction
|
| ...
|
|Exit Sub
|
|ErrorAction:
| ...
| Dim sMSG As String
| sMSG = "Error: " & Err.Number & " - " & Err.Description
| MsgBox sMSG, vbInformation, App.Title
|End Sub
`

Nun ist es mir mal wieder passiert, wie eben oftmals wàhrend der
Entwicklung, dass ich eine Fehlermeldung bekam wie bspw. "Error: 9 -
Index außerhalb des gültigen Bereichs".

Wenn ich jedoch nicht wüsste, was ich gerade geàndert hatte, hàtte ich
mit dieser Fehlermeldung natürlich ebenso wenig etwas anfangen können,
wie der Kunde.

Deswegen mal meine Frage: Welche Informationen gebt ihr dem Kunden bei
einem Fehler, damit der Kunde beruhigt ist und ihr wisst, wo ihr mit der
Fehlersuche ansetzen müsst?

Bspw. Könnte man ja die Fehermeldung derart gestalten:

,-
|Error: 9 - Index außerhalb des gültigen Bereichs"
|Fehler im Modul "DruckAusgabe" in der Funktion "DatenErstellen".
`-

Allerdings müsste man diesen Text a) auch wieder stàndig lokalisieren
(also in alle Fremdsprache übersetzen). Außerdem gibt ein solch
ausführlicher Text b) evtl. doch mehr Informationen preis, als man
eigentlich gern preisgeben möchte.

Als wie macht ihr das eigentlich?

MfG
Susann
 

Lesen sie die antworten

#1 Dieter Strassner
07/01/2009 - 13:26 | Warnen spam
Hallo Susann,

dass eine Software fehlertolerant sein soll und eben gerade _nicht_
abstürzen soll, sondern den Fehler versuchen soll zu beheben, ist mir
soweit klar.
[...]
Bspw. Könnte man ja die Fehermeldung derart gestalten:

,-
|Error: 9 - Index außerhalb des gültigen Bereichs"
|Fehler im Modul "DruckAusgabe" in der Funktion "DatenErstellen".
`-

Allerdings müsste man diesen Text a) auch wieder stàndig lokalisieren
(also in alle Fremdsprache übersetzen). Außerdem gibt ein solch
ausführlicher Text b) evtl. doch mehr Informationen preis, als man
eigentlich gern preisgeben möchte.

Als wie macht ihr das eigentlich?



Erstmal in JEDER Sub/Function/Property/Events eine Fehlerabhandlung (stark
àhnlich deiner).
Allerdings mit zwei Unterschieden:
1. Nur in Events/Subs die der Benutzer direkt auslöst (z.B. in
Command_Click ) wird der Fehler angezeigt (Call einer Moduls zur
Fehleranzeige mit den "wichtigen" Angaben.
2. Alle anderen Fehlerorte geben den Fehler via err.raise noch oben zum
Aufrufer zurück (inkl. des Modulnamens und ggfs. Zusatzinformationen (z.B.
die Laufvariable innerhalb einer Schleife, der EinganngsString bei einer
String Bearbeitung, etc.).

Der Benutzer und der Programmierer erhalten dann nicht nur Modulnamen, die
Fehlernummer mit dem Text, sondern auch auch den Weg den das Programm
genommen hat um zur Fehlerstelle zu kommen und den (hoffentlich) relevanten
Parameter der zum Fehler führte.
Beispiel:
Es trat in 'command_click.modul1.modul2.function1(IrgendeinWert)' der
Fehler 999 'Funktion nicht ausführbar' auf!

Möchten Sie die Fehlermeldung per eMail zum Herstellen senden?
JA NEIN

Solbald der Benutzer oben abgebildete Fehlermeldung list, steht diese schon
in einer Logbuchdatei (mit Datum, Uhrzeit, PCname, username, programmname
vorangestellt.
Klickt er dann auf "JA" wird versucht über den Standarrd-emailClient die
Fehlermeldung zu mailen. Dabei hat er dann noch die Möglichkeit einen kurzen
Kommentar einzugeben um den Umstand/seine letzte Aktion noch kurz
beschreiben (als Anhaltspunkt bei der Fehlersuche).


Viele Grüße

Dieter


Rückfragen bitte nur in die Newsgroup!

EDV-Kommunikation Strassner e.K.
68623 Lampertheim
Internet: www.strassner.biz

Ähnliche fragen