Documentație

Învață să folosești HeadOps

De la configurarea inițială a workspace-ului până la setările avansate ale motorului de planificare — tot ce ai nevoie pentru a-ți transforma fluxul de producție.

🏢

Configurare Workspace

Creează workspace-ul companiei și invită echipa

La prima autentificare în HeadOps cu contul Google, un Workspace este creat automat pentru tine. Workspace-ul este limita securizată a datelor companiei — toate proiectele, echipele, tipurile de etape și calendarele de sărbători sunt delimitate la acesta.

Invitarea membrilor echipei

Navighează la Setări → Workspace pentru a gestiona echipa. Invită colegi introducând adresa de e-mail și selectând un rol:

  • AdminAcces complet, inclusiv setări workspace, gestionare membri și operațiuni din zona de pericol.
  • EditorPoate crea și modifica proiecte, componente, etape și alocări.
  • VizualizatorAcces doar în citire la timeline și paginile de echipe.
Securitate: HeadOps aplică Row Level Security (RLS) la nivel de bază de date. Utilizatorii pot vedea și modifica doar datele din propriul workspace, inclusiv la nivel de API.
📐

Ierarhia Datelor

Modelul de date din spatele fiecărui program

HeadOps organizează datele de producție într-o ierarhie strictă pe 4 niveluri.

Workspace (limita companiei tale)
└── Proiect (nr. comandă, client, dată livrare)
└── Componentă (piesă fizică: „353 - STC D")
└── Etapă (pas de fabricație: „Pre-sudură", „Vopsitorie")
└── Alocare (echipă + date start/sfârșit)

Proiecte

Un Proiect reprezintă o comandă sau o instalație. Fiecare proiect are un număr de comandă, un client și o dată oficială de livrare care servește drept termen limită.

Componente

O Componentă este o piesă fizică dintr-un proiect. Componentele apar ca rânduri individuale pe timeline-ul de planificare.

Etape

O Etapă este un pas de fabricație necesar pentru o componentă — cum ar fi „Pre-sudură", „Instalare Electrică" sau „Testare". Fiecare etapă are o durată definită în zile lucrătoare.

Alocări

O Alocare este atribuirea programată a unei echipe pentru o etapă. Alocările apar ca blocuri colorate pe canvas-ul Gantt și pot fi mutate prin drag & drop pentru a declanșa reprogramarea automată.

⚙️

Tipuri de Etape & Echipe

Configurează fluxul de lucru al fabricii și capacitățile echipelor

Definirea tipurilor de etape

În Setări → Tipuri de Etape, definește etapele de fabricație folosite în fabrica ta. Fiecare tip are un nume, o durată implicită (în zile lucrătoare) și o culoare pe timeline.

Asocierea echipelor cu tipuri de etape

Echipele pot fi asociate cu unul sau mai multe tipuri de etape, definind ce lucrări sunt capabile să efectueze. Această relație many-to-many alimentează wizard-ul de alocare automată.

Exemplu: Dacă echipa „Sudură Alpha" e asociată atât cu „Pre-sudură" cât și cu „Sudură", wizard-ul o va lua în considerare pentru ambele tipuri de etape.
📅

Calendar & Zile Lucrătoare

Controlează cum HeadOps calculează datele de planificare

Configurarea săptămânii de lucru

Implicit, toate echipele funcționează pe o săptămână de lucru standard luni-vineri (5 zile). Etapele individuale pot fi setate pe 6 zile (luni-sâmbătă).

Sărbători legale

Navighează la Setări → Sărbători Legale pentru a gestiona calendarul de sărbători al workspace-ului. Când o etapă are activat „respectă sărbătorile" (implicit), motorul va sări datele de sărbătoare la calcularea datelor de sfârșit.

🖱️

Timeline-ul de Planificare

Trage, plasează și reprogramează cu încredere

Navigarea pe Canvas

Timeline-ul de planificare e un canvas Gantt complet. Partea stângă afișează ierarhia proiectelor și componentelor. Partea dreaptă e timeline-ul cu coloane zilnice, umbrire weekenduri, marcaje sărbători și un indicator albastru „astăzi".

Adăugarea proiectelor și componentelor

Clic pe butonul „+ Proiect Nou" din colțul stânga-sus al canvas-ului pentru a crea un proiect. În rândul unui proiect, clic pe „+" pentru a adăuga componente.

Programarea etapelor

Etapele din backlog apar în panoul extins al componentei. Trage o etapă din backlog pe timeline pentru a crea o alocare.

Reprogramarea

Trage orice bloc de alocare la o nouă dată. HeadOps calculează automat efectul în cascadă folosind motorul EDF. Dacă mutarea ar crea depășiri de termen, vei vedea un dialog de avertizare.

Cum funcționează algoritmii de planificare

Nu trebuie să fii inginer software ca să înțelegi cum gândește HeadOps. Mai jos găsești o explicație pe înțelesul tuturor pentru fiecare algoritm din motor.

🗓️

Calculul Zilelor Lucrătoare

Cum HeadOps numără zilele pe un calendar real de fabrică

HeadOps folosește un contor zi cu zi. Pornind de la o dată, avansează prin calendar o zi pe rând și numără doar zilele care se califică drept „zile lucrătoare". Omite:

  • WeekenduriSâmbăta și duminica în modul 5 zile, sau doar duminica în modul 6 zile.
  • Sărbători legaleorice dată adăugată în calendarul de sărbători al workspace-ului.
De ce contează: Dacă adaugi o sărbătoare în calendar, fiecare etapă care se extinde peste acea dată se prelungește automat cu o zi calendaristică — fără să atingi un singur bloc.
🔗

Reprogramare în Cascadă

Cum o singură mutare deplasează automat toate etapele din aval

Imaginează-ți trei etape aliniate: Pre-sudură → Sudură → Vopsitorie. Dacă împingi Pre-sudura cu 3 zile, te aștepți ca Sudura și Vopsitoria să se deplaseze și ele. Exact asta face HeadOps — dar mai inteligent.

Cum funcționează

Când muți un bloc de alocare, HeadOps măsoară intervalul în zile lucrătoare între etapa mutată și fiecare etapă ulterioară din proiect. Nu numără zile calendaristice — numără zilele lucrătoare efective.

Și la schimbarea duratei: Același algoritm se activează și când schimbi durata unei etape. Dacă Pre-sudura crește de la 3 la 5 zile, toate etapele din aval se deplasează automat pentru a păstra spațierea originală.

Reprogramare Dinamică (EDF)

Algoritmul în 5 faze care rezolvă suprapunerile în milisecunde

Acesta e „creierul" HeadOps. Când muți o componentă, motorul nu face doar cascadarea în cadrul proiectului — verifică dacă mutarea a suprapus accidental o echipă și, dacă da, redistribuie inteligent munca afectată în întreaga fabrică.

Faza 1: Blochează mutarea ta

Motorul respectă decizia ta. Programează toate etapele componentei mutate, începând de la noua dată aleasă, și marchează echipele respective ca „ocupate".

Faza 2: Identifică munca afectată

Motorul scanează fiecare componentă din sistem și întreabă: „Vreuna din etapele acestei componente folosește aceeași echipă, pe date suprapuse?" Doar componentele care răspund „da" intră în reprogramare.

Faza 3: Sortare după urgență (EDF)

Componentele afectate sunt ordonate după prioritate. Componenta cu termenul de livrare cel mai apropiat merge prima.

De ce termenele primele? E o strategie clasică în teoria planificării numită „Earliest Deadline First" (EDF). Intuiția e simplă: lucrul care trebuie gata cel mai devreme trebuie să primească primul slot de echipă disponibil.

Faza 4: Umple golurile

Pentru fiecare componentă din coadă, motorul programează etapele una câte una. Pentru fiecare etapă, întreabă: „Când e echipa disponibilă?" Folosește o tehnică de salt eficientă — sare peste blocurile de timp ocupat în loc să verifice fiecare zi individual.

Faza 5: Verifică depășirile de termen

În final, motorul verifică ultima etapă a fiecărei componente pentru a vedea dacă se termină după termenul de livrare. Dacă da, calculează exact câte zile de întârziere va avea proiectul.

🎯

Wizard de Alocare Automată

Cum HeadOps găsește cea mai bună combinație de echipe din mii de variante

Când adaugi o componentă nouă cu mai multe etape, te confrunți cu o problemă combinatorială: fiecare etapă poate fi atribuită mai multor echipe. Wizard-ul le încearcă pe toate.

Pasul 1: Identifică echipele eligibile

Pentru fiecare etapă, HeadOps identifică tipul de etapă și găsește toate echipele asociate acelui tip.

Pasul 2: Generează toate combinațiile

Motorul creează fiecare combinație posibilă de atribuiri echipă-etapă. O limită de siguranță capează la 100.000 de combinații pentru viteză.

Pasul 3: Simulează fiecare program

Pentru fiecare combinație, motorul simulează programul ca și cum ai fi plasat manual fiecare etapă. Verifică calendarul existent al fiecărei echipe și găsește cel mai devreme slot fără conflict.

Pasul 4: Selectează câștigătorul

Combinația cu data de finalizare cea mai devreme câștigă.

Exemplu concret: O componentă are 4 etape (Pre-sudură, Sudură, Electric, Testare) cu câte 3 echipe eligibile. Wizard-ul evaluează toate cele 81 de combinații în sub 50 de milisecunde.
🛡️

Detectare Conflicte

Cum HeadOps detectează instant echipele suprapuse

Un „conflict" în HeadOps înseamnă că o echipă a fost atribuită la două etape ale căror intervale de date se suprapun.

Cum funcționează detectarea

Motorul grupează toate alocările pe echipă. Pentru fiecare echipă, sortează atribuirile după data de start și scanează lista căutând suprapuneri. La găsirea unei suprapuneri, ambele blocuri sunt marcate ca „în conflict" cu un overlay roșu pe canvas.

Rezolvarea conflictelor

Ai două opțiuni. Poți muta manual unul dintre blocurile conflictuale la o nouă dată — ceea ce declanșează algoritmii de cascadă și reprogramare. Sau poți da clic pe „Reprogramează Tot", care reconstruiește întregul program de la zero.

Gata de start?

Creează-ți contul și configurează workspace-ul în mai puțin de 5 minute.