Changes between Version 19 and Version 20 of BossaOverview


Ignore:
Timestamp:
Jul 30, 2008, 10:23:07 AM (16 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BossaOverview

    v19 v20  
    2929 * You (the project) define the '''policies''' by writing PHP functions; you need to have basic knowledge of PHP to use Bossa.
    3030
    31 The software structure of Bossa is shown here:
     31The software structure of Bossa is summarized here:
    3232
    3333[[Image(bossa.png)]]
     
    4444
    4545The data needed to display a job may include various filenames, numbers, etc.
    46 This info is stored in a PHP structure
    47 that you create when you generate the job.
    48 Bossa stores this in a serialized (textual) from in the database.
     46This info is stored in an '''opaque data''' structure,
     47an arbitrary PHP structure
     48that you supply when you create the job.
     49Bossa stores the opaque data in a serialized (textual) from in the database.
    4950When a job is to be displayed to a volunteer,
    50 Bossa calls your "job display function", passing it this structure.
     51Bossa calls your one of your callback functions (job_show()),
     52passing it the opaque data.
    5153
    52 Similarly, the results of a completed job are stored in a PHP structure
     54Similarly, the results of a completed job are stored in an opaque data structure
    5355defined by your application.
    5456
     
    9496 * For more complex tasks, ability could have arbitrarily many dimensions.
    9597
    96 Bossa lets you associate an arbitrary PHP structure with each volunteer.
     98Bossa lets you associate an opaque data structure with each volunteer.
    9799This can be initialized and updated however you want.
    98100
     
    103105== Use of experts ==
    104106
    105 There are various way in which "experts" might be used.
     107There are various ways in which "experts" might be used.
    106108Two general possibilities:
    107109
     
    115117volunteers can be assigned integer '''levels'''.
    116118Each job has a vector of priorities, one per level.
    117 Jobs are sent to a given volunteer in order of decreasing level-specific
    118 priority.
     119Jobs are sent to a given volunteer in order of decreasing level-specific priority.
     120
     121For example, suppose you want to use experts to resolve jobs for which
     122N non-experts have failed to reach a consensus.
     123Use level 0 for non-experts, 1 for experts.
     124In your '''job_finished()''' callback function,
     125check for the case of N instances without consensus,
     126and set the priority for level 1 to 2.
     127
     128In this scenario, experts will always get unresolved jobs if they are available;
     129otherwise, they will get regular jobs.