ABuddy: The Design Approach

| No Comments
After running version 1 of my ABuddy through a few test cycles, I figured there was enough potential to rework it into a more viable project.  I already had several improvements I wanted to make, and as I started thinking about it seriously, came up with several more.

In the 1st version everything happened at once: the quotes were harvested, the analysis was made and the static report file was generated for that day.  If anything failed along the way, the whole thing just horked.

Fixing all that was pretty much the motivation for reworking it into version 2.  I wanted these key features:
  • Tolerance of network issues.
  • Separation of data and presentation.
  • Self-maintained reference database of analyst recommendation scores.
  • Flexible rule engine.
First up, I separated everything out to distinct components.  Like so:

Klepto: The sole responsibility of the klepto is to acquire the raw quote data.

Duke: The duke is the keeper of all the analyst recommendations.

Professor: The professor's job is to perform the needed analysis and report the final scores.

I probably could have made the Professor into two components rather than one, but I didn't want to be breeding rabbits.  The analysis step is actually just a matter of collating all the gathered stuff into the report itself, so those two tasks fit nicely together.

So that's it.  ;)

Leave a comment

About this Entry

This page contains a single entry by Topher published on January 24, 2010 7:51 PM.

A Jellybean with a Heartbeat was the previous entry in this blog.

Chinese New Year Cookie: Pineapple Tarts is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.