Best Practices Formularentwicklung - Fehleranalyse

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Bei der Fomularentwicklung, den eigenen Tests und den Tests vom Fachbereich wird es immer wieder dazu kommen, dass bestimmte erwartete Ausgabedaten nicht erscheinen und der Entwickler sich auf die Fehlersuche begeben muss. Das läuft jedoch immer sehr ähnlich ab.

Excel Testprotokollliste

In Excel können sehr übersichtlich die Fehler und deren Bearbeitungsstatus protokolliert werden.

Die Vorteile einer Tabellenkalkulation

  • Die Struktur der Tabelle zwingt dazu systematisch Daten zu pflegen
  • Es können sehr schnell und flexibel Filter auf die Daten/Spalten gelegt werden
  • Bedingte Formatierungen ermöglichen automatische Zellformatierungen und dadurch sehr schnell eine optische Orientierung in der Liste

Excel Reiter

Gibt es noch sehr viele Fehler in den Formularen sollte jeweils ein Reiter für ein Formular mit sprechenden Namen angelegt werden. In einer späteren Phase, wo die Fehler seltener werden, verwendet man besser lediglich eine Registerkarte, wo in einer Spalte der sprechende Formularname eingetragen ist.

Felder der Excel-Liste

  • Fehlerbeschreibung
  • Nachrichtenart (sofern alle Formulare in einer Registerkarte)
  • Kurztitel Formular (sofern alle Formulare in einer Registerkarte)
  • Status
  • Testbeleg
  • Bemerkung

Notizen

  • Bei der Analyse von Fehlern können Notizen (Variablennahmen, Entwicklungsobjekte, etc.) als Kommentar in die entsprechende Zeile eintragen werden. So bleiben diese detaillierten Analyseergebnisse auch über einen längeren Zeitraum erhalten und können jederzeit editiert werden. Die Testprotokollliste hat gegenüber anderen Softwareprogrammen den Vorteil, dass die Notizen bei den Fehlern gespeichert werden und so ein Medienbruch verhindert wird.
  • Oftmals braucht man die Notizen aber nur einmalig für die aktuelle Bearbeitung und dann sollte man ein Textverarbeitungsprogramm wie Word nutzen. Reine Texteditoren wie Notepad haben den Nachteil, dass hier keine Screenshots reinkopiert und keine Formatierungen vorgenommen werden können. Wenn man die Notizen aufheben möchte, dann sollte man sie in ein zentrales Verzeichnis speichern, sodass die Dateien wiedergefunden werden können. Oft sind die Problemstellungen jedoch so speziell, dass man nach der Analyse die Datei löschen kann, bzw. ohne zu Speichern die Datei verwirft.

Feld Status / Farbe Registerkarte

Sehr hilfreich ist ein Feld Status, welches in Excel mit einer bedingten Formatierung (Hintergrundfarbe) versehen ist, z. B.

  • In Arbeit (gelb)
  • Erledigt (grün)
  • Test (dunkelgrün)
  • Delegiert (grau)

Ist ein Punkt an jemandem anderen delegiert, kann man im Kommentar dieser Zelle angeben an wen delegiert wurde und Details zur Delegation, z. B. Customizing Textfindung oder Pflege Stammdaten. Ggf. kann man sich einen Eintrag im Kalender setzen, um Nachzuhaken beim Kollegen bezüglich der Fertigstellung. Sie als Formularentwickler haben die Gesamtverantwortung für das Formular. So weiß man selber, dass man diesen Punkt bearbeitet hat und kann die Fertigstellung monitoren.

Gibt es in der Excel-Liste eine Registerkarte pro Formular, dann sollte in Excel bei der Arbeit an einem Formular die entsprechende Registerkarte gelb markiert werden, sofern man länger an einem Formular arbeitet. Sind alle Fehler in einem Formular bearbeitet, wird die Registerfarbe auf grün gewechselt. So wird nach dem Ampelprinzip auf einen Blick der Bearbeitungsstatus des Formulars ersichtlich. Alle noch nicht bearbeiten Formulare bleiben unformatiert.

Checkliste Fragen

  1. Mit welchem Beleg und welcher Nachrichtenart lässt sich der Fehler in welchem System (möglichst Entwicklungssystem) reproduzieren?
  2. Was genau erscheint nicht, bzw. mit anderen Werten?
  3. Welches Formular und welches Druckprogramm betrifft den Fehler?
  4. Welche Variable soll den Wert ausgeben im Formular?
  5. Wo wird die Variable im Druckprogramm gefüllt (sofern sie nicht im Coding des Formulars gefüllt wird)?

Variablen debuggen

  • Nun kann man an die entsprechende Stelle im Druckprogramm einen Breakpoint setzen, um die Fehlersituation im Debugger zu analysieren.
  • Wird die Variable im Coding gefüllt?
  1. Wenn nein, woran liegt es?
    1. Liegt ein Programmfehler vor? Was muss korrigiert werden?
    2. Wird die Variable aufgrund von nicht gefüllten Belegdaten nicht ausgegeben? Daten im Beleg pflegen/hart in passende Z-Tabelle Wert eintragen und erneut testen oder im Debugger den Wert eintragen.
  2. Wenn ja, wird die Variable gefüllt dem Formular übergeben?
    1. Wenn nein, wo wird der gefüllte Wert gelöscht, bzw. im Druckprogramm nicht übergeben bei Variablenübergabe?
    2. Wenn ja, wo liegt der Fehler im Formular?
      1. Wird der Variableninhalt nicht an ein Ausgabefeld gebunden?
      2. Wird die Variable aufgrund einer nicht erfüllten Bedingung nicht ausgegeben?