The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Fitim Guri, 2019-04-11 06:34:03

TIK klasa 12 zgjedhore

TIK klasa 12 zgjedhore

Bazat e të dhënave dhe menaxhimi i tyre

3.9 Operatorët e bashkësisë. Funksionet Statistikore. Group by
dhe Join

Nxënësi/ja: Situatë

-- koncepton dhe përdor Alisi ka krijuar tre tabela në SQL. Ai dëshiron që të
operatorët e bashkimit; marrë informacione nga të tre tabelat si edhe të gjejë
mesataren e nxënësve. Çfarë mund t’i sugjeroni për t’i realizuar këto
-- përdor funksionet veprime?
statistikore;

-- përdor Group by; Operatori UNION

-- lidh tabela të ndryshme Operatori Union përdoret për të bashkuar rezultatin e dy ose më
me Join. shumë shprehjeve Select. Çdo shprehje Select në Union duhet të ketë
të njëjtin numër kolonash, kolonat duhet të kenë tipe të dhënash të
Fjalë kyç: ngjashme si edhe kolonat në çdo Select duhet të jenë në të njëjtën
funksionet statistikore, radhë. Union i eleminon dublikatat.
opertorë bashkimi,
group by, join.

Afishoni emrat e qyteteve të ndryshme ku ka ose furnitorë
ose ruhen pjesë.

Operatori EXCEPT Përdorimi i operatorit union

Operatori except kthen diferencën e query-it të majtë me atë të djathtë, por
vlera unike.

Afishoni emrat e qyteteve të ndryshme ku ka furnitorë dhe nuk ruhen pjesë.

Përdorimi i operatorit except Përdorimi i funksionit max

Funksionet Agregate

SQL kryen edhe veprime matematikore duke përdorur
funksionet agregate që janë listuar në vijim.
Funksioni MAX() gjen vlerën më të madhe të një kolone.
Gjeni peshën më të madhe të të gjitha pjesëve.

Funksioni MIN() gjen vlerën më të vogël të një kolone.
Gjeni peshën më të vogël të pjesëve që ndodhen në
Tiranë.

Përdorimi i funksionit min

101

Bazat e të dhënave dhe menaxhimi i tyre

Funksioni COUNT() kthen numrin e rreshtave jo boshe të rezultatit të përzgjedhur. Kur shkruajmë
Count (*) atëherë numërohen të gjithë rreshtat e rezultatit të përzgjedhur.
Gjeni sa furnitorë kemi gjithsej.

Përdorimi i funksionit count

Funksioni SUM() gjen shumën totale të vlerave të një atributi
numerik. Gjeni sasinë totale të pjesëve të transportuara.
Funksioni AVG() llogarit mesataren e vlerave të një atributi
numerik të caktuar.

Përdorimi i funksionit sum

Grupimi i të dhënave

Shprehja GROUP BY përdoret shpesh me funksionet agregate për të grupuar rezultatin sipas një ose
më shumë kolonave. Për shembull, për të gjetur sasinë totale të pjesëve të transportuara për çdo
furnitor ekzekutojme query-in e mëposhtëm:

Përdorimi i shprehjes group by

Në rastin e SELECT të shoqëruar me Group By, vetëm kolonat që ndodhen në listën e GROUP BY mund
të jenë në listën e kolonave të SELECT.

JOIN

Shprehja JOIN (bashkim) përdoret për të marrë të dhënat nga dy ose më shumë tabela në të njëjtën
kohë, bazuar në kolonën që kanë lidhje midis tyre. DMBS do të bëjë prodhimin kartezian midis
tabelave, por për të marrë një rezultat më të saktë duhet të specifikojmë në shprehjen ON atributet
e përbashkëta duke i lidhur ato me operatorin =. Ky kusht njihet ndryshe si kusht join. Kushti join
përgjithësisht përbëhet nga krahasimi i çelësit primar dhe të huaj të tabelave që po lidhen. Në qoftë se
atributet lidhëse kanë të njëjtin emër, atëherë duhet të specifikohen tabelat burim.
Theksojmë se JOIN kthen të gjithë rreshtat e tabelës në të majtë të veprimit Join për të cilët ka një
korrespondencë në tabelën e djathtë të veprimit JOIN si edhe të gjithë rreshtat e tabelës së djathtë për
të cilët ka një korrespondencë në tabelën e majtë.
Për shembull, afishoni emrat e furnitorëve dhe kodet e pjesëve të cilët ata kanë transportuar:

102

Bazat e të dhënave dhe menaxhimi i tyre

Përdorimi i shprehjes join

Query i mësipërm bashkon në fillim një rresht të tabelës FURNITOR me një rresht të tabelës SHITJET ku
vlerat e atributit F_ID janë të njëjtë. Meqë çdo furnitor mund të transportojë shumë pjesë, në tabelën
Transporton mund të kemi përsëritje të vlerave të atributit F_ID.
Numri i tabelave që mund të bashkohen ne opsionin From nuk është i limituar, por duhet të specifikohet
një kusht bashkimi për çdo çift tabelash. Numri i kushteve të lidhjes duhet të jetë gjithmonë N-1, ku N
është numri i tabelave që do të lidhen.

Kontroll njohurish

1. Përse përdoren operatorët union dhe except?
2. Cilat janë funksionet agregate? Përse përdoren ato?
3. Përse përdoren shprehjet group by dhe Join?
4. Jepet skema relacionale e përbërë nga 3 relacione si më poshtë:

Marinar(Mid, Memri, grada, mosha)
Varka(Vid, Vemri, ngjyra)
Rezervim(Mid, Vid, dita)
Për secilën nga pyetjet e mëposhtme të shkruhen shprehjet përkatëse në SQL.
a. Afishoni vlerën më të madhe të gradës që kanë marinarët.
b. Gjeni moshën mesatare të marinarëve.
c. Gjeni numrin total të rezervimeve që janë kryer.
d. Afishoni për çdo marinar kodin e tij si edhe numrin e rezervimeve që ka kryer ai.
e. Gjeni ngjyrën e varkave të rezervuara nga marinari Albert.
f. Gjeni Mid e të gjithë marinarëve që kanë një gradë të paktën 8 ose kanë rezervuar

varkën 105.
g. Gjeni emrat e marinarëve që nuk kanë rezervuar asnjë varkë.
h. Gjeni emrat e marinarëve që kanë rezervuar varkën e quajtur Adriatik.

103

Bazat e të dhënave dhe menaxhimi i tyre

3.10 Projekt - Krijimi i një baze të dhënash
dhe veprime me Select (2 orë)

I. Jepet skema relacionale:
Furnitor(f_id, femer, adresa)
Pjesë(p_id, pemer, ngjyra)
Katalogu(f_id, p_id, kosto)
Fushat çelës janë të nënvijëzuara. Katalogu liston çmimin me të cilën një furnitor e ofron një
pjesë. Shkruani kërkesat e mëposhtme në SQL:
1. Shkruani shprehjet DDL për të krijuar relacionet e bazës së të dhënave. Duhet të
përcaktoni çelësat primarë dhe të huaj si edhe shtrëngime të ndryshme.
2. Krijoni diagramën e marrëdhënieve.
3. Afishoni të gjitha detajet e katalogut.
4. Afishoni kostot e ndryshme të pjesëve.
5. Afishoni detajet e katalogut me kosto më të madhe se 500.
6. Afishoni detajet e pjesëve më ngjyrë jeshile ose të verdhë.
7. Afishoni emrat e furnitorëve që përmbajnë të paktën gërmën s.
8. Afishoni emrat e pjesëve të cilave u njihet ngjyra.
9. Afishoni detajet e pjesëve sipas emrave në rendin rritës.
10. Gjeni emrat e furnitorëve që furnizojnë pjesë të kuqe.
11. Afishoni kodet e furnitorëve që shesin pjesë që kushtojnë më shumë se 100.
12. Gjej kodet e furnitorëve të cilët furnizojnë pjesë të kuqe ose jeshile.
13. Gjej kodet e furnitorëve të cilët furnizojnë pjesë të kuqe dhe jetojnë në Lushnjë.
14. Gjeni sa furnitorë furnizojnë pjesë të kuqe.
15. Gjeni kodet e pjesëve që ofron furnitori me emrin Liam.
16. Afishoni kodet e furnitorëve që shesin pjesë të kuqe që kushtojnë më shumë se 100 lekë.
Të mos kthehen dublikata.
17. Afishoni për çdo furnitor kodin dhe sasinë e pjesëve që shet ai të cilat kushtojnë më
shumë se 100.

104

Bazat e të dhënave dhe menaxhimi i tyre

II. Kompani shitjesh
TIK12 është një kompani e re e cila operon në mjedisin shqiptar. Më poshtë ndodhen
skemat e bazës së të dhënave të cilat menaxhojnë informacionin mbi punonjësit e saj.
Punonjës(Emri_punonjësit, qyteti, rruga)
Punon (Emri_punonjësit, emri_departamentit, titulli, paga)
Departament(emri_departamentit, qyteti)
Menaxhon(Emri_punonjësit, Emri_menaxherit)
Fushat çelës janë të nënvijëzuara. Relacioni menaxhon tregon për çdo punonjës cili është
menaxheri i tij i cili është gjithashtu një punonjës në relacionin Punonjës. Shkruani kërkesat
e mëposhtme në SQL:
1. Shkruani shprehjet DDL për të krijuar relacionet e bazës së të dhënave. Duhet të
përcaktoni çelësat primarë dhe të huaj si edhe shtrëngime të ndryshme.
2. Krijoni diagramin e marëdhënieve.
3. Afishoni të gjitha detajet e departamenteve.
4. Afishoni qytetet e ndryshme të punonjësve.
5. Afishoni emrat e punonjësve me pagë nga 400 deri në 700 mijë lekë.
6. Afishoni emrat e punonjësve në qytetin e Tiranës ose të Lushnjës.
7. Afishoni emrat e punonjësve që mbarojnë me germën a.
8. Afishoni emrat e punonjësve të cilëve nuk u njihet titulli.
9. Afishoni emrat e departamenteve në rendin rritës.
10. Emrat e punonjësve që janë pjesë e departamentit “IT”.
11. Emrin, pagën dhe adresën e punonjësit me titull administrator.
12. Emrat e punonjësve të cilët punojnë në departamentin “IT” dhe kanë pagë më të
madhe se 50.000.
13. Emrat e punonjësve që jetojnë në të njëjtin qytet si departamenti ku ata punojnë
14. Emrat e punonjësve të cilët nuk punojnë në departamentin “IT”.
15. Emrat e punonjësve që jetojnë në të njëjtin qytet dhe rrugë me menaxherët e tyre.

105

Bazat e të dhënave dhe menaxhimi i tyre

3.11 Shprehjet BEGIN, END. Transaksionet dhe vetitë APIQ

Nxënësi/ja: Situatë

-- koncepton përdorimin e Nëse në klasë janë duke folur njëkohësisht dy apo më shumë nxënës
udhëzimeve BEGIN dhe vihet re se asnjë nuk kuptohet nga ato që thonë. Por nëse ata do të
END; flisnin me radhë situata do të ishte e qartë. Bazat e të dhënave përdorin
transaksionet për të menaxhuar veprimet e ndryshme mbi të dhënat.
-- koncepton një
transaksion;

-- koncepton dhe njohin Direktivat begin end në T-SQL
vetitë APIQ.
Transact-SQL  (T-SQL)  është një gjuhë e krijuar nga Microsoft për të
Fjalë kyç: vepruar me bazat e të dhënave relacionale. Ajo është një zgjerim i
gjuhës SQL dhe të gjithë aplikacionet që komunikojmë me një Sql
transaksion, integritet, Server i dërgojnë atij shprehje T-SQL.
shkëmbim, APIQ, Begin,
End.

Shprehjet BEGIN dhe END përdoren për të grupuar disa shprehje SQL së bashku në një bllok logjik.
Këto shprehje përdoren kudo kur duam të ekzekutojmë dy ose më shumë shprehje T-SQL së bashku.
Përdoren brenda ciklit while, shprehjes Case dhe if. Shprehjet BEGIN dhe END përdoren së bashku, për
shembull:

IF (kusht)
BEGIN

shprehje t-sql
END

Transaksionet

Transaksioni është një njësi logjike pune. Ai fillon me ekzekutimin e një veprimi BEGIN TRANSACTION dhe

përfundon me ekzekutimin e një veprimi COMMIT ose ROLLBACK. Në figurën e mëposhtme tregohet

pseudokodi për një transaksion qëllimi i të cilit është të transferojë shumën e $100 nga llogaria 123 tek

llogaria 456. Siç mund të shihet, ajo ç’ka

presupozohet të jetë një veprim i vetëm, BEGIN TRANSACTION;
“transfero paratë nga një llogari te tjetra”, UPDATE LLOG 123 {BALANCA := BALANCA - $100};
në fakt përfshin dy modifikime të veçanta IF ndodh ndonjë gabim THEN GO TO UNDO; END IF;
në bazën e të dhënave. Për më tepër baza

e të dhënave është në gjendje jo korrekte UPDATE LLOG 456 { BALANCA := BALANCA + $100};

midis atyre dy modifikimeve, në kuptimin IF ndodh ndonjë gabim THEN GO TO UNDO; END IF;

që ajo nuk reflekton një gjendje të vlefshme COMMIT; /*mbarim i suksesshëm*/
të punëve në botën reale. Një transfertë GO TO FINISH;

në botën reale nga një llogari te një tjetër UNDO: /* mbarim i pasuksesshëm
nuk duhet të ndikojë në numrin total të ROLLBACK;
dollarëve në llogaritë e interesuara, por në FINISH:
shembull shuma prej $100 përkohësisht RETURN;
zhduket midis dy modifikimeve. Pra, njësia

llogjike e punës që është transaksioni nuk Shembulli i një transaksioni (pseudokod)

106

Bazat e të dhënave dhe menaxhimi i tyre

përfshin medoemos vetëm një veprim të vetëm në bazën e të dhënave. Për më tepër, në përgjithësi
ai përfshin në një sekuencë veprimesh të tilla dhe qëllimi i kësaj sekuence është të transformojë një
gjëndje korrekte të bazës së të dhënave në një gjëndje tjetër korrekte, pa ruajtur domosdoshmërisht
korrektësinë në të gjitha pikat e ndërmjetme.
Tani është e qartë se çfarë nuk duhet të lejohet të ndodhë në shembull dhe kjo është që një nga
modifikimet të ekzekutohet dhe tjetri jo, sepse kjo do ta linte bazën e të dhënave në gjendje jo korrekte.
Teorikisht, duam garanci të sigurtë që të dy modifikimet do të ekzekutohen. Për fat të keq, është e
pamundur të sigurosh ndonjë garanci të tillë sepse ka gjithmonë mundësi që gjërat do të shkojnë keq
për më tepër në momentin më të keq të mundshëm. Për shembull, midis dy modifikimeve mund të
ndodhë rënia e sistemit, ose në të dytin prej tyre mund të ndodhë një overflow (mbushet tepër, kalon
kufijtë) matematik, e kështu me radhë. Por sistemi i cili suporton menaxhimin e transaksioneve siguron
gjënë tjetër më mirë për një garanci të tillë. Në mënyrë specifike ai garanton që nëse transaksioni
ekzekuton disa modifikime dhe më pas ndodh një dështim përpara se transaksioni të arrijë mbarimin
e tij të planifikuar, atëhere këto modifikime do të zhbëhen. Pra, transaksioni ose ekzekutohet totalisht
ose anullohet plotësisht (duket sikur ai nuk është ekzekutuar kurrë). Në këtë mënyrë, sekuenca e
veprimeve që është krejtësisht jo atomike mund të bëhet që të duket sikur ajo të jetë atomike nga një
këndvështrim i jashtëm.
Komponenti i sistemit që siguron këtë atomicitet (ose në dukje prej atomiciteti) njihet si menaxheri i
transaksioneve apo edhe si monitori i procesimit të transaksioneve ose monitori TP. Veprimet COMMIT
e ROLLBACK janë çelësi i mënyrës me të cilën punon ai:
● Veprimi COMMIT sinjalizon përfundimin e suksesshëm të transaksionit: Ai i tregon manaxherit të

transaksionit se një njësi llogjike pune ka përfunduar me sukses, baza e të dhënave tani duhet të
jetë përsëri në një gjendje korrekte, dhe të gjithë modifikimet e bëra nga kjo njësi pune mund të
bëhen “commit” (të regjistrohen në bazën e të dhënave).
● Veprimi ROLLBACK sinjalizon përfundimin e pa suksesshëm të transaksionit: Ai i tregon menaxherit
të transaksionit se diçka ka shkuar keq, baza e të dhënave mund të jetë në një gjëndje jo korrekte,
dhe se të gjithë përditësimet e bëra deri në atë moment nga njësia logjike e punës duhet të “rolled
back” (të zhbëhen).

Ekzekutimi i një transaksioni

107

Bazat e të dhënave dhe menaxhimi i tyre
Vetitë ACID (në shqip APIQ)

Transaksionet zotërojnë ato që zakonisht quhen vetitë ACID - atomicitetin, korrektësinë, izolimin dhe
qëndrueshmërinë.

● Atomiciteti (Atomicity): Një transaksion është një njësi atomike procesimi (gjithçka ose asgjë),
pra ose kryhet i gjithi ose nuk kryhet fare.

● Korrektësia (Consistency): Transaksionet transformojnë një gjendje korrekte të bazës së të
dhënave në një tjetër gjendje korrekte pa ruajtur domosdoshmërisht korrektësinë në të gjitha
pikat e ndërmjetme por duke plotësuar të gjitha shtrëngimet e përcaktuara në skemë.

● Izolimi (Isolation): Transaksionet janë të izoluara nga njëri-tjetri. Edhe pse në përgjithësi mund
të jenë disa transaksione që ekzekutohen në mënyrë konkurenciale, përditësimet (modifikimet)
e çdo transaksioni të dhënë mbahen të fshehura nga të gjithë të tjerët derisa transaksioni të
kryhet, të bëhet commit.

● Qëndrueshmëria (Durability): Pasi kryhet një transaksion me sukses, përditësimet (veprimet që
ai kryen) e tij qëndrojnë në bazën e të dhënave edhe nëse në vijim ka një dështim të sistemit,
pra këto ndryshime nuk duhet të humbasin kurrë.

Vetitë e transaksioneve

Kontroll njohurish

1. Çfarë është T-SQL?
2. Përse përdoren shprehjet BEGIN dhe END?
3. Çfarë është një transaksion? Tregoni shembuj të ndryshëm për ta ilustruar atë.
4. Çfarë sinjalizojnë veprimet COMMIT dhe ROLLBACK?
5. Cilat janë vetitë ACID të transaksioneve? Shpjegojini ato.

108

Bazat e të dhënave dhe menaxhimi i tyre

3.12 Bazat e dhënave të shpërndara, të dhënat e mëdha dhe të
dhënat e hapura

Nxënësi/ja: Situatë

-- koncepton bazat e të Liami do të krijojë një kompani ndërkombëtare ku
dhënave të shpërndara cdo filial i saj do të ketë një bazë të dhënash. Por në
këtë mënyrë kompania do të ketë shumë databaza
-- koncepton se sa të mëdha dhe shpeshperë kërkohet një raport përmbledhës nga të gjithë. Çfarë
janë sasitë e të dhënave;

-- koncepton të dhënat baze të dhënash duhet të zgjedhë Liami për kompaninë e tij? Po nëse
hapura; kompania e tij gjeneron edhe shumë të dhëna të pastrukturuara?

-- identifikon modele, trende Bazat e dhënave të shpërndara
dhe grupime.

Fjalë kyç: Në një bazë të dhënash të shpërndarë, ka një numër databazash që
bazat e të dhënave të mund të jenë gjeografikisht të shpërndara nëpër botë. Një DBMS e
shpërndara, fragmentim, të shpërndarë menaxhon një bazë të dhënash të shpërndarë në mënyrë
dhëna të mëdha, të dhëna të tillë që për përdoruesin të duket sikur ka vetëm një tillë.
të hapura, trende. Një bazë të dhënash e shpërndarë është një grup i disa bazash
të dhënash të ndërlidhura, të cilat fizikisht ndodhen në vende të
Veçori ndryshme dhe komunikojnë me anë të një rrjeti kompjuterik.

● Bazat e të dhënave në grup janë logjikisht të ndërlidhura me njëra -tjetrën. Shpesh ato paraqesin
një bazë të dhënash logjike të vetme.

● Të dhënat ruhen fizikisht në vendndodhje të ndryshme. Të dhënat në çdo vendndodhje mund të
menaxhohen nga DBMS të pavarura nga vendet e tjera.

● Procesorët në këto vende janë të lidhura në rrjet.

● Një bazë të dhënash e shpërndarë nuk është një sistem skedarësh.

● Një bazë të dhënash e shpërndarë përfshin procesimin e transaksioneve, por nuk është në
vetvete një sistem i tillë.

Baza të dhënash të shpërndara

Sistem Menaxhimi për bazat e të dhënava të shpërndara

Një sistem menaxhimi për bazat e të dhënave të shpërndara (DDBMS - Distributed Database
Management System) është një sistem i centralizuar software-ësh i cili menaxhon një bazë të dhënash
të shpërndarë sikur ajo të ndodhej e gjitha në një vend të vetëm.
Ka disa faktorë që nxisin përdorimin e DDBMS si:
Natyra e shpërndarë e njësive organizative - Shumica e organizatave në kohët e sotme janë të ndara
në shumë njësi të shpërndara rreth globit. Secilës njësi i nevojiten një bashkësi të dhënash lokale për
vete. Pra, gjithë databaza e organizatës bëhet e shpërndarë.

109

Bazat e të dhënave dhe menaxhimi i tyre

Nevoja për të ndarë të dhënat - njësive të shumta shpesh u duhet të komunikojnë më njera tjetrën dhe
të ndajnë të dhëna dhe burime. Kjo krijon nevojën për nje bazë të dhënash të përbashkëta ose shumë
të tilla identike që mund të përdoren në mënyrë të sinkronizuar.

Disa nga avantazhet e bazave të të dhënave të shpërndara janë:
Zhvillim modular - Për të zgjeruar një sistem databaze të centralizuar që të përfshijë vende ose njësi
të reja duhet shumë mund dhe ndërprerje të punëve aktuale. Por me një databaze të shpërndarë do
të duhej thjesht që të shtohen kompjuterat dhe të dhënat lokale tek vendndodhja e re e të lidhen më
sistemin e shpërndarë, pa ndërprerje.
Më e qëndrueshme- Në raste te dështimeve në databaza, i tërë sistemi i centralizuar pushon së
funksionuari. Në një sistem të shpërndarë, kur një komponent dështon sistemi vazhdon të punojë
edhe pse me performancë më të ulët.
Rezultate më të shpejta -  Nëse të dhënat shpërndahen në mënyrë efiçente, kërkesat e përdoruesve
mund të trajtohen lokalisht duke dhënë kështu përgjigje më të shpejtë. Nga ana tjetër, në një sistem
të centralizuar, gjithë query-t duhet të kalojnë përmes kompjuterit qendror për t’u procesuar duke e
shtuar kohën që duhet për të marrë rezultate.
Kosto më e ulët komunikimi - Në një sistem të shpërndarë databazash, nëse të dhënat ruhen lokalisht
aty ku përdoren më shumë, kostot e komunikimit për përpunim të dhënash mund të minimizohen. Kjo
nuk është e mundur tek databazat e centralizuara.

Siguria në bazat e dhëna të shpërndara

Siguria nënkupton mbrojtjen e informacionit dhe sistemit të informacionit nga aksesi i pa autorizuar,
modifikimi dhe keqpërdorimi i informacionit. Qëllimi i sigurisë në bazën e dhënë të shpërndarë është
që të merret me mbrojtjen e të dhënave nga njerëzit ose programet dashakeqe. Sistemi i shpërndarë
ka katër komponentë kryesorë të sigurisë, autentifikimin, autorizimin, enkriptimin dhe kontrollin e
aksesit në shumë nivele.

Të dhënat e mëdha (Big Data)

Ruajtja dhe procesimi i të dhënave ka qenë dhe është
një çështje e rëndësishme për çdo kompani, dhe kërkon
akoma dhe më shumë vëmendje tani që të dhënat po
rriten me një shpejtësi të paparashikueshme. Sistemet
tradicionalë të menaxhimit të të dhënave, kanë ofruar
mekanizma për ruajtjen dhe procesimin e të dhënave
të strukturuara, duke siguruar një qëndrueshmëri të
lartë për dekada me radhë.

Në vitet e fundit është rritur sasia e të dhënave si
rrjedhojë e përdorimit masiv të digjitalizimit, internetit
dhe rrjeteve sociale. Madhësia e të dhënave ka arritur
në Petabyte dhe Exabyte. Ndërsa bazat e të dhënave Sql kundrejt NoSql

tradicionale përdoren ende në një sferë të gjerë
aplikacionesh. Kohët e fundit kemi parë një shpërthim në numrin e teknologjive të reja të bazave
të të dhënave, zhvilluar në veçanti për ruajtjen dhe menaxhimin e të dhënave “Big Data”. Big Data
është një grup më të dhëna të mëdha, komplekse dhe të tipeve të ndryshme. Sistemet tradicionalë të
menaxhimit të të dhënave kanë hasur sfida, përsa i përket ruajtjes dhe procesimit të sasive të mëdha
të këtyre të dhënave. Sistemet tradicionalë të bazës së të dhënave, nuk janë në gjendje për të kapur,
ruajtur dhe analizuar këtë shkallë të madhe të të dhënave. Ashtu siç interneti po rritet, sasia e Big Data
vazhdon të rritet. Analizat e të dhënave të mëdha ofrojnë mënyra të reja për përditësimet e bizneseve
dhe kërkesat për të analizuar të dhënat e pastrukturuara. Në ditët e sotme, Big Data janë një nga pikat

110

Bazat e të dhënave dhe menaxhimi i tyre

më të rëndësishme dhe më sfiduese në teknologjinë e informacionit në botë. Po luan një rol shumë
të rëndësishëm në të ardhmen. Big Data ndryshojnë mënyrën e menaxhimit dhe përdorimit të sasive
të mëdha të të dhënave. Disa nga aplikimet e tyre janë në fusha të tilla si çështjet mjekësore, kujdesin
shëndetësor, çështjet e trafikut, menaxhimin bankar, menaxhimin me pakicë, arsimin etj. Organizatat
janë duke u bërë më të besueshme, më fleksibël dhe më të hapura.
Vëllimi, shumëllojshmëria, shpejtësia, vlera dhe vërtetësia janë pikat përshkruese, sfidat si dhe
karakteristikat kryesore të menaxhimit të Big Data.
Vëllimi i cili i referohet sasisë së të dhënave dhe lidhet shumë me Big Data. Të dhënat po rriten dita-
ditës, saqë kohët e fundit flitet për të dhëna në përmasa të pakonceptueshme. Ruajtja e këtij volumi të
dhënash është i një rëndësie të veçantë.
Shumëllojshmëria që ka të bëjë me tipe të ndryshme të dhënash të strukturuara, të pastrukturuara
dhe gjysëm të strukturuara. Duke qenë se sistemet tradicionalë janë të papërshtatshëm për ruajtjen,
procesimin dhe analizimin e këtyre të dhënave, sistemet moderne ofrojnë mënyra për të ruajtur,
analizuar dhe procesuar këto tipe të dhënash në kohë reale.
Vlera është pika më kryesore në Big Data, sepse është tepër e rëndësishme në ditët e sotme për
organizata të ndryshme të ruhen sasi të mëdha vlerash.
Shpejtësia e të dhënave është e një shkalle të lartë dhe sasia e të dhënave që rrjedhin po ashtu. Ruajtja
e tyre në vlerë dhe në kohe reale do ishte shumë efiçente.
Vërtetësia e të dhënave në një sistem ku të dhënat gjenerohen me një shpejtësi të lartë si dhe janë të
një volumi të lartë dhe tepër komplekse, është shumë e rëndësishme ruajtja e vlerave të tyre reale.
Ruajtja dhe menaxhimi i Big Data po tërheqin një vëmendje tepër të lartë. Kjo rrit mundësinë dhe
ndihmon biznese të ndryshme në “përballjen” me të dhënat e mëdha. Përdorimi i mjeteve që merren
me analizimin, ruajtjen dhe procesimin e Big Data do të plotësojnë mangësitë e sistemeve tradiconalë
të menaxhimit të të dhënave, përsa i përket ruajtjes dhe menaxhimit së tyre.
Por pse duhet të përdorim baza të dhënash NoSQL?
Të dhënat e mëdha janë motivuesi i vërtetë i NoSQL. Është duke u nxitur popullariteti i tyre si MongoDB,
CouchDB, Cassandra dhe HBase për disa nga arsyet e mëposhtme:

Disa baza të dhënash NoSql

1. Ruajtja e vëllimeve të mëdha të të dhënave që shpesh kanë pak ose aspak strukturë. Një bazë të
dhënash NoSQL, nuk përcakton kufizime në llojet e të dhënave që mund të ruajmë së bashku dhe na
lejon të shtojmë lloje të ndryshme të reja, me ndryshimin e nevojave tona. Me bazat e të dhënave të
bazuara në dokumente, mund të ruajmë të dhënat në një vend pa pasur nevojë të përcaktojmë se çfarë
“lloj” të të dhënave ato kanë paraprakisht.
2. Zgjerimi i teknologjive cloud dhe ruajtjes në këto mjedise virtuale. Magazinimi i bazuar në cloud
është një zgjidhje e shkëlqyer për të kursyer kosto por kërkon që të dhënat të shpërndahen lehtësisht
nëpër servera të shumëfishtë për t’u rritur.
3. Zhvillim i shpejtë. Të dhënat NoSQL nuk duhet të përgatiten para kohe.

111

Bazat e të dhënave dhe menaxhimi i tyre

Duke përdorur analizues të Big Data, organizatat mund të nxjerrin informacione të përdorshme, shumë
komplekse, të ndërlidhura dhe të dhëna të ndryshme që çojnë në njohuri të vlefshme. Të dhënat
e mëdha i referohen grupeve të të dhënave, madhësia e të cilave është përtej aftësisë së softuerit
tipik të bazës së të dhënave si dhe mjeteve të ruajtjes së tyre, për të kapur, ruajtur, menaxhuar dhe
analizuar. Ndryshe nga të dhënat tradicionale, termi Big Data i referohet rritjes së madhe të të dhënave
që përfshijnë formate të ndryshme të strukturuara, të pastrukturuara dhe gjysëm të strukturuara. Big
Data ka një natyrë komplekse që kërkon teknologji të fuqishme dhe algoritme të avancuara. Ato janë të
dhëna që janë komplekse përsa i përket vëllimit, shumëllojshmërisë, shpejtësisë dhe lidhjes së tyre me
të dhëna të tjera, gjë që e bën të vështirë të mbahen duke përdorur bazat e të dhënave të tradicionale.
Nuk ka dyshim se të dhënat e mëdha tani po zgjerohen me shpejtësi, në të gjitha fushat e shkencës
dhe inxhinierisë dhe potenciali i këtyre të dhënave masive është shumë i rëndësishëm. Gjatë viteve të
fundit, të dhënat e ruajtura në botë janë rritur në mënyrë eksponenciale. Të dhënat vijnë nga kudo. Ky
fenomen quhet “Big Data” dhe është shumë i modës në ditët e sotme.

Të dhënat e hapura (open data)

Të dhënat e hapura është ideja që disa të dhëna duhen bërë të disponueshme pa pagesë për të gjithë,
pa kufizim në përdorim ose copyright (të drejtat e autorit). Qëllimi i lëvizjes të të dhënave të hapura
është e ngjashme me lëvizjet e tjera “të hapura” si burim i hapur, edukimi i hapur, qeverisje e hapur etj.
Qeveritë kanë qenë mbështetësit kryesor dhe ofruesit e të dhënave të hapura sepse të dhënat e
mbledhura nga qeveritë përdoren në dobi të qytetarëve të saj.
Koorporatat dhe organizatat e tjera janë që të dy prodhues dhe konsumatorë të të dhënave të hapura.

Të dhënat e hapura

Kontroll njohurish

1. Çfarë kuptoni me bazë të dhënash të shpërndarë? Cilat janë disa nga veçoritë e
tyre?

2. Çfarë është sistemi i menaxhimit për bazat e dhëna të shpërndara dhe cilët janë
faktorë që nxisin përdorimin e tyre?

3. Cilët janë avantazhet e bazave të dhëna të shpërndara?

4. Çfarë kuptoni me të dhënat e mëdha (Big Data)?

5. Cilat janë sfidat dhe karakteristikat kryesore të menaxhimit të Big Data?

6. Pse duhet të përdorim baza të dhënash NoSQL?

7. Çfarë kuptoni me të dhënat e hapura (open data)?

112

Bazat e të dhënave dhe menaxhimi i tyre

3.13 Vlerësim njohurish

I. Për secilën nga pyetjet e mëposhtme zgjidhni njërën nga alternativat si përgjigje. Vetëm një
alternativë është e saktë.
1. Cilin model dizenjimi përdor Microsoft Sql Server
a) me skedar
b) hierarkik
c) relacional
d) rrjetor.
2. Cila shprehje përdoret për të gjetur të gjitha rekordet në tabelën Punonjës që kanë vlerë
null për fushën Vendndodhja.
a) Where Vendndodhja = ‘null’
b) Where Vendndodhja IS ‘null’
c) Where Vendndodhja = null
d) Where Vendndodhja IS null.
3. Fjalakyçe JOIN në SQL përdoret për të
a) update-uar një tabelë të databazës
b) verifikuar që të dhënat e futura janë të sakta
c) zgjedhur të dhëna nga dy ose më shumë tabela që lidhen me atribute të
përbashkëta dhe që plotësojnë kushtet.
4. Fusha ose bashkësia e fushave në një tabelë e cila siguron një identifikator unik për çdo
rekord është
a) çelësi i jashtëm (foreign key)
b) çelësi kryesor (primary key)
c) çelësi unik (unique key)
d) çelësi i këndit (corner key)
5. Funksioni MAX kthen
a) mesataren e vlerave të një kolone
b) maksimumin e vlerave të një kolone
c) shumën e vlerave të një kolone
d) sasinë e vlerave të një kolone.
6. Kur operatori LIKE përdoret për të zgjedhur një bashkësi rreshtash në një query SQL,
simboli _ përcakton:
a) një string të çfarëdoshëm
b) një karakter të çfarëdoshëm
c) një rresht të çfarëdoshëm
d) asnjë nga të mësipërmet
7. Funksioni AVG kthen
a) numrin e vlerave të një kolone
b) maksimumin e vlerave të një kolone
c) shumën e vlerave të një kolone
d) mesataren e vlerave të një kolone

113

Bazat e të dhënave dhe menaxhimi i tyre

8. Cila nga shprehjet SQL përdoret për të kthyer numrin e rekordeve në tabelën “Person”?
a) Select count() from Person
a) Select count(*) from Person
a) Select columns() from Person
a) Select columns(*) from Person

II. Jepet baza e të dhënave
Klasa (IDKlase, EmriK, Adresa, Kapaciteti)
Mësuesi (IDMesuesi, EmriM, Mbiemri, Mosha)
Rezervon (IDKlase, IDMesuesi, Data, OraFillimit, OraMbarimit)

Përgjigjuni pyetjeve të mëposhtme në SQL:
1. Ndërtoni tabelën Rezervon së bashku me shtrëngimet (konstreinet)
2. Shfaqni emrat e mësuesve të cilët fillojnë me “E” dhe përfundojnë me “da” në emrin e

tyre si edhe janë mbi 30 vjec.
3. Shfaqni emrat e klasave të cilat fillojnë me “A” dhe kanë kapacitet jo më të vogël se 30

vende.
4. Shfaqni emrat e mësuesve sipas moshës në rendin zbritës
5. Afishoni emrat e mësuesve dhe emrat e klasave që ata kanë rezervuar.
6. Shfaqni emrat e klasave sipas kapacitetit në rendin rritës.
7. Shfaqni për çdo mësues, sasinë e klasave që ka rezervuar ai.
8. Shfaqni për çdo klasë, sasinë e mësuesve që e kanë rezervuar atë.

114

TEMATIKARIRVJE- TTARTADNHSME IENTTIMERINI ETTË-IDHËNAVE,

4.1 Digjitalizimi i një sinjali
4.2 Korruptimi i të dhënave dhe gjetja e gabimeve
4.3 Kompresimi i të dhënave
4.4 Veprimtari praktike - Përdorimi i WinRAR-it
4.5 Shtresat e rrjetit. Modeli TCP/IP
4.6 Adresat Mac dhe IP
4.7 Packet-switched dhe circuit-switched
4.8 Interneti i gjërave (IoT)
4.9 Rreziqet në rrjet
4.10 Hashing
4.11 Siguria operacionale
4.12 Vlerësim njohurish

Në këtë tematikë, nxënësi/ja:

• koncepton që informacioni mund të kuantizohet, dhe që numri i biteve që nevojiten
varet nga paparashikueshmëria e përmbajtjes së informacionit dhe metoda e
digjitalizimit; koncepton impaktin e korruptimit të të dhënave dhe përdorimin e
shtimit të të dhënave me qëllim gjetjen dhe korrigjimin e gabimeve; kupton pse
kompresimi i të dhënave është i nevojshëm dhe ndryshimin midis kompresimit/
ngjeshjes së informacionit me dhe pa humbje; kupton konceptin e shtresave në
rrjeta duke përfshirë edhe modelin e TCP/IP në internet; koncepton që pajisjet
në internet kanë nevojë për adresa, si dhe ndryshimin midis adresimit fizik dhe
atij dinamik; kupton ndryshimin midis komutimit me qark dhe atij me pakete, kur
përdoret secili prej tyre dhe pse; kupton që pajisjet fizike dhe sisteme të tjera të
nderfutura si sensorët, pajisjet smart, etj. mund të lidhen me internetin dhe të
shkëmbejnë të dhena; koncepton bazat e kriptografisë duke përfshirë mangësitë
dhe përparësitë enkriptimit simetrik me çelësa publik, funksionet kriptografike
“hash”, dhe aplikimet e tyre për një komunikim të sigurt.

115

Transmetimi i të dhënave, rrjetat dhe internet-i

4.1 Digjitalizimi i një sinjali

Nxënësi/ja: Kujtesë

-- identifikon sinjalin digjital; Sistemi binar është sistemi i cili përbëhet prej dy shifrave 0 dhe 1 dhe
ka për bazë të punës sistemin kompjuterik. Të gjitha informacionet të
-- koncepton kampionimin cilat ruhen në kujtesat e kompjuterit janë në këtë sistem.
dhe kuantizimin;

-- gjen gabimin e Digjitalizimi është procesi i konvertimit të informacionit në një format
kuantizimit. digjital. Në këtë format informacioni është i organizuar në njësi
diskrete të dhënash, ose ndryshe në bite, që mund të adresohen të
Fjalë kyç: ndara (zakonisht në grupe me shumë bit, pra byte).
digjital, kampionim, Me sinjal dixhital kuptojmë atë sinjal, vlerat e të cilit janë diskrete
kuantizim.

pra 0 dhe 1 (kod binar). Pajisjet e sotme punojnë me të dyja sinjalet, analoge dhe digjitale. Dy koncepte
të rëndësishme për të kthyer një sinjal analog në një sinjal dixhital janë kampionimi dhe kuantizimi.

Kampionimi

Kampionimi është procesi i regjistrimit të vlerave të një sinjali në pikat e caktuara të kohë. Numri i
kampioneve të marra gjatë një sekonde quhet norma e kampionit. Këto kampione janë vlera analoge.
Përshkrimi matematikor i kampionimit ideal është shumëzimi i sinjalit me një sekuencë të funksionit
delta.

Sinjal analog Kampionimi

Sinjali analog kampionohet çdo interval T. Faktori më i rëndësishëm në marrjen e kampioneve është
shkalla në të cilën është kampionuar sinjali analog. Norma e kampionimit duhet të jetë së paku dyfishi
i frekuencës më të lartë të sinjalit.

Çfarë është kuantizimi?

Kuantizimi është procesi i paraqitjes së tensionit nga një numër fiks bitesh. Tensioni analog i hyrjes
(ose rryma) krahasohet me një sërë nivelesh të tensionit të paracaktuar (ose aktual). Secila nga nivelet
përfaqësohet nga një numër unik binar dhe numri i binarit që korrespondon me nivelin që është më
afër me tensionin analog është zgjedhur për të përfaqësuar atë kampion. Ky proces përafron tensionin
analog në nivelin më të afërt.

Ju mund të shihni në këtë figurë, se sinjali është kuantizuar në tre nivele të BoshtiY Boshti X
ndryshme. Kjo do të thotë se kur ne marrim një mesazh, ne në fakt mbledhim
shumë vlera dhe në kuantizim vendosim nivele për këto vlera.

116

Transmetimi i të dhënave, rrjetat dhe internet-i

Kuantizimi i një sinjali analog bëhet duke i dhënë vlera diskrete sinjalit me një numër nivelesh
kuantizimi. Kuantizimi përfaqëson vlerat e kampionimit të amplitudës nga një grup nivelesh, që do të
thotë konvertimi i një kampioni të amplitudës së vazhdueshme në një sinjal diskret.

Në figurë është shfaqur sesi një sinjal analog kuantizohet. Me vijë blu është sinjali analog ndërsa me
vijë të kuqe është sinjali i kuantizuar.

Të dyja kampionimi dhe kuantizimi rezultojnë në humbje të informacionit. Cilësia e rezultateve të
kuantizimit varet nga numri i niveleve të përdorura të kuantizimit.

Marrja e mostrave jep formë diskrete të sinjalit të vazhdueshëm analog. Çdo model diskret tregon
amplitudën e sinjalit analog në atë rast. Kuantizimi kryhet midis vlerës maksimale të amplitudës dhe
vlerës minimale të amplitudës. Kuantizimi është përafrimi i vlerës së menjëhershme analoge.

Gabimi i kuantizimit Vlerat e kampionimit
Vlerat e kuantizimit
Për çdo sistem, gjatë funksionimit të tij, gjithmonë ka Vlerat e gabimit
një ndryshim në vlerat e inputeve dhe rezultateve të tij.
Përpunimi i sistemit rezulton me një gabim, i cili është amplitudë
ndryshimi i këtyre vlerave.
Ndryshesa ndërmjet vlerës hyrëse të saktë të sinjalit analog
dhe vlerës së tij të kuantizuar quhet një gabim kuantizimi.

koha në sekonda

Kontroll njohurish

1. Çfarë kuptoni me digjitalizim?
2. Cilat janë vlerat që mund të marrë sinjali digjital?
3. Si gjehet gabimi i kuantizimit?

117

Transmetimi i të dhënave, rrjetat dhe internet-i

4.2 Korruptimi i të dhënave dhe gjetja e gabimeve

Nxënësi/ja: Situatë

-- koncepton korruptimin e Nëse ju ka ndodhur ndonjë herë që kompjuteri të mos funksionojë
të dhënave; normalisht, nga se keni menduar se mund të jetë shkaktuar ajo?

-- identifikon gabimet në Korruptim i të dhënave është kur të dhënat bëhen të papërdorshme,
rrjet; të pa lexueshme, në një farë mënyre të pa aksesueshme nga një
përdorues apo program kompjuterik. Korruptimi i të dhënave ndodh
-- zbulon e gabimeve. kur një element apo një njësi e të dhënave humbet integritetin e
tij dhe transformohet në një formë të pa kuptimtë për përdoruesin
Fjalë kyç: apo programin.
korruptim, paritet,
checksum.

Megjithëse ka shumë faktorë që shkaktojnë korruptimin e të dhënave, shpesh bëhet nëpërmjet një
virusi të jashtëm të ruajtur ose të instaluar brenda kompjuterit ose pajisjes që synohet të sulmohet.
Virusi mbishkruan të dhënat origjinale, modifikon kodin ose e fshin atë. Përveç viruseve, korruptimi i të
dhënave mund të ndodhë si pasojë e keqfunksionimeve hardware, software, gabimeve dhe fatkeqësive
mjedisore si ndërprerjet e energjisë, stuhitë apo fatkeqësitë e tjera. Të dhënat mund të kthehen
përmes një kopje rezervë ose mund të rindërtohen duke përdorur algoritme të ndryshme të kontrollit
të integritetit të të dhënave.
Korrupimi i të dhënave në një kontekst i referohet gabimeve në të dhënat elektronike që ndodhin
gjatë fazave të transmetimit ose përpunimit të menaxhimit të të dhënave, duke futur ndryshime të
padëshiruara në burimin origjinal.

Korruptimi i të dhënave shpesh shfaqet për një përdorues kur raportohen dështime në përpunimin e të
dhënave. Kjo mund të jetë diçka e dukshme si një keqfunksionim i rrymës së sistemit gjatë transferimit
të skedarëve.

Ky korruptim ndodh kur sistemi është i vetëdijshëm për disa dështime dhe regjistrohe një gabim i
përshtatshëm t.

Në kompjutera me performacë të lartë ndodh ajo që quhet korruptimi i heshtur i të dhënave.

Korruptimi i heshtur i të dhënave ndodh kur të dhënat e pasakta dërgohen nga një sistem kompjuterik
tek përdoruesi pa u regjistruar ndonjë gabim. Të dhënat duken në rregull dhe janë plotësisht të
arritshme, por shpesh rezultojnë të pasakta kur të dhënat përpunohen.

Shkaqet e korruptimit të heshtur të të dhënave janë të shumta dhe është diçka që është e vështirë për
t'u parandaluar dhe zbuluar.

Korruptimi në përpunimin e të dhënave

Kur ndërveprojmë me të dhënat gjithmonë ka disa mënyra për transmetimin e tyre, pavarësisht nëse
është veprimi i qartë i kopjimit të të dhënave në një rrjet nga një sistem në tjetrin ose diçka më diskrete
siç janë shkrimi i të dhënave në local disk ose hedhja e të dhënave në kujtesë. Pavarësisht mënyrës, të
dhënat do të jenë ose në një gjendje statike ose është në një gjendje aktive dhe po ndërveprojnë me
përdoruesin ose sistemin.

118

Transmetimi i të dhënave, rrjetat dhe internet-i

Shkaqet e mundshme të korruptimit të të dhënave:
1. Dalja në mënyrë të gabuar nga programet.
2. Malware / viruset.
3. Shkëputja e papritur e energjisë – mbyllja.
4. Tensionet.
5. Probleme në pajisje fizike.
6. Çdo ndërprerje në proceset normale kompjuterike.
7. Madhësia e një baze të dhënash.
8. Lidhja me rrjetin nëpërmjet routerit pa tel.

Gabimet në rrjet

Para se të mësoni mekanizmat e kontrollit që mund të zbatohen për të mbrojtur një rrjet nga gabimet,
duhet të kuptoni se ka gabime njerëzore dhe gabime në rrjet. Gabimet njerëzore, të tilla si një gabim
në shtypjen e një numri, zakonisht kontrollohen përmes programit. Gabimet e rrjetit, të tilla si ato që
ndodhin gjatë transmetimit, kontrollohen nga hardware dhe software i rrjetit.
Ekzistojnë dy kategori gabimesh në rrjet: të dhënat e korruptuara (të dhënat që janë ndryshuar) dhe të
dhënat e humbura. Rrjetet duhet të ndërtohen për (1) parandalimin, (2) zbulimin dhe (3) korrigjimin të
të dhënave e korruptuara dhe atyre të humbura.

Zbulimi i gabimeve

Në rrjeta, zbulimi i gabimeve i referohet teknikave të përdorura për të zbuluar zhurmën ose dëmtimet e
tjera në të dhëna gjatë transmetimit nga burimi në destinacion. Zbulimi i gabimeve siguron shpërndarje
të besueshme të të dhënave në të gjithë rrjetet e ndjeshme.
Zbulimi i gabimeve minimizon probabilitetin e kalimit të të dhënave të pasakta në destinacion, i njohur
si probabiliteti i gabimit të pazbuluar.
Për të zbuluar gabime duhet shtuar diçka shtesë në të dhënat/sinjalin. Kjo pjesë e shtuar është kod për
zbulimin e gabimeve.
Mënyra më e vjetër e korrigjimit të gabimeve përfshin përdorimin e paritetit. Funksionon duke shtuar
një bit shtesë për çdo fjalë karakteresh që transmetohet. Gjendja e bitit përcaktohet nga një numër
faktorësh, si lloji i paritetit dhe biti në karakterin e të dhënave.
Kodi i përsëritjes është një mekanizëm tjetër që lidhet me zbulimin e gabimeve. Është një skemë
kodimi që përsërit bit nëpër kanale për të arritur komunikim pa gabime. Bite të dhënash në një grup
të dhënash ndahen në blloqe bitesh. Çdo bllok transmetohet në një numër të paracaktuar herësh. Ato
nuk janë aq efektive sesa pariteti sepse ndodhja e gabimeve në të njëjtin vend çon në probleme të
tjera. Megjithatë, ato janë të thjeshta për t’u përdorur.
Checksum është një metodë e zbulimit të gabimeve duke përdorur një shumë aritmetike të ndërlikuar
të kodeve të mesazhit me gjatësi fikse fjalësh. Skemat e checksum përfshijnë kontrolle gjatësore të
teprisë së informacionit, bit pariteti dhe shifrat e kontrollit.

Kontroll njohurish

1. Përmendni disa raste se kur mund të ndodh korruptimi i të dhënave.

2. Çfarë lloj gabimesh mund të ndodhin në rrjet?

3. Çfarë është checksum?

119

Transmetimi i të dhënave, rrjetat dhe internet-i

4.3 Kompresimi i të dhënave

Nxënësi/ja: Situatë

-- identifikon llojet e Sipozojmë se keni një skedar me informacione dhe foto për një projekt shkollor
kompresimit; me madhësi 2.1 GB dhe doni t’ia dërgoni shokut tuaj të grupit me email. Email
ju thotë se nuk mund të dërgosh materiale më shumë se 2 GB, si mendoni ta
-- identifikon avantazhet e zgjidhni?
kompresimet;

-- njihet me WinRAR dhe Kompresimi i skedarit përfshin metodat e reduktimit të hapësirës së
WinZIP. nevojshme për të ruajtur një skedar në një sistem kompjuterik. Skedarët
e kompresuara kërkojnë hapësirë ruajtjeje shumë më të vogël sesa
Fjalë kyç: dosjet e megjithëse kompresimi mund të çojë në humbjen e disa të
dhënave. Kompresimi i skedarit synon të zvogëlojë kërkesat e ruajtjes
kompresim, WinRAR, së të dhënave që nuk ofrojnë informacione shtesë, siç është hapësira e
WinZIP. bardhë në një faqe.

Llojet e kompresimit

Ka dy lloje kryesore të kompresimit të skedarëve, pa humbje dhe me humbje. Algoritmet e kompresimit
pa humbje kërkojnë vargje të gjata kodesh dhe kanë një metodë për t’i zëvendësuar ato me vargje
më të shkurtra. Kompresimi pa humbje mund të rikrijojë të gjithë skedarin saktësisht ashtu siç ishte.
Algoritmet e kompresimit me humbje kërkojnë përmes kodit për të gjetur copa që mund të fshihen.
Ndonëse kompresimi me humbje nuk mund të përdoret në skedarët e programeve, ajo mund të
përdoret në skedarët multimedialë ku shpesh ka informacione në skedar që shqisat tona nuk mund
t'i dallojnë. Kur përdoret kompresimi me humbje, skedari mund të duket identik, por është shumë i
ndryshëm në nivel kodimi.
Të gjitha programet Zip janë pa humbje. Për konvertimin e skedarëve audio të papërshkruar në një
format audio të kompresuar si WMA (Windows Media Audio) përdoret kompresimi me humbje. Të
dhënat që përfaqësojnë tingujt që janë përtej kufijve të dëgjimit njerëzor hiqen nga skedari gjatë
procesit të konvertimit. Skedari audio mund të luhet dhe të dhënat e hequra nuk do të vërehen nga
një dëgjues.

Avantazhet e kompresimit

Hapsirë ruajtjeje
Kompresimi i skedarëve të të dhënave ju lejon të ruani më shumë skedarë në memorjen që keni në
dispozicion. Kompresimi pa humbje, i përdorur në teknologjinë e skedarëve zip, zakonisht redukton
një skedar në 50 përqind të madhësisë së tij origjinale. Megjithatë nuk do të shihni një ndryshim në
madhësinë e skedarit nëse skedarët tuaj zip janë tashmë në një format të kompresuar, siç janë skedarët
audio MP3 ose skedarët e tekstit PDF (Portable Document Format).

Bandwidth dhe shpejtësia e transferimit
Procesi i shkarkimit përdor bandwidth të rrjetit sa herë që shkarkoni një skedar, të tillë si një skedar
audio MP3, nga një server në internet. Skedarët e kompresuar përmbajnë më pak “bite” të të dhënave
sesa skedarët e pakompresuar dhe si rrjedhojë përdoret më pak bandwidth kur i shkarkoni. Kjo do të

120

Transmetimi i të dhënave, rrjetat dhe internet-i

thotë se shpejtësia e transferimit, koha që duhet për të shkarkuar skedarin, është më e shkurtër. Do të
duhet 10 sekonda për të shkarkuar një skedar nëse ke bandwidth prej 1 Mbps në dispozicion për një
skedar që është 10 megabitë (madhësi). Do të duhet vetëm 5 sekonda për të shkarkuar skedarin nëse
ai është i kompresuar në 5Mb.
Kostoja
Kostot e ruajtjes së të dhënave reduktohet duke kompresuar skedarët sepse mund të ruani më shumë
skedarë në hapësirën e disponueshme të memorjes kur ato janë të ngjeshur. Ju do të duhet të blini një
dhe nuk do të duhet të blini hard disk shtesë nëse kompresoni skedarët e të dhënave në 50 për qind të
madhësisë së tyre të pakompresuar. Shkarkoni skedarë të kompresuar dhe do të shkarkoni shumë më
pak të dhëna se sa do të ishit duke shkarkuar skedarë të pakompresuar.

WinRAR

WinRAR është një mjet kompresimi. Një nga përdorimet e aplikacionit është të
bashkojë një ose disa skedarë së bashku. Kjo është për zvogëlimin e madhësisë
së dosjeve për ruajtje ose transferim. WinRAR mund të ngjesh dosjet në formatin
ZIP ose RAR. Programi gjithashtu mund të bashkojë skedarët në formatet CAB, ARJ, LZH, AZE dhe ISO.
Programi WinRAR mund të shpaketoj ose nxjerr skedarë me format ZIP ose RAR nga Interneti.

WinZip

Skedarët Zip (.zip ose .zipx) janë skedarë të vetëm, ndonjëherë të quajtura “arkiva”,
që përmbajnë një ose më shumë skedarë të ngjeshur/kompresuar. Skedarët Zip e
bëjnë të lehtë mbajtjen e skedarëve të lidhur së bashku dhe të bëjnë transportimin,
dërgimin me e-mail, shkarkimin dhe ruajtjen e të dhënave më shpejt dhe më
efikase. Formati Zip është formati më i popullar ngjeshjes që përdoret në mjedisin e Windows dhe
WinZip është programi më popullor i kompresimit.

Kontroll njohurish

1. Çfarë kuptoni me kompresim?
2. Cilat janë dy mënyrat e kompresimit? Ku përdoret secila prej tyre?
3. Diskutoni për avantazhet e kompresimit të skedarëve.

121

Transmetimi i të dhënave, rrjetat dhe internet-i

4.4 Veprimtari praktike - Përdorimi i WinRAR-it

Aftësi që zhvillohen
- Aftësohet në kompresimit e skedarit me WinRAR.

Për të bërë kopresimin të skedarëve shkarkojmë programin WinRAR, e cila do të bëj kompresimet
e tyre.
Veprimtari 1
Në browser shkruajmë linkun www.rarlab.com/download.htm. Në këtë faqe do të shkarkojmë
programin WinRAR. Klikojmë në një prej programet WinRAR.

Klikohet mbi programin e shkarkuar.
Në dritaren e shfaqur shtypni butonin Yes.

Klikoni Install që të përfundojë instalimi i programit.

122

Transmetimi i të dhënave, rrjetat dhe internet-i

Veprimtari 2 - Kompresimi i skedarëve.
Shkojmë në dokumentat të cilat duam të kompresojmë dhe i selektojmë ato.
Klikojmë me butonin e djathtë të mause-it dhe në dritaren që shfaqet klikojmë Add to archive.

Në dritaren e re klikohet butoni Browse... dhe zgjidhet direktoria se ku duam t’i ruajmë skedarët
e kompresuar. Në këtë veprimtari, skedarin e kompresuar po e ruajmë në Documents. Më pas
klikohet butoni Ok.

Ja si duken skedarët e kompresuar:
Veprimtari 3
Nëse duhet të ç’bësh kompresimin e skedarit të mësipërm duhet të klikoni në të me butonin e
djathtë të mouse-it.
Në dritaren që shfaqet klikoni Extract here.

123

Transmetimi i të dhënave, rrjetat dhe internet-i

4.5 Shtresat e rrjetit. Modeli TCP/IP

Nxënësi/ja: Situatë
Diskutoni në klasë rreth mënyrës që ju mendoni sesi të dhënat që
-- koncepton funksionin e përpunoni në kompjuter kalojnë në një kompjuter tjetër nëpërmjet
shtresave në rrjet; lidhjes në rrjet.

-- njihet me modelin TCP/IP;

-- identifikon shtresat e

modelit TCP/IP; Shtresat në rrjet

-- zbulon avantazhet e Sot është e rëndësishme që zhvilluesit e programeve të jenë të aftë
modelit TCP/IP. të ndërtojnë programe që komunikojnë lehtësisht me programe të
tjerë në rrjet, veçanërisht në internet. Për shembull, një program
Fjalë kyç: duhet të krijojë lidhje me një databazë në distancë, të bëjë një
query në databazë, të marrë rezultatet e query-të dhe të mbyllë
shtresa, modeli TCP/IP, komunikimin.
protokoll.

Komunikimet e thjeshta përmes internetit përfshijnë kalimin e një mesazhi poshtë në shtresa në burimin
e mesazhit dhe mbrapa përmes shtresave të ngjashme në destinacionin e mesazhit. Në një komunikim
më kompleks, mesazhet dërgohen nëpërmjet disa entiteteve të ndërmjetme të komunikimit të quajtur
router.

Në çdo router, një mesazh kalon nëpër disa shtresa dhe pastaj kthehet në rrugën drejt një router-i
tjetër ose në destinacion.

Çdo shtresë i shërben një qëllimi të ndryshëm dhe përdor një protokoll të ndryshëm për komunikim.

Një protokoll përcakton formatin dhe rendin e mesazheve të shkëmbyera midis dy ose më shumë
njësive të komunikimit, si dhe veprimet e ndërmarra në transmetimin dhe / ose marrjen e një mesazhi
ose ngjarjeve të tjera.

Subjektet komunikuese shpesh janë klient, ose proces që kanë nevojë për një shërbim, dhe një server,
ose proces që ofron shërbimin. Protokollet në përgjithësi përfshijnë një skemë kodimi për kodimin dhe
dekodimin e të dhënave.

Modeli TCP / IP (Transmission Control Protocol / Internet Protocol)

Të gjithë protokollet të internetit, ndryshe grupi i rregullave quhet TCP / IP.

TCP / IP specifikon mënyrën e shkëmbimit të të dhënave në internet duke ofruar komunikime që
identifikojnë se si duhet të thyhet në paketa, të adresohen, të transmetohen, të dërgohen dhe të
arrijnë në destinacion. TCP / IP është i dizenjuar për t’i bërë rrjetet të besueshme, me aftësinë për t’u
rikuperuar automatikisht nga dështimi i çdo pajisjeje në rrjet.

Dy protokollet kryesore në suportin e protokollit të internetit i shërbejnë funksioneve specifike. TCP
përcakton se si aplikacionet mund të krijojnë kanale të komunikimit në një rrjet. Ai gjithashtu menaxhon
se si një mesazh është ndarë në paketa të vogla përpara se ato të transmetohen më pas në internet dhe
të rikonfirmohen në rendin e duhur në adresën e destinacionit.

IP përcakton adresën dhe rrugën që çdo pako të arrijë destinacionin e duhur. Çdo portë dalëse në rrjet
kontrollon këtë adresë IP për të përcaktuar se ku duhet ta përcjellë mesazhin.

124

Transmetimi i të dhënave, rrjetat dhe internet-i

Funksionimi i modelit TCP/IP

TCP / IP përdor modelin e komunikimit klient / server në të cilin një përdorues jepet një shërbim (si
dërgimi i një faqeje) nga një kompjuter tjetër (një server) në rrjet.

Në protokollet TCP / IP, çdo kërkesë e klientit konsiderohet e re sepse nuk lidhet me kërkesat e
mëparshme. Kjo liron rrugën e rrjetit në mënyrë që ato të mund të përdoren vazhdimisht.

Sidoqoftë, shtresa e transportit është e ndjeshme. Transmeton një mesazh të vetëm dhe lidhja e
tij mbetet në vend derisa të gjitha paketat në një mesazh të jenë pranuar dhe të rikonfirmohen në
destinacion.

Shtresat e modelit TCP / IP Arkitektura e rrjetit TCP/IP

Funksionaliteti TCP / IP është i ndarë në Shtresa e aplikacionit
katër shtresa, secila prej të cilave përfshin
protokollet specifike.

Shtresa e aplikacionit siguron aplikacione me Shtresa e transportit
shkëmbim të standardizuar të të dhënave. Shtresa e rrjetit
Protokollet e saj përfshijnë Hypertext Transfer Shtresa fizike
Protocol (HTTP), File Transfer Protocol (FTP),
Post Office Protocol 3 (POP3), Simple Mail
Transfer Protocol (SMTP) dhe Simple Network
Management Protocol (SNMP).

Shtresa e transportit është përgjegjëse për mbajtjen e komunikimit në rrjet. TCP trajton komunikimin
midis hosteve dhe siguron besueshmërinë. Protokollet e transportit përfshijnë TCP dhe User Datagram
Protocol (UDP), i cili nganjëherë përdoret në vend të TCP për qëllime të veçanta.

Shtresa e rrjetit, e quajtur edhe shtresa e internetit, merret me paketa dhe lidh rrjetet e pavarura për
të transportuar paketat në të gjithë kufijtë e rrjetit. Protokollet e shtresës së rrjetit janë IP dhe Internet
Control Message Protocol (ICMP), i cili përdoret për raportimin e gabimeve.

Shtresa fizike përbëhet nga protokollet që veprojnë vetëm në një lidhje - komponenti i rrjetit që
ndërlidh nyjet ose hostet në rrjet. Protokollet në këtë shtresë përfshijnë Ethernet për rrjetet e zonës
lokale (LAN) dhe Address Resolution Protocol (ARP).

Përparësitë e modelit TCP / IP

TCP / IP është model në përputhje me standartet që përdoren gjerësisht, si rezultat, nuk kontrollohet
nga asnjë kompani e vetme. Prandaj, grupi protokollit të internetit mund të modifikohet lehtësisht.
Është në përputhje me të gjitha sistemet operative, kështu që mund të komunikojë me çdo sistem
tjetër. Paketa e protokollit të internetit është gjithashtu në përputhje me të gjitha llojet e pajisjeve
kompjuterike dhe rrjeteve.
TCP / IP është shumë e shkallëzuar dhe, si një protokoll rutimi, mund të përcaktojë rrugën më efikase
në rrjet.

Kontroll njohurish

1. Çfarë përcakton protokolli në shtresat e rrjetit?
2. Identifikoni shtresat e modelit TCP/IP. Flisni shkurtimisht për to.

125

Transmetimi i të dhënave, rrjetat dhe internet-i

4.6 Adresat Mac dhe IP

Nxënësi/ja: Situatë

-- koncepton adresimin në Si identifikohen pajisjet në rrjet. A mund që të dhënat të dërgohen në
rrjet; destinacionin e gabuar?

-- identifikon adresat IP; Nëse ju duhet të dërgoni një letër, keni nevojë për adresën e shtëpisë
-- identifikon adresat MAC. të marrësit. Adresa është një tregues për postierin se ku duhet të
shkojë letra, kështu që adresa duhet të jetë unike. Nuk duhet të ketë
Fjalë kyç: dy shtëpi me adresa saktësisht të njëjta, përndryshe do të kishte
IP, MAC, ISP. ngatërrim të adresave.

Interneti punon në të njëjtën mënyrë si shërbimi postar. Në vend të dërgimit të letrave, pajisjet
dërgojnë “paketa të dhënash” dhe adresat IP dhe adresat MAC përcaktojnë se ku shkojnë këto paketa
të dhënash.

Çfarë është adresa IP?

Një adresë IP (Internet Protocol) është një grup unik numrash që identifikon një pajisje të lidhur me
internetin. Për të kuptuar se nga vjen kjo adresë, ne duhet të kuptojmë si funksionon interneti.

Në terma të thjeshtë, interneti është vetëm një mori rrjetash të veçuara që janë të lidhura së bashku.
Çdo rrjet quhet një Internet Service Provider (ISP) dhe nëse blini një shërbim nga një ISP, mund të
lidheni me atë rrjet të ISP-së dhe të gjitha rrjetet e tjera të lidhura me ISP-në tuaj.
Çdo ISP ka një grup adresash IP që ata menaxhojnë dhe kur blini shërbimin, ju caktohet një adresë IP.
Kur të dhënat nga interneti duhet të vijnë te ju, rrjeti i ISP-së sheh se destinacioni është adresa juaj
unike e IP, më pas ju dërgon këto të dhëna.

Ka dy lloje adresash IP:
• IPv4, i cili formohet nga katër grupe numrash të ndara me pikë, ku secili numër varion nga 0 deri në

255. Për shembull: 192.168.10.2.
• IPv6, i cili formohet nga tetë grupe me vargje me katër karaktere secili të ndara me dy pika, ku secili

varg përmban numër dhe shkronja. Për shembull: 2001:1265:0:0:ae4:0:5b:6b0.
Edhe pse janë 4.3 bilion adresa IP në total, ato janë pothuajse të zëna dhe drejt mbarimit. Kjo është
arsyeja pse po shkohet drejt IPv6, ku ka mbi 320 trilion adresa të mundshme në total.

126

Transmetimi i të dhënave, rrjetat dhe internet-i

Çfarë është adresa MAC?

Një adresë MAC (Media Access Control) identifikon një “ndërfaqe rrjeti” unike në një pajisje. Ndërsa
adresat IP janë caktuar nga ISP-të dhe mund të ri-përcaktohen pasi pajisjet lidhen dhe shkëputen,
adresat MAC janë të lidhura me një përshtatës fizik dhe janë caktuar nga prodhuesit.
Adresa MAC është një varg me 12 karaktere ku secili karakter mund të jetë një numër nga 0 në 9 ose
shkronjë ndërmjet A dhe F. Për t’u lexuar më lehtë vargu ndahet në pjesë.
Ka tre forma më të përdorshme, e para është më e preferuara dhe më e zakonshme:
1. 68:7F:74:12:34:60
2. 3A-34-52-C4-69-B8
3. E80.888.CB3.FB4
Gjashtë karakteret e para (të quajtura prefiks) përfaqësojnë prodhuesin, ndërsa gjashtë karakteret
e fundit përfaqësojnë numrin identifikues unik për pajisje të veçanta. Adresa MAC nuk përmban
informacion rreth rrjetit që lidhen pajisjet.

Adresa IP dhe MAC punojnë së bashku

Kur dërgohet një pako, vetëm adresa e shtëpisë nuk është e mjaftueshme. Duhet adresa e shtëpisë dhe
emri juaj, sepse për ndryshe do të marrni pakon dhe nuk do të dini nëse është për ju, prindërit e tu apo
për ndonjë pjesëtar tjetër të familjes.
Adresa IP përcakton ku jeni, ndërsa adresa MAC përcakton kush jeni.
Modemi/ruteri juaj ka një adresë IP unike të vendosur nga ISP. Pajisjet e lidhura me ruterin/modemin
kanë një adresë MAC unike. Adresa IP merr të dhënat në ruterin/modemin tuaj dhe routeri/modemi i
dërgon ato në pajisjen e duhur.
Adresa IP përdoret për të transportuar të dhëna nga një rrjet në një rrjet tjetër duke përdorur protokollin
TCP/IP. Adresa MAC përdoret për të dërguar të dhënat në pajisjen e duhur në një rrjet.

Kontroll njohurish
1. Ku dallojnë adresat IP me ato MAC?
2. Çfarë roli kanë të dy mënyrat e adresimeve dhe pse duhen të përdoren
të dyja mënyrat për pajisjet në rrjet?

127

Transmetimi i të dhënave, rrjetat dhe internet-i

4.7 Packet-switched dhe circuit-switched

Nxënësi/ja: Situatë

-- koncepton me packet Ndërtoni një skicë ku të tregohet sesi të dhënat
switching dhe circuit dërgohen në rrjet.
switching;

-- dallon avantazhet e tyre. Packet-switching përshkruan llojin e rrjetit në të cilin njësitë e
vogla të të dhënave të quajtura paketa dërgohen përmes një rrjeti
Fjalë kyç: bazuar në adresën e destinacionit që përmban çdo paketë. Ndarja
e komunikimit në paketa lejon që e njëjta rrugë të dhënash të
packet switching, circuit
switching.

ndahet midis shumë përdoruesve në rrjet. Ky lloj komunikimi mes dërguesit dhe marrësit është i njohur
si pa lidhje (në vend të i dedikuar). Shumica e trafikut në internet përdor packet-switched.
Ka dy ndarje kryesore të packet switching:

1. Packet Switching pa lidhje: Çdo paketë përmban komplet adresën ose informacionin e drejtimit dhe
dërgohen individualisht. Kjo mund të rezultojë në arritjen pa rradhë në destinacion dhe ndjekja e
e drejtimeve të ndryshme të transmetimit, në varësi të ngarkesave në nyjet e ndryshme të rrjetit
(adaptor, switch dhe rutera) në çdo kohë të dhënë.
Në packet-switching pa lidhje, secila paketë ka informacionin e mëposhtëm të shkruar në përmbajtje:

• adresa e destinacionit,

• adresa burim,

• numri total i paketave,

• numri i sekuencës që nevojitet për të mundësuar rikonfigurimin.

Pas arritjes në destinacion përmes rrugëve të ndryshme, paketat riorganizohen për të formuar
mesazhin origjinal.

2. Packet switching e orientuar: Paketat e të dhënave dërgohen në mënyrë të vazhdueshme në një
rrugë të paracaktuar. Paketat janë grumbulluar, duke pasur parasysh numrin e sekuencës dhe më
pas transportohen në rradhë në rrjet për në destinacion. Në këtë mënyrë, informacioni i adresës
nuk nevojitet.

Në ndryshim nga packet-switching, circuit-switching është një lloj rrjeti siç është rrjeti i rregullt telefonik
në të cilin qarku i komunikimit (rruga) për thirrjen është ngritur dhe i dedikuar për pjesëmarrësit në
atë thirrje.
Në circuit switching, në rrjeta zhvillohen kanale të dedikuara për trasmetim. Ky lloj tradicional i mënyrës
së transmetimit ka mbetur në përdorim, ndërsa metoda të tjera më të reja vazhdojnë të zhvillohen.
Si një metodë e transmetimit të të dhënave, circuit switching është relativisht i drejtpërdrejtë. Ajo
përfshin vendosjen e linjave specifike të projektimit për një rrugë transmetimi në rrjet. Me vendosjen
e një rruge të veçantë, dërguesi është i lirë të dorëzojë një pjesë të dhënash tek marrësi.
Kjo është e ndryshme nga metoda tjetër. Në një sistem packet switching, pjesët individuale të të
dhënave dërgohen të ndara dhe mund të kalojnë nëpër rrugë të ndryshme për të arritur në destinacion.
Një nga shembujt më konkretë për këto dy lloje të ndryshme të komunikimit është industria e telekomit.
Në linjat tradicionale tokësore u përdor circuit switching; linjat optike të fibrave u ngritën për çdo

128

Transmetimi i të dhënave, rrjetat dhe internet-i

telefonatë. Në llojet më të reja të transmetimeve, duke përfshirë komunikimet e telefonisë celulare
dhe internetin, kalimi i paketave lejon një lloj më modular të shpërndarjes së të dhënave, gjë që mund
të përfshijë disa vonesa në kohë. Marrësit tentojnë të organizojnë të gjitha paketat në rend logjik.

Avantazhet e packet switching:

• Përdorimi efikas i rrjetit.

• Gjenden lehtësisht bitet apo paketat e dëmtuara.

• Circuit Switching ngarkon përdoruesin në distancën dhe kohëzgjatjen e lidhjes, por Packet
Switching ngarkon përdoruesit vetëm në bazë të kohëzgjatjes së lidhjes.

• Transmetimi i lartë i të dhënave.

• Të gjitha paketat nuk ndjekin rrugë të njëjtë në Packet Switching, ndërsa në Circuit Switching të
gjitha paketat ndjekin të njëjtën rrugë.

• Përdoret rrjeti dixhital dhe mundëson që të dhënat digjitale të transmetohen direkt drejt
destinacionit.

Avantazhet e Circuit Switching:

• Rruga e dedikuar e vendosur ndërmjet dërguesit dhe marrësit siguron një shkallë të garantuar
të të dhënave.

• Sapo qarku të jetë vendosur, të dhënat transmetohen pa asnjë vonesë, pasi nuk ka kohë pritjeje
në çdo kalim.

• Meqë është krijuar një rrugë e dedikuar e transmetimit të vazhdueshëm, metoda është e
përshtatshme për transmetim të gjatë të vazhdueshëm.

Rrjeti packet-switched në zyrë. Z. Arben,

në zyrë.

Z. Arben, Z. Arben, Z. Arben,
paraqituni paraqituni
në zyrë. Z. Arben, në zyrë. në zyrë.

paraqituni paraqituni paraqituni
Ndarja në Dërguar në një rrugë rrjeti
Mesazhi i dërguar. Bashkimi i tyre për të
paketa. që mund të ndryshohet formuar mesazhin.
sipas nevojës.

Rrjeti circuit-switched

Z. Arben, Z. Arben,
paraqituni paraqituni
në zyrë. në zyrë.

Mesazhi i dërguar. Dërguar në një rrugë rrjeti kse. Mesazhi i dërguar.

Kontroll njohurish
1. Cilat janë dy llojet e packet switching?
2. Renditini avantazhet që ka packet switching dhe circuit switching.

129

Transmetimi i të dhënave, rrjetat dhe internet-i

4.8 Interneti i gjërave (IoT)

Nxënësi/ja: Situatë

-- njihet me konceptin IoT; Sot teknologjia ka avancuar shumë dhe ka sjellë ndryshime që para shumë

-- dallon avantazhet e IoT; viteve dukeshin të pamundura. Si mendoni se do të jetë ecura e këtij
zhvillimi? Si do të ndikojnë ato në përditshmërinë tonë?
-- dallon rreziqet e
mundshme IoT. Çfarë është IoT?

Fjalë kyç: Interneti i gjërave (IoT - Internet of Things) është një koncept

IoT, të dhëna. kompjuterik që përshkruan idenë e objekteve fizike të përditshme
të lidhura me internetin dhe të jenë në gjendje të identifikohen me

pajisje të tjera.
IoT është i rëndësishëm sepse një objekt që mund të përfaqësojë veten në mënyrë dixhitale bëhet

diçka më e madhe se objekti në vetvete. Objekti nuk lidhet më vetëm me përdoruesit e tij, por tani

lidhet me objektet përreth dhe të dhënat e databazës. Kur shumë objekte veprojnë në të njëjtën kohë,

ata njihen si “inteligjenca e ambientit”.

Interneti i gjërave është një koncept i vështirë për t’u përcaktuar saktësisht. Në fakt, ka shumë grupe të
ndryshme që e kanë përcaktuar termin edhe pse përdorimi fillestar i tij i është atribuar Kevin Ashtonit,
një ekspert për risitë digjitale. Në vitin 1999, Ashton citoi:

“Nëse do të kishim kompjutera që dinin gjithçka që duhej të dinim për gjërat - duke përdorur të dhënat
që mblidhen pa asnjë ndihmë prej nesh – ne do të ishim në gjendje të gjurmonim dhe të llogarisnim
gjithçka dhe në masë të madhe të zvogëlojmë humbjet dhe koston. Do të dinim se kur gjërat duhen
zëvendësuar apo riparuar.”

Shumica e njerëzve mendojnë të jenë të lidhur
përsa i përket kompjuterave, tabletëve dhe
smartphone-ave. IoT përshkruan një botë ku
çdo gjë mund të lidhet dhe të komunikojë në
një mënyrë inteligjente. Me fjalë të tjera, me
internetin e gjërave, bota fizike po bëhet një
sistem i madh informacioni.

Avantazhet e IoT

IoT konsiderohet si zhvillimi më i madh që mund të përmirësojë jetën tonë në shumë aspekte. Ato
pajisje që kurrë nuk kanë qenë në rrjet mund të lidhen dhe të përgjigjen ashtu siç bëjnë pajisjet e
zgjuara (smart), si për shembull: makina juaj, frigoriferi dhe bokset. IoT është vendosur të transformojë
plotësisht botën tonë.
Disa avantazhe të IoT:
1. Të dhëna: Sa më shumë informacion, aq më lehtë është të merret vendimi i duhur. Jo vetëm që

kursehet kohë, por është edhe i favorshëm.

130

Transmetimi i të dhënave, rrjetat dhe internet-i

2. Ndjekja (gjurmimi): Kompjuterët mbajnë një gjurmë (track) për cilësinë dhe qëndrueshmërinë e
gjërave në shtëpi. Njohja e datës së skadimit të produkteve para se t’i konsumojmë ato përmirëson
sigurinë dhe cilësinë e jetës. Gjithashtu, asgjë nuk do të ketë mbaruar kur keni nevojë për të në
momentin e fundit.

3. Para: Aspekti financiar është avantazhi më i mirë. Kjo teknologji mund të zëvendësojë njerëzit që
janë përgjegjës për monitorimin dhe mirëmbajtjen e furnizimeve.

4. Shfrytëzimi efikas i burimeve
5. Redukton koston
6. Marketingu në kohë reale
7. Analizat e vendimeve
8. Përvoja më e mirë e konsumatorëve
9. Të dhëna me cilësi të lartë

Rreziku i IoT

Nga ajo që ne mund ta shohim sot, tre rreziqet më të mëdha që lidhen me përdorimin e gjerë të IoT
qëndrojnë në fushat e privatësisë, sigurisë kibernetike dhe përgjegjësisë.
Shqetësimet e privatësisë dhe internetit datojnë së paku në daljen e programeve të gjurmueshme ose
cookies dhe shtimi i shumë pajisjeve që monitorojnë vazhdimisht të dhënat, shumica e tyre personale,
vetëm do të përkeqësojnë këto shqetësime për shumë njerëz, si në jetën e tyre private dhe në punë.
Meqenëse asnjë ligj i vetëm nuk rregullon mbledhjen dhe përdorimin e të dhënave personale, ka
të ngjarë që ligjet dhe rregullat të vazhdojnë të përpiqen për të arritur një ekuilibër të pranueshëm
ndërmjet përfitimeve të internetit të gjërave dhe shqetësimeve të lidhura me privatësinë.
Siguria kibernetike është gjithashtu një rrezik që ne tashmë e njohim dhe që ka gjasa të përkeqësohet
nga IoT. Meqenëse çdo nyje në rrjet është një pikë e mundshme e hyrjes për një haker, siguria e
përgjithshme e rrjetit do të bëhet një çështje edhe më e madhe se sa është sot.
Për përgjegjësitë, pajisjet IoT mund të krijojnë shpejt ngatërrime ligjore dhe etike.
Shembull: Nëse një makinë automatike pa shofer bie dhe lëndon dikë, ku fillon dhe mbaron zinxhiri i
përgjegjësisë?
Interneti i gjërave premton përfitime të mëdha për konsumatorët dhe bizneset gjatë viteve të ardhshme.
Por, për t’i gëzuar ato plotësisht, ne do të duhet të gjejmë mënyra efektive për t’u marrë me rreziqet
që do të mund të hasim.

Kontroll njohurish

1. Çfarë kuptoni me internetin e gjërave ose ndryshe IoT?
2. Cilat janë të mirat dhe të metat e këtij zhvillimi teknologjik? Beni një analizë të shkurtër.

131

Transmetimi i të dhënave, rrjetat dhe internet-i

4.9 Rreziqet në rrjet

Nxënësi/ja: Situatë

-- përmbledh rreziqet në Diskutoni në klasë rreth rreziqet që ekzistojnë në rrjet. Mendoni rreth
rrjet; mënyrave që njihni për mbrojtjen e informacioneve tuaja.

-- identifikon mënyrat e Përdorimi i teknologjisë ka përfitime të mëdha, por gjithashtu ka
mbrojtjes së të dhënave; rreziqe për të cilat duhet të jemi të kujdeshshëm. Për shkak se interneti
është lehtësisht i arritshëm nga të gjithë, mund të jetë një vend me
-- koncepton enkriptimin rrezik. Është e rëndësishme të identifikohen ato për t’i reduktuar apo
dhe avantazhet që ka. menaxhuar në mënyrë që të kemi sa më pak dëme.
Rreziku në rrjet përfshin dështime hardware-ike dhe software-
Fjalë kyç: ike, gabime njerëzore, spam, viruse apo sulme të jashtme, si dhe
katastrofa natyrore si zjarri, tërmeti apo përmbytje.
hacker, enkriptim simetrik/
asimetrik.

Rreziqet e përgjithshme për sistemet dhe të dhënat IT përfshijnë:

• Dështime hardware-ike dhe software-ike – të tilla si humbja e energjisë elektrike apo korruptimi
i të dhënave.

• Malware – software të dëmshëm që ndërpresin veprimet kompjuterike.

• Viruset – kode kompjuterike që mund të kopjojnë vetëveten dhe të përhapen nga njëri
kompjuter në tjetër, shpesh ndërpresin veprimet kopjuterike.

• Spam dhe phishing – email-e të pa dëshiruara për të mashtruar njerëz në zbulimin e të dhënave
personale apo në blerje të mallrave për mashtrim.

• Gabime njerëzore – procesimi i të dhënave të gabuara, hedhja e të dhënave pa kujdes, apo
hapja pa dashje e një materiali i infektuar të bashkangjitur në email.

Kërcënimet kriminale specifike ose të synuara për sistemet dhe të dhënat IT përfshijnë:
• Hacker-a – persona që në mënyrë ilegale thyejnë sistemin kompjuterik.
• Mashtrim – përdorimi i kompjuterave për të ndryshuar të dhëna për përfitime të paligjshme.
• Thyerja e fjalëkalimeve – shpesh është një objektiv për hacker-at për të marrë aksesin.
• Refuzim shërbimi – sulme online për të parandaluar aksesin e përdoruesve të autorizuar në
website.
• Shkeljet e sigurisë – përfshin grabitje fizike, si dhe ndërhyrje online.
• Pandershmëria e pjesëtarëve të rrjetit – vjedhja e të dhënave ose informacioneve të rëndësishme.

Fatkeqësitë natyrore dhe sistemet IT

Fatkeqësitë natyrore si zjarri, ciklonet dhe përmbytjet paraqesin gjithashtu rreziqe për sistemet, të
dhënat dhe infrastrukturën e IT. Dëmtimi i ndërtesave dhe pajisjeve kompjuterike mund të rezultojë në
humbje ose korruptim të të dhënave / transaksioneve të konsumatorëve.

132

Transmetimi i të dhënave, rrjetat dhe internet-i

Mbrojtja e të dhënave në trasmetim

Ndërsa strategjitë e mira të sigurisë mund të jenë efektive në mbrojtje të rrjetit duke lënë jashtë
saj sulmuesit e ndryshëm, si mendoni për të dhënat që transmetohen ndërmjet pajisjeve mobile,
shfetuesëve të internetit dhe databazave?

Enkriptimi ndryshon tekstin duke e bërë atë të palexueshme nga të tjerët përveç atyre që kanë çelësin
për të dëshifruar.

Ndërsa siguria IT kërkon të mbrojë asetet fizike, kompjuterat e rrjetit, databazën, serverat etj., enkriptimi
mbron të dhënat që këto asete apo që trasmetohen ndërmjet tyre.

Enkriptimi i bazuar në kriptografi, përdor kompjuterat dhe algoritmet për të kthyer tekstin e thjeshtë
në formë të palexueshme, përzierje kodesh. Për të dekriptuar kodin në tekst duhet çelësi i enkriptimit,
një seri bitesh që dekodon tekstin. Çelësi është diçka që ju ose marrësi i synuar ka posedimin e tij.
Kompjuterët janë në gjendje të thyejnë kodimin duke supozuar një çelës enkriptimi, por për algoritme
shumë të sofistikuara kjo mund të marrë një kohë shumë të gjatë.

Nëse dërgoni një email të koduar, vetëm personi me çelësin e enkriptimit mund ta lexojë atë. Nëse
po përdorni një lidhje të koduar në internet për të bërë blerje në internet, informacionet dhe numri i
kartës së kreditit janë të fshehura nga përdoruesit e paautorizuar, vëzhgimet e paligjshme ose hajdutët
e identitetit.

Por enkriptimi mund të përdoret gjithashtu për keq. Sulmet Ransoware po bëhen më të përhapura dhe
sulmet e DOS (denial of service – refuzim shërbimi) që përdorin software-t e enkriptimit për të bllokuar
përdoruesit nga kompjuterët e tyre derisa të paguajnë një tarifë.

Të dhënat që ne enkriptojmë janë:
• Në transit, që do të thotë se po lëviz përmes email-it, aplikacioneve ose përmes shfletuesve
dhe lidhjeve të tjera të webit.

• Në pushim, kur të dhënat ruhen në bazat e të dhënave, cloud, hard disqet e kompjuterit ose
pajisjet telefonike.

Si funksionon enkriptimi

Të dhënat e pa enkriptuara, shpesh ju referohemi si tekste të thjeshta. Ato enkriptohen duke përdorur

një algoritëm dhe një çelës enkriptimi. Ky proces gjeneron kode të cilat mund të shikohen në formën e

tyre fillestare nëse dekriptohen me çelësin e duhur.

Dekriptimi është i kundërti i enkriptimit, duke ndjekur hapa të njëjtë por duke përmbysur kodin në të

cilin është aplikuar çelësi. Në ditët e sotme algoritme enkriptimesh më të përdorura janë: simetrike

dhe asimetrike. Enkrimptim simetrik
Enkriptimi simetrik, shpesh i referohemi si

“çelës sekret”, përdor një çelës të vetëm.

Sistemi që bën enkriptimin duhet të ndajë Çelës Çelës i njëjtë Çelës
çelësin e enkriptimit me çdo njësi që synon sekret sekret

të jetë në gjendje të dekriptojë të dhënat e

koduara. nkriptim ekriptim

Tekst i thjeshtë Tekst i koduar Tekst i thjeshtë

133

Transmetimi i të dhënave, rrjetat dhe internet-i

Enkriptimi asimetrik, i njohur si kriptografi me çelës publik, përdor dy çelësa të ndryshëm po të lidhura
matematikisht, një publik dhe një privat. Çelësi publik mund të ndahet me të gjithë, ndërsa çelësi privat
duhet të mbahet sekret.

Çkemi! Çkemi!
Enkriptim Dekriptim

Shkëmbimi i çelësave publik

Përparësitë e enkriptimit

Qëllimi primar i enkriptimit është të mbrojë konfidencialitetin e të dhënave digjitale të ruajtura në
sistemet kompjuterike ose ato që transmetohen nëpërmjet internetit apo ndonjë rrjeti tjetër komp-
juterik. Një numër i organizatave dhe organeve të standardeve rekomandojnë ose kërkojnë që të
dhënat e ndjeshme të kodohen në mënyrë që të parandalojnë palët e treta të paautorizuara ose
faktorë kërcënimi të kenë qasje në të dhëna.

Kontroll njohurish

1. Cilat janë të dhënat që enkriptojmë?
2. Tregoni cilat janë llojet e enkriptimeve.
3. Cili nga enkriptimet është më i sigurt? Argumentoni pse.

134

Transmetimi i të dhënave, rrjetat dhe internet-i

4.10 Hashing

Nxënësi/ja: Situatë
Kërkoni në internet rreth algoritmeve që përdoren për të enkriptuar.
-- koncepton Hashing; Mësoni më shumë rreth lidhjes që ka enkriptimi me algjebrën.
-- njihet me përdorimin e
Hashing
funksionit hash.
Hashing është gjenerimi i një vlere ose vlerave nga një varg teksti
Fjalë kyç: duke përdorur një funksion matematikor.
funksion hash.

Hashing është një mënyrë për të mundësuar sigurinë gjatë procesit të transmetimit të mesazhin kur
ai është i destinuar vetëm për një marrës të veçantë. Formula gjeneron hash-in, i cili ndihmon për të
mbrojtur sigurinë kundër ndërhyrjeve të mundshme.

Hashing është gjithashtu një metodë për renditjen e vlerave kryesore në një tabelë të databazës në
mënyrë efikase.

Kur një përdorues dërgon një mesazh të sigurt, një hash i mesazhit të synuar gjenerohet dhe kodohet,
më pas dërgohet së bashku me mesazhin. Kur të marrë mesazhin, marrësi dekripton hashin si dhe
mesazhin. Pastaj, marrësi krijon një hash tjetër nga mesazhi. Nëse të dy hashet janë identik kur
krahasohen, atëherë ka ndodhur një transmetim i sigurt. Ky proces hashing siguron që mesazhi të mos
ndryshohet nga një përdorues i paautorizuar.

Hashing përdoret për të indeksuar dhe për të gjetur të dhëna në një databazë sepse është më e lehtë
për të gjetur diçka duke përdorur çelësin hash të shkurtër sesa të kërkosh vlerën fillestare.

Funksioni hash

Algoritmi i hashing quhet funksioni hash - ndoshta termi rrjedh nga ideja se vlera e hash rezultuese
mund të mendohet si një version “i përzier” i vlerës së përfaqësuar.

Përveç rikthimit të shpejtë të të dhënave, hashing përdoret gjithashtu për të koduar dhe dekriptuar
nënshkrimet digjitale (përdoren për të vërtetuar dërguesit dhe marrësit e mesazhit). Shenjat digjitale
transformohet me funksionin e hash dhe pastaj të dy vlerat hash dhe shenjat dërgohen në transmetime
të ndara për te marrësi. Duke përdorur funksionin e njëjtë të hash-it si dërguesi, marrësi nxjerr një
mesazh dhe e krahason atë me mesazhin që e ka marrë. Ata duhet të jenë të njëjtë.

Funksioni hash përdoret për të indeksuar vlerën fillestare ose çelësin dhe pastaj përdoret më vonë
çdo herë që duhet të merren të dhënat e lidhura me vlerën ose çelësin. Hashing është gjithmonë një
operacion me një drejtim.

Një funksion i mirë hash gjithashtu nuk duhet të prodhojë të njëjtën vlerë hash nga dy inpute të ndryshme.
Nëse kjo ndodh, kjo njihet si një përplasje. Një funksion hash që ofron një rrezik jashtëzakonisht të ulët
të përplasjes mund të konsiderohet i pranueshëm.

135

Transmetimi i të dhënave, rrjetat dhe internet-i

Këtu janë disa funksione relativisht të thjeshta hash që janë përdorur:
• Metoda e ndarje-mbetje: Përllogaritet madhësia e numrit të artikujve në tabelë. Ky numër
përdoret më pas si pjesëtues në çdo vlerë fillestare ose çelës për nxjerrjen e një koeficienti dhe
mbetjes. Mbetja është vlera hash. (Meqë kjo metodë mund të prodhojë një sërë përplasjesh,
çdo mekanizëm kërkimi duhet të jetë në gjendje të njohë një përplasje/konflikt dhe të ofrojë
një mekanizëm të kërkimit alternativ.)
• Metoda e palosjes: Kjo metodë ndan vlerën fillestare (shifrat në këtë rast) në disa pjesë, shton
pjesët së bashku dhe pastaj përdor katër shifrat e fundit (ose ndonjë numër tjetër arbitrar të
shifrave që do të funksionojnë) si vlerë hash ose çelës.
• Metoda e transformimit Radix: Kur vlera ose çelësi është me shifra, baza e numrave (ose radix)
mund të ndryshohet duke rezultuar në një rend tjetër shifrash. (Për shembull, një çelës me
numër dhjetor mund të shndërrohet në një çelës me numër heksadecimal.)
• Metoda e riorganizimit të shifrës: Kjo është thjesht marrja pjesë në vlerën fillestare ose çelësin,
siç janë shifrat në pozicionet 3 deri 6, duke kthyer rendin e tyre dhe pastaj duke përdorur atë
rend të shifrave si vlerë hash ose çelës.

Ka disa funksione të njohura hash të përdorura në kriptografi. Këto përfshijnë funksionet e thyerjes
së mesazhit të tilla si MD2, MD4, dhe MD5, të përdorura për hash-timin e shenjave në një vlerë më
të shkurtër të quajtur message-digest dhe Algoritmi i Sigurt Hash (Secure Hash Algorithm - SHA), një
algoritëm standard, që bën një mesazh të gjatë (60-bit) dhe është e ngjashme me MD4. Një funksion
hash që punon mirë për ruajtjen dhe rikthimin e bazës së të dhënave, megjithatë, mund të mos
funksionojë si për qëllime kriptografike ose gabime.

Algoritmi Hash

Tekst i thjeshtë Funksioni hash Tekst hash

Kontroll njohurish

1. Çfarë kuptoni me hash?
2. Për çfarë shërben funksioni hash?
3. A ngjason funksioni hash me enkriptimin?

136

Transmetimi i të dhënave, rrjetat dhe internet-i

4.11 Siguria operacionale

Nxënësi/ja: Situatë

-- identifikon sigurinë Si e mendoni sigurinë në rrjet apo internet? A mund të arrihet siguria
operacionale; maksimale?

-- identifikon proceset e saj; Siguria operacionale (opserational security – OPSEC), e njohur edhe
-- zbulon filtrimin e si siguri proceduriale, është një proces i menaxhimit të rrezikut që
inkurajon menaxherët të shikojnë operacionet nga këndvështrimi
paketave nga firewall-i. i një kundërshtari në mënyrë që të mbrohen informacionet e
rëndësishme nga rënia në duar të gabuara.
Fjalë kyç:
siguri operacionale,
filtrim, firewall.

Megjithëse përdorej fillimisht nga ushtria, OPSEC po bëhet popullore edhe në sektorin privat. OPSEC
përfshin sjelljet dhe zakonet e monitorimit në faqet e mediave sociale, si dhe parandalimi i punonjësve
nga shkëmbimi i kredencialeve të identifikimit përmes postës elektronike ose mesazheve.

Proceset e sigurisë operacionale

Proceset e përfshira në sigurinë operacionale mund të
kategorizohen në këto pesë hapa:
1. Identifikimi të dhënave të ndjeshme, duke përfshirë

pronësinë intelektuale, pasqyrat financiare,
informacionin e klientit dhe informacionin e
punonjësve. Këto janë të dhëna që zakonisht duhet
të përqendrohemi t'i mbrojmë.
2. Identifikimi i kërcënimeve të mundshme. Për secilën kategori të informacionit që konsiderohet e
ndjeshme, duhet identifikuar se çfarë lloj kërcënimesh janë të pranishëm. Ndërsa duhet treguar
kujdes ndaj palëve të treta që përpiqen të vjedhin informacione nga sistemi, duhet gjithashtu kujdes
për kërcënime të brendshëm, siç janë punonjësit e pakujdesshëm dhe ata me synime dashakeqëse.
3. Analizimi i hapësirave të sigurisë dhe dobësitë e tjera. Vlerësimi i masave për mbrojtjen aktuale
dhe përcaktimi se çfarë dobësish ekzistojnë dhe që mund të shfrytëzohen për të pasur akses në të
dhënat e rëndësishme të sistemit.
4. Vlerësimi i nivelit të rrezikut që lidhet me secilën dobësi. Renditen dobësitë e sistemit duke
përdorur faktorë të tillë si gjasat që të ndodhë një sulm, shtrirja e dëmit që pësohet dhe sasia e
punës dhe kohës që do të duhet për ta rikthyer në gjendje të mëparshme. Sa më shumë mundësi
për të ndodhur dhe dëme të ketë një sulm, aq më shumë duhet patur në prioritet zvogëlimi i
rrezikut.
5. Kundërmasat. Hapi i fundit i sigurisë operacionale është krijimi dhe zbatimi i një plani për eliminimin
e kërcënimeve dhe zbutjen e rreziqeve. Kjo mund të përfshijë përditësimin e hardware-it tuaj,
krijimin e politikave të reja në lidhje me të dhënat e ndjeshme, ose trajnimin e përdoruesve për
praktikat e dobishme të sigurisë dhe politikat e sistemit. Kundërmasat duhet të jenë të drejtpërdrejta
dhe të thjeshta. Përdoruesit duhet të jenë në gjendje të zbatojnë masat e kërkuara nga ana e tyre
me ose pa trajnime shtesë.

137

Transmetimi i të dhënave, rrjetat dhe internet-i

Të kuptojmë se si firewall-i kontrollon filtrimin e paketave

Një switch përdor firewall-in që të lejohet kontrolli i rrjedhës së paketave të të dhënave dhe paketave
lokale. Paketat e të dhënave kalojnë në switch pasi ato përcillen nga një burim në një destinacion.
Paketat lokale janë të destinuara ose të dërguara nga një Routing Engine (ata nuk kalojnë në një switch).
Paketat lokale zakonisht përmbajnë të dhënat e protokollit të drejtimit, të dhënat për shërbimet IP siç
janë Telnet ose SSH, ose të dhënat për protokollet administrative siç është Internet Control Message
Protocol (ICMP).

Filtrimet e firewall-it ndikojnë kalimin e paketave që futen ose dalin nga një switch si më poshtë:

• Filtrat hyrëse të firewall-it ndikojnë në kalimin e paketave të të dhënave që pranohen në
ndërfaqet e switch-it. Kur një switch merr një paketë të dhënash, Packet Forwarding Engine
në sistemin që përmban ndërfaqen e hyrjes përcakton se ku ta përcjellë paketën duke parë në
tabelën e rutimit të shtresës 2 ose shtresës 3 për rrugën më të mirë në destinacion. Paketat
e të dhënave përcillen në një ndërfaqe dalëse. Paketat e destinuara në nivel lokal përcillen në
routing engine.

• Filtrat dalëse të firewall-it ndikojnë në paketat e të dhënave që kalojnë në një switch por nuk
ndikojnë në paketat e dërguara nga routing engine. Këto filtra aplikohen nga Packet Forwarding
Engine në sistemin që përmban ndërfaqen e daljes.

Figura ilustron aplikimin e filtrave të firewall-it hyrëse dhe dalëse për të kontrolluar kalimin e paketave
nëpërmjet një switch:

1. Filtrimi firewall hyrës zbatohet në paketat e destinuara në nivel lokal të cilat pranohen në ndërfaqet
e switch-it dhe janë të destinuara për routing engine.

2. Filtrimi firewall hyrës zbatohet në paketat e të dhënave që pranohen në ndërfaqet e switch-it dhe
do të kalojnë përmjet tij.

3. Filtrimi firewall dalës i përdorur për paketat e të dhënave që kalojnë përmes switch-it.

Rutimi

Paketa Filtrim Filtrim Paketa
hyrëse firewall-i hyrës firewall-i dalës dalëse

Aplikimi i filtrave të Firewal-it për kalimin e paketave të kontrolluara

Kontroll njohurish
1. Përshkruani se çfarë siguria operacionale.
2. Si filtrohen paketat nëpërmjet firewall-it?

138

Transmetimi i të dhënave, rrjetat dhe internet-i

4.12 Vlerësim njohurish

Aftësi që zhvillohen
- Vetëvlerëson aftësitë e tij/saj mbi njohuritë e marra.

1. Cilët janë dy element të kthimit të sinjalit analog në digjital?
2. Çfarë kuptoni me kuantizim?
3. Tregoni çfarë përfaqëson secila vijë në grafik?

4. Shpjegoni shkurtimisht se çfarë kuptoni me korruption të dhënash në sistemet kopjuterike.

5. Përmendni disa nga shkaqet e mundshme që shkaktojnë korruptim të dhënash.

6. Cilat janë katër shtresat e modelit TCP/IP?

1. _________________________ 3. –––––––––––––––––––––––––

2. ––––––––––––––––––––––––– 4. –––––––––––––––––––––––––

7. Pse mendoni se është i rëndësishme shtresëzimi i rrjetit?

8. Nga ndryshon adresa IP me adresën MAC?

9. Pse duhet që një pajisje të ketë të dyja adresimet, IP dhe MAC, në rrjet?

10. Cilat janë avantazhet e packet switched?

11. Bëni dallimin ndërmjet packet switched dhe circuit switched.

12. Bëni një përshkrim të shkurtër sesi mendoni se do të jetë jeta jonë në ndikimin e IoT.
Përmendi disa nga avantazhet që keni mësuar.

13. Duke ditur rreziqet e internetit, shpjegoni rëndësinë që ka mbrojtja e të dhënave.
Pse duhen mbrojtur të dhënat gjatë kohës që trasmetohen?

14. Ndërtoni një diagram ku të bëni dallimet mes enkriptimit simetrik dhe atij asimetrik.

15. Çfarë kuptoni ju me funksionin hash? A ju ngjason me enkriptimin?

16. Cilat janë proceset e sigurisë operacionale? Flisni shkurtimisht për to.

139

140

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

TEMATIKA V - ZHVILLIMI I APLIKACIONEVE,
SOFTWARE-VE DHE SISTEMEVE

5.1 Cikli i zhvillimit të software
5.2 Vlerësimi i realizueshmërisë së një projekti të zhvillimit softuerik
5.3 Veprimtari praktike - Vlerësimi i perspektivës ekonomike

së projektit të zhvillimit softuerik ATM
5.4 Kërkesat funksionale dhe jofunksionale
5.5 Rastet e përdorimit - Use Cases
5.6 Metoda e zhvillimit waterfall
5.7 Metoda e zhvillimit agile
5.8 Mënyrat e përshkrimit të veprimeve për një zgjidhje
5.9 Diagrama e procesit
5.10 Ndërveprimi kompjuter-njeri
5.11 Testimi i të dhënave
5.12 Abstraksioni
5.13 Modelimi i sistemit

Në këtë tematikë, nxënësi/ja:

• zhvillon dhe vlerëson mangësitë dhe përparësitë e projektimeve alternative për një
problem; krijon struktura të dhënash dhe përdor shënimet e duhura duke përfshirë
bllokskemat dhe diagramet e rrjedhjes së informacionit; përdor mjetet e menaxhimit
të projekteve si grafikët gantt dhe ato të rrjedhjes për të planifikuar dhe zbatuar
detyrat e zhvillimit të softwarit; formulon hipotezat rreth performancës së sistemeve
dhe testet për t’i testuar ato; demonstron që elementët e një sistemi informacioni
ndërveprojnë në rregull midis tyre dhe korrigjon daljet në bazë të hyrjeve; aplikon
udhëzimet e projektimit për të zhvilluar ndërfaqen e përdoruesit edhe ndërveprimin
duke konsideruar edhe nevojat/kërkesat e ndryshme të përdoruesve.

141

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

5.1 Cikli i zhvillimit të software

Nxënësi/ja: Situatë
Cilat janë fazat nëpër të cilat duhet të kalojë zhvillimi i një software?
-- kupton fazat e ndryshme Cilat janë aktivitetet që kryhen në secilën fazë?
të ciklit të zhvillimit të
software-it;

-- identifikon problemin,

investigimin dhe Cikli i zhvillimit i software përshkruan të gjitha veprimtaritë dhe
analizën; produktet e nevojshme për të zhvilluar një software. Modelet e
-- identifikon projektimin, ciklit të zhvillimit të software përshkruajnë secilën fazë dhe si do
zbatimin, testimin, të renditen ato. Secila fazë prodhon produkte të cilat kërkohen nga
instalimin; faza tjetër në cikël. Etapat e ciklit të zhvillimit të software janë:
-- identifikon

dokumentimin, Përcaktimi i problemit Përcaktimi i problemit
vlerësimin dhe Kjo fazë përcakton problemet specifike që
mirëmbajtjen. do të zgjidhen dhe përcakton kërkesat e
Fjalë kyç: sistemit. Procesi i përcaktimit të problemeve
cikël zhvillimi, kryhet nga zhvilluesit së bashku me klientët,
software, faza. përdoruesit fundorë, etj. Në këtë fazë duhet
të përcaktohet se çfarë do të bëjë sistemi
Analiza dhe investigimi duke nxjerrë dhe analizuar kërkesat.

Faza e analizimit dhe investigimit përfshin përcaktimin e qëllimeve të projektit si
funksione. Më pas ekipi zhvillues përcakton se çfarë veprimesh duhet të ketë sistemi.
Në këtë fazë do të mblidhen dhe interpretohen faktet, përcaktohen problemet me
sistemin ekzistues dhe rekomandohen përmirësime.

Projektimi Analiza dhe investigimi

Projektimi ose modelimin e sistemit synon të konvertojë kërkesat në një sistem i cili mund të
ekzekutohet. Disa nga aktivitetet e kësaj faze janë modelimi i arkitekturës, modelimi i komponentëve,
modelimi i strukturës së të dhënave, modelimi i algoritmeve, etj.

Zbatimi
Zbatimi ose implementimi është faza në të cilën fillohet zhvillimi i sistemit. Gjatë implementimit, ekipi
zhvillues ndërton produktin dhe krijon programin në përputhje me projektin. Zhvilluesit përdorin mjete
të ndryshme si interpretuese, kompiluese, gjuhë programimi të nivelit të lartë si Java, C#, etj.

Zhvilluesit përcaktojnë gjuhën e programimit në varësi të tipit të
sistemit së bashku me kërkesat e përdoruesve fundorë. Në këtë
fazë hiqen të gjitha gabimet që mund të ketë programi në mënyrë
që ai të mund të kalojë në fazën e testimit. Qëllimi kryesor i fazës
së implementimit është të konvertojë prototipin e dizenjuar në
fazën e modelimit në një sistem funksional që plotëson të gjitha
kërkesat që janë identifikuar në fazën e përcaktimit të kërkesave.
Në fund të kësaj faze, sistemi do t’i nënshtrohet fazës së testimit.

Implementimi i software

142

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

Testimi
Testimi është aktiviteti i cili synon të zbulojë problemet e software dhe kontrollon nëse produkti është
në përputhje me të gjitha kërkesat. Gjatë kësaj faze kryhet:

• Testimi i njësive – procesi i ekzekutimit të çdo moduli si klasa, funksione,
procedura etj, pët të konfirmuar që i kryejnë siç duhet funksionet e tyre.

• Testimi i integrimit – testohet integrimi midis komponentëve dhe si
funksionojnë grupet e njësive.

• Testimi i sistemit – teston të gjithë sistemin/produktin siç përcaktohet Testimi i software
nga funksionalitetet e kërkuara në fillim. Testimi i sistemit teston kërkesat
funksionale (cilat janë detyrat që duhet të kryejë software,etj. ) dhe kërkesat jofunksionale (testimi
i performancës, etj.). Ky testim kryhet nga specialistë të testimit të programeve.

• Testimi pranues – ky lloj testimi kryhet nga përdoruesi fundor i programit ose klienti që ka njohuri
teknike dhe kontrollon nëse programi kryen kërkesat që janë kërkuar. Qëllimi i testit të pranimit
është krijimi i besimit për sistemin nga përdoruesi fundor.

Instalimi i software Instalimi
Pas testimit të suksesshëm, produkti dërgohet dhe instalohet tek klienti
për përdorim. Klienti duhet të kryejë testimin e pranimit sipas kërkesave të
përshkruara në kontratën e projektit. Instalimi do të përfshijë planifikimin e
instalimit, shpërndarjen e software për përdorues të ndryshëm, instalim e
software tek klientët dhe pranimin e software nga përdoruesit.

Dokumentimi
Në fazën e dokumentimit duhet të dokumentohen të gjitha rezultatet e të gjitha
proceseve në ciklin e zhvillimit të software.

Vlerësimi dhe mirëmbajtja
Në këtë fazë kryhet vlerësim i vazhdueshëm i sistemit dhe i performancës së
sistemit. Pasi përdoruesit fundorë ose klientët fillojnë të përdorin sistemin e
zhvilluar, atëherë fillojnë të shfaqen problemet aktuale dhe kërkohen kërkesa
të reja vazhdimisht. Për shkak të problemeve dhe ndryshimit të kërkesave, edhe
sistemet duhet të ndryshojnë vazhdimisht në përputhje me ndryshimet që vijnë
nga përdoruesit fundorë.

Aftësi që zhvillohen

- Aftësohet me identifikimin e fazave të ndryshme të cikleve të zhvillimit të software-it si: përcaktimi i problemit,
investigimi dhe analiza, projektimi, zbatimi, testimi, instalimi, dokumentimi, vlerësimi dhe mirëmbajtja.

Kontroll njohurish

1. Çfarë kuptoni me cikël të zhvillimit të software?
2. Cili është ndryshimi midis përcaktimit të problemit, analizimit dhe investigimit.
3. Cili është qëllimi i fazës së implementimit? Kush merr pjesë në këtë fazë?
4. Cilat janë katër tipet e testimeve të software?
5. Përse është e rëndësishme faza e vlerësimit dhe mirëmbajtjes së sistemit?

143

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

5.2 Vlerësimi i realizueshmërisë së një projekti të
zhvillimit softuerik

Nxënësi/ja: Situatë
Si mund të përcaktojmë nëse një projekt i zhvillimit
-- identifikon perspektivën softuerik do të jetë i suksesshëm ose jo? Çfarë duhet
teknike dhe të analizojmë?
operacionale;
Projekti
-- identifikon perspektivën
ekonomike dhe legale; Një projekt përfshin disa detyra që duhet të kryhen në një periudhë
të caktuar me një kosto të caktuar. Studimi i fizibilitetit ose
-- identifikon perspektivën perspektivës gjykon nëse një projekt është i vlefshëm apo jo dhe
njerëzore. studion realizueshmërinë e një projekti të zhvillimit softuerik.

Fjalë kyç:

perspektiva teknike,
operacionale,
ekonomike, legale,
njerëzore.

Perspektiva teknike

Studimi i perspektivës teknike duhet të përcaktojë se cilat teknologji nevojiten që sistemi të funksionojë.
Para fillimit të një projekti, ka një vendim të rëndësishëm që duhet të merret: A është propozimi
teknikisht i realizueshëm? Pra, a do të funksionojë në të vërtetë
teknologjia?
Ne e dimë, për shembull, se një sistem për të parashikuar rezultatet e
një llotarie nuk mund të funksionojë. Por një sistem i cili njeh gjuhën
e folur, është një sistem i cili është i vështirë për t’u realizuar por
mund të realizohet. Një sistem për të shkarkuar dhe luajtur filma me
cilësi shumë të lartë në shtëpi është gjithashtu një sistem që mund të
realizohet.

Perspektiva ekonomike Analiza e kostos dhe përfitimeve

Në sistemet e informacionit përdoren një sërë teknikash për ndërtimin
e një sistemi në mënyrë që të përcaktohet nëse një sistem do të jetë i
vlefshëm. Sasia e parave përbën një nga matësit më të mirë për matjen
e vlerës së projektit. Kjo perspektivë njihet si perspektiva ekonomike
ose perspektiva e kostos dhe e përfitimeve.

Një kompani pret që të kthehen disa përfitime nga një investim dhe projekt i kryer. Në këtë mënyrë
llogaritet:
1. kosto e ofrimit të sistemit
2. sasia e parave të krijuara nga përdorimi i sistemit – përfitimet.
Nëse përfitimet janë më të mëdha sesa kosto, sistemi është i vlefshëm, përndryshe ai do të konsiderohet
si një sistem jo i vlefshëm. Nëse ka ndonjë mënyrë tjetër për të kryer detyrën, si kryerja e detyrës në
mënyrë manuale, atëherë do të ishte e nevojshme që të krahasoheshin të dy kostot. Teknika që do të
jepte koston më të vogël do të zgjidhej duke pasur parasysh që përfitimet janë më të mëdha se kosto.

144

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

Kostot dhe përfitimet zakonisht vlerësohen për një periudhë pesëvjeçare. Kjo nënkupton se kosto
fillestare e projektit shpërndahet në të gjithë ciklin e zhvillimit të sistemit. Disa nga kostot që mund të
përmendim janë: kosto për të blerë pajisje hardware-ike, kosto e zhvillimit të sistemit, kosto e trajnimit,
kosto e humbjes së punës gjatë transferimit në sistemin e ri, kosto e mirëmbajtjes së sistemit, kosto e
riparimit të pajisjeve dhe kosto e përmirësimit të sistemit në rastin e ndryshimit të kërkesave.

Perspektiva operacionale

Perspektiva operacionale mat se sa mirë një sistem i propozuar zgjidh problemet.
Pyetjet që ndihmojnë në testimin e perspektivës operacionale janë:
• A e suporton menaxhimi projektin? Pyetje

• A do të reduktojë ky projekt kohën dhe veprimet operacionale?
• A janë përfshirë përdoruesit në planifikimin dhe zhvillimin e projektit?
• A do të përfitojë organizata nga sistemi i propozuar? A do të ndikojë sistemi tek klientët?

Perspektiva legale

Perspektiva legale Perspektiva legale ka të bëjë me konfliktet që ngrihen midis sistemit të
propozuar dhe kontratave, të drejtave të autorit, liçensave, ligjeve dhe
rregullave. Për shembull, një sistem i cili proceson të dhëna duhet të jetë
në përputhje me ligjet e shtetit dhe rregullat e mbrojtjes së të dhënave.
Shembull tjetër është përdorimi i programe të paliçensuara, etj.

Faktori njerëzor

Projekti përfshin burime si: drejtuesit e projektit, anëtarët e ekipit, aftësitë e ekipit, stafi mbështetës,
aftësitë komunikuese dhe bashkëpunuese, disponueshmëria e anëtarëve të ekipit, etj. Në perspektivën
e faktorit njerëzor përfshihet:
• lehtësia në përdorim – a është i lehtë për t’u përdorur sistemi në veprimet ditore nga përdoruesit

fundorë.
• përdorshmëria – a plotësohen të gjitha nevojat e përdoruesve fundorë nga suporti ndaj sistemit.
• kënaqësia e përgjithshme – a e pëlqejnë përdorimin e sistemit përdoruesit fundorë.

Nxënësi/ja kupton që realizueshmëria e një projekti të zhvillimit softuerik duhet të vlerësohet nga
perspektiva operacionale, ekonomike, teknike, legale, dhe faktori njerëzor.

Kontroll njohurish

1. Sugjeroni një sistem për të cilin analiza kosto-përfitime do të kishte më të mëdha
kostot sesa përfitimet.

2. Sugjeroni një sistem të vlefshëm dhe diskutoni mbi perspektivën teknike,
operacionale, ekonomike, legale, njerëzore të tij.

145

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

5.3 Veprimtari praktike - Vlerësimi i perspektivës ekonomike
së projektit të zhvillimit softuerik ATM

Një ATM është pjesërisht pjesë hardware-ike, pjesërisht pjesë software-ike.
Studimi mund të kryehet për të gjithë sistemin ose mund të kryhet vetëm
për komponentët software-ikë. Megjithatë nëse do të vlerësojmë në bazë të
kostos, duhet që të vlerësojmë të gjithë sistemin.

Shpenzime ndërtimi ATM

Supozojmë se do të nevojiten 200 makina ATM. Kosto hardware-ike do të përfshijë procesorin,
lexuesin e kartës, monitorin, tastierën, printerin, vendin ku vendosen paratë dhe një modem.
Supozojmë se kosto për secilën ATM do të ishte 10 000$. Gjithashtu ky projekt ka shpenzime
të instalimit të makinave në mënyrë të sigurtë. Gjithashtu do të ketë nevojë për një server
në bankë me kapacitet të madh i cili do të menaxhojë kërkesat nga ATM. Kështu kosto totale
hardware-ike do të jetë 20 000$ për ATM.

Shpenzime operative

Shpenzimet operative do të përfshijnë linjat e telefonit, zëvendësimin e letrës së printerit dhe
mbushjen e makinës me para.

Shpenzime e software-it

Programi është relativisht kompleks për shkak se ai përdor pajisje të posaçme. Për çdo ATM ka
një program së bashku me programin në bankë për të menaxhuar kërkesat nga ATM. Programi
i ATM duhet të jetë i fuqishëm dhe i besueshëm për shkak se ai do të përdoret nga një numër
shumë i madh njerëzish. Supozohet se ndërtimi i programit do të ketë kosto 100 000$. Por kjo
kosto duhet të shpërndahet në 200 makina, pra 500$ për secilën makinë.

Përfitimet e ofrimit të ATM

Pa dyshim që ATM janë shumë të rëndësishme dhe të disponueshme në 24 orë në 7 ditë të javës
në dyqane, rrugë, ndërtesa etj. Ofrimi i ATM-ve tërheq klientët e bankës por ky përfitim kushton.
Megjithatë ky do të ishte një avantazh i përkohshëm, derisa të gjitha bankat të ofrojnë shërbimin
ATM. Megjithatë shumica e bankave kanë reduktuar punën nëpërmjet kompjuterizimit dhe kjo
do të ishte një përfitim shumë i madh në lidhje me koston. Duke supozuar se një ATM e cila
punon 24 orë, do të reduktonte kohën e dy punonjësve me kohë të plotë, do të kishim një kosto
prej 40 000$ në vit (paga dhe kosto të tjera si hapësia e zyrës). Kështu në një periudhë 5-vjeçare
supozohet se për çdo ATM do të kishim:

Shpenzime 20 000$ Përfitimet 400 000$
Shpenzime hardwarike 500$ Kosto stafi 400 000$
Shpenzime software 4 500$ Totali
Shpenzime mirëmbajtje
Totali 25 000$

Kontroll njohurish
1. Si mendoni duhet të fillojë projekti i ndërtimit të ATM?

146

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

5.4 Kërkesat funksionale dhe jofunksionale

Nxënësi/ja: Situatë
Kërkohet të ndërtohet një sistem për një librari.
-- identifikon aktivitetet Ky sistem do të mundësojë kërkimin e librave që
kryesore të nxjerrjes së gjenden në librari. Cilat janë kërkesat funksionale
kërkesave; dhe jofunksionale për këtë sistem?

-- ndërton kërkesa Nxjerrja e kërkesave
funksionale dhe
jofunksionale për një Nxjerrja e kërkesave është një proces shumë i rëndësishëm pasi
sistem. përcakton qëllimin e funksionimit të një sistemi. Klienti, zhvilluesit
dhe përdoruesit pasi identifikojnë problemin, përcaktojnë sistemin
Fjalë kyç: i cili do të jetë i aftë të zgjidhë problemin. Nëpërmjet specifikimit
të kërkesave ndërtohet një kufizim të
kërkesa funksionale,
kërkesa jofunksionale.

cilit sistemit duhet t’i nënshtrohet në mënyrë që të pranohet nga klienti.
Kërkesat duhet të përmbushen nga zhvilluesit e sistemit. Specifikimi i
kërkesave përshkruan thjesht dhe qartë në gjuhë natyrale se çfarë sistemi
pritet që t’i ofrohet përdoruesve të sistemit.

Aktivitetet kryesore të nxjerrjes së kërkesave janë : Nxjerrja e kërkesave

• Përcaktimi i aktorëve – identifikohen grupe të ndryshme përdoruesish të sistemit.

• Identifikimi i skenarëve – zhvilluesit krijojnë skenarë të cilët përshkruajnë funksionalitet që do të
ketë sistemi. Skenarët janë shembuj tipikë të sistemit të ardhshëm.

• Identifikimi i rasteve të përdorimit – pasi janë përshkruar të gjithë skenarët nga zhvilluesit dhe
përdoruesit, zhvilluesit ndërtojnë rastet e përdorimit që përfaqësojnë sistemin e plotë të ardhshëm.
Rasti i përdorimit përshkruan të gjithë skenarët e mundshëm.

• Përmirësimi i rasteve të përdorimit – rastet e përdorimit përmirësohen në varësi të specifikimit të
plotë të kërkesave. Zhvilluesit detajojnë rastet e përdorimit dhe përshkruajnë sjelljen e sistemit
duke pasur parasysh raste të veçanta dhe gabime që mund të ndodhin.

• Identifikimi i lidhjeve mes rasteve të përdorimit – zhvilluesit përcaktojnë varësitë ndërmjet rasteve
të përdorimit.

• Identifikimi i kërkesave jofunksionale – zhvilluesit, përdoruesit dhe klientët përcaktojnë sëbashku
disa kërkesa që janë të dukshme për klientin, por nuk lidhen me funksionalitetet si: performanca e
sistemit, dokumentimi, siguria, cilësia etj.

Kërkesat funksionale

Kërkesat funksionale përbëjnë themelin e specifikimit të kërkesave. Ato përshkruajnë çfarë duhet të
bëjë sistemi. Për shembull:

Sistemi duhet të shfaqë titujt e të gjithë librave të shkruara nga një autor.
Sistemi duhet të shfaqë vazhdimisht temperaturën e e të gjitha makinave.
Kërkesat funksionale karakterizohen nga folje që përshkruajnë veprime. Kërkesat funksionale
përshkruajnë ndërveprime midis sistemit dhe përdoruesit pavarësisht mënyrave të ndryshme të
implementimit, si procesori, gjuha e përdorur etj.

147

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

Kërkesat jofunksionale

Kërkesat jo funksionale përshkruajnë disa aspekte të sistemit që nuk lidhen drejtpërdrejt me sjelljen
funksionale të sistemit. Ato përfshijnë kërkesa të sistemit si më poshtë:
• Përdorueshmëria - lehtësia me të cilin përdoruesi mund të mësojë të ndërveprojë

me sistemin, të japë inpute dhe të interpretojë rezultatet e sistemit.

Përdorueshmëria

• Besueshmëria – një sistem është i besueshëm nëse ai kryen funksionet e kërkuara dhe
vazhdon të funksionojë pa kryer ndonjë veprim të padëshirueshëm.

Besueshmëria

• Performanca – kërkesat e performancës lidhen me kohën e përgjigjes, pra se sa
shpejt i përgjigjet sistemi kërkesave të përdoruesve, raporti output/intput i cili
tregon sa punë mund të kryejë sistemi gjatë një kohe të caktuar, disponueshmëria
që tregon raportin në të cilin një sistem është operacional dhe i aksesueshëm.

Performanca

• Mbështetja – përshkruan lehtësinë e ndryshime që mund të kryhet në sistem
pasi sistemin ja kemi dhënë përdoruesve; mirëmbajtja - aftësia për të riparuar një
problem ose implementimi i teknologjive të reja.

Mbështetje nga përdoruesit

Aftësi që zhvillohen
- Aftësohet në identifikimin e kërkesave funksionale dhe jofunksionale.

Kontroll njohurish
1. Të përcaktohen nëse pohimet e mëposhtme për një program biblioteke janë kërkesa

funksione apo kërkesa jofunksionale dhe përse?
• Të kërkohet me titullin e librit.
• Të kërkohet me fjalë kyçe.
• Të kërkohet përmbajta, ku përfshihen autorët, kapitujt etj.
• Kërkimi të jetë sa më i thjeshtë.
• Koha e përgjigjies të jetë më pak se 5 sekonda.
2. Zgjeroni rastin e mësipërm me kërkesa të tjera funksionale dhe jofunksionale.

148

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

5.5 Rastet e përdorimit - Use Cases

Nxënësi/ja: Situatë
Si mund t’i dokumentojmë kërkesat e përdoruesve në mënyrë
-- ndërton use case për një që të kuptojmë se çfarë bën përdoruesi ose një sistem?
sistem,
Use cases ose rastet e përdorimit shërbejnë për dokumentimin e
-- identifikon aktorët në një kërkesave. Rastet e përdorimit jepen në formë teksti dhe mund të
sistem, ilustrohen duke përdorur diagramat use case. Use case kanë si pikë
referimi përdoruesin ose përdoruesit e sistemit. Një përdorues i cili
-- ndërton diagramën use luan një rol të caktuar quhet një aktor. Një rast përdorimi është një
case. detyrë që një aktor duhet të kryejë në një sistem.

Fjalë kyç:

use case, aktor,
diagrama.

Një rast përdorimi përshkruan se çfarë bën përdoruesi por dhe çfarë bën sistemi. Megjithatë
një rast përdorimi nuk përshkruan se si sistemi i kryen detyrat e tij.

Shembull
Në sistemin ATM, një nga detyrat që kryen përdoruesi është tërheqja e parave. Ky është një rast
përdorimi. Si pjesë e tërheqjes së parave, përdoruesi duhet të kryejë dhe nëndetyra të tjera si vendosja
e kartës, shtypja e kodit etj, por këto janë detyra të vogla jo një rast përdorimi.
Rasti i përdorimit për tërheqjen e parave do të ishte:

Use case: Tërheqja e parave në ATM

Përdoruesi vendos kartën në ATM. Sistemi kërkon vendosjen e kodit. Përdoruesi jep kodin.
Sistemi kontrollon kodin. Nëse karta dhe kodi janë të vlefshme, sistemi i ofron mundësinë
përdoruesit për zgjedhjen e funksionalitetit. Përdoruesi zgjedh tërheqjen e parave.
Përdoruesi zgjedh ose jep vlerën e parave që kërkon të tërheqë. Sistemi lëshon kartën.
Kur përdoruesi ka tërhequr kartën, sistemi lëshon sasinë e parave.

Por mund të ndodhë që objektivat e përdoruesit mos të arrihen. Përshembull nëse kodi është i gabuar
çfarë do të ndodhë nuk është përshkruar në rastin e përdorimit të mësipërm. Megjithatë Use case:
Tërheqja e parave në ATM përshkruan çfarë ndodh në rastin e përgjithshëm.

Diagrama Use Case

Rastet e përdorimit mund të dokumentohen nëpërmjet
diagramës Use Case. Rastet e përdorimit zakonisht ndërtohen
në fillim të fazës së zhvillimit dhe aplikohen për të specifikuar
kontekstin e një sistemi, për të paraqitur kërkesat e një sistemi,
për të vlerësuar arkitekturën e një sistemi, për të udhëhequr
implementimin dhe gjenerimin e rasteve testuese.

Diagrama Use Case

149

Zhvillimi i aplikacioneve, software-ve dhe sistemeve

Figura e mëposhtme tregon diagramën Use Case për ATM. Në këtë
diagramë kemi një aktor të vetëm. Emri i rolit të aktorit tregohet poshtë
aktorit. Shigjetat dalin nga aktori në drejtim të rasteve të përdorimit.
Gjithsesi diagrama jep një paraqitje të përgjithshme të aktorëve
dhe rasteve të përdorimit. Kështu një diagramë Use Case është një
paraqitje grafike informale e kërkesave.

Diagrama Use Case për ATM

Shembull:
Të ndërtohet diagrama Use Case e cila tregon rastet e përdorimit për një abonues në bibliotekë dhë
punonjësin e bibliotekës.

Aftësi që zhvillohen
- Aftësohet në ndërtimin e rasteve të përdorimit dhe diagramën Use Case.

Kontroll njohurish
1. Ndërtoni use case për kontrollin e balancës në një ATM.
2. Ndërtoni diagramën use case në një sistem i cili menaxhon biletat online në një kinema.

Përcaktoni aktorët e këtij sistemi.
3. Ndërtoni diagramën Use Case në një sistem i cili do të menaxhojë një restorant.

150


Click to View FlipBook Version