Difference between revisions of "Annotatrix/Work plan"

From Apertium
Jump to navigation Jump to search
Line 105: Line 105:
 
*[string] alternatives
 
*[string] alternatives
 
*integer selected
 
*integer selected
*iter offset
 
   
 
== Working plan ==
 
== Working plan ==

Revision as of 22:22, 3 July 2013

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

Views package

View

<interface>

methods:

  • show()
  • focus()
  • hide()
  • close()

vars:

  • string path_to_uis

Every interface implements this interface and extend it with the method they need:

insert_corpus

  • cancel_clicked(button)
  • apply_clicked(button)
  • selectred_dump(combo)
  • insert_corpus_text(string path_to_file)
  • get_corpus_to_tag() (maybe save the content in a temporal file to tag)

tagger

CGM (constraint grammar manager)

tsx_manager

prob_measure

Controller package

controller

methods:

  • controller get_instance() <-Singleton pattern to have just one controller instance to manage views
  • view new_view(view_name, data) <- factory pattern to get the views registred
  • File tag_by_path(path_file)
  • File tag_by_string(corpus_in_string_to_tag)
  • File tag_dump(dump_url or path_file_already_downloaded)
  • config_file save_state()
  • load_state(config_file=None)

vars:

  • controller ctrl
  • [view] views_list

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