Pentaho Analysis Tool

27-April 2009 - PAT 0.2 Arrives

Sooo after months of waiting to see what we've been up to, PAT (pentaho analysis tool) 0.2 finally hits the shelves.
First we want to say a few words why we are doing this project:
JPivot is the current pentaho analysis client. It can do some stuff but is not very user friendly and lacks needed functionality. In other words we were not happy about the technology its based on, thats far away from state of the art and doesn't fit in the new AJAXified Mantle GUI of Pentaho very well. Users also want a fancy, colorful and handy GUI to play with the data, and JPivot is quite the opposite of that.

In December Paul and me forked Halogen, which was a prototype for a new pentaho analysis tool for pentaho by pentaho devs. Unfortunately it wasn't quite the priority of pentaho's product management, so they've put it up there and hoped that someone would pick it up, and thats what happened.

We've done some brainstorming about PAT's planned functionality here, but we're definitely in an agile development process so if you want to know what we're really doing have a look at JIRA. We'll also try to keep you updated with some sort of roadmap in our google code wiki.

However, 0.1 was just a prototype for us.. playing with the technology and making some decisions. 0.2 is now the first real version of PAT and here's a quick run down of its (new) functionality:

  • Complete backend redesign thanks to Luc that is now Spring based allowing us to make changes more easily
  • Complete UI rewrite using GWT-Mosaic.
  • Basic security
  • i18n
  • Xmla and Mondrian (JDBC + Schema) Connection

So why?
Well Luc joined the project and saw the need to make the backend more workable, and so set to work implementing spring servlets to make our lives easier, and that has proven to be the case he has done a great job, and continues to add more and more features, mostly too quick for us to implement. Plans in the pipeline, include user profiles, connection saving, and the holy grail, passing xaction data to the GUI.

The UI has been one of the biggest arguments I've had to push through, mostly though because we're trying to provide a framework and not a finished item, GWT-Ext is great for static widgets but as our requirements became more obvious I saw the need for more custom widgets and creating these in the core GWT API in my mind seems much easier than in GWT-EXT's API. Also the other big reason being licences, GWT-EXT is LGPL so thats ok, but the development has pretty much finished in favour of SmartGWT, what happens if they, like EXTJs decided to make the licence commerical closed source, suddenly we've got a whole load of licence issues. Anyway thats a discussion for another day.

Security is an ongoing thing, but at the moment it asks for a basic username, password combo at login. This will soon be incorporated into a hibernate backend, allowing for user profiles, database/cube connection management etc.

I18N is something I've been pushing as its a good way to show off the project and get people on board, we now have translations into French, German and Spanish, with a Dutch translation in the pipeline. The GWT app should detect your browser language at login and swap to the language of choice.

Whats Next?

So now we've done all that, whats in the pipeline? Well now the big rewrite has been done. We can now focus more on delivering fancy functionality that we're missing in JPivot at the moment. From now on a quicker release cycle is for sure, we want to stay agile and deliver continuously new stuff. Here's the plan for 0.3:

  • GWT 1.6, which will give the devs a much improved speed boost we hope and other dev niceness.
  • GWT-Mosaic 0.2 which will also give the UI a much improved speed boost, and remove a few more niggles.
  • New interactive table, we plan to move to GWT Incubator's scrolltable, which will give us our first degree of user interactivity.
  • Finish off the Axis widgets, we know they aren't great, mostly my fault, but they work enough for a 0.2 release so live with it (wink) Anyway they will be redesigned to be far more userfriendly in 0.3

So thats the plan. If you are already a master or fancy learning some GWT techniques, know your Java, have some ideas where PAT should be heading to, can do fancy CSS styling, want to do the translation,..... or just want to help on the project feel to get in contact (##pentaho.pat on Freenode / http://groups.google.com/group/pentahoanalysistool-dev). If you fancy trying out our 0.2 release download a hsql bundled version from here, or use a CI build for bleeding edge, and sign up to the user mailing list for help.

Lastly, a big thanks to Paul and Luc for the work they have put in to getting PAT to where it is so far, and a thanks for the work they will no doubt do over the coming months/years. Also a thanks to you guys for giving us the support and annoying nagging to get us to a stage where we feel like we're starting to make progress in the right direction.

Last but not least a short list of useful links about PAT:

TTYL

Tom

GWT based analysis tool designed to replace JPivot and work along side the Pentaho suite, giving end users better control of their data.

Home Page:

http://code.google.com/p/pentahoanalysistool/

Forum:

New Analysis Client Tools : http://forums.pentaho.org/forumdisplay.php?f=258

JIRA case tracking:

http://jira.pentaho.com/browse/PAT?report=select

IRC channel:

irc.freenode.net ##pentaho.pat