/
BIRT Report Module Project Timeline

BIRT Report Module Project Timeline

Project schedule


 

  1. Rendering.

  2. Integrate BIRT and Report modules.

  3. Complete integration of BIRT Runtime Release and BIRT module.

  4. BIRT ODA Plug-ins.

  5. Additional RESTful web services implemented.

  6. Testing.

  7. Documentations.

BLOCKER

DESCRIPTION

BLOCKER

DESCRIPTION

 


 

Release Milestones


The BIRT 2.0 Release will follow this milestone schedule. 

  • Apr 23 - Student Acceptance

  • Apr 24 - Community Bonding 

    • Getting Familiar

    • Design / Architecture

  • May 21 - Coding Begins

    • Report Renderer

    • BIRT ODA Plugin (getting familiar, simple dataset integration)

    • Data integration

    • API Integration - BIRT Module + Reporting API

    • Edit existing BIRT Module pages to integrate more tightly with reporting module

  • Jul 13 - Midterm Evaluation

    • Edit existing BIRT Module pages to integrate more tightly with reporting module

      • Allow user to create a new report definition

      • Allow user to edit existing report definition

      • Allow user to delete a report definition (and all dependencies)

      • Allow user to download dataset as sample CSV

      • Allow user to download sample .rptdesign file

      • Allow user to upload a new report design to a report definition

      • Allow user to run a report 

      • Allow user to run a report with parameters

      • Allow user to run a report with a cohort filter (?)

  • Aug 20 - Pencils Down

 
 
Getting Familiar (April, May)


  • Read the documentation

  • Learn and use tools (SCM, Deploy, Testing, etc)

  • Checkout the codes (OpenMRS Trunk, BIRT Report Module, Reporting Module, REST Module, and Webservices.rest Module) and give a look

  • Investigate Eclipse BIRT

  • Investigate bugs, tasks and features related to modules in JIRA (BIRT, REPORT, REST, RESTWS)

  • Continue fixing bugs

  • Bond with the community

Design


  • BIRT 2.0 architecture 

  • Bug fixing

Could you elaborate on this ...

Report Renderer


  • Implement a report renderer that can take a report definition and a BIRT report design file or template and produce rendered outputs in appropriate format. [Completed]

BIRT ODA Plugin 


  • BIRT ODA Plugin

Could you discuss what you worked on here.  There were a lot of blockers (lessons learned).

Data Integration


  • Allow user to design a BIRT report using a CSV data source (local filesystem) (HIGH)

    • Get that working within OpenMRS using a static file on the filesysystem

    • Have the BIRT module write the CSV file to the filesystem and use the BIRT Report Design API to rewrite the data source URL

  • Allow user to design a BIRT report using an XML data source (remote file) and get that working within OpenMRS (HIGH)

    • Get that working within OpenMRS using a simple remote file you can link to any file, anywhere (e.g. REST web service, RSS feed) 

    • Get that working within OpenMRS using a dynamic data file provided by OpenMRS (e.g. an XML file provided by the BIRT module)

    • Install the reportingrest module and make sure you can get a response from one of the REST resources

    • Create a report that uses the reportingrest module to query an evaluated dataset from openmrs

    • BIRT might require authentication in order to access the reportingrest module

  • Allow user to download a sample data set in multiple formats CSV, XML (to be used when designing a report)

    • This will allow users to design reports in BIRT to 

  • Provide tools to facilitate authoring and previewing a report within an external BIRT report designer.

    • Allow passing OpenMRS Report Data into BIRT

    • Use webservices (via REST).

    • Use data source (via JDBC).

    • Convert the report data to text files (XML, CSV).

    • Use our own ODA data source

    • Scripting data sources.

Midterm Evaluation


  • Demonstration and Presentation 

UI and Query Text


  • Rewrite BIRT module pages/controllers/service to use Report Module API (MED)

    • Allow user to List, Edit/Update, Create, Preview and Delete reports with BIRT report designs

      • Create BIRT Content (Completed)

      • Edit Report

        • Include link to download dataset as csv

        • implement downloadDataSet controller class to display details for a report definition including datasets

        • Include link to download report

      • Preview Report

      • Delete Report

      • List Report Definition

  • Improve the query for the modifyReport(...) in the BirtTemplateRenderer class

  • Testing, Demonstration and Progress Report  

Use Reporting Module, Renderers, Enhance or Re-create BIRT ODA Plugin 


  • Allow user to render a report in multiple formats (pdf, doc, xls)

    • Create a BirtTemplateRenderer (abstract class) that handles the render method

    • Create a BirtPdfTemplateRenderer, BirtDocTemplateRenderer (subclasses of BirtTemplateRenderer) 

  • Implement everything including any BIRT library dependencies in a module so that someone who wishes to use the BIRT module does not need to install any additional dependencies.

  • Allow user to design a BIRT report using a simple ODA plugin that takes a URL for an openmrs instance and prompts the user for a dataset definition and cohort definition (MED)

  • Allow user to upload a new report design and create the appropriate objects from that (e.g. ReportDefinition, ReportDesign, etc)

    • We might need to prompt the user for a name

    • User should then be able to edit from within the Report Module pages (eventually we'll provide List, Edit and Delete functionality)

Web Service


  • Modify existing services where necessary

  • Implement new RESTful web services

  • Testing, Demonstration and Progress Report

Comprehensive testing


  • Comprehensive testing

  • Demonstration and Progress Report