Hi Aaron,

Good questions!  Here are my thoughts:

(a) You are right, SDSA is the easiest way to go. You wouldn't want to put the code into hackyApp_SDSA, however. That's the domain-independent "engine" code, upon which applications like hackyApp_Zorro are built. What you want to do is create a little module like hackyApp_PreCommitRules that implements the rules to check for this behavior. This module might also provide an interface in the form of a simple Alert that invokes the rules once a day and sends an email with what is discovered to those in the Project who have enabled the Alert. This should be a small amount of code.

(b) You are also right that Jess is not an open source product. Yikes! I had not noticed that before. There is an evaluation copy of Jess you can download. You might try contacting the author and explaining your situation as a developer in a small company without resources to buy the package and without any intention to make any money off of the resulting software. Indeed, if you are intending to donate the sources back into the public repository, you could appeal to his open source sensibility. Ask him if he would provide you with a license free of charge. It's quite possible that his licensing scheme is simply to ensure that if people are actually making money off of Jess that he gets a cut of the action.

(c) In the longer term, I would definitely like to get away from this licensing problem for SDSA. I did a little hunting and found out the following:

- There is a JSR for rule based systems called JSR 94:
 <http://www.jcp.org/en/jsr/detail?id=94>.
The idea is that this API enables people to write code that allows people to swap in different underlying rule engines that conform to this JSR. Jess conforms to this API.

- There appears to be a pretty good open source rule based engine called Drools, which has been incorporated into the JBoss project as JBossRules but is available as a stand-alone download:
 <http://labs.jboss.com/portal/jbossrules/>.
Drools/JBossRules also conforms to JSR 94. There is an overview article on Drools at:
 <http://www.theserverside.com/tt/articles/article.tss?l=Drools>.

So, here are some questions for Hongbing: is SDSA written to the JSR 94 API? More directly, how much effort would it be to move SDSA to Drools/JBossRules in some future release of Hackystat?

Hongbing is working hard on his thesis right now, so unless this change would be extremely easy, I'm not suggesting that this happen immediately. I'm interested right now in simply assessing what would be required, and have this future change be in Hongbing's mind as he thinks about the future of SDSA.

Cheers,
Philip

--On Friday, October 20, 2006 7:20 PM -1000 Aaron Kagawa <[EMAIL PROTECTED]> wrote:

Hey Guys,

I'm interested in creating a Software Development Stream type analysis
that shows whether developers follow the "correct" commit process.
According to what we can collect, this process would look like

1) build the system via freshStart all.junit
2) no Activity.StateChange events
3) then commit

It seems to me that this should live in hackyApp_Sdsa or at the very
least hackyApp_Sdsa will provide mechanisms to make this type of analysis
easier.

However, I have a couple concerns about this module.  The biggest concern
is the use of Jess. To my knowledge it isn't freely available.  Thus,
using this module will probably not be possible in my organization.

Any thoughts on how I should proceed?

thanks, Aaron

Reply via email to