One of the most common issues that we hear from customers needing an embedded reporting tool for their application is whether it makes more sense to internally develop a “home grown” custom-built solution based on an open source product, or adopt an outside commercial solution to OEM into their product. The answer to that question is not always immediately obvious. In this article, we’ll cover the major points that you should consider when making a decision.
Most ISVs creating a new product realize at the beginning that the product will not be very useful unless customers can see summarized or detailed output from it, usually in the form of a visual report or dashboard. Initially, this might be a few simple tables and charts created with available open source tools that engineers find on their own, or develop from scratch, and use as a framework to create basic browser-based reports.
However, after they roll out their solution, they soon find that they are constantly being asked for customized, “one-off” reports for specific purposes. Now, much of the engineering time that should be spent on innovation is instead spent on creating reports one-by-one from a user request queue. These reports are also often hard-coded in JSP pages – beneficial only to the user or customer who originally asked for it.
Next, users and customers began to ask for other reporting requirements such as scheduled reports, various formats such as HTML, PDF, Excel, or even XML so that users can import data into other applications. Then the sheer number of report requests could increase to a point where the reporting system becomes overwhelmed, which necessitates the need for a scalable architecture. At this point, the demand for reporting is far beyond what the ISV imagined with their home grown, open source solution, which leads them on a search for a better solution. The bottom line is, what started off as a simple project could quickly end up as a large, complex, hard-to-use, hard-to-manage, feature-flooded, cross-environment system — in other words, a maintenance nightmare.
Nevertheless, sometimes the most logical decision for a company is to build their reporting solution themselves if they have a vast amount of resources or complex needs, as companies like Google have decided to do.
Consider the following points when making your case either way:
(See detailed explanations about each point in our white paper.)
1) Development timeframe and resources.
2) Feature set.
4) Importance of reporting in your application.
5) Importance of indemnity.
6) Scalable design.
7) Long-term cost.
For more information about the JReport Product Suite, or to get an evaluation copy of the software, please visit Jinfonet.com.