"Design is not just what it looks like and feels like. Design is how it works. "
The Business Intelligence and Reporting Tools (BIRT) Project is a highly successful open source business intelligence (BI) project developed and released as part of the Eclipse ecosystem. In this article, we look at the genesis of the BIRT project, why Actuate chose the open source development model, and the benefits that this project brings to the BI user community.
Why a New Project?
While some projects are created for the sake of the technology, most projects are instituted and refined to solve a problem. In the case of BIRT, Actuate did not wake up one morning and say, “We want to develop an open source reporting tool.” Prior to BIRT, Actuate provided many commercial BI tools. From its market research and prospective customer analysis over fifteen years, Actuate knows that its chief competitor is the home-grown solution developed by information technology staff. Such applications typically use Java Server Page (JSP) and other Java server-based technologies to connect to a database or warehouse to provide end users with data for decision making.
The home-grown development approach is not necessarily cheaper in the long run. It does generally require less initial capital than an investment in an off-the-shelf, vendor-supplied product. Another persuasive advantage to using this approach is the wealth of in-house developer expertise available to construct these internal, Java-based solutions.
While this type of application has many benefits, it is frequently inflexible, difficult to maintain, and even harder to extend. As user requirements evolve over the project lifetime, changes to the application frequently become time-consuming and expensive. Actuate recognized an opportunity to build a product with benefits similar to a home-grown solution that can also mitigate the disadvantages. The BIRT project was created to fit this market segment.
BIRT is based on the popular Eclipse integrated development environment (IDE) used to build and deploy BI applications in a Java/J2EE environment. The goal of the BIRT project is to create a set of tools for data analysis and reporting that are simple and easy to use, while supporting extensibility and modularization.
The main tool is a report designer built into the Eclipse platform that generates XML-based report designs. These designs support access to many data sources, which can be joined, cubed, or mined for data. The designer is easy to use, yet offers many advanced features, such as crosstabs, data cubes, and extensive charting capabilities. Figure 1 provides screenshots of BIRT.
Figure 1: BIRT Screenshots
The designer was developed to support a diverse group of developers, from the business analyst to the hard-core Java developer. This rapid-development tool allows many reports to be built in hours instead of days, yet offers the capability to perform many advanced customizations and integrations in the existing infrastructure. Upgrading a BIRT-based BI application can be abstracted to the level of an analyst developer.
Once a report is complete, it can be deployed using open source or commercial BIRT technology. The open source BIRT project includes a rich set of APIs and an AJAX-based Java servlet Viewer, either of which can be used for deployment. The servlet-based Viewer application provides compatibility with existing deployment environments and supports multiple integration options.
BIRT also offers highly extensible features, providing many ways to expand and enhance the tool, such as adding new custom data sources, output formats, and chart types. These extensions are modular and can be deployed to a BIRT-based environment without changing any system infrastructure components.
The BIRT project had its first major release in the summer of 2005. By the end of 2008, BIRT had garnered over six and one-half million downloads. The BIRT website includes an introduction, tutorials, downloads, and examples of how to use BIRT. Figure 2 shows the exponential growth of BIRT downloads.
Figure 2: Number of BIRT Downloads
In addition to downloads, BIRT has one of the most active newsgroups in the Eclipse ecosystem, with approximately 500 posts per month. The BIRT Exchange website is a major hub for the BIRT community and has seen considerable growth in the two years since its launch. The site has over 19,000 members, receives over 6,000 daily views and more than 32,000 monthly visitors, and processes over 1,200 forum posts per month.
Why Open Source?
Actuate choose to develop BIRT using the open source model as the most effective way to generate awareness and to build a user community. In today’s market, it is difficult to launch a new product and achieve visibility with potential users. Open source is a superb vehicle for generating product awareness. Users are much more likely to download and experiment with a readily available, customizable, open source tool than a proprietary product. Prospective customers are more inclined to select a product that they have already used and understand well, rather than one they have not.
Companies seldom produce software for altruistic reasons. Publicly-traded companies must show a profit to survive and fund the developers who create the technology. Selling products and services is the predominate way that a software company makes money. In the open source world, monetizing product development work is a complex task and varying strategies are employed.
Some companies provide an open source, free product that allows users to develop content in a development environment, but offer no deployment options or the deployment model is restricted in some way. This type of product is often perceived as a bait–and-switch tactic by developers, which often alienates them. On the other hand, if a company’s monetization strategy depends on extended features, providing many free features can reduce the company’s ability to earn financial compensation for a successful product.
Actuate’s approach is to have open source BIRT support the core needs of application developers who want to incorporate data-driven content in an application. A BIRT application must be fully functional, unrestricted, and deployable. Actuate also offers commercial products that deliver value-added improvements in the design and deployment environment to improve productivity, add scalability, and enhance the end-user experience. In this business model, the community is a valuable asset.
The communities that develop around open source and commercial projects can be quite diverse. A successful product attracts a vibrant community of experts, who can provide example content, participate in technical discussions, develop products, and provide services for users. An open source community offers increased product visibility and an extended pool of expertise to support peer-level code reviews, contribution testing, bug reporting, and provide other feedback and information on how to develop and extend the product. Products with low community involvement generally do not succeed or grow at a significantly slower pace.
Actuate understands this fact and has made a substantial investment of staff and other resources to facilitate community growth. Actuate has developed http://BIRT-Exchange.org to support community interaction, hired and consulted experts with experience in building open source communities, and committed substantial staff resources, including a full-time community manager, to assist users in learning about the project and getting the information and resources they need to be successful using BIRT.
Benefits of Open Source Development Model to Users
A successful, vibrant open source community with a broad knowledge base and deep pool of expertise offers substantial benefits to the users of the software. Extending beyond the ability to download and alter the source, active community participation leads to improved quality, ease of use, greater extensibility, broader integration, and reduced turn-around time for feature requests.
This scenario has been very true for the BIRT project. With community sites and other projects incorporating the tool, the pool of expertise has grown dramatically in a short period of time, offering substantial benefits to the user community. Prospective users typically have a wealth of information and personnel at their disposal, which substantially reduces the learning curve and shortens development and deployment times.
With open source many developers are looking over the code, which reduces the amount of errors and produces a product with much better quality. Error fixes and feature requests are typically dealt with in a faster manner than a traditionally developed product. This process reduces turn-around time for required functionality, which increases the adoption rate and general satisfaction with the product.
Another benefit of the open source model is the way the product is developed. In order to allow multiple teams to work on a project, modularity and extensibility are not idealized goals, but are the tenets on which the project is built. When extensibility and modularity are implemented correctly, many disparate teams can work on various aspects of the product simultaneously. Not only are more features brought into the product, but end-users have a powerful extension framework for their own personal development and customization needs.
For these reasons, BIRT chose the Eclipse framework. The end result is that the user community has been actively involved in extending the feature set and the BIRT product has been incorporated in many additional products and infrastructures. All of this collective experience has vastly increased community awareness and expertise. Products like BIRT typically work in conjunction with other products and these integration scenarios have become very powerful, binding user communities together, and expanding knowledge bases through cooperative development.
As the community continues to grow, the number of feature requests and implementations submitted increases. The new features to add are typically decided by the community, ultimately producing a product that is much more in line with what prospective users want. Requests are usually directed at key aspects of the product, such as general usability, which when addressed, benefit the entire community. This process decides the product direction in both near and long-term perspectives.
Actuate choose to create the open source Eclipse BIRT project to meet an important, practical business need and has worked successfully to build a strong, active community around this project. While the project continues to evolve, both the community and Actuate have benefitted. These benefits continue to grow exponentially as the user community continues to develop and grow.
The pivotal factor for the success of the project has been the community of developers and users world-wide, who are constantly providing feedback, code, and expertise, which continues to improve and grow the product. Actuate knows that continuing to nurture this community will ensure the continued success of BIRT.