CPK
One more Ctool in the works. Once again I'm calling out for comments, suggestions, whatever. Let me know what you thing and suggestions for improvements, or even if you think this makes no sense at all.Motivation
Pentaho is very well known for being a very good Business Analytics software, but is in fact much more than that; Pentaho is a great platform to build on top of.Using an easy analogy, I see Pentaho acting as an operating sytem where people can build Application on top of
Objective
The goal of CPK is to provide a simple and easy way to develop pentaho plugins that behave like packaged applications, simplifying it's structure.The UI is built using CDE, with a simple methodology to create new dashboards / pages and a sitemap that provides simple navigation and a default template
There are 3 options for doing server-side code:
- Kettle transformations
- Javascript server side code execution
- Java classes
With this approach not only we expect to make it easier and faster to develop plugins, we also hope to lower down the specific technical requirements to build them. The end goal is that business consultants are able to build new plugins, not requiring specific java knowledge.
Structure
This is the resulting plugin structure. Ideally, no compilation is necessary, so everything except maybe the lib directory could be stored in a VCS system.This is the proposed stub configuration
to be completed
CPK_Plugin
|-- conf
|-- dashboards
|-- endpoints
|-- lib
`-- plugin.xml
CPK administrative features
Besides providing the regular templating for creating new plugins, CPK can have an administrative UI with the following features:- List existing plugins
- Detect if the plugins are up to date with the latest version of CPK
- Allow the creation of new plugins
- Allow to change plugin metadata
- List and register new endpoints (UI and code)
- Import UI from existing dashboards in solution
- Allow editing dashboards from this UI
- Submit marketplace metadata to Pentaho
- Generate distribution zip package
Updates
As the CPK framework or any of it's dependencies gets improved, the plugins themselves can't stay outdated. There will be a version information attached to the CPK plugin version so that it's possible to upgrade to the latest version.Dependencies
CPK will have as little code as possible, making it as simple as possible to develop plugins. However, it will need a few dependencies:- Pentaho
- CPF - Community Plugin Framework, with the common set of code for the plugins
- CDE - Community Dashboard Editor
- CDF - Community Dashboard Framework
- CDA - Community Data Access
Link with Pentaho Marketplace
Once a plugin is developed, and the authors think it's in a state that can be shared, CPK will be able to generate a packaged plugin and metadata information so it can be integrated into Pentaho's marketplace.Pentaho will then be able to categorize / approve the plugin so that it becomes available to other users through the marketplace



I really like this idea. We already use Kettle as a toolkit to do lots of things that aren't classic ETL.
ReplyDeleteI didn't put my eyes on it's structure yet, but think it'd be awesome to be able to build Analyzer VIZs using CPK.
ReplyDeleteI really like it too! I agree that Pentaho's platform allow us to do much more than BI analysis.
ReplyDeleteDo you mean, like, think of SugarCRM Plugin, Asterisk, OpenBravo, WordPress Webstrean Solution... Do you mean THAT? Man, you gonna freak the skull out of SAS... Sweet!!! :-D
ReplyDelete
ReplyDeleteThanks for the feedback everyone.
Marcelo - that's a great suggestion!
great idea.... I also believe that pentaho could be used as a kind of portal... building "small/lite apps" on top... like portlets...
ReplyDeleteone ring to rule them all!
Looking forward to another great blog. Good luck to the author. all the best.
ReplyDeleteaion accounts
This comment has been removed by a blog administrator.
ReplyDeleteThis comment has been removed by a blog administrator.
ReplyDeleteI learnt a lot from your blog. It was worth taking time to read the blog. Keep the good work.
ReplyDeleteUniversity of Phoenix Online
I must say, I thought this was a pretty interesting read when it comes to this topic. Liked the material. . . . .
ReplyDeletedentist kilgore tx
Very marverlous post! I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts
ReplyDeleteonline classes
I love it when things get improved, thanks for putting up a great guide. Hope it will help me out in my future projects
ReplyDeletePhoenix University