= Das Ticket-System von Trac = [[TracGuideToc]] [[TranslatedPages(revision=54)]] 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 [TracWiki 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 == #TicketFields 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 [wiki:TracAdmin trac-admin]. '''Anmerkung:''' Die Felder [trac:TicketTypes Typ], [trac:TicketComponent Komponente], Version, Priorität und Schweregrad können mit [wiki:TracAdmin trac-admin] oder mit dem [trac:WebAdmin Web-Admin]-Modul verwaltet werden. '''Anmerkung:''' Die Beschreibung der Standardwerte für ''Priorität'' ist in [trac:TicketTypes#Whyistheseverityfieldgone TicketTypes] nachzulesen. == Ticketänderungen und -kommentare == #ChangingandCommentingTickets 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 [TracLinks Trac-Verweisen] (engl.: !TracLinks) und [WikiFormatting 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. == Default Values for Drop-Down Fields == The option selected by default for the various drop-down fields can be set in [wiki:TracIni trac.ini], in the `[ticket]` section: * `default_component`: Name of the component selected by default * `default_milestone`: Name of the default milestone * `default_priority`: Default priority value * `default_severity`: Default severity value * `default_type`: Default ticket type * `default_version`: Name of the default version * `default_owner`: Name of the default owner, ''if no owner for the component has been set'' If any of these options are omitted, the default value will either be the first in the list, or an empty value, depending on whether the field in question is required to be set. Some of these can be chosen through the [trac:WebAdmin WebAdmin] plugin in the "Ticket System" section (others in the "trac.ini" section). The default owner for a ticket will be the component owner, if that is set, or `default_owner`, if not. == Hiding Fields and Adding Custom Fields == Many of the default ticket fields can be hidden from the ticket web interface simply by removing all the possible values through [wiki:TracAdmin trac-admin]. This of course only applies to drop-down fields, such as ''type'', ''priority'', ''severity'', ''component'', ''version'' and ''milestone''. Trac also lets you add your own custom ticket fields. See TracTicketsCustomFields for more information. == Assign-to as Drop-Down List == If the list of possible ticket owners is finite, you can change the ''assign-to'' ticket field from a text input to a drop-down list. This is done by setting the `restrict_owner` option of the `[ticket]` section in [wiki:TracIni trac.ini] to “true”. In that case, Trac will use the list of all users who have accessed the project to populate the drop-down field. To appear in the dropdown list, a user needs be registered with the project, ''i.e.'' a user session should exist in the database. Such an entry is automatically created in the database the first time the user submits a change in the project, for example when editing the user's details in the ''Settings'' page, or simply by authenticating if the user has a login. Also, the user must have `TICKET_MODIFY` [TracPermissions permissions]. '''Note:''' See [http://pacopablo.com/wiki/pacopablo/blog/set-assign-to-drop-down Populating Assign To Drop Down] on how to add user entries at database level '''Note 2:''' If you need serious flexibility and aren't afraid of a little plugin coding of your own, see [http://trac-hacks.org/wiki/FlexibleAssignToPlugin FlexibleAssignTo] (disclosure: I'm the author) '''Note 3:''' Activating this option may cause some performance degradation, read more about this in the [trac:TracPerformance#Configuration Trac performance] page. == Preset Values for New Tickets == To create a link to the new-ticket form filled with preset values, you need to call the `/newticket?` URL with variable=value separated by &. Possible variables are : * '''type''' — The type droplist * '''reporter''' — Name or email of the reporter * '''summary''' — Summary line for the ticket * '''description''' — Long description of the ticket * '''component''' — The component droplist * '''version''' — The version droplist * '''severity''' — The severity droplist * '''keywords''' — The keywords * '''priority''' — The priority droplist * '''milestone''' — The milestone droplist * '''owner''' — The person responsible for the ticket * '''cc''' — The list of emails for notifying about the ticket change '''Beispiel:''' ''/trac/newticket?summary=Compile%20Error&version=1.0&component=gui''[[BR]] ---- Leseempfehlung: TracGuide, TracWiki, TracTicketsCustomFields, TracNotification, TracReports, TracQuery