Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

UML Analiza dhe dizenjimi OO

Bachelor Informatik

Klesti Hoxha
Departamenti i Informatiks Fakulteti i Shkencave Natyrore Universiteti i Tirans

T mendosh n objekte
Fjala e urt zotrimi i ekiit nuk t bn nj arkitekt, sht veanrisht e vrtet kur bhet fjal pr teknologjin e objekteve
sht e nevojshme t njohsh nj gjuh programimi objectoriented (p.sh JAVA), por nuk mjafton pr t krijuar sisteme t bazuara n objekte sht vendimtare t dish si t mendosh n objekte

UML Analiza dhe Dizenjimi OO

UML sht nj gjuh modeluese standarde q t ndihmon t dizenjosh n objekte


Por UML nuk sht nj metod OO, sht thjesht nj simbolik me diagrama sht e pamjaftueshme t msosh UML dhe nj program editimi t saj nse nuk je n gjendje t krijosh dizenjimi t shklqyera OO

K. Hoxha 2

Ky leksion prmbledh disa parime t dizenjimit n objekte

Dizenjimi OO: Principe dhe parime


Pyetjet e mposhtme jan pyetje me rndsi n dizenjimin e nj sistemi:
Si duhet t shprndahen prgjegjsit tek klasat dhe objektet? Si duhet t bashkpunojn objektet? Cilat klasa duhet t bjn far?

UML Analiza dhe Dizenjimi OO

Metafora klasike e dizenjmit OO njihet ndryshe si:


Dizenjim i orientuar ndaj prgjegjsive

Rastet e prdorimit (Use Cases)


K. Hoxha 3

Dizenjimi OO sht i lidhur ngusht me aktivitetin e analizs s krkesave i cili shpesh prfshin shkrimin e rasteve t prdorimit (use cases)

Proesi i zhvillimit t software


Si t prparojm nga nxjerrja e krkesave deri n zhvillimin e sistemit?
Analiza e krkesave dhe dizenjimi OO duhet t praktikohet prgjat nj proesi zhvillimi

Ekzistojn dy proese baz


UML Analiza dhe Dizenjimi OO

Waterfall (Ujvar), me nj progres linear t fazave t zhvillimit (Nxjerrja e krkesave, dizenjimi, zhvilllimi, verifikimi, mirmbajtja) Iterative (fazat e msiprme mund t prsriten disa her prgjat proesit t zhvillimit)

K. Hoxha 4

Proeset agile (t lehta, fleksibile) jan nj shembull shum i prdorshm i proeseve iterative Megjithat proesi i analizs dhe dizenjimit OO sht pothuajse i njjt pr t gjitha proeset, ndryshon vetm koha e aplikimit

far sht analiza dhe dizenjimi?


Analiza
E v theksin mbi investigimin e nj problemi dhe krkesave n vend t zgjidhjes Shembull: Nse do ndrtohet nj sistem shitjesh online, si do prdoret? far funksionesh do ket? N terminologji OO preferohen termat analiz krkesash dhe analiz object-oriented

UML Analiza dhe Dizenjimi OO

Dizenjimi
E v theksin mbi nj zgjidhje konceptuale (software + hardware) q prmbush krkesat, jo tek zhvillimi Shembull: Prshkrimi i skems s nj baz t dhnash apo objektet e software N fund, dizenjimet mund t zhvillohen (p.sh t programohen) dhe kjo paraqet dizenjimin e vn n jete N terminologjin OO preferohet termi dizenjim objectoriented

K. Hoxha 5

far sht analiza dhe dizenjimi OO?

UML Analiza dhe Dizenjimi OO

Gjat analizs object-oriented gjenden dhe prshkruhen objektet dhe konceptet e fushs s problemit (domain)
P.sh n rastin e nj sistemi informativ pr fluturimet, disa koncepte prshijn Aeroplan, Fluturim, Pilot

Gjat dizenjimit object-oriented prcaktohen objektet software dhe si bashkpunojn ato pr t prmbushur krkesat
K. Hoxha 6

P.sh nj objekt Aeroplan mund t prmbaj atributin numriBishtit dhe metodn merrHistorinEFluturimeve()

Shembull: Loj me zare (I)


Prcaktimi i rasteve t prdorimit (Use Cases)
Analiza e krkesave mund t prfshij histori ose skenar sesi njerzit prdorin aplikacionin, kto mund t shkruhen si raste prdorimi Lojtari krkon t hedhi zaret. Sistemi paraqit rezultatet: Nse shuma sht 7, lojtari fiton, n t kundrt, lojtari humbet

UML Analiza dhe Dizenjimi OO

Prcaktimi i modelit t fushs s aplikimit (domain model)


Analiza OO merret me prshkrimin e fushs s aplikimit nga perspektiva e objekteve Ekziston nj identifikim konceptesh, atributeve dhe lidhjeve (associations) ndrmjet tyre Rezultati mund t paraqitet si nj model fushe aplikimi (domain model) q tregon konceptet dhe objektet e rndsishme t nj domain-i

K. Hoxha 7

Shembull: Loj me zare (II)

UML Analiza dhe Dizenjimi OO

Ky model ilustron konceptet me vler pr tu shnuar si Lojtar, Zar dhe LojZaresh me lidhjet e dhe atributet e tyre Kini parasysh q domain model nuk sht prshkrimi i objekteve t software, por nj vizualizim i koncepteve dhe modeleve t bots reale.
Si rrjedhoj ky model njihet ndryshe dhe si modeli konceptual

K. Hoxha 8

Shembull: Loj me zare (III)


Vendosja e prgjegjsive t objekteve dhe vizatimi i diagramave t ndrveprimit
Dizenjimi OO merret me prcaktimin e prgjegjsive dhe bashkpunimeve objekteve t software Nj mnyr e shpesht pr t ilustruar kto bashkpunime jan diagramat e sekuencs (n nj leksion t ardhshm). Ato tregojn rrjedhn e mesazheve ndrmjet objekteve software, dhe n kt mnyr thirrjen e metodave.

UML Analiza dhe Dizenjimi OO

K. Hoxha 9

Shembull: Loj me zare (IV)


Prve pamjes dinamike t bashkpunimit t objekteve n diagrama bashkveprimi, shpesh tregohet dhe nj pamje statike e prcaktimeve t klasave: diagrama e klasave
UML Analiza dhe Dizenjimi OO

K. Hoxha 10

Duhet vn re se kto nuk jan klasa t bots reale (si n rastin e modelit konceptual), por klasa t software Edhe pse kjo diagram klasash nuk sht e njjta me modelin e domain, disa emra klasash dhe prmbajtje jan t njjtat

Fuqia e modelimit vizual


Duke vizatuar ose lexuar diagrama UML ne nnkuptojm q po punojm n mnyre vizuale, duke prdorur kshtu fuqin e trurit ton pr t kapur shpejt simbolet, njsite dhe marrdhniet midis tyre
UML Analiza dhe Dizenjimi OO

Shpesh kjo ide e thjesht dhe e vjetr harrohet ndr t gjitha detajet dhe mjetet e UML, duke vepruar n kshtu n mnyr t gabuar
Diagramat na ndihmojn t shikojm m thjesht prshkrimin e plot t nj sistemi duke injoruar apo fshehur detajet e parndsishme Kjo sht vlera esenciale e UML dhe do gjuhe t bazuar n diagrama

K. Hoxha 11

Zhvillimi iterativ
N nj cikl zhvillimi iterativ t software, zhvillimi organizohet si nj seri mini-projektesh t shkurtra dhe me gjatsi t fiksuar (p.sh 3 jav) t quajtura iteracione Prfundimi i do iteracioni sht nj sistem i pjesshm i testuar, integruar dhe i ekzekutueshm
UML Analiza dhe Dizenjimi OO

o iteracion prfshin analizn e krkesave, dizenjimin, implementimin dhe testimin e tij

Shembull: N nj cikl 3 javor n fillim t projektit, nj or t Hnn n mngjes shfrytzohet n nj mbledhje ku skuadra diskuton detyrat dhe qllimet e iteracionit.
Ndrkoh nj person inxhinieron mbrapsht diagramat UML t kodit ekzistues (duke prdorur software) dhe printon dhe paraqet diagrama me rndsi Skuadra shfrytzon kohn e mbetur duke rishikuar, modifikuar diagramat, skicuar diagrama UML shtes, shkruar kod etj. Ditt e mbetura shfrytzohen pr zhvillimi, testim, dizenjim shtes, integrim

K. Hoxha 12

far jan metodat agile?


Metodat e zhvillimit agile zakonisht prfshijn zhvillim inkremental dhe me faza kohore t shtrnguara.
Ato gjithashtu promovojn praktikat q inkurajojn prgjigje t shpejta (fleksible) ndaj ndryshimeve t mundshme

UML Analiza dhe Dizenjimi OO

Manifesti Agile
Individt dhe ndrveprimet n vend t proeseve dhe mjeteve Software q punon n vend t dokumentacionit t tepruar Bashkpunimi me klientt n vend t negocimit t kontratave Prgjigje ndaj ndryshimeve n vend t ndjekjes s planit

K. Hoxha 13

far sht modelimi agile?


Qllimi i modelimit (skicimi i UML, etj.) sht kryesisht pr t kuptuar, jo pr t dokumentuar
Pra modelimi mund dhe duhet t ofroj nj mnyr pr t kuptuar m mir hapsirn e problemit apo zgjidhjes Nga ky kndvshtrim, qllimi i prdorimit t UML (analiz/dizenjim OO) nuk sht q dizenjuesi t krijoj shum diagrama UML t detajuara q i jepen programuesve (e cila sht shum larg metodave agile), por q eksploroj me shpejtsi alternativat dhe rrugt drejt nj dizenjimi t mirr OO

UML Analiza dhe Dizenjimi OO

K. Hoxha 14

Kndvshtrimet e msiprme njihen si modelimi agile

Parimet e modelimit Agile (I)


T prdorsh modelim agile nuk do t thot t shmangsh me do kusht modelimin Qllimi i modelilimit dhe modeleve sht kryesisht pr t mbshtetur kuptimin dhe komunikimin, jo dokumentimin Mos modeloni ose aplikoni UML tek i gjith apo shumica e dizenjimit t software
Dalloni problemet e dizenjimit t thjeshta apo t drejtprdrejta gjat programimit Modeloni dhe prdorni UML pr prqindjen m t vogl t pjesve t pazakonta, t vshtira t hapsirs s dizenjimit

UML Analiza dhe Dizenjimi OO

Prdor mjetin m t thjesht t mundshm


Prdorni mjete t thjeshta q lejojn ndryshim t shpejt dhe modifikime Prdorni mjete q prfshijn hapsira t gjera, p.sh preferoni skicimin n tabela t mdha dhe m pas fotografojini diagramat me kamera dixhitale

K. Hoxha 15

Parimet e modelimit Agile (II)


Mos modeloni vetm, modeloni n grup n nj tabel
Prfshini t gjith pjesmarrsit n modelim/vizatim

Krijoni modele paralelisht


P.sh n nj tabele diagrama dinamike (interaktive) dhe n nj tjeter diagrama statike (p.sh diagrama klasash)
UML Analiza dhe Dizenjimi OO

Prdorni simbolet m t thjeshta t kuptueshme nga t gjith, detajet ekzakte t UML nuk jan t rndsishme pr sa koh t gjith kuptojn njri tjetrin
Prdorni elementt m t thjesht t UML

Kini parasysh q sht praktikisht e pamundur t shmangsh 100% pasaktsit Zhvilluesit duhet t krijojn modelimin OO pr veten e tyre, jo t krijojn diagrama q i jepen programuesve t tjer
K. Hoxha 16

Kto jan praktika q devijojn nga parimet e metodave agile dhe ngjajn m shum me proeset waterfall

Kategorit e diagramave UML


Diagrama strukture (statike)
Diagramat e klasave, objekteve Diagramat e komponenteve, paketave Diagramat e shprndarjes (deployment)
UML Analiza dhe Dizenjimi OO

Diagrama sjellje (dinamike)


Diagramat e aktivitetit Use Case Diagramat me gjendje (state machine) Diagramat e ndrveprimit
Diagrama sekuence Diagrama komunikimi Diagrama kohore

K. Hoxha 17

Diagramat UML

UML Analiza dhe Dizenjimi OO

K. Hoxha 18

You might also like