# Bug tracking system for a small team, with many projects

We are a small DevTeam of 4 programmers with about 15-20 projects to maintain. Our software mostly are small programs (<20k lines) for embedded systems. They are high specified and mostly have not the power to do anything they where not designed for. (Even if the users are trying, sometimes)

But also we have two main systems for several usages which are pretty big, some kind of operation system for a MCU.

It's pretty hard to keep all the details of every project in mind and therefore almost impossible to give good bug support. In particular when coder A gets a support ticket for software which coder B worked on mostly.

There are plenty of bug tracking tools to find, such as Mantis or Phabricator, but which would fit our requirement?

Thing is, the bug tracker:

• must support >20 projects, better no cap at all
• must run on Linux server or provided by dedicated hoster
• easy to understand for customer to register the bugs they found
• should not cost >30$/month The question is, which tool would you recommend? I hope we do not forget anything critically. Maybe you could tell about the mistakes you made while setting up your first bug tracker(In comments or beside your answer). ## migrated from programmers.stackexchange.comNov 18 '14 at 10:23 This question came from our site for professionals, academics, and students working within the systems development life cycle. • Consider also FogBugz by FogCreek. I am not sure about the cost though. I used it for a while at a former employer. – Marcel Jun 16 '15 at 6:45 ## 3 Answers Consider Redmine • It has no limit to the number of projects that it can host • It is free (open source, GPL v2) • The language used is ruby, and ruby app servers run on any host (I've run it on Mac, Windows, and Linux). There are many cloud hosts for ruby if you should want to deploy it there. • When set up right (as in, you can set it up to be difficult to use if you wanted to), it is very easy for end users to enter the information • It features role and workflow based access for fields. For example, an end user (role) may have the privileges to create a new issue, fill in the title and description and severity. Then a project owner can fill in the priority, and assign it to a given developer to work on (who can change the state from 'assigned' to 'working' or 'fixed' or 'norepo' - something that a customer can't do), and so on. See Administration: Roles & permissions and Administration: Workflow for more on this. • It is actively developed and maintained (see the roadmap for what future releases are intending to fix - and yea, Redmine is tracked with Redmine - thats core functinality) • It is a well known system. You can find consultants who will write custom plugins for you if you want to. There are also books out there on the system if you should want a deeper guide than the wiki for administration or writing plugins. • The schema is not obscufated (a bit contorted in places (custom fields - but then, its still probably the most reasonable structure) - but not obscufated). If you want to, you can write reports against the raw database without difficulty (note: don't do modifications against the database if you can avoid it (use the API instead), unintentionally breaking the integrity of the database can confuse the application) I've configured and used Redmine before, as long as you aren't modifying the core application (the company was), updates from one version to the next are very easy. A gotcha with it is make sure you move from webrick appserver to something more production ready (webrick is single threaded... it works, but if you've got a query like "browse all the commits in a huge and old repo" it can take time and that single thread, well, no one else gets any time until it completes). • what's your suggestion for a production ready ruby server? – eis Nov 19 '14 at 9:35 • @eis I've used Passenger before, though really, any of the approaches mentioned in Step 9 - Test the installation are good: "Use one of the many other guides in this wiki to setup redmine to use either Passenger (aka mod_rails), FCGI or a Rack server (Unicorn, Thin, Puma, hellip;) to serve up your redmine." – user450 Nov 20 '14 at 5:08 I'm a bit surprised no one has mentioned JIRA yet. It's very widely used so it's familiar to many. Answers to your requirements: must support >20 projects, better no cap at all must run on Linux server or provided by dedicated hoster easy to understand for customer to register the bugs they found • JIRA is widely used for this. My view is that it is easy in day-to-day use. Some more advanced features can be counter-intuitive though. should not cost >30$/month

• For 1-10 users, Jira Starter license is 10$/year. Cloud hosting for 1-10 users is 100$/year.

The thing is that after you have more than 10 users, price climbs up quite rapidly (IMO). If you're a project with 1-10 users, licensing is quite friendly.

I was recently in search of a system with similar requirements. I came across osTicket. It's free and is platform independent with no restrictions. It can be hosted on your server, or, they provide a very inexpensive ($9 to$16 per month) hosting solution. I haven't started using it yet, because I can't decide how I want to run it. It also comes as an add on package for the Network Attached Storage (Synology NAS) I use. It's definitely worth a look.