Issue Tracking Systems



Yüklə 326,38 Kb.
səhifə7/15
tarix14.10.2017
ölçüsü326,38 Kb.
#5019
1   2   3   4   5   6   7   8   9   10   ...   15

3.4Trac


Homepage: http://trac.edgewall.org/

License: Open source

Implemented in: Python

Demo site: http://www.hosted-projects.com/trac/TracDemo/Demo


Trac is maybe best known and most used open source (and free) issue tracking system, next to Bugzilla. It offers a very intuitive and fine looking user interface, close junction with version control systems (mostly Subversion), revision control, and wiki for content. Due to these factors, it is widely spread in the open source community and used in many small teams and companies. There are many sites (for example Assembla.com) which offer Trac & Subversion hosting for free.

Installation


Trac is distributed as a zipped package. Before installation of Trac itself, the user has to manually prepare the running environment and install:


  • Python;

  • Genshi (XML templating language for Python);

  • SetupTools (collection of enhancements to more easily build and distribute Python packages);

  • Database (Sqlite, MySQL or PostgreSQL);

  • A web server with Python module support (most common is Apache HTTPD server with mod_python module) ; and

  • A subversion (or other supported version control system).

After this, the user unpacks the downloaded package to the chosen directory and runs a Python-based Trac installer.


After installation is finished, the user configures Trac using a command line utility called “trac-admin”. All changes in configuration need to be made by this utility, although for performing the most common admin tasks there is a possibility to install and use the plug-in “webadmin.”

[TSO-EDG]


User interface


The Trac user interface is an excellent example of usability and simplicity. You can reach any target within three clicks of the mouse. There are not too many buttons and options, so even beginners can quickly understand how to use it.
The welcome page is a standard wiki page and can be used for project documentation. The whole system is based on wiki, so a user quickly understands that t is quite easy to hyperlink information between an issue database, revision control, and wiki content.

1 - welcome screen (login).png

Screen shot : Trac use-case - Project welcome page (Wiki)



2 - new ticket.png

Screen shot : Trac use-case - Add new ticket


3 - view tickets.png

Screen shot : Trac use-case - View tickets (select searching criteria)



4 - my tickets.png

Screen shot : Trac use-case - List of tickets


5 - view ticket.png

Screen shot : Trac use-case - View/Edit ticket details


Ticket system


When a new environment is created, a default workflow is configured in trac.ini. This workflow is the basic workflow (see diagram below).

This workflow model can be changed by overwriting trac.ini with other workflow model files prepared in advance or customized by a direct edit of this file.



trac.png

Figure : Default Trac ticket workflow



[TSO-EDG]
Trac also supports adding custom fields to the tickets by editing configuration file trac.ini; however, any tickets created before a custom field has been defined will not have a value for that field and it is necessary to manually update the database.

Projects management


Trac does not support management of multiple projects; therefore, having its own instance for each project is the only real working solution. This way, however, the possibility to monitor all projects at once, to manage tasks common for multiple projects, and others is lost.

Analysis and monitoring


In basic installation, Trac only supports basic monitoring functions. You can only split requests between releases and see how many requests have already been accomplished; however, there are plug-ins which, based on added custom fields, support additional monitoring.


Source code management systems integration


Trac natively supports version control systems Subversion, Git, Mercurial, Bazaar, and Darcs. For other systems, there are plug-ins available or can be made.

More details at http://trac.edgewall.org/wiki/VersioningSystemBackend.



Accessibility


Trac itself does not have any RPC support; however, there is an XML-RPC plug-in for Trac version 0.10 and higher, but there are two problems:


  1. The first problem is that this plug-in is not included in the basic installation package and its installation requires some time.

  2. The second problem is that the plug-in is still under development and its API still seems to be changing.

If one cannot count with presence of plug-in and cannot depend on API, then it is difficult to develop any remote Trac calling applications. It is difficult, but possible. For example, the Mylyn plug-in for Eclipse solves this problem by parsing HTML code of Trac UI and calling its HTTP POST/GET methods.



Extensibility


Due to its popularity in the open source community, a wide range of plug-ins and extensions exists for integrating Trac with 3rd party applications, extending functionality, or just simplifying common tasks. There are two big resources for such extensions:


  • http://trac-hacks.org/ - extensions made by the Trac user community

  • http://trac.edgewall.org/wiki/PluginList - officially supported extensions



Conclusion


Trac does not try to be a complex development and project management tool. It concentrates on one thing: issue tracking, and does the job very well. In basic installation, it does not provide much other functionality; however, there are plenty of extensions, which make Trac a more complex tool. All things considered, Trac still remains a tool designed for use in single project environments.
[TSO-AND] [TSO-EDG] [TSO-KOL] [TSO-SMA] [TSO-STA]



Yüklə 326,38 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10   ...   15




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə