7 | | of volunteers, via the Internet, to accomplish a task. |
| 7 | of volunteers, via the Internet, to accomplish a set of tasks. |
| 8 | |
| 9 | BOSSA is designed to accommodate a wide range of tasks. |
| 10 | In particular: |
| 11 | |
| 12 | * Tasks may be short (performed on a single web page) are may involve running separate programs and take several weeks. |
| 13 | * Tasks may be performed by a single user or by a group of cooperating users. |
| 14 | * Tasks may be automatically validated, or may require validation by comparing multiple instances. |
| 18 | |
| 19 | == Abstractions == |
| 20 | |
| 21 | A BOSSA project has one or more ''skill apps''. |
| 22 | For each skill app and each user, |
| 23 | BOSSA maintains ''skill estimate'', an estimate of the user's skill at that task. |
| 24 | This is maintained in the user's project-specific XML document. |
| 25 | Normally it's a number in [0..1], and it's initially zero. |
| 26 | |
| 27 | Normally each skill app has an associated BOLT course, |
| 28 | and the skill estimate is maintained on the basis of |
| 29 | the user's interaction with that course. |
| 30 | However, a project can maintain the skill app |
| 31 | using any other mechanism. |
| 32 | |
| 33 | Each skill app has a dynamic set of ''skill tasks''. |
| 34 | Each one has an associated XML document, |
| 35 | typically describing its parameters or input files. |
| 36 | |
| 37 | Each skill task has a set of ''task instances''. |
| 38 | Each one represents a copy of the task, either in progress or completed. |
| 39 | Each instance is assigned either to a user or to a team. |