The series of SaaS tools for software development continues this time with Issue and Bug Tracking tools. As in previous posts in this series (on ALM, Test Management, and Continuous Integration tools) we are only focusing on those tools that are available on the cloud, also called SaaS, Software as a Service. However, this time we are specially interested in open-source issue and bug tracking tools, and in what kind of licenses they use.
Issue and Bug Tracking tools
Issue and bug tracking tools are one of the cornerstones of software development together with source repositories, and they often go together, see GitHub. Still, quite a few of issue and bug tracking tools are standalone and can link to different source repositories. Issue and bug tracking tools started as a way for developers to keep track of the bugs they encountered as they were developing software, and users were using it. Now, the popularisation of open source and open development has brought these tools to the public, who can also report bugs and be part of the SQA process. Thus, easy to use tools are more important now than ever.
Some of these tools have been designed to control the quality of other services or tools, and not only software development. They control issues in ticket-based systems, as in software development, in which users or customer relations create and follow up problems found in the software, service, or tool.
Some of the most used issue and bug tracking tools are open source, but not all of them are trying to monetize in the SaaS model. Some of the solutions are developed by individuals that had an itch to scratch. But not only individuals, the origin behind bug-tracking tools can be traced back to institutions that needed one: Mozilla and Bugzilla, Atlassian and Jira, Fog Creek and FogBugz…
SaaS and open source tools
In this section we focus on the open source tools that have a SaaS offering, either by their own community or foundation or by a third-party. The nature of open-source eliminates lots of friction when people want to sell a service based on OSS. Entrepreneurs can build a business around it, and contribute back to the community. As well, the same nature of OSS, encourages people and companies to download the software and install it on their own server, with no major investment apart from their own time.
MantisBT and MantisHub
MantisHub is the main cloud offering for Mantis. MantisHub is child of Victor Boctor, the lead developer of Mantis and software architect for Microsoft. MantisHub is also supported by several of MantisBT contributors. This team behind MantisHub is very important to give confidence to people before choosing MantisHub.
Per the license, improvements done to the source code of MantisBT at the MantisHub company, need to be open source. The fact that there is a company with a product based on MantisBT is important. The company will need to improve the product to seek for customers, and that will require to keep the code updated at MantisBT.
Open-source Ticket Request System
OTRS is an established player in ticket systems. It is very flexible and it is used in very different areas (development, healthcare, education,…). Companies use OTRS as help-desk tool, and to comply with different service level agreements with the their customers.
OTRS has released the source code under the Affero GPL. As well as the open source version, OTRS offers its clients support packages on-premise and on the cloud. The costs of the commercial version depends on the number of agents using the system to manage the tickets.
Brimir is relatively a newcomer to the helpdesk software and its strength is its simplicity and its email interaction. Brimir has opted for openness in their offering under a SaaS solution. It offers three tiers, from the Free tier (1 agent) to the Business tier (10+ agents and $27/month).
It has released its source code under the Affero GPL and it is slowly increasing its community.
trac is one of the most advanced bug tracking software in the market, for developers by developers. As well, it is almost an ALM due to its integration with version control systems and its integrated wiki. These two factors have led to the creation of Apache Bloodhound, that has forked from trac, and that focuses on better user experience for novices and mobile users.
trac is distributed under a modified BSD license, which gives lots of freedom to modify, distribute or comercialice the software. Apache Bloodhound has re-licensed their fork of trac under the Apache license. Being under the Apache foundation gives the Bloodhound project an ready infrastructure to raise money and support the development. Apache Foundation has established processes and documents for sponsorship deals and collaborations.
Fossil and Chissel
Fossil is an source management tool, where developers keep the source code, that is tightly integrated with a bug tracking system, and a wiki. It has advanced features to make like easier for bigger teams of developers. D. Richard Hipp, the guy behind SQLite, is behind it and released it under a 2-clause BSD license.
One Fossil user created a web front-end, Chisel, for users to create their own Fossil projects in the cloud, without needing a host. The service is free and the source code of the front-end is released under the ISC license. Chisel is currently free for users to host their projects.
Phabricator by Phacility
Phabricator started like an internal tool developed by Facebook staff to ease the pain of code reviews (before some code is approved, it is reviewed by a peer). In Facebook the tool started to grow bigger and bigger as features were added, bug tracking being one of them. Eventually, the tool and its components were open sourced and its main developer left Facebook to work solely in Phabricator.
Phacility is the company by the same developers that offers Phabricator on the cloud. $20/month per user gives you a fully supported solution.
The Bug Genie
The Bug Genie is an issue tracking solution powerful enough to be a project management tool. Its origins are in the open source world, as it was used in house to keep track of bugs of Linux distribution. A Norwegian company is behind it and offers a great deal of support and training options. Still, there is an open source version of the software that does not contain certain proprietary features (e.g., mobile view). The open source version is released under the Mozilla Public License v.2.0.
Non SaaS and open source
Some popular open source tools don’t have available deployments in the cloud. Main examples are Bugzilla by Mozilla (under the Mozilla Public License), Request Tracker by Best Practical (under the GNU GPL v2) and GNAST by GNU (under the GNU GPL v3.0)
We started this post trying to find out if there were any trends in open source software regarding the license used for software that could be used in the cloud. From this analysis, most, if not all, of the licenses are ok with using open source applications in the cloud.
Traditionally, there have been two main kinds of open source licenses: those that give freedom to the developer to adopt the code as they see fit (e.g. not re-distributing the source code and mixing it with code under different license), and those that maintain the freedom of the user (i.e. in the GNU sense).
The first kind of license gives the developer the freedom to use the source code as it is. With this license the code can be part of a close source solution. The main restriction usually is the copyright of the software, it still belongs to the original developer unless separately agreed . From the OS SaaS applications, the Apache license is the most common one (used by Phabricator and Bloodhound). It is well tested but it has lost comprehensibility in favour of legal up-standing. For people less concerned about the future use of the source code, and who do not want to read 20 pages of legalese, a BSD license is another option.
The second kind of license, often called copyleft, implies that if you link your software to a copyleft license, your software will need to follow the same copyleft license, i.e. the license is viral. The best representative of this the GNU GPL, now in its version 3.0. However, the cloud paradigm has changed the relevance of the GPL. Applications are not distributed, they are offered in the cloud, and thus companies behind those offerings do not have to comply with the license, be it copyleft or not. The GNU people noticed it and released the Affero GPL license (AGPL), which few of the tools shown here use (Brimir and OTRS). This license adds a provision where cloud “distributors” have to release the source code for its users:
“if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software.”
None of this affects the software created using the SaaS tools reviewed in this post, nor in this series. The fact that you use OSS for your development toolchain does not make your software OSS. However, Saas software under the AGPL may give more confidence to companies as the source is available for inspection.
When it comes to companies developing OS SaaS we recommend choosing between Apache or AGPL. The decision should be based whether the company wants the source code to give freedom to the users (AGPL), or to the developers (Apache). In any case, both licenses allow for businesses to be built around the OS SaaS; e.g. training, support, hosting, cloud, and development.