Programi: |
Inxhinieria softuerike |
| Cikli i studimeve: | Cikli i dytë (Pasdiplomike) |
| Fakulteti: | Shkencat dhe Teknologjitë Bashkëkohore |
| Viti akademik: | 2023 / 2024 |
| SETK: | 120 (2 vite) |
| Vendimi: |
Programi i magjistraturës për inxhinieri sotuerike është dizajnuar që studentëve t’u ndihmojë në avancimin e njohurive të tyre në fusha specifike të shkencave kompjuterike, të orientohen drejt hulumtimit dhe të mësojnë që shkathtësitë e fituara teorike dhe praktike t’i zbatojnë në sektorin e industrisë dhe të biznesit.
Programi kultivon mendim kreativ dhe qasje inovuese në zgjidhjen e problemeve përmes bazave solide teorike dhe teknologjive të reja.
Programi i magjistraturës për inxhinieri softuerike është përgatitur në bazë të modelit të Bolonjës, të organizimit të studimeve në kohëzgjatje prej katër semestrave. Ky program është përkatës edhe për ata të cilët i kryejnë studimet deri në diplomim dhe me program trevjeçar.
Programi do t’i ofrojë studentëve njohuritë dhe shkathtësitë e nevojshme për të kontribuar në të gjitha aspektet e procesit të zhvillimit të softuerit, duke përfshirë këtu planifikimin, bashkëpunimin, specifikimin, projektimin, zhvillimin, shpërndarjen dhe mirëmbajtjen e produkteve softuerike. Përveç kësaj, studentët do të fitojnë aftësi të përgjithshme si të menduarit analitik dhe kritik, punën ekipore dhe punën në mjediset shumëkulturore, të planifikimit dhe organizimit etj
Pas mbarimit të këtij programi, të diplomuarit do të kenë mundësi të karrierës në industri të ndryshme, kryesisht duke përmbushur nevojat për hartimin e sistemeve kompjuterike, të tilla si zhvillues softueri, testues softueri, menaxher i projekteve dhe proceseve softuerike.
Semestri i fundit i studimeve përfshin përpilimin e tezës së magjistraturës, duke ju mundësuar kështu të diplomuarve t’i vazhdojnë studimet e tyre drejt doktoratës në shkencat kompjuterike.
Njohuritë dhe të kuptuarit
- Njohuri dhe të kuptuarit e avancuar në fushën e zhvillimit të softuerit dhe të aplikacioneve, duke përfshirë:
- Zhvillimin e softuerit, analizën e nevojave, projektimin, kodimin, testimin;
- Gjuhët e programimit, analizën e tyre dhe përdorimin në zhvillimin e zgjidhjeve të ndryshme softuerike, analizën e sistemeve softuerike, zhvillimin e Internet aplikacioneve dhe sigurinë, rrjetat;
- Njohja e koncepteve të përparuara të informatikës;
- Menaxhimi me projekte të mëdha softuerike;
Aplikimi i njohurive dhe të kuptuarit
- Mund të aplikojnë, të përdorin, të zhvillojnë dhe të vendosin sisteme të avancuara softuerike.
- Mund të ofrojnë dhe të zbatojnë metoda dhe metodologji të ndryshme të zhvillimit të softuerit për ofrimin e zgjidhjeve të mëdha informatike.
- Mund të përdorin mjete të ndryshme për zhvillimin e softuerit dhe t’i programojnë ato duke përdorur shell, skripta dhe programe të kompajluara në mjedise të pavarura ose në web.
- Munden në mënyrë origjinale, kritike dhe krijuese të marrin pjesë në procesin e zgjidhjes së problemeve në mjedise të reja, të paparë apo të panjohur për zhvillimin e softuerit.
- Janë në gjendje të organizojnë një sistem softuerik me qëllim të zgjidhjes së çështjeve të ndryshme sociale, ekonomike dhe/ose teknologjike.
- Janë në gjendje të marrin pjesë në projekte kërkimore si një bazë për zhvillim të mëtejshëm akademik.
- Demonstrojnë ekspertizë në trajtimin e problemeve reale në fushën e zhvillimit të programeve dhe të menaxhimit të projekteve.
- Mund të zhvillojnë dhe zbatojnë ide origjinale dhe krijuese.
Aftësitë për të vlerësuar
- Në mënyrë të përshtatshme mund të mbledhë, t’i analizojë dhe t’i vlerësojë të dhënat duke përdorur mjete dhe sisteme moderne për çështje të ndryshme sociale, ekonomike dhe/ose organizative.
- Ka aftësi për të vlerësuar në mënyrë adekuate afatet e kërkuara, burimet dhe rreziqet në planifikimin, zhvillimin, vendosjen dhe mirëmbajtjen e programeve, duke përdorur mjetet e duhura.
- Mund t’i argumentojë dhe t’i shpjegojë idetë, konceptet.
- Mund të testojë, të vlerësojë dhe të vendosë në mënyrë të përshtatshme për zgjidhje të mundshme e të ndryshme informatike.
Aftësitë e komunikimit
- Në mënyrë të qartë dhe të kuptueshme mund t’ua komunikојë njohuritë, të dhënat dhe rezultatet e studimeve anëtarëve të ekipit, klientëve, menaxherëve dhe pjesëmarrësve të tjerë në zhvillimin e softuerit.
- Mund ta përshtatë stilin dhe formën e shprehjes në mënyrë adekuate kur i adresohet një audience të pakualifikuar.
- Mund të iniciojë, të udhëheqë dhe të marrë përgjegjësi për punën e një grupi të njerëzve.
- Është në gjendje të bëjë përgatitje për kërkime dhe të kontribuojë në fushën e zhvillimit të softuerit.
Aftësitë e të mësuarit
- Mund t’i ndjekë zhvillimet e reja në fushën e zhvillimit të softuerit dhe aplikacioneve, të mësojë teknologji të reja dhe t’i implementojë ato.
- Mund t’i identifikojë nevojat e veta dhe drejtimet e zhvillimit autonom personal
Semestri 1
-
[6 SETK]
Metodologjia e hulumtimit
Qëllimi i kësaj lënde është që t’u sigurojë studentëve njohuri dhe kuptim të teorive dhe metodologjive të ndryshme që përdoren në fushën e inxhinierisë softuerike. Pas mbarimit të lëndës, studentët do të jenë të aftë: * të shpjegojnë dhe të kuptojnë rëndësinë e koncepteve themelore shkencore, * të kërkojnë në mënyrë efikase informacione dhe literaturë relevante; * të identifikojnë, formulojnë dhe të përshkruajnë problemet hulumtuese; * të bëjnë zgjedhje të kujdesshme të qasjeve alternative në hulumtim; * t’i përshkruajnë, t’i krahasojnë dhe t’i shpjegojnë përparësitë dhe mangësitë e metodave të ndryshme shkencore për grumbullimin e të dhënave sasiore dhe cilësore; * t’i aplikojnë metodat themelore shkencore gjatë analizës së të dhënave sasiore dhe cilësore; * t’i kuptojnë kornizat e ndryshme për ndërtimin e teorive; * t’i vlerësojnë dhe t’i shqyrtojnë publikimet shkencore;
-
[6 SETK]
Strukturat e të dhënave dhe algoritmet e avancuara
Kjo lëndë bazohet në dituritë paraprake nga lëmi i algoritmeve dhe strukturave të të dhënave. Qëllimi i lëndës është t’i njoftojë studentët me algoritmet e avancuara dhe efikase dhe me strukturat e përshtatshme të cilat përdoren për organizimin, kërkimin dhe optimizimin e të dhënave. Me këtë lëndë gjithashtu mbulohet edhe efikasiteti teorik i algoritmeve dhe përcaktimi praktik i tyre, me qëllim që të mundësohet krahasimi i algoritmeve të ndryshme. Gjatë mësimit, studentët do të njihen me disa algoritme të njohura, veçanërisht me ato për kërkim dhe optimizim në struktura jolineare, siç janë pemët dhe grafet.
-
[6 SETK]
Proceset softuerike dhe menaxhimi
Qëllimi i kësaj është t’i pajisë studentët me një kuptim të thellë, kritik dhe sistematik të parimeve dhe teknikave për menaxhimin e projektimit të aplikacioneve softuerike efektive. Studentëve u paraqitet një metodologji e të kuptuarit të menaxhimit me zhvillimin e zgjidhjeve softuerike. Objektivat janë: profilet dhe llojet e projekteve softuerike, kuptimi i krijimit të strukturës së projektit, qasja menaxheriale në zgjidhjen e problemeve dhe mjetet e nevojshme, vlerësimi dhe menaxhimi i rrezikut, monitorimi dhe kontrolli, ruajtja e cilësisë, teknikat për menaxhimin e zhvillimit të shkathët të softuerit, etj.
-
[6 SETK]
Punim seminarik
Kjo lëndë mbulon aspektet e ndryshme të menaxhimit të zhvillimit të sistemeve softuerike dhe punën në grupe. Gjithashtu mbulon edhe menaxhimin e teknikave të zhvillimit të shpejtë të softuerit. Studentëve u jepet mundësi ta përpilojnë punimin seminarik nën mbikëqyrje të profesorit, që t’i theksojnë njohuritë dhe shkathtësitë e tyre, nëpërmjet përdorimit të mjeteve për ndjekje dhe mbikëqyrje të projekteve. Kjo lëndë i njofton studentët me mjetet softuerike për punë në grup; vendimmarrje organizative; me potencialet i një sistemi efektiv në menaxhimin e informacionit; të mësuarit organizativ; me burimin e përparësive konkurruese; me organizatat në arenën globale.
-
[6 SETK]
Lëndë zgjedhore e lirë 1
Lëndë zgjedhore të lira
Semestri 2
-
[6 SETK]
Analiza dhe projektimi i softuerit
Kjo lëndë mundëson shqyrtim të plotë të dizajnimit të softuerit; vazhdimin e studimit të modeleve të projektimit (design patterns), kornizat e projektimit dhe të arkitekturave; rishikimin e arkitekturave aktuale për middleware; projektimin e sistemeve të shpërndara duke përdorur middleware; projektimin e bazuar në komponentë. Lënda përmban edhe teorinë e matjes dhe përdorimin i metrikave në dizajn; karakteristikat e dizajnit të mirë, siç janë: performansa, besueshmëria, siguria, ripërdorueshmëriatja etj. Këtu është përfshirë edhe matja e cilësive të brendshme dhe e kompleksitetit të softuerit; vlerësimi dhe evoluimi i dizajnit; bazat e evolucionit të softuerit, riinxhinieringu dhe inxhinieringu revers.
-
[6 SETK]
Paradigmat e programimit
Kjo lëndë siguron mbikëqyrjen e parimeve të projektimit të gjuhëve programore dhe të temave lidhur me zbatimin e tyre. Temat përfshijnë krahasimin e paradigmave më të rëndësishme programore: programimin deklarativ, funksional, procedural, logjik, racional dhe atë me objekte dhe paradigma të tjera të orientuara të programimit. Gjithashtu, janë përfshirë edhe lloje të të dhënave, metoda të përcaktimit të semantikës dhe sintaksës gjuhësore, strukturat e kontrollit, ndërlidhja e të dhënave dhe tema të tjera. Lënda jep hyrjen në gjuhët alternative programuese si LISP, gjuhët logjike si Prolog, gjuhët e skripteve Perl. Studentët në këtë lëndë do të shkruajnë programe në LISP, Prolog dhe në PERL.
-
[6 SETK]
Sistemet e shpërndara
Në këtë lëndë trajtohen arkitektura e sistemeve të shpërndara; komunikimi ndër-proces; llojet e socket-eve dhe platformat e zhvillimit; zgjidhjet aplikative standarde për sistemet informatike të shpërndara; bazat e programimit klient-server; komunikimi ndërmjet nyjave në sistemet kompjuterike të shpërndara të bazuara në Internet. Platformat middleware ( CORBA, JavaBeans, DCOM, .NET); sistemet multi-agjentë në një mjedis të shpërndarë; shërbimet dhe teknologjitë ueb në sistemet kompjuterike të shpërndara (arkitektura dhe zbatimi).
-
[6 SETK]
Kurs laboratorik
Lënda kërkon punë të orientuar ekipore në laborator; aplikim të digjitalizimit; E-prezantim; të drejtat e autorësisë; mjetet për digjitalizim siç janë: skanimi i fotografive, rezolucioni, përpunimi i fotografive, mjete për përpunim të fotografive bitmap dhe vektoriale.
-
[6 SETK]
Lëndë zgjedhore e lirë 2
Lëndë zgjedhore të lira
Semestri 3
-
[6 SETK]
Testimi i softuerit
Në këtë lëndë mësohen përkufizimet dhe matja e besueshmërisë dhe të konfidencialitetit; besueshmëria dhe modelimi i disponueshmërisë; zbulimi i gabimeve dhe kodet për korrigjimin e gabimeve; projektimi i sistemeve të besueshme, si janë: gabimet e rastit kundrejt atyre të përhershmeve; burimet e gabimeve në softuer, teknikat për tolerancën ndaj gabimeve, besueshmëria në pajisjet VLSI, sistemet e kontrollit ajror, sistemet e telekomunikacionit, dhe aplikacionet industriale të kontrollit; sistemet e besueshme për procesimin e transaksioneve; qasja në internet dhe besueshmëria e softuerit; modelet për besueshmërinë e softuerit; metodat për besueshmërinë e softuerit; besueshmëria në sistemet operative dhe në strukturat e të dhënave; konfidencialiteti në bazat e të dhënave dhe sistemet e shpërndara; dizajnimi i testeve; metodat për gjenerimin e testeve; Automatic Test Pattern Generation (ATPG).
-
[6 SETK]
Projekt ekipor
Kjo lëndë është lëndë e hapur dhe studentët do të mund të zgjedhin të punojnë në ndonjë projekt ekipor lidhur ma arritjet e fundit në fushën e inxhinierisë softuerike. Temat e mundshme përfshijnë fushat siç janë: analiza dhe dizajnimi i sistemeve softuerike, zhvillimi i aplikacioneve grafike, aplikacionet multimediale dhe ato për tregti elektronike, testimi, përpunimi statistik i të dhënave, arsyetimi metaforik dhe arsyetimi me analogji.
-
[6 SETK]
Teoria a automatëve dhe gjuhët formale
Lënda trajton temat në vijim: teoria e automatëve, strategjitë algoritmike, algoritmet themelore kompjuterike, algoritmet kriptografike, algoritmet gjeometrike, algoritmet paralele, algoritmet e shpërndara, analiza themelore algoritmike, analiza e avancuar algoritmike, kompleksiteti, klasat e kompleksitetit P dhe NP.
-
[6 SETK]
Siguria e sistemeve operative
Lënda përfshinë temat që vijojnë: Strukturat e enkriptimit. Gjithashtu jepen shembuj të protokolleve për enkriptim; enkriptimi me çelësa sekretë; enkriptimi me çelësa publikë; ndërhyrja në sistemet e koduara; mekanizmat themelorë të mbrojtjes në sistemet operative; arkitektura e sistemeve mbrojtëse në sistemet operative, autentikimi; kontrolli i qasjes (Access Control): Listat e qasjes, implementimi i kontrollit të qasjes (Unix, Java), modelet Bell dhe La Padula, mekanizmat e sistemeve operative për mbështetjen e politikave MAC, politikat e sigurisë Clark-Wilson dhe mur kinez; dobësitë e mbrojtjes në sistemet operative; sistemet operative me bërthamë të sigurt.
- [6 SETK] Lëndë zgjedhore 1
Semestri 4
-
[30 SETK]
Punimi i magjistraturës
Kjo lëndë u mundëson studentëve t’i bartin shkathtësitë dhe njohuritë e tyre për hulumtimin dhe hartimin e detyrës më të ndërlikuar – shkrimit të punimit të magjistraturës. Lënda është paraparë të jetë plotësisht praktike dhe studentët t’i fitojnë njohuritë dhe aftësitë, shkathtësitë dhe besimin e nevojshëm që t'i qasen hulumtimit dhe shkrimit të tezës. Lënda ka vetëm një rezultat kthyes - t'u mundësojë studentëve ta shkruajnë tezën e magjistraturës me vështirësi minimale dhe me një efektivitet maksimal. Gjithçka që është paraparë të bëhet ka për qëllim përmirësimin e teknikave të hulumtimit dhe të stilit të shkrimit të magjistraturës, duke pasur kujdes me këtë rast për ndalimin e shërbimit me mjete të palejueshme, siç janë: plagjiatura dhe cenimi i të drejtave të autorit, që ndalohen me Statutin e UEJL-së.