Changes between Version 3 and Version 4 of RelationalModel
- Timestamp:
- 05/13/26 18:35:14 (13 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
RelationalModel
v3 v4 8 8 За да се обезбеди скалабилност, одржливост и јасна сегрегација на податоците, релациониот модел е дизајниран преку строго дефинирани модули (сектори). Секој модул е означен со специфичен префикс во самите табели и управува со точно определен домен од универзитетскиот екосистем. Оваа модуларност овозможува робусна интеграција и минимизирање на редундантноста, создавајќи единствена точка на вистината (Single Source of Truth). 9 9 10 === 1. Општи и основни податоци (Core System)10 === 1. Општи и основни податоци 11 11 Овој сегмент ја претставува основата на системот и намерно не користи специфичен префикс, бидејќи овие табели се референцирани од сите останати модули. 12 12 … … 34 34 35 35 === 4. Студентски прашања и Академски менаџмент (Префикс: sm_) 36 Јадрото на образовниот процес кое обезбедува грануларна контрола врз студиските програми, наставата и студентските досиеја.36 Ова е јадрото на образовниот процес кое обезбедува грануларна контрола врз студиските програми, наставата, акредитациите и студентските досиеја. Дизајнирано е за максимална флексибилност, поддржувајќи различни образовни модели зависно од организациската единица. 37 37 38 Академск о Верзионирање (Предмет наспроти Акредитација): Системот прави јасна логичка дистинкција помеѓу апстрактниот поим sm_predmet (пр. "Објектно-ориентирано програмирање") и неговата официјална, законска sm_akreditacija. Акредитацијата содржи специфичен број на кредити, верзија и валидност. Ова спречува конфликти и губење на историја кога еден предмет ја менува својата тежина или содржина низ годините.38 Академска година и Динамични Семестри: Системот поддржува целосно приспособлива организација на академското време. Преку sm_akademska_godina, секоја организациска единица може да си дефинира своја година. Во рамки на годината се креираат sm_akademski_semestar, каде преку sm_tip_akademski_semestar може слободно да се дефинира дали институцијата работи на класични семестри, триместри, квартали итн. Наплатата на партиципацијата и квотите строго се дефинираат за академскиот семестар преку sm_akademski_semestar_smer_kvota. 39 39 40 Реализација и Паралелки: Во даден sm_akademski_semestar, акредитираниот предмет се инстанцира во sm_kurs_realizacija. Оваа реализација дополнително се дели на логички групи во sm_kurs_realizacija_paralelka (пр. Македонска група 1, Англиска група) кон кои преку sm_paralelka_nastaven_kadar се алоцираат конкретните професори и асистенти врз база на нивниот неделен фонд на часови.40 Студиски програми (Смерови) и Предуслови: Смеровите (sm_smer) се верзионираат преку sm_smer_verzija (за да се следат промените низ годините). За еден студент да може да се запише на даден смер, тој мора да ги исполни логички дефинираните предуслови за упис (sm_smer_upis_grupa_preduslov и sm_smer_upis_preduslov), кои најчесто бараат одредени претходни квалификации (најчесто би се користело за втор/трет циклус студии). Дополнително, дефинирани се и строги предуслови за дипломирање (sm_smer_diplomiranje_grupa_preduslov и sm_smer_diplomiranje_preduslov) кои утврдуваат точен број на кредити или задолжителни достигнувања (пр. задолжителна пракса). 41 41 42 Студентски Упис и Оценување: Студентот се запишува на конкретна верзија од смер (sm_studenti_smerovi). При запишување на семестар (sm_student_semestar_upis), тој пријавува конкретни курсеви (sm_student_upisan_kurs) и автоматски или рачно се распределува во паралелка. Пријавувањето испити се врши во конкретна sm_ispitna_sesija (пр. Јануарска, Септемвриска), а финалните резултати со бодови и скалести оценки се трајно запишани во sm_student_ocena_zapis, поврзани со sm_sistem_ocenuvanje_vrednost за да се утврди дали предметот е положен. 42 Евиденција на Студенти (Индекси и EAV): При уписот (sm_studenti), системот користи напреден механизам за автоматско генерирање на број на индекс по однапред дефинирани правила специфични за факултетот (sm_organizaciona_edinica_upis_pravilo и sm_upis_pravilo_brojac). За чување на специфични мета-податоци за студентите (кои се разликуваат од факултет до факултет), се користи EAV архитектура преку sm_organizaciona_edinica_student_atributi и sm_organizaciona_edinica_student_atributi_vrednosti. 43 44 Акредитациски тела, Предмети и Акредитации: Системот прави јасна логичка дистинкција помеѓу апстрактниот поим sm_predmet (пр. "Математика 1") и неговата законска рамка sm_akreditacija. Секоја акредитација е валидирана од специфична акредитациска комисија/тело (sm_akreditacisko_telo), која пак има свои дефинирани членови преку sm_akreditacija_telo_clen. Самата акредитација го дефинира точниот број на кредити, фондот на часови (sm_akreditacija_fond) и логичките предуслови кои мора студентот да ги исполни за да го слуша предметот (sm_akreditacija_predmet_grupa_preduslov и sm_akreditacija_predmet_preduslov). 45 46 Курсеви, Паралелки и Алокација на кадар: Во даден семестар, акредитацијата се инстанцира во жива материја – sm_kurs_realizacija. Оваа реализација се дели на помали групи или sm_kurs_realizacija_paralelka (пр. Македонска група, Лабораториска група). На овие паралелки потоа им се доделува наставен кадар (sm_paralelka_nastaven_kadar), земајќи го предвид нивниот неделен фонд на часови. 47 48 Студентски Упис и Приспособливо Оценување: Студентот го пријавува семестарот (sm_student_semestar_upis) и запишува курсеви (sm_student_upisan_kurs). Испитите се пријавуваат и полагаат во организирани сесии (sm_ispitna_sesija). Наместо статични оценки од 5 до 10, системот нуди целосно приспособлив систем на оценување (sm_sistem_ocenuvanje и sm_sistem_ocenuvanje_vrednost) кој се дефинира на ниво на организациска единица. Ова поддржува американски систем (A, B, C), бодовен систем или класичен броен систем. Крајниот резултат трајно се бележи во sm_student_ocena_zapis. 49 50 Достигнувања и Дипломирање: За активности кои не се класични испити (како пракси, волонтерска работа, дипломски труд), се користи табелата sm_student_dostignuvanje која подлежи на одобрување од наставен кадар. Целиот процес се заокружува кога студентот ги исполнува условите за дипломирање, генерирајќи запис во sm_organizaciona_edinica_diplomirani врзан за финалниот генериран документ (дипломата). 43 51 44 52 === 5. Финансии, Сметководство и Плати (Префикс: fin_) 45 53 Овој модул е дизајниран како "single source of truth" за сите финансиски текови, директно интегриран со академскиот и HR модулот. 46 54 47 А. Студентски финансии и Наплати55 А. Финансиски обврски, Мулти-канални Наплати и Строги Исплати 48 56 49 Сите задолженија на студентот (школарина, такси за пријавување испити, казни) автоматски генерираат запис во fin_finansiska_obvrska. Оваа табела ја чува originalna_suma (колку изнесувало задолжението првично) и otvorena_suma (колку преостанува за плаќање во моментот, поддржувајќи плаќање на рати).57 Генерирање Обврски: Сите задолженија на студентот (школарина, такси за пријавување испити, казни) автоматски генерираат запис во fin_finansiska_obvrska. Оваа табела ја чува originalna_suma (колку изнесувало задолжението првично) и otvorena_suma (колку преостанува за плаќање во моментот, поддржувајќи плаќање на рати). Деталите за тоа од што се состои обврската се чуваат во fin_finansiska_obvrska_stavka (каде износот се пресметува како количина * единечна цена). 50 58 51 Деталите за тоа од што се состои обврската се чуваат во fin_finansiska_obvrska_stavka (каде износот се пресметува како количина * единечна цена).59 Мулти-канални Наплати (EAV Архитектура) и Алокација: За наплати (влезни средства), системот поддржува широк спектар на различни методи преку флексибилен EAV модел. Наместо статични колони за секој можен сервис, табелите fin_korisnik_vid_naplati и fin_korisnik_vid_naplati_attributi ги дефинираат достапните канали (на пр. Stripe, PayPal, Платежна картичка, класичен банкарски трансфер) и нивните потребни полиња. Специфичните податоци за корисникот (како Stripe customer token или PayPal email) динамично се чуваат во fin_korisnik_naplata_atributi_vrednosti. Кога студентот ќе изврши уплата преку кој било од овие канали, се креира запис во fin_naplati. Клучно е да се напомене дека табелата fin_naplata_alokacija го претставува реалното движење на парите во системот (финансиското порамнување). Оваа табела го зема физичкото плаќање и прецизно го алоцира кон една или повеќе отворени финансиски обврски (или нивни ставки), сразмерно намалувајќи ја нивната отворена сума сè додека целосно не се затвори задолжението. 52 60 53 Кога студентот ќе изврши уплата преку банкарски извод или платежна картичка, се креира запис во fin_naplati. Преку табелата fin_naplata_alokacija, оваа уплата прецизно се алоцира кон една или повеќе отворени финансиски обврски, сразмерно намалувајќи ја нивната отворена сума сè додека не биде целосно подмирена.61 Институционални Исплати (Payouts) и Алокација: Од друга страна, универзитетот често има потреба да генерира излезни средства кон студенти и вработени преку fin_isplatna_obvrska (за стипендии, рефундации на средства, или дополнителни хонорари). За разлика од наплатите, исплатите подлежат на строги законски и институционални регулативи. Поради тоа, исплатите не се вршат преку дигитални паричници, туку исклучиво преку легитимни трансакциски сметки (банкарски трансфери). Поврзувањето оди директно преку fin_korisnici_isplata кое покажува кон fin_transakciski_smetki (каде се чуваат IBAN и SWIFT податоците). Секоја иницирана исплата се евидентира во fin_isplati. Повторно, табелата fin_isplata_alokacija е трансакцискиот центар кој го означува реалното излезно движење на парите – таа ја поврзува извршената исплата од банката со соодветната институционална обврска, затворајќи го финансискиот циклус и израмнувајќи ги сметководствените книги. 54 62 55 63 Б. Напредна пресметка на Плати (Payroll Subsystem) 56 64 Модулот за плати е изграден да поддржи комплексни сценарија, користејќи повеќеслојна архитектура за максимална прецизност, флексибилност и ревизија: 57 65 58 Основа (The Baseline): Во табелата vr_vraboten_kompensacija се дефинираат фиксните параметри за вработениот (основна бруто/нето плата, валута, основен фонд на часови) кои произлегуваат директно од неговиот тековен договор/ангажман. Ова е "стандардната" плата.66 Основа: Во табелата vr_vraboten_kompensacija се дефинираат фиксните параметри за вработениот (основна бруто/нето плата, валута, основен фонд на часови) кои произлегуваат директно од неговиот тековен договор/ангажман. Ова е "стандардната" плата. 59 67 60 Варијабилни влезови (Dynamic Inputs): Секој месец, пред самата пресметка, во табелата fin_plata_vlez се внесуваат сите променливи елементи за тој месец. Ова вклучува прекувремени часови, денови на боледување (кои носат различен процент на исплата), стимулативни бонуси, задршки или отсуства. Секој влез е категоризиран преку fin_tip_platna_komponenta.68 Варијабилни влезови: Секој месец, пред самата пресметка, во табелата fin_plata_vlez се внесуваат сите променливи елементи за тој месец. Ова вклучува прекувремени часови, денови на боледување (кои носат различен процент на исплата), стимулативни бонуси, задршки или отсуства. Секој влез е категоризиран преку fin_tip_platna_komponenta. 61 69 62 Пресметковен период (The Cycle): Целиот процес се групира во месечен fin_plata_period (пр. "Плата за Ноември 2026"), кој ги заклучува пресметките за дадена организациска единица.70 Пресметковен период: Целиот процес се групира во месечен fin_plata_period (пр. "Плата за Ноември 2026"), кој ги заклучува пресметките за дадена организациска единица. 63 71 64 Генерална пресметка (The Paycheck): Откако ќе се изврши пресметката, за секој вработен се генерира еден финален, сумарен запис во fin_plata_stavka_vraboten. Овој ред претставува "исплатното ливче" и ги содржи конечните суми: вкупното бруто (bruto_vkupno), вкупното нето (neto_vkupno), сумираните даноци и сумираните одбитоци.72 Генерална пресметка: Откако ќе се изврши пресметката, за секој вработен се генерира еден финален, сумарен запис во fin_plata_stavka_vraboten. Овој ред претставува "исплатното ливче" и ги содржи конечните суми: вкупното бруто (bruto_vkupno), вкупното нето (neto_vkupno), сумираните даноци и сумираните одбитоци. 65 73 66 Детализација на пресметката (The Audit Trail): За да се знае точно како е добиена крајната сума и да се овозможи строга финансиска ревизија, системот креира повеќе редови во fin_plata_komponenta. Оваа табела ја разбива платата на атомарни делови. Секој ред овде претставува една специфична ставка (на пр., еден ред ја објаснува основната плата, втор ред го пресметува додатокот за минат труд, трет ред го пресметува бонусот од plata_vlez, четврт ред го пресметува персоналниот данок). Збирот од сите овие компоненти математички се пресликува во главната fin_plata_stavka_vraboten.74 Детализација на пресметката: За да се знае точно како е добиена крајната сума и да се овозможи строга финансиска ревизија, системот креира повеќе редови во fin_plata_komponenta. Оваа табела ја разбива платата на атомарни делови. Секој ред овде претставува една специфична ставка (на пр., еден ред ја објаснува основната плата, втор ред го пресметува додатокот за минат труд, трет ред го пресметува бонусот од plata_vlez, четврт ред го пресметува персоналниот данок). Збирот од сите овие компоненти математички се пресликува во главната fin_plata_stavka_vraboten. 67 75 68 76 === 6. Управување со документи (Префикс: dok_)
