Hi David, On Wed, Mar 26, 2014 at 4:03 PM, David Tildesley <[email protected]>wrote:
> Hi Dileepa, > > I see. Then the domain will perhaps have some object representing > "ReputationScore" with a method such as "calculateEmailReputationScore" and > "calculateEmailContactReputationScore" with the implementation of the > methods based on Mahout and injected via a domain service. So it's the same > deal no matter how you want to reword it - the complexity of the score > calculation is not in the ISIS domain but in the Mahout implementation. > Yes, the domain service (ReputationAnalysisService) will call out a Mahout recommender process to give the reputation score of the new email. So what information do you need to "feed" these two methods in order to do > the calculation? > > I'm planning to feed people (to, cc, from), topic and actions (keywords such as meeting, project, important etc) mentioned in the email to perform reputation calculation. > David. > > > > On Wednesday, 26 March 2014 11:09 PM, Dileepa Jayakody < > [email protected]> wrote: > > Hi David, > > On Wed, Mar 26, 2014 at 3:22 PM, David Tildesley <[email protected] > >wrote: > > > > > Hi David, > > > > On Wednesday, 26 March 2014 8:49 PM, Dileepa Jayakody < > > [email protected]> wrote: > > > > > Hi Dan, David and all, > > > > > Above class diagram only contains the domain entities. Perhaps David's > > > question on the domain requirements could be clarified if domain > service > > > classes are also included in the diagram. Shall I do so? > > > > No. Please don't do that. Stick to the domain object model (leave out any > > view objects also). Key attributes and methods will aid in understanding > it. > > > > So .. you are saying that the reputation analysis/scoring is not part of > > the domain for the application but is a separate component? In that case > I > > am correct in saying it is an external service (whether it runs in the > same > > processor space or accessed via a web-service is irrelevant - the fact is > > that it is not part of the domain of the ISIS based application). > > > > > Perhaps I haven't yet understood the Isis programming model as much as I > should have. But as I see, RB server component is also within the Isis > application domain. Implementing the RB application in Isis requires > implementing both RB client webapp and RB server components. > > I have stated "reputation scoring is not done by some other system, it's > done in the reputation-box server component of my application." and by that > I wanted to convey that I see implementing the ReputationAnalysisService is > within the domain of the Isis based application. I will integrate a Mahout > recommendation process in the above domain service to generate the > reputation-scores but still it will be within the Isis domain AFAIU. Please > correct me if I'm wrong. > > > > I must say that this is an ambitious project with a lot of integration - > > what is the overall objective? Just to prove that ISIS is a rapid > > prototyping tool? In which case I would "stub" out all the integration > > points and have some fake random reputation scoring code sitting behind > the > > service otherwise all your effort will go into writing the SI layer and > the > > reputation analysis/scoring and ISIS does not help you one jot with that. > > > > The objective is to develop a real world application in the email domain > using Isis as a framework to rapidly develop domain driven applications. I > will utilize Isis features to develop my domain model and generate other > layers such as persistence, presentation etc. And as a sub-task of the > project Oauth2 client support will also be implemented (for authorizing RB > app to connect to user mailboxes). Further I intend to write an academic > paper on my project and explain how it was developed using Isis features. > > > > > > > > Regards, > > David. >
