Drools (JBoss Rules) Platform Integration
Introduction
This is one of Pentaho's Google Summer of Code projects. Business rules allow a clear separation between java objects and business logic applied to them, thus enforcing modularity and easy customization of the business logic by domain users.
The aim of this project is to provide the Pentaho platform with a business rules engine to support business logic validation. The rules engine will be embedded in a Pentaho component, which will allow flexible deployment, interaction with other components and reuse throughout the system.
Licenses
Mozilla Public License 1.1
Resources
Google Summer of Code |
|
Pentaho GSoC page |
|
This project's GSOC page |
http://code.google.com/soc/2008/pentaho/appinfo.html?csaid=333AA2AC342AA67 |
Forum |
|
Case tracking |
Development Methodology
We are using Open Scrum for this project - http://wiki.pentaho.com/display/OpenScrum/Home Any feedback about this methodology or this template will be gratefully received.
This is a small-scale project that will not require any major architectural changes to the Pentaho platform or Drools. As a result unified methodology is not required. The second iteration will involve some pre-work in the Pentaho platform to enable the integration to happen.
Expectations
We expect this project to complete in a couple of iterations and they will be aligned with the GSoC timeline. The Google Summer of Code timelines are listed here - http://code.google.com/opensource/gsoc/2008/faqs.html#0.1_timeline
Definition of 'Done'
For this project we mean that the features will be coded, unit tested, samples will be available, documentation will be complete and there will not be any severe defects. Since this project is aligned with the Google Summer of Code dates we are not including community hardening or acceptance in the definition of 'Done'.
Confidence levels
This project is not complicated or very risky so we're feeling pretty comfy about the whole thing at this point.
Anticipated Dates
The first iteration will end between July 7th and 14th
The second iteration will end between August 11th and 18th
Whether we release the results of this project in a milestone, RC or final version of the plug-in layer will depend on the feedback we get and where the release of V2 of the platform is as this project ends. Our best guess is that V2 will be finished in the second half of this year.
Team
James Dixon - Chief Geek at Pentaho, GSOC 'Mentor'
Alessio Tomasino - GSOC 'Student'
Role of Product Owner - James Dixon
Role of Unblocker - James Dixon
With a project and team of this size the distinction of a core team and extended team is not necessary
Communications
Sync Meetings: When? How? Who? Since this is a small team (at least initially) James and Alession will sync via IM or Skype as needed. If we get more participants we might change this.
The links for the forum and case tracking (JIRA) are listed in the resources section.
Features
Release Backlog |
|
Iteration 1 |
|
Iteration 2 |
|
Specifications and Design |
There are no major design issues to describe. |
The Bits
Binaries |
Will be available as part of the nightly builds of Pentaho platform V2.0. We might also post zipped binaries and samples here. Or create a sandbox in SVN. To be determined I guess. |
Source code |
Will be checked into subversion once available in the plugin project - http://source.pentaho.org/svnroot/bi-platform-v2/bi-platform-plugin/. We might also post zipped source here. |
Documentation |
Currently this is only in the JIRA cases - http://jira.pentaho.com/browse/BISERVER-1430 |
Quality
Testing |
As part of the code development Alessio will provide unit tests. |
Hardening |
We will look to members of the Pentaho/Drools community to use these features to solve their use cases. |
Acceptance |
We will look to members of the Pentaho/Drools community for acceptance of the solution. Both 'I have a problem' and 'it works for me' feedback will help us greatly with this. |
Contributions and Involvement
We are certainly interested any participation or involvement from the Pentaho or Drools communities.
Type |
Wanted |
Details |
---|---|---|
Requirements |
Yes |
As part of the Google Summer of Code the requirements have to be reasonably fixed for the scope of this project. The scope of this project is defined by the JIRA cases under the release backlog. If you have any ideas or questions please post them on the forum. |
Code Development |
No |
As this is a Google Summer of Code project Alessio needs to write all of the code. Alessio will send code by email to James. |
Use Cases |
Yes |
The more the merrier. Please put them on the forum. If you are going to use the results of this project in production we would love to hear about it. |
Testing |
Yes |
If anyone would like to test the code as it is developed please get the binaries or source (directions above) and let us know how you get on by posting on the forum. |
Blogging |
Yes |
Any blogging about this is welcomed. You can link this page and any of the URLs provided here. |
Documentation |
Yes |
Alessio will be providing documentation as part of this project. Feedback on it would be great in the forum. |
Localization |
Yes |
This project will not generate much user interface work so localization needs will be minimal. We will gladly accept localizations. The contribution process for these is not defined yet so post on the forum if you are interested. |
Forum Help |
Yes |
Please jump in and help out. |