Top | Web home | SourceForge home SourceForge.net Logo
$Id: //guest/paul_dymecki/mondrian/doc/roadmap.html#1 $
(C) Copyright 2002, Kana Software, Inc.
Author Julian Hyde

Mondrian roadmap

1. Contents

  1. Contents
  2. Modification history
  3. Introduction
  4. Components
  5. Specifications
    1. Server
    2. Html pivot table
      1. Basic drill through
      2. Chart button
      3. Actions
      4. Drill anywhere
    3. Html servlet
    4. Charts
    5. Web test harness

2. Modification history

Date Revision Author Comment
March 12th, 2002 1 Julian Hyde Created

3. Introduction

This is a list of features we propose to deliver in future releases of Mondrian. Each feature is linked to a high-level description. Complex features will have more detailed specifications in a separate document.

Component designs are added to the architectural overview as necessary. Short term, you can put designs into an appendix.

It occurs to me that we haven't really defined who our customer is. Our main customer, I would contend, is someone using a web application (such as the sourceforge usage chart, http://sourceforge.net/project/stats/?group_id=35302). In some cases we will deliver apis and servlets to a second kind of customer, a developer. But almost every feature should have a deliverable -- perhaps just a sample application -- which can be used by the web-user.

4. Components

Components/features for release 1.0 ('must have' unless otherwise specified)

Components in a later release:

5. Specifications

5.1. Server

See architectural overview.

5.2. Html pivot table

Sean, please complete this.

Does the pivot table support cell-selection in this release?

5.2.1. Basic drill through

Use case: User runs a query in the pivot table. Presses 'show data' button. An HTML table is displayed, containing the rows of the fact

If the pivot table supports selection of cells, rows or columns, the rows shown should relate only to selected cells.

Julian: It's not hard to implement the server-side part of it (given a set of coordinates, e.g {([Time].[1997], [Store].[USA]), ([Time].[1998], [Store].[USA].[CA])}, return a select statement/parse tree of a select statement/jdbc result set for the fact table rows which went into those cells). The hard part is to incorporate it into the ui in a non-trivial way. (Which end user wants to see a table with columns headed REGION_ID, TIME_ID, UNIT_SALES, and a bunch of surrogate keys?)

5.2.2. Chart button

Use case: User runs a query in the pivot table. Presses 'pie chart' button. Data is rendered in pie chart.

5.2.3. Actions

Tony, please specify.

Julian: These come under the aegis of the pivot table until we have an independent controller. It should be easy to shoehorn their metadata into the catalog (of which FoodMart.xml is an example, and Mondrian.xml is the specification).

5.2.4. Drill anywhere

Use case: User runs a query in the pivot table. They choose a column (for example, day of week) which is not a dimension, and drill on it. (Behind the scenes, the server is creating a dimension on the fly.)

5.3. Html servlet

Runs an mdx statement, renders the results as an html table.

Sean, please complete this. Sketch out the major components (reference javadoc if these are classes), and describe the sample code we will deliver, list preferences.

5.4. Charts

Tony, please complete this.

Possible deliverables:

What formats shall we support in 1.0? We must do either JPEG or GIF.

5.5. Web test harness

Sean, please complete this.

 

End $Id: //guest/paul_dymecki/mondrian/doc/roadmap.html#1 $