Changes between Version 19 and Version 20 of BossaOverview
- Timestamp:
- Jul 30, 2008, 10:23:07 AM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TabularUnified BossaOverview
v19 v20 29 29 * You (the project) define the '''policies''' by writing PHP functions; you need to have basic knowledge of PHP to use Bossa. 30 30 31 The software structure of Bossa is s hownhere:31 The software structure of Bossa is summarized here: 32 32 33 33 [[Image(bossa.png)]] … … 44 44 45 45 The 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. 46 This info is stored in an '''opaque data''' structure, 47 an arbitrary PHP structure 48 that you supply when you create the job. 49 Bossa stores the opaque data in a serialized (textual) from in the database. 49 50 When a job is to be displayed to a volunteer, 50 Bossa calls your "job display function", passing it this structure. 51 Bossa calls your one of your callback functions (job_show()), 52 passing it the opaque data. 51 53 52 Similarly, the results of a completed job are stored in a PHPstructure54 Similarly, the results of a completed job are stored in an opaque data structure 53 55 defined by your application. 54 56 … … 94 96 * For more complex tasks, ability could have arbitrarily many dimensions. 95 97 96 Bossa lets you associate an arbitrary PHPstructure with each volunteer.98 Bossa lets you associate an opaque data structure with each volunteer. 97 99 This can be initialized and updated however you want. 98 100 … … 103 105 == Use of experts == 104 106 105 There are various way in which "experts" might be used.107 There are various ways in which "experts" might be used. 106 108 Two general possibilities: 107 109 … … 115 117 volunteers can be assigned integer '''levels'''. 116 118 Each 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. 119 Jobs are sent to a given volunteer in order of decreasing level-specific priority. 120 121 For example, suppose you want to use experts to resolve jobs for which 122 N non-experts have failed to reach a consensus. 123 Use level 0 for non-experts, 1 for experts. 124 In your '''job_finished()''' callback function, 125 check for the case of N instances without consensus, 126 and set the priority for level 1 to 2. 127 128 In this scenario, experts will always get unresolved jobs if they are available; 129 otherwise, they will get regular jobs.