Changes between Version 2 and Version 3 of RelationalModel


Ignore:
Timestamp:
05/13/26 18:16:04 (13 days ago)
Author:
231102
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RelationalModel

    v2 v3  
    33Со цел полесен и подобар преглед на целокупниот дијаграм:
    44 - https://dbdiagram.io/d/69bb4c6378c6c4bc7a1aaa3f
     5
     6== Архитектура на базата на податоци (Детален модуларен преглед)
     7
     8За да се обезбеди скалабилност, одржливост и јасна сегрегација на податоците, релациониот модел е дизајниран преку строго дефинирани модули (сектори). Секој модул е означен со специфичен префикс во самите табели и управува со точно определен домен од универзитетскиот екосистем. Оваа модуларност овозможува робусна интеграција и минимизирање на редундантноста, создавајќи единствена точка на вистината (Single Source of Truth).
     9
     10=== 1. Општи и основни податоци (Core System)
     11Овој сегмент ја претставува основата на системот и намерно не користи специфичен префикс, бидејќи овие табели се референцирани од сите останати модули.
     12
     13Идентитети и автентикација: Табелата Lice претставува централен, унифициран регистар за сите физички лица во системот (студенти, професори, администрација, надворешни соработници). Ова спречува дуплирање на лица кои се и студенти и вработени (на пр. демонстратори). Табелата Korisnici се надоврзува стриктно на лицето и ги чуваингеренциите за најава и системски пристап.
     14
     15Географски шифрарници: Стандардизација на локациските податоци се врши преку поврзаните табели Drzavi и Gradovi.
     16
     17=== 2. Организациска структура и Инфраструктура (Префикс: or_)
     18Овој модул ја пресликува целосната физичка и логичка хиерархија на образовната институција, овозможувајќи прецизно мапирање на ресурсите.
     19
     20Хиерархија на институцијата: Табелата or_organizaciona_edinica користи рекурзивна врска (oe_id покажува кон истата табела) за да креира неограничено длабоко дрво на структурата (на пр. Универзитет -> Факултет за Информатика -> Институт за Софтверско Инженерство -> Катедра).
     21
     22EAV Архитектура за атрибути: За да се избегне постојано менување на шемата при додавање нови специфични карактеристики за различните факултети, се користи Entity-Attribute-Value (EAV) модел преку or_tipovi_organizaciona_edinica_atributi и or_organizaciona_edinica_atributi_vrednosti. Ова овозможува динамично дефинирање на задолжителни полиња со Regex валидација за секој тип на организациска единица посебно.
     23
     24Просторно мапирање (GIS): Системот вклучува напредно следење на простории преку or_mapa_objekt каде координатите се чуваат во напреден просторен формат geom(4326). Сите згради, амфитеатри и лаборатории се мапираат преку or_mapa_objekt_organizacija, што е круцијално за генерирање на точни просторни распореди без преклопување.
     25
     26=== 3. Човечки ресурси и Кадар (Префикс: vr_)
     27Сеопфатен HR потсистем за управување со кадарот, нивните квалификации и комплексниот модел на вработување.
     28
     29Ангажмани и Договори: Не постои едноставно "вработен". Наместо тоа, централната табела vr_vraboten_angazman го врзува лицето со конкретна организациска единица, работна позиција (vr_rabota_pozicija), тип на ангажман (полно работно време, хонорарно, визитинг) и FTE (Full-time equivalent) норматива. Едно лице може да има повеќе паралелни ангажмани (пр. професор на еден факултет, надворешен соработник на друг).
     30
     31Управување со Квалификации и Предуслови: Системот строго ги контролира вработувањата преку логички групирања (vr_pozicija_preduslov_grupa со AND/OR оператори) и vr_pozicija_preduslov. Пред некое лице да биде назначено на позиција, системот автоматски проверува дали лицето ги поседува потребните дипломи и степени во vr_lice_kvalifikacija.
     32
     33Академски звања и функции: Историјата на академските унапредувања (асистент, доцент, вонреден професор) се следи во vr_vraboten_akademsko_zvanje со датум од/до, додека мандатните функции (Декан, Продекан) се евидентираат во vr_vraboten_funkcija.
     34
     35=== 4. Студентски прашања и Академски менаџмент (Префикс: sm_)
     36Јадрото на образовниот процес кое обезбедува грануларна контрола врз студиските програми, наставата и студентските досиеја.
     37
     38Академско Верзионирање (Предмет наспроти Акредитација): Системот прави јасна логичка дистинкција помеѓу апстрактниот поим sm_predmet (пр. "Објектно-ориентирано програмирање") и неговата официјална, законска sm_akreditacija. Акредитацијата содржи специфичен број на кредити, верзија и валидност. Ова спречува конфликти и губење на историја кога еден предмет ја менува својата тежина или содржина низ годините.
     39
     40Реализација и Паралелки: Во даден sm_akademski_semestar, акредитираниот предмет се инстанцира во sm_kurs_realizacija. Оваа реализација дополнително се дели на логички групи во sm_kurs_realizacija_paralelka (пр. Македонска група 1, Англиска група) кон кои преку sm_paralelka_nastaven_kadar се алоцираат конкретните професори и асистенти врз база на нивниот неделен фонд на часови.
     41
     42Студентски Упис и Оценување: Студентот се запишува на конкретна верзија од смер (sm_studenti_smerovi). При запишување на семестар (sm_student_semestar_upis), тој пријавува конкретни курсеви (sm_student_upisan_kurs) и автоматски или рачно се распределува во паралелка. Пријавувањето испити се врши во конкретна sm_ispitna_sesija (пр. Јануарска, Септемвриска), а финалните резултати со бодови и скалести оценки се трајно запишани во sm_student_ocena_zapis, поврзани со sm_sistem_ocenuvanje_vrednost за да се утврди дали предметот е положен.
     43
     44=== 5. Финансии, Сметководство и Плати (Префикс: fin_)
     45Овој модул е дизајниран како "single source of truth" за сите финансиски текови, директно интегриран со академскиот и HR модулот.
     46
     47А. Студентски финансии и Наплати
     48
     49Сите задолженија на студентот (школарина, такси за пријавување испити, казни) автоматски генерираат запис во fin_finansiska_obvrska. Оваа табела ја чува originalna_suma (колку изнесувало задолжението првично) и otvorena_suma (колку преостанува за плаќање во моментот, поддржувајќи плаќање на рати).
     50
     51Деталите за тоа од што се состои обврската се чуваат во fin_finansiska_obvrska_stavka (каде износот се пресметува како количина * единечна цена).
     52
     53Кога студентот ќе изврши уплата преку банкарски извод или платежна картичка, се креира запис во fin_naplati. Преку табелата fin_naplata_alokacija, оваа уплата прецизно се алоцира кон една или повеќе отворени финансиски обврски, сразмерно намалувајќи ја нивната отворена сума сè додека не биде целосно подмирена.
     54
     55Б. Напредна пресметка на Плати (Payroll Subsystem)
     56Модулот за плати е изграден да поддржи комплексни сценарија, користејќи повеќеслојна архитектура за максимална прецизност, флексибилност и ревизија:
     57
     58Основа (The Baseline): Во табелата vr_vraboten_kompensacija се дефинираат фиксните параметри за вработениот (основна бруто/нето плата, валута, основен фонд на часови) кои произлегуваат директно од неговиот тековен договор/ангажман. Ова е "стандардната" плата.
     59
     60Варијабилни влезови (Dynamic Inputs): Секој месец, пред самата пресметка, во табелата fin_plata_vlez се внесуваат сите променливи елементи за тој месец. Ова вклучува прекувремени часови, денови на боледување (кои носат различен процент на исплата), стимулативни бонуси, задршки или отсуства. Секој влез е категоризиран преку fin_tip_platna_komponenta.
     61
     62Пресметковен период (The Cycle): Целиот процес се групира во месечен fin_plata_period (пр. "Плата за Ноември 2026"), кој ги заклучува пресметките за дадена организациска единица.
     63
     64Генерална пресметка (The Paycheck): Откако ќе се изврши пресметката, за секој вработен се генерира еден финален, сумарен запис во fin_plata_stavka_vraboten. Овој ред претставува "исплатното ливче" и ги содржи конечните суми: вкупното бруто (bruto_vkupno), вкупното нето (neto_vkupno), сумираните даноци и сумираните одбитоци.
     65
     66Детализација на пресметката (The Audit Trail): За да се знае точно како е добиена крајната сума и да се овозможи строга финансиска ревизија, системот креира повеќе редови во fin_plata_komponenta. Оваа табела ја разбива платата на атомарни делови. Секој ред овде претставува една специфична ставка (на пр., еден ред ја објаснува основната плата, втор ред го пресметува додатокот за минат труд, трет ред го пресметува бонусот од plata_vlez, четврт ред го пресметува персоналниот данок). Збирот од сите овие компоненти математички се пресликува во главната fin_plata_stavka_vraboten.
     67
     68=== 6. Управување со документи (Префикс: dok_)
     69Модул за автоматизација на бирократијата и дигитална архива, целосно интегриран со останатите текови.
     70
     71Системот користи dok_dokument_templejti за дефинирање на HTML/URL обрасци за официјални документи како потврди за редовен студент, решенија за плата и договори за дело.
     72
     73Преку EAV пристапот во dok_dokument_templejt_atributi и dok_generiran_dokument_vrednosti, системот динамично бара и ги пополнува потребните полиња пред да го генерира и зачува финалниот dok_generiran_dokument.
     74
     75Имплементиран е систем за следење на авторизации преку dok_dokument_potpis, кој трајно бележи точно кој вработен ангажман (и од која функција, пр. Декан) дигитално или физички го авторизирал документот.
     76
     77=== 7. Надворешни Ентитети (Префикс: ent_)
     78Овој модул се грижи за B2B (Business-to-Business) релациите на универзитетот.
     79
     80Табелата ent_entiteti ги регистрира сите надворешни компании, добавувачи на услуги, владини агенции или партнерски институции.
     81
     82Табелата ent_entiteti_smetki ги мапира нивните трансакциски сметки кон глобалната табела fin_transakciski_smetki, овозможувајќи безбедно извршување на излезни исплати (пр. кон добавувачи) и автоматизирано фактурирање.