Sierra
An OpenPrivacy
Reputation Management Framework
Design
Sierra provides a reference implementation for the components of an
OpenPrivacy Reputation Management Framework (RMF) resulting in a Reputation
Management System. Based on Talon components, Sierra incorporates a
high level of modularity and atomicity, resulting in a flexible fabric that
will enable easy component upgrades as experience with the system grows.
In Sierra we use Talon as the Component mechanism. Talon acts as a kernel
and serves/creates Component implementation instances. Sierra is configured
with a file (sierra.properties) which has Component deployment descriptors
that have settings for RCEs, Nym Providers, Network communications, etc.
Each Component is a java interface which extends talon.Component. When a
new technology (new Crypto provider, new Database layer, etc) needs to be
added a bridge is written between Sierra and the new technology. If we
wanted to add an Advogato Trust Metric to Sierra we would write a new class
named AdvogatoRCE which implemented RCE. This builds a one to many
relationship to all new RCEs.
Each Component can be obtained from an application as an Object instance via
talon.ComponentFactory. In order to obtain a component instance, Developers
can either provide the ComponentFactory with an implementation name
(AdvogatoRCE) or a handle name
("talon:///component-name/product/sierra/name/rce").
Generally the handle is used because it allows a developer to change
implementations at runtime. For example if we wanted to change the default
RCE to say a WeightedRCE (an RCE which answers with by averaging with
weights) we would just have to modify the sierra.properties file and change
the "talon:///component-name/product/sierra/name/rce" to point to the new
WeightedRCE component implementation.
Sierra developers are encouraged to review the Talon project and its associated
documentation.
|