Projects/Edu/Artikulate/CourseMaterial

    From KDE TechBase
    < Projects‎ | Edu‎ | Artikulate
    Revision as of 08:14, 20 May 2013 by Cola (talk | contribs) (introduce phrase state cycle)
    The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

    Training of pronunciation skills is performed with courses. A course is associated with a specific language, consists of different units and each unit is given by a sequence of phrases in different lengths. To ease the further explanation we defined a list of specific notions:

    • Language: Languages are only available in Artikulate if they are given by language specifications.
    • Course: A course is associated two one language and contains a list of units.
    • Unit: A unit consists of phrases that are "somehow" homogenous. E.g. those can be phrases spoken in a restaurant or phrases spoken at a conversation at the street by a tourist searching for the way.
    • Course Skeletons: A course skeleton forms the prototype of a course. This is, skeletons help to ease creation of courses in several languages as they state a set of units and phrases (in English) that then can be used as a blueprint to create a course in a new language. Updates of course skeletons can also be imported into courses that are created from a skeleton.
    • Phrases: Phrases are given by a text string and a recording by a native speaker. We differ phrases by their lengths. The following phrase lengths exists
      1. word: a single word, letter, or number
      2. expression: an expression of several words that does not form a complete sentence
      3. sentence: a complete sentence
      4. paragraph: several sentences (usually 2-3)

    Artikulate Course Material Repository

    All course material for Artikulate can be found and edited in the following repository:

    For licensing information please see:

    You can contribute to this repository with a KDE Developer account. But also if you do not have a KDE Developer account (yet), we are happy to get contributions. For those cases, please write to the mailing list [1].

    Using the Repository Directly in Artikulate

    To work with Artikulate directly at this course material repository please create a local copy of it (git clone). Then start Artikulate and go to the dialog "Settings" (top-left button) and select the root folder of your local copy in that dialog as your course material repository. After restarting Artikulate the training mode as well as the editor mode operate only on the data from the repository.

    Workflow and Course Data Life Cycle

    The following life cycles explain how courses and the contained phrases shall be created and updated.

    Life Cycle of a Course

    Diagram of Life Cycle of a Course

    State Cycle of a Phrase

    There are two cycles for phrases. The simple one appears, when creating a course without a skeleton file. Then, a phrase gets created and possible is updated.

    The case when working with skeleton files is quite different. Here, the phrases are created (in English) in the skeleton file and then imported, translated and recorded for the course. Yet, when updating a phrase in the skeleton, possibly the phrases in the course file may also need updates. To approach this, we have the following update cycle for phrases:

    1. phrase is changed in skeleton file
    2. course is updated from skeleton: i18n-text strings of phrases also get updated
    3. if i18n-text strings are changed, the phrase's editorState is set to "fuzzy"
    4. the editor must check whether the change requires changes to the translated string in the course file or not (in the latter case, the editor can set the state to "done"), in the former case the following steps must be performed:
      1. the editor translates the string updates the phoneme tags and removes the recording, editorState will be set to "unrecorded"
      2. once a native speaker recorded the phrase, the state is set to "done"