Project Plan For Business Intelligence and Reporting Tools (BIRT), version 4.2

Introduction

This document lays out the feature and API set for the next major feature release of the Eclipse BIRT project after 3.7, designated release 4.2 and code-named Juno. This release is occurring simultaneously with the 3.8 release. The 4.2 release release contains significant new feature work, while the 3.8 release focuses on stability and bug fixes.

Plans do not materialize out of nowhere, nor are they entirely static. To ensure the planning process is transparent and open to the entire Eclipse community, plans are posted in an embryonic form and then revised from time to time throughout the release cycle.

The first part of the plan deals with the important matters of release deliverables, release milestones, target operating environments, and release-to-release compatibility. These are all things that need to be clear for any release, even if no features were to change.

The remainder of the plan consists of plan items for the projects under the Eclipse BIRT project. Each plan item covers a feature or API that is to be added, or some aspect that is to be improved. Each plan item has its own entry in the Eclipse bugzilla database, with a title and a concise summary(usually a single paragraph) that explains the work item at a suitably high enough level so that everyone can readily understand what the work item is without having to understand the nitty-gritty detail.

Please send comments about this draft plan to the BIRT Developer mailing list.

Release Deliverables

This release of BIRT will focus on providing the same downloads as BIRT 3.7.

Table of Contents

Release Milestones

The BIRT 4.2 Release will follow the Juno simultaneous release milestone schedule.

For information about new features assigned to each milestone please refer to the bugzilla database. The bugzilla database will be updated on an ongoing basis as the plan progresses.

M18/16/2011
4.2 M1
M29/27/2011
4.2 M2
M311/08/2011
4.2 M3
M412/13/2011
4.2 M4
M501/31/2012
4.2 M5
M603/20/2012
4.2 M6
M705/08/2012
4.2 M7
RC105/22/2012
4.2 RC1
RC205/29/2012
4.2 RC2
RC306/05/2012
4.2 RC3
RC406/12/2012
4.2 RC4
GA06/27/2012
Juno GA

Table of Contents

Target Environments

In order to remain current, each release of an Eclipse project targets reasonably current versions of underlying operating environments and other Eclipse projects on which it depends.

Most of Eclipse, and all of BIRT, is "pure" Java code and has no direct dependence on the underlying operating system. For BIRT, the chief dependence is on the Eclipse Platform, Graphical Editor Framework (GEF), Modeling Framework (EMF), and on the Java 2 Platform that runs it.

The Eclipse BIRT 4.2 release depends on the following compatibility stacks:

BIRT 4.2 Reference Stack for Java SE 7

  • Java SE 7
  • Eclipse Platform Runtime Binary 3.7, 3.8, 4.2
  • Graphical Editor Framework (GEF) Runtime 3.7
  • Eclipse Modeling Framework (EMF) 2.7
  • Data Tools Platform Project (DTP) 1.10
  • Web Tools Project (WTP) 3.3

BIRT 4.2 Reference Stack for Java SE 6

  • Java SE 6
  • Eclipse Platform Runtime Binary 3.7, 3.8, 4.2
  • Graphical Editor Framework (GEF) Runtime 3.7
  • Eclipse Modeling Framework (EMF) 2.7
  • Data Tools Platform Project (DTP) 1.10
  • Web Tools Project (WTP) 3.3

The Eclipse Platform and BIRT run in a variety of operating environments. Testing is focused on a handful of popular combinations of operating system and Java 2 Platform; these are our reference platforms. Eclipse BIRT undoubtedly runs fine in many operating environments beyond the reference platforms we test. However, since we do not systematically test them we cannot vouch for them. Problems encountered when running Eclipse BIRT on non-reference platforms that cannot be recreated on any reference platform will be given lower priority than problems with running Eclipse BIRT on a reference platform.

For BIRT 4.2, the project team plans to tests and validate the following reference platforms:

Eclipse BIRT Report Framework 4.2 and Eclipse BIRT RCP Report Designer 4.2 Reference Platforms
Operating system Processor architecture Window system Java SE
Microsoft Windows 7, 7 SP1 Intel x86 Win32 Oracle Java SE 6, 7
Microsoft Windows XP Intel x86 Win32 Oracle Java SE 6, 7
Red Hat Enterprise Linux 6.0, 6.1
Red Hat Enterprise Linux AS 5.0
Intel x86 GTK Oracle Java SE 6, 7

Eclipse BIRT Runtime 4.2 and Eclipse BIRT Charts 4.2 Reference Platforms
Operating system Processor architecture Window system Java SE
Microsoft Windows 7 Intel x86 Win32* Oracle Java SE 6, 7
Microsoft Windows XP Intel x86 Win32* Oracle Java SE 6, 7
Red Hat Enterprise Linux 6.0
Red Hat Enterprise Linux AS 5.0
Red Hat Enterprise Linux WS 5.0
Intel x86 GTK* Oracle Java SE 6, 7
SUSE Linux Enterprise Server 9 Intel x86 YaST* Oracle Java SE 6, 7
*Window system only required when displaying charts within SWT or SWING windows.


BIRT Application Server Reference Platform
Apache Tomcat 5.5.x, 6.0.16, 7.0.20
JBoss AS 5.0, 7.0.1
Oracle Weblogic Application Server 9.2, 10.3
IBM Websphere Application Server 6.1, 7.0, 8.0

BIRT JDBC Reference Platforms
MySQL Connector/J 3.x JDBC driver
Derby V10.5.1.1 JDBC driver
Actuate DataDirect JDBC drivers

Community Tested Operating Environments

Due to the finite resources available to the BIRT project, we would like to encourage the BIRT community to contribute to testing BIRT in operating environments other than those listed as target operating environments for the 4.2 release of BIRT and to share this information with the rest of the community. If you have been able to test BIRT in a non-targeted operating environment please take a few minutes to update this wiki page and report this information there. If you have encountered bugs during your testing, please report these in bugzilla.

Internationalization

Eclipse is designed as the basis for internationalized products. The user interface elements provided by the various Eclipse projects, including dialogs and error messages, are externalized. The English strings for BIRT are provided as the default resource bundles. Translations are provided with this release for French (fr_FR), German (de_DE), Spanish (es_ES), Japanese (ja_JP), Simplified Chinese (zh_CN), and Korean (ko_KR).

Table of Contents

Compatibility with Previous Releases

BIRT 4.2 will be compatible with earlier versions of BIRT to the greatest extent possible. The nature and scope of some of the key plan items for BIRT 4.2 are such that the only feasible solutions might break compatibility. In other regards, BIRT 4.2 will be compatible with 3.x, 2.x and 1.x. We also aim to minimize the effort required to port an existing plug-in to the 4.2 APIs.

Compatibility of Release 4.2 with Prior Releases

BIRT 4.2 will be compatible with prior releases of BIRT unless noted otherwise. The detailed compatibility statement is listed below. In this statement, "BIRT" refers to all BIRT components: BIRT Report Framework, BIRT Runtime, and BIRT Chart SDK.

API Contract Compatibility: BIRT 4.2 will be upwards contract-compatible with BIRT prior releases except in those areas noted in the Eclipse BIRT Migration Guide. Downward contract compatibility is not supported. In other words there is no guarantee that compliance with BIRT 4.2 APIs will ensure compliance with prior BIRT release APIs. Refer to general Eclipse document on Evolving APIs for a discussion on the kinds of API changes that maintain contract compatibility.

Binary (plug-in) Compatibility: The BIRT 4.2 plug-in framework will be upwards binary-compatible with prior BIRT release plug-ins except in those areas noted in the Eclipse BIRT Migration Guide. This means that plug-ins (including extension plug-ins) for prior BIRT releases will be upwards binary-compatible with BIRT 4.2 unless noted otherwise. Downward plug-in compatibility is not supported. In other words plug-ins for BIRT 4.2 will not be usable in prior BIRT releases.

Source Compatibility: BIRT 4.2 will be upwards source-compatible with prior BIRT releases except in those areas noted in the Eclipse BIRT Migration Guide. This means that source files written to use prior BIRT release APIs will successfully compile and run against BIRT 4.2 APIs. Downward source compatibility is not supported. If source files use new BIRT APIs, they will not be usable with an earlier version of BIRT.

Report Design Compatibility: BIRT 4.2 will be upwards report design compatible with prior BIRT releases except in those areas noted in the Eclipse BIRT Migration Guide. This means that reports created with prior BIRT releases can be successfully opened by BIRT 4.2 and upgraded to a 4.2 format.

Non-compliant usage of API's: All non-API methods and classes, and certainly everything in a package with "internal" in its name, are considered implementation details which may vary between operating environment and are subject to change without notice. Client plug-ins that directly depend on anything other than what is specified in the BIRT API are inherently unsupportable and receive no guarantees about compatibility within a single release much less with an earlier releases.

Table of Contents

Themes and Priorities

Continuing on the themes for previous releases of BIRT, the BIRT project's overriding release 4.2 theme remains extending the Eclipse platform to provide infrastructure and tools that allow application developers to design, deploy, generate and view reports within their applications. In this context,the BIRT project also adopts and supports key themes within the overall Eclipse planning process.

Support Eclipse 4.2 as Primary Workbench

Starting with Juno all Eclipse projects are required to use Eclipse 4.2 as their primary workbench, but also maintain and support an Eclipse 3.8 based deliverable. This theme calls for supporting Eclipse 4.2 as the primary workbench, which means that BIRT 4.2 needs to be built and tested using Eclipse 4.2. The theme also calls for supporting Eclipse 3.8, ideally by ensuring compatibility or alternatively by providing separate BIRT binaries.
  • Proposed

    • Support Eclipse 4.2 as primary workbench [366966] (target milestone: 4.2.0 RC2)

Compare KPIs Across Relative Time Periods

Being able to monitor and compare KPIs across relative time periods, for example number of units produced in the last 45 days or sales YTD versus Previous YTD, are common data visualization requirements. This theme aims to enhance BIRT with the ability to easily address such requirements.
  • Proposed

    • Support relative time period analysis [366907] (target milestone: 4.2.0 M6)

Maven Integration

The feedback from the BIRT community indicates that there is solid demand to "mavenize" the BIRT project. This theme calls for providing support for the Maven build infrastructure since its popularity is growing fast among Java application developers.
  • Proposed

    • better support for maven2 builds [258911] (target milestone: 4.2.0)

Calculated Measures Efficiency Enhancements

This theme aims to decrease the generation times for BIRT design containing crosstabs by providing a new, alternative approach to defining computed measures. With this new approach, just the computed measures included in the crosstab will be calculated at generation time, as opposed to calculating all measures part of the underlying BIRT cube powering the crosstab.
  • Proposed

    • Calculated Measures Performance Enhancements [366910] (target milestone: 4.2.0)

Option to Apply Filters After Computing the Totals

This theme aims to give BIRT authors the option to specify that the filters in a BIRT design should be applied after the aggregations are computed as opposed to before - which is the default option. The new option will make it possible to create designs that display unfiltered totals along with filtered detailed data. For example a report that is filtered to display just the data for two countries: USA and Canada, but the totals for all countries, thus allowing for percentage of total analysis.
  • Proposed

    • Option to Apply Filters After Computing the Totals [366911] (target milestone: 4.2.0)

Donut Charts

A donut chart is functionally identical to a pie chart, but has a blank center. The current theme aims to extend the rich charting capabilities of BIRT with support for donut charts.
  • Proposed

    • BPS38 - New Donut Chart Type [178313] (target milestone: 4.2.0)

Excel as Out-of-the-box Data Source

Spreadsheets containing business critical data are a fact of life in virtually any organization. The current theme calls for adding Excel as an out-of-the-box data source for BIRT.
  • Proposed

    • Excel as an OOTB BIRT Data Source [366908] (target milestone: 4.2.0 RC2)

Table of Contents

Appendix : Help Wanted

We welcome any contributions from the community towards the BIRT project. This help can be in the form of adding new functionality to BIRT, submitting bug fixes/enhancements to the current BIRT code and testing BIRT on new platforms.
Please refer to this bugzilla query for the list of enhancements that we need help on. For more information on how you can contribute to the BIRT project, refer to How to Contribute to the BIRT Project

Table of Contents

view raw xml of project plan
from project meta-data key "projectplanurl"