Annotatrix/Work plan

From Apertium
Jump to navigation Jump to search

Workflow

Week 3 Django warm-up

From 28th to 4th of June

  • Implement the first interface (Insert file view)
    • Managing files
    • Upload files
    • Managing users authentication
    • Getting history of user's trained
  • Implement the system's modules
    • Implement controller to use apertium-dbus
    • Implement external models for Tags
    • Implement internal models for trainings
  • Design a system directly to web
    • Design controller to use apertium-dbus
    • Design external models for Tags
    • Design internal models for trainings Done
    • Design structure for annotatrix project Done
      • annotatrix as project and 4 different applications (tagger, GCManager, TSX-managaer and Prob measurer)
  • Do toy web app using Django Done
    • Django official tutorial Part 1 Done
    • Django official tutorial Part 2 Done
    • Django official tutorial Part 3 Done
    • Django official tutorial Part 4 Done
    • Django official tutorial Part 5 Done
    • Django official tutorial Part 6 Done
  • Advanced tutorial: How to write reusable apps Done

Week 2 Kick-off

From 27th to 27th of June

  • Resolve python2 or python3 discussion Python3
    • Learn differences python3 from python2 Done
    • Learn differences gtk2 and gtk3 using python3 Deprecated
    • Remake up the mock-ups UI using gtk3 Deprecated
    • Port launcher in python2 to python3 Deprecated
  • Made up a system design approaching implement a web app or a desktop one Updated
    • Design a system directly to web
  • Install Django and python3 Done

Week 1 Pre-Kick-off

  • Know how to use launch lt-proc to tag corpus Done
  • Install apertium-tolk and check the code Done
  • Finish the exams Done

System design

UML global v2.jpg

There are 3 packages in order to use the pattern MVC:

  • Views: there are the interfaces
  • Controller: the controller that also implements singleton and factory pattern
  • Models: models that interfaces uses

Controller package

tagger-ctr

methods:

  • File tag_by_path(path_file)
  • File tag_by_string(corpus_in_string_to_tag)
  • [string] get_pairs() """it returns a list of pair of languages already installed in the system"""
  • path_to_prob_file train(path_to_corpus, pair_direction)

Models package

tag

methods:

  • select_alt(num)

vars:

  • string lemma
  • [string] alternatives
  • integer selected

Working plan

Week Dates Tasks
0 21/05—16/06 Bonding and designing firsts internals GUIs
1 17/06—23/06 I'm still with final exams
2 24/06—30/06 Input File UI coding 30h, Tagger Corpus UI coding 5/60h
3 01/07—07/07 Tagger Corpus UI coding 35/60h
Deliverable 1
4 08/07—14/07 Tagger Corpus UI coding 20/60h + TDD 15/40h
5 15/07—21/07 Tagger Corpus UI TDD 25/40h, TSX file manager UI coding 10/40h
Deliverable 2
6 22/07—28/07 TSX file manager UI coding 30/40h + TDD 5/20h
7 29/07—04/08 TSX file manager UI TDD 15/20h, Constraint Grammar UI coding 20/50h
Deliverable 3 and Mid-term evaluations deadline August 2sd
8 05/08—11/08 Constraint Grammar UI coding 30/50h + TDD 5/30
9 12/08—18/08 Constraint Grammar UI TDD 25/30h, Performance measure .prob UI coding 10/70h
Deliverable 4
10 19/08—25/08 Performance measure .prob UI coding 35/70h
11 26/08—01/09 Performance measure .prob UI coding 25/70h + TDD 10/40h
12 02/09—08/09 Performance measure .prob UI TDD 30/40h, Final documentation 5h
Deliverable 5
13 09/09—15/09 Final documentation and finalitation
Final evaluation deadline September 27th

Todo

Coding

  • Structure the repository
  • Set up a Makefile
  • Add an AUTHORS file -- r44881
  • Make loaders for the .ui files so people see them working. -- r44915


to discuss

  • Use Python2.7 and gtk2.24 or use Python3
  • How to manage big data files (wikipedia dumps), we could use a temporal file but maybe this file could be too big in memory consumption terms

External links