Recherche/Idee: Bug-Tweeting

Ich finde es in extrem zeitkritischen Projektphasen enorm schwierig, mögliche Bugs oder "Todos" zu verfolgen. (Die Grenze zwischen Bug und Todo verschwimmt in solchen Phasen.) Soweit es mich allein beträfe, würde vermutlich eine simple Textdatei ausreichen. Aber bei mehreren Entwicklern und einem Projektleiter sieht die Lage anders aus. Dabei finde ich oft: In solchen Hochdruck-Projektphasen leistet das Team in der Regel die beste Arbeit. Aber die kleinen, super-nervigen Bugs, die teils noch nach Projektstart gefunden werden (bei Pech vom Kunden), die entstehen meist ebenfalls in solchen Phasen. Und nicht selten denke ich mir: "Oh, Mist! Da habe ich doch letzte Woche mal ganz kurz dran gedacht. Aber ich war in Eile und dachte, es sei bekannt, dass das noch getan werden muss. Darum hab ich es nicht mehr weiter verfolgt."

Okay, Ihr werdet vermutlich sagen: "Verwende doch entweder ein Bug-Tracking-System, oder eine simple Excel-Liste." Ich habe Einwände dagegen:

  • Bug-Tracking-Tool: grundsätzlich eine tolle Sache. Aber bedenkt die Schrittfolge: 1. zum Browser wechseln, 2. Link zum Bug-Tracking-Tool raussuchen und aufrufen, 3. mit Username/Passwort anmelden, 4. Projekt raussuchen (ggf. anlegen/anlegen lassen), 5. auf 'Neuen Bug' klicken, 6. Titel ausdenken und eintragen, 7. Bug-Kategorie auswählen, 8. Verantwortlichen auswählen, 9. Beschreibungstext eintragen, 10. gegenlesen und abschicken

    Das ist eine ziemlich lange Schrittfolge, wenn einem grade der Teufel im Nacken sitzt! Für langfristige Projekte sind Bug-Tracker total tolle Sachen, aber nicht für die letzten zwei Tage eines zeitkritischen Projekts. Und grade um die geht's mir grade. Da hört man dann notgedrungen auf, den Bug-Tracker zu verwenden, und zwar auch aus ganz berechtigten Gründen. Und dann enstehen teils schlimme Fehler, weil Informationen verloren gehen.

  • Excel-Tabellen und ähnliches: Auch hier ist die Schrittfolge sehr lang. Grade wenn das Dokument für alle erreichbar im Intranet liegt, in irgend einem Unterordner eines Unterordners. Hat ein Kollege die Excel-Datei grade geöffnet (in 90% aller relevanten Fälle also), muss man ihn entweder bitten, die Datei zu schließen oder ihm eine Mail schreiben, mit der Bitte die Info einzutragen, die man grade eintragen will. Doof. Macht man nicht, wenn man unter Zeitdruck steht. Wieder geht was verloren.

Ich habe über das Problem nachgedacht, und plötzlich fiel es mir wie Schuppen von den Augen: Ich will eigentlich sowas wie Twitter für Bugs! Ich stelle mir ein Tool mit folgenden Eigenschaften vor:

  • Super-simples Interface mit einem allgegenwärtigen Formularfeld, in das man jederzeit einen neuen Bug bzw. ein Todo eintragen kann.
  • "Fire and forget": so konzipiert, dass es den aktuellen Gedankenstrom nicht unterbricht. Meist hat man ja noch einen Stapel weiterer Dinge im Kopf, den man verlieren würde, wenn das Tool zu umständlich in der Bedienung wäre.
  • Harte Beschränkungen: z.B. nicht mehr als 300 Zeichen. Ansonsten fangen die Leute an, da Aufsätze reinzuschreiben. Und dafür wäre das dann das falsche Tool.
  • Gute Auflistung: Die Beitrage aller Nutzer landen in einem Pool, können hübsch aufgelistet werden und vielleicht nach unterschiedlichen Kriterien sortiert und gefiltert.
  • Optionen für einzelne Beiträge (für jeden verfügbar): löschen, antworten (nur 1 Ebene tief; Antworten auf Antworten sind verboten), "habe-ich-gesehen"-Funktion (Eintrag wird nur für den aktuellen Benutzer ausgegraut, bis er verändert wird), bearbeiten (das aber nur für den Autor), hochschieben/runterschieben (in der natürlichen Reihenfolge der Einträge; so wird eine ultra-simple Priorisierung möglich)
  • Eventuell eine Art Papierkorb, um gelöschte Einträge wiederherzustellen. Das Löschen an sich muss aber eine 1-Klick-Aktion sein.

Einen Eintrag zu schreiben und abzuschicken sollte 5-30 Sekunden dauern.

Wenn die Hochdruckphase dann vorbei ist, können Entwickler und Projektleiter durch diese gesammelte Grütze durchgehen, irrelevante Punkte löschen und relevante Punkte mit mehr Details anreichern und in eine Excel-Tabelle oder ein Bug-Tracking-Tool eintragen.

Kennt jemand so ein Tool, oder habt Ihr vielleicht bessere Ideen?

Deine Bewertung: Keine Average: 3.3 (3 votes)

Re: Recherche/Idee: Bug-Tweeting

Wie schon eben besprochen noch mal als Kommentar:

Die Idee ist super und liesse sich auch sehr zügig in PHP mit MySQL-DB umsetzen. Zunächst würde ich allerdings auf persönliche Anordnung verzichten. Simples Interface: jeder bekommt einen Login, eine Seite mit Eingabe-Feld und darunter tabellarische Auflistung mit Sortierfunktion & Filterfunktion (welcher Entwickler, welches Projekt, Datum, ein/ausblenden von erledigten Tasks).

Re: Recherche/Idee: Bug-Tweeting

Ich würde mir die Tabellenstruktur etwa so vorstellen:

  • Tabelle postings:
    • id: integer, autoinc, primary key
    • posted_by: integer, indiziert: foreign key zu User-Tabelle
    • category: varchar[255], indiziert: Projektname (extra Tabelle für Categories nicht nötig - einfach select disctinct category...)
    • in_response_to: integer, indiziert (non-unique), nullable: Verweis auf jenes Posting, auf welches dieses eine Antwort ist
    • body: varchar[255]: Textinhalt des Eintrags
    • posted_when: datetime, sortier-indiziert
    • last_edited_when: datetime, sortier-indiziert: Zeitpunkt der letzten nachträglichen Bearbeitung
    • revision: integer: Zähler, wie oft der Eintrag nachträglich bearbeitet wurde
    • deleted_when: datetime, indiziert
    • deleted_by: integer: foreign key zu User-Tabelle
  • Tabelle users:
    • id: integer, autoinc, primary key
    • login: Varchar, indiziert (unique): Login-Name
    • password: Varchar: Passwort-Hash
    • name: Varchar: Display-Name
    • created_when: datetime
  • Tabelle postings_seen (für die User-spezifisch "ausgegrauten" Postings):
    • posting: integer, primary key (combo): foreign key zu Posting-Tabelle
    • user: integer, primary key (combo): foreign key zu User-Tabelle

Darstellungsoptionen

Wählen Sie hier Ihre bevorzugte Anzeigeart für Kommentare und klicken Sie auf „Einstellungen speichern“ um die Änderungen zu übernehmen.