Das Ticket-System von Trac
Table of Contents
Die Ticket-Datenbank von Trac ermöglicht einfache, aber effiziente Vorgangs- und Fehlerverfolgung innerhalb eines Projekts.
Als zentrales Element des Projektmanagements von Trac werden Tickets für Projektaufgaben, Verbesserungsvorschläge, Fehlerberichte und Software-Betreuungsvorgänge verwendet.
Wie das Trac-Wiki so ist auch dieser Teil mit der Zielsetzung gestaltet, Beiträge und Beteiligung der Benutzer so einfach wie möglich zu machen. Es sollte möglichst leicht sein, Fehler zu melden, Fragen zu stellen und Verbesserungen vorzuschlagen.
Ein Vorgang ist einer Person zugewiesen, die ihn bearbeiten oder das Ticket jemand anderem zuweisen muss. Alle Tickets können zu jeder Zeit bearbeitet, kommentiert, zugewiesen, neu gewichtet und besprochen werden.
Ticket-Felder
Ein Ticket enthält Informationen zu folgenden Aspekten:
- Ersteller — Der Autor des Tickets.
- Typ — Die Art des Tickets (beispielsweise Fehler oder Verbesserungsvorschlag)
- Komponente — Der Teilbereich des Projekts, den dieses Ticket betrifft.
- Version — Projektversion, auf die sich dieses Ticket bezieht.
- Stichworte — Stichworte, mit den dieses Ticket gekennzeichnet ist. Dies ist für das Suchen und die Berichteerstellung nützlich.
- Priorität — Die Wichtigkeit diese Vorgangs, von simpel (engl.: trivial) bis blockierend (engl.: blocker).
- Meilenstein — Wann dieser Vorgang spätestens abschließend bearbeitet sein sollte.
- Zugewiesen zu/Verantwortlicher — Hauptverantwortliche Person für die Bearbeitung dieses Vorgangs.
- Kopie — Eine komma-getrennte Nutzerliste oder E-Mail-Adressen für Benachrichtigungen. Beachten Sie, dass dies keine Verantwortlichkeit oder irgend eine andere Festlegung beinhaltet.
- Lösung — Der Grund für das Schließen des Tickets. Einer von
gelöst
(engl.: fixed),ungültig
(engl.: invalid),irrelevant
(engl.: wontfix),doppelt
(engl.: duplicate),nicht reproduzierbar
(engl.: worksforme). - Status — Wie ist der aktuelle Zustand? Einer von
neu
(engl.: new),zugewiesen
(engl.: assigned),abgeschlossen
(engl.: closed),wiederaufgenommen
(engl.: reopened). - Kurzbeschreibung — Eine knappe Beschreibung, die das Problem oder den Vorgang zusammenfaßt.
- Beschreibung — Der Hauptteil des Ticket. Eine gute Beschreibung sollte aussagefähig, genau und knapp sein.
Anmerkung: Trac-Versions vor 0.9 hatten kein Typ-Feld, sondern enthielten ein Schweregrad-Feld und andere Standardwerte für das Priorität-Feld. Dieser Wechsel erfolgte, um den Ticket-Aufbau durch das Entfernen des begrifflich etwas schwer zu fassenden Unterschieds zwischen Priorität und Schweregrad zu vereinfachen. Der alte Aufbau ist trotzdem noch verfügbar, falls Sie ihn bevorzugen: einfach durch Ändern/Hinzufügen der Standardwerte für Priorität und Schweregrad, und wahlweise noch durch Verstecken des Typ-Feldes durch das Entfernen aller zur Auswahl stehenden Werte mit trac-admin.
Anmerkung: Die Felder Typ, Komponente, Version, Priorität und Schweregrad können mit trac-admin oder mit dem Web-Admin-Modul verwaltet werden.
Anmerkung: Die Beschreibung der Standardwerte für Priorität ist in TicketTypes nachzulesen.
Ticketänderungen und -kommentare
Nachdem ein Ticket in Trac eingegeben ist, können Sie diese Informationen zu jeder Zeit ändern, indem Sie den Vorgang kommentieren. Das bedeutet, dass Änderungen und Kommentare als Teil des Tickets aufgezeichnet werden.
Beim betrachten eines Tickets erscheint die Änderungshistorie dann unterhalb des Ticket-Hauptbereichs.
Innerhalb des Trac-Projekts selbst nutzen wir Kommentare zum Bespechen von Aufgaben und Vorgängen. Das erleichtert das Verständnis für die Beweggründe hinter der Gestaltung oder hinter einer ausgewählten Umsetzung, wenn man später wieder darauf zurück kommt.
Anmerkung: Die Möglichkeit zur Verwendung von Trac-Verweisen (engl.: TracLinks) und Wiki-Formatierung ist eine wichtige Funktion für Ticketbeschreibungen und -kommentare. Nutzen Sie TracLinks für Verweise auf andere Vorgänge, Changesets oder Dateien, um Ihr Ticket zu präzisieren und verständlicher zu machen.
Anmerkung: Hinweise zur Einrichtung von E-Mail-Benachrichtigungen über Ticketänderungen erhalten Sie auf der Seite TracNotification.
Anmerkung: Hinweise zur Statusänderungen (Ticket-Lebenszyklus), und wie dieser Ablauf angepaßt werden kann, erhalten Sie auf TracWorkflow.
Standardwerte für Auswahllistenfelder
Für die verschiedenen Auswahllistenfelder kann in Abschnitt [ticket]
der Datei trac.ini die Standardauswahl festgelegt werden:
default_component
: Name der Komponente, die standardmäßig ausgewählt istdefault_milestone
: Name des Standard-Meilensteinsdefault_priority
: Standardwert für Prioritätdefault_severity
: Standardwert für Schweregraddefault_type
: Standard-Ticketartdefault_version
: Name der Standard-Versiondefault_owner
: Name des Verantwortlichen, falls für die betreffende Komponente kein Verantwortlicher festgelegt ist
Falls einige dieser Optionen ausgelassen werden, ist der Vorgabewert entweder der erste Listeneintrag oder ein Leereintrag, abhängig davon, ob ein Eintrag in diesem Feld erforderlich ist. Einige davon können mit dem Web-Admin-Modul im Bereich "Ticket-System" ausgewählt werden (andere im Abschnitt "trac.ini"). Wenn ein Verantwortlicher für die Komponente festgelegt ist, wird dieser standardmäßig für ein Ticket verantwortlich gemacht, ansonsten default_owner
.
Felder verstecken und zusätzliche Felder hinzufügen
Viele der Standardfelder können auf der Web-Benutzeroberfläche einfach dadurch das Entfernen aller zur Auswahl stehenden Werte mit trac-admin versteckt werden. Dies gilt natürlich nur für Auswahllistenfelder, wie Typ, Priorität, Schweregrad, Komponente, Version und Meilenstein.
Trac erlaubt Ihnen auch, eigene Ticketfelder hinzuzufügen. Weitere Information dazu erhalten sie auf TracTicketsCustomFields.
«Zuweisen zu» als Auswahllistenfeld
Falls die Liste möglicher Verantwortlicher begrenzt ist, können Sie das "Zuweisen zu"-Feld (engl.: assign-to) von einem Eingabefeld in ein Auswahllistenfeld ändern. Das erreichen Sie durch das Setzen der Option restrict_owner
im Abschnitt [ticket]
der trac.ini auf “true”. Dann wird Trac zum Füllen der Auswahlliste für diese Feld die Liste aller Nutzer nutzen, die auf das Projekt zugegriffen haben.
Um in der Auswahlliste zu erscheinen, muss ein Nutzer im Projekt registriert sein, z.B. sollte eine Verbindung des Nutzers in der Datenbank existieren. Ein solcher Eintrag wird in der Datenbank automatisch erstellt, wenn der Nutzer erstmals eine Projektänderung übermittelt, beispielsweise beim Bearbeiten der eigenen Angaben unter Einstellungen, oder einfach durch Anmelden, wenn der Nutzer über Anmeldedaten verfügt. Außerdem muss der Nutzer die Berechtigung TICKET_MODIFY
besitzen.
Anmerkung: Der Beitrag Die «Zuweisen zu» als Auswahlliste füllen (engl.) enthält weitere Hinweise zum Hinzufügen von Nutzereinträgen auf Datenbankebene
Anmerkung 2: Wenn Sie wirkliche Flexibilität benötigen und ein wenig eigenständige Plugin-Programmierung nicht scheuen, dann ziehen Sie FlexibleAssignTo in Betracht (Offenlegung: Hinweis des Plugin-Autors)
Anmerkung 3: Das Aktivieren dieser Option kann merkliche Leistungseinbußen verursachen. Mehr dazu lesen Sie auf der Seite zur Leistungsfähigkeit von Trac.
Vorgabewerte für neue Tickets
Um einen Verweis auf das Formular für ein neues Ticket, dass mit Vorgabewerten belegt ist, zu erstellen, müssen Sie die /newticket?
-URL mit Variable=Wert und durch & getrennt aufrufen.
Mögliche Variablen sind:
- type — Die Typ-Auswahlliste
- reporter — Name oder E-Mail des Erstellers
- summary — Einzeilige Kurzbeschreibung für das Ticket
- description — Ausführliche Beschreibung des Tickets
- component — Die Komponenten-Auswahlliste
- version — Die Versions-Auswahlliste
- severity — Die Schweregrad-Auswahlliste
- keywords — Stichworte
- priority — Die Prioritäts-Auswahlliste
- milestone — Die Meilenstein-Auswahlliste
- owner — Die für das Ticket verantwortliche Person
- cc — Eine Liste von E-Mail-Adressen für Benachrichtigungen über Ticketänderungen
Beispiel: /trac/newticket?summary=Compiler%20Fehler&version=1.0&component=GUI
Leseempfehlungen: TracGuide, TracWiki, TracTicketsCustomFields, TracNotification, TracReports, TracQuery