12 | | ^(List the necessary requirements that the task must fulfill.)^ |
13 | | |
| 12 | * Define what a timeline is |
| 13 | * in Sophie, there is a single-page and multi-page timeline. Discuss this behaviour with non-programmers, since it is not good to be the same in Sophie2. |
| 14 | * define the exact usage of the timelines, since it is very important for the design - will timelines be started by links (as in Sophie), or only by the bottom panel, or else. This is best to be documented. |
| 15 | * define whether a timeline is a ProObject, held in a book/page, or a Resource, maybe something else. |
| 16 | * a timeline must have any number of channels, executed simultaneously, with equal duration. They will contain zero or more entries, defining the actual actions which will be performed through time. |
| 17 | * Define what a timeline entry is |
| 18 | * is must at least contain starting moment and action to be performed |
| 19 | * define possible actions executed by the timeline and a way to implement them. Make several actions demonstatable, for example "Next page". |
| 20 | * some actions must have duration, some not. After deciding what will be the possible actions, think of a way to store this information in the timeline entries. |
| 21 | * Think about need of persisting timelines, maybe templating or something other possibilities. |
| 22 | * Provide a way to manipulate a timeline - create, destroy, add entry, remove entry, play, stop. |
| 23 | * Design diagrams are strongly recommended. |