Changes between Version 8 and Version 9 of BossaIntro


Ignore:
Timestamp:
Oct 9, 2007, 8:35:10 AM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BossaIntro

    v8 v9  
    1 = Berkeley Open System for Skill Aggregation (BOSSA) =
     1= Berkeley Open System for Skill Aggregation (Bossa) =
    22
    33[[T(DesignDocument)]]
    44
    5 BOSSA is a software infrastructure for creating
     5Bossa is a software infrastructure for creating
    66projects that use skills or knowledge of large numbers
    77of volunteers, via the Internet, to accomplish a set of tasks.
    8 This has been termed ''skill aggregation'', ''distributed thinking'', etc.
     8This has been variously termed ''skill aggregation'', ''distributed thinking'', and ''human computing''.
    99
    10 BOSSA is designed to accommodate a wide range of tasks.
     10Bossa is designed to accommodate a wide range of tasks.
    1111In particular:
    1212
    1313 * Tasks may be short (performed online via a single web page) or may take several weeks and involve running separate programs.
    1414 * Tasks may be performed by a single user or by a group of cooperating users.
    15  * Tasks may be automatically validated, or may require validation by comparing multiple instances.
     15 * Tasks may be automatically validated, or may require validation by comparing redundant instances.
    1616
    17 BOSSA uses [BoincBasics BOINC Basics],
    18 and designed to be used together with [BoltIntro BOLT].
     17Bossa consists of a MySQL database schema and a set of PHP pages.
     18Projects install these components on their server,
     19and add their own PHP scripts to generate, show, and handle tasks.
     20Bossa uses [BoincBasics BOINC Basics] for grouping and communication,
     21and can use [BoltIntro BOLT] for volunteer training.
    1922
    2023== Abstractions ==
    2124
    22 A BOSSA project has one or more ''skill apps''.
    23 For each skill app and each user,
    24 BOSSA maintains ''skill estimate'', an estimate of the user's skill at that task.
    25 This is maintained in the user's project-specific XML document.
    26 Normally it's a number in [0..1], and it's initially zero.
    27 
    28 Normally each skill app has an associated BOLT course,
    29 and the skill estimate is maintained on the basis of
    30 the user's interaction with that course.
    31 However, a project can maintain the skill app
    32 using any other mechanism.
    33 
     25A Bossa project has one or more ''skill apps''.
    3426A skill app has a dynamic set of ''skill tasks''.
    35 Each one has an associated XML document,
    36 typically describing its parameters or input files.
    37 
     27Each one has an associated set of arguments describing its parameters or input files.
    3828Each skill task has a set of ''task instances''.
    3929Each one represents a copy of the task, either in progress or completed.
     
    6959 * A maximum number of tasks per day issued per user or group
    7060
     61== Volunteer characteristics ==
     62
     63For each skill app and each user,
     64Bossa maintains ''skill estimate'', an estimate of the user's skill at that task.
     65This is maintained in the user's project-specific XML document.
     66Normally it's a single number in [0..1], and it's initially zero.
     67
     68The skill estimated can be computed in any of several ways:
     69
     70 * The results of  the user's interaction with a Bolt course associated with the skill app.
     71 * The user's performance on "calibration tasks" mixed into the stream.
     72 * The fraction of the user's results classified as invalid by redundancy.
     73
     74Skill estimates are used for two purposes:
     75
     76 * To decide whether to give tasks to a user;
     77 * To decide how many redundant instances of a given task are needed.
     78
    7179== Implementation ==
    7280
    73 To get work, a user goes to a particular BOSSA-supplied page.
     81To get work, a user goes to a particular Bossa-supplied page.
    7482There he sees a list of skill apps for which tasks are available
    7583and for which he is qualified,
     
    7886Each app has an estimate of the time or other resources required to complete the task.
    7987
    80 Selecting an online app invokes the BOSSA ''scheduler'' script,
     88Selecting an online app invokes the Bossa ''scheduler'' script,
    8189which selects a task instance suitable for the user,
    8290and redirects to its instance URL.
    8391
    84 Selecting an offline app invokes the BOSSA scheduler,
     92Selecting an offline app invokes the Bossa scheduler,
    8593which selects a task and redirects to its instance-start URL.
    8694