Sari la conținut

Grupuri de lucru și fluxul unei cerințe

Munca tehnică din ACO e organizată în patru grupuri, aliniate cu etapele prin care trece orice cerință: o specificăm, o dezvoltăm, o testăm și o documentăm.

Cele patru grupuri de lucru

GL-BR

Specificații (Business Requirements)

Transformă o nevoie de business sau o schimbare legislativă într-o specificație pe care o poate implementa un dezvoltator.

  • colectează cerințele de la membri, clienți finali și din legislație (ANAF, MF);
  • scrie specificația: context, bază legală, scenarii de acceptanță;
  • prioritizează registrul de cerințe și decide unde se rezolvă (OCA, Odoo sau modul ACO);
  • urmărește noutățile legislative ca să anticipeze schimbările.

Cui i se potrivește: Contabili, consultanți funcționali, analiști.

GL-DEV

Dezvoltare (Development)

Scrie și întreține codul modulelor de localizare pe baza specificațiilor.

  • implementează în OCA/l10n-romania și în modulele ACO;
  • face review de cod (minimum un reviewer independent pentru fiecare PR);
  • stabilește convențiile de cod și arhitectura modulelor;
  • coordonează migrările la fiecare versiune nouă de Odoo.

Cui i se potrivește: Dezvoltatori Odoo (Python, OWL/JS, XML).

GL-QA

Testare (Testing)

Verifică faptul că ce s-a dezvoltat face ce scrie în specificație, pe scenarii reale de client.

  • testează manual PR-urile pe instanțele de test (runboat);
  • scrie și întreține teste automate și suite de regresie pe versiune;
  • reproduce bug-urile raportate și le documentează pașii;
  • validează release-urile înainte de publicare.

Cui i se potrivește: Consultanți, utilizatori cu experiență, dezvoltatori la început de drum.

GL-TR

Traduceri și Documentație

Face ca funcționalitatea livrată să poată fi folosită: documentată și în limba română.

  • scrie articolele din baza de cunoștințe și cursurile de pe site;
  • traduce interfața Odoo și a modulelor OCA în română (vezi ghidul de traduceri);
  • face review la traducerile colegilor, ca termenii să fie consecvenți în toată aplicația;
  • anunță noutățile importante către comunitate.

Cui i se potrivește: Oricine scrie clar: consultanți, traineri, contabili.

Pe lângă acestea, Asociația are grupurile Comunicare (GL-COM) și Marketing (GL-MKT), care nu lucrează pe cerințe, ci pe canalele, evenimentele și vizibilitatea ACO.

Drumul unei cerințe

Fiecare cerință e un task în proiectul Localizare și trece prin aceleași coloane.

1

Nou Oricine

Cerința sau bug-ul intră prin formularul de mai jos, forum sau portal. Liderul GL-BR o triază la întâlnirea grupului: o acceptă, o unește cu una existentă sau o închide motivat.

2

Specificații GL-BR

Se scrie specificația și scenariile de acceptanță. Tot aici se decide unde se rezolvă: în OCA, în Odoo sau într-un modul ACO.

3

Dezvoltare GL-DEV

Un dezvoltator își asumă sarcina, deschide PR-ul și îl leagă de task. PR-ul trece de verificările automate și de review.

4

Testare GL-QA

Se testează pe instanța de test a PR-ului, după scenariile din specificație. Rezultatul se scrie pe PR și pe task; dacă pică, se întoarce în Dezvoltare.

5

Documentație GL-TR

Se actualizează articolul din baza de cunoștințe, traducerile și, dacă e o schimbare vizibilă, se anunță comunității.

6

Finalizat

PR-ul e integrat (merged), documentația e publicată și task-ul se închide.

Cerință nouă sau bug?

Cerință nouăBug
Ce esteCeva ce localizarea nu face încă: o declarație nouă, o schimbare legislativă, un raport.Ceva ce ar trebui să meargă și nu merge: rezultat greșit, eroare, comportament diferit de specificație.
Ce trimițiNevoia de business, baza legală (link la lege/ordin) și un exemplu concret.Versiunea Odoo, modulul, pașii de reproducere, rezultatul așteptat și cel obținut.
Primul pasGL-BR scrie specificația.GL-QA reproduce bug-ul pe o bază curată; dacă nu se reproduce, cere detalii.
DrumulNou → Specificații → Dezvoltare → Testare → Documentație → FinalizatNou → Dezvoltare → Testare → Finalizat (Documentație doar dacă se schimbă comportamentul)
Titlul PR-ului[19.0][ADD] l10n_ro_modul: ... sau [19.0][IMP] ...[19.0][FIX] l10n_ro_modul: ...

Unde se rezolvă?

OCA/l10n-romania

Cele mai multe cerințe: modulele l10n_ro_* ale comunității (stocuri, rapoarte, declarații, integrări ANAF).

Cum contribui la OCA

Odoo (nucleu)

Bug-uri în modulele standard, în l10n_ro și l10n_ro_edi ale Odoo sau în traducerile oficiale.

Cum contribui la Odoo

Module ACO

Funcționalități de care e nevoie înainte să fie acceptate upstream. Scopul rămâne să ajungă în OCA sau în Odoo.

Propune o cerință sau raportează un bug

Ce trimiți aici intră ca task nou în proiectul Localizare, coloana Nou. Înainte de a trimite, caută în forum și în issue-urile OCA: poate există deja.