MODELET E PROCESIT t zhvillimit t ciklit t

  • Slides: 33
Download presentation
MODELET E PROCESIT të zhvillimit të ciklit të jetës (Lifecycles), ujëvara (Waterfall), Interative dhe

MODELET E PROCESIT të zhvillimit të ciklit të jetës (Lifecycles), ujëvara (Waterfall), Interative dhe rritëse (Incremental) Prishtine 2014 1

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Softueri dhe entropia Një

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Softueri dhe entropia Një e mirë e softuerit: ky relativisht lehtë mund të ndryshohet Përndryshe kjo mund të bëhët edhe me hardware! Megjithatë, sa më i ndërlikuar bëhet një sistem softueri, aq më vështirë është për tu ndryshuar Pse? - Sistemet më të mëdha softuerike vështirë kuptohen; - Sa më shumë ndryshime të keni futur në një sistem, aq më shumë ai priret drejt entropisë; -Dmth. rendi i tij i brendshëm prishet - Multimedia: http: //www. cse. lehigh. edu/~cimel/prototype. html 2

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Planifikimi i ndryshimeve Si

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Planifikimi i ndryshimeve Si munden komentet e qëlluara të lehtësojnë dhe të zvogëlojnë koston e mirëmbajtjes softuerike? Thuhët: mendoni për invariantet, si gjëra që nuk ndryshojnë. Komentet e përshkruajnë kuptimin e kodit Programuesit marrin përsipër të bejnë komentet kur ata të ndryshojnë kodin! Si mundet modulariteti të ndihmojë menaxhimin e ndryshimit? Modulet ndihmojnë për të izoluar dhe të lokalizuar ndryshimin 3

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Një cikël softueri /program

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Një cikël softueri /program kompjuterik / është një proces Një proces përfshin aktivitetet, kufizimet dhe burimet që prodhojnë një produkt të synuar. n Çdo aktivitet në proces, p. sh. , dizajni, duhet të ketë kriteret e hyrjes dhe daljes — PSE? n Një proces që shfrytëzon burime i nënshtrohet kufizimeve (p. sh. një orar apo një buxhet i caktuar) n Një proces është i organizuar në një farë mënyrë apo rendi, aktivitete këto të strukturuara si një tërësi n Një proces ka një sëri parimesh ose kriteresh udhëzuese që shpjegojnë qëllimet e çdo aktiviteti n 4

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Një proces softuerik kërkon

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Një proces softuerik kërkon burime … 5

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modelet e procesit Pas

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modelet e procesit Pas shumë vitesh evolucioni, duket se ka shumë modele të procesit, si për shëmbëll : § § § § Waterfall model, Rapid prototyping, software automation, V-Model Spiral Model Iteration model Increment model 6

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli “waterfall” i procesit

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli “waterfall” i procesit softuerik - Fazat në process - Kaskadat nga njëra fazë tatpjetë/posht tjetrës § Forca e gravitetit lejon ujëvarën për të shkuar vetëm në drejtim të rrymimit të ujit; § Është shumë e vështirë për të notuar në të kundërten e rrjedhës § Departmenti i Mbrojtjës këtë model softueri e ka aplikue për shumë vite në Do. D standard 2167 -A 7

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Waterfall Model Requirements Analysis

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Waterfall Model Requirements Analysis System Design Coding Testing Maintenance 8

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pse menaxheri i korporatës

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pse menaxheri i korporatës do ta pëlqente modelin ujëvarë të ciklit? - Minimizon ndryshimin si dhe maksimizon parashikueshmërinë - Kostot dhe risku janë më të parashikueshme - Secila faze ka piketa dhe afate kohore për implementim: menaxherët e projektit mund ta përdorin për të vlerësuar sa afër është projekti për tu kompletuar - Krijon ndarjen e punës: disa linja të softuerit bashkojnë njerëz të ndryshëm me faza të ndryshme: Si? • • Analisti i sistemit bën analizën, Arkitekti bënë dizajnin, Programeri krijon kodin Testuesit vërtetojnë, etj 9

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Mangësitë e modelit waterfall

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Mangësitë e modelit waterfall § Nuk ofron njohuri mbi çdo aktivitet gjatë transformimit të një objekti (dokumenti) nga njëra fazë në një tjetër § Psh. requirements specification design documents? § Dështon së trajtuari softueri si një proces për zgjidhjen e problemeve § Për dallim nga hardueri, zhvillimi softuerit nuk është një proces prodhues por process krijues • • Proceset e prodhimit në të vërtetë mund të jenë sekuenca lineare, por proceset krijuese zakonisht përfshijnë aktivitete prapa-e-para, të tilla si me qenë revizione Krijimi i programeve kompjuterike përfshin një numër komunikimesh në mes të akterëve të ndryshëm të resurseve humane Megjithatë, modelet më komplekse shpesh e bëjnë më të bukur ujëvarën. Si? • duke përfshirë feedback unazore dhe aktivitete shtesë 10

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Krijimi i prototipeve (prototyping)

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Krijimi i prototipeve (prototyping) § Ky model shton prototipin si nën-proces § Prototype është një produkt i zhvilluar pjesërisht që u mundëson klientëve dhe zhvilluesve për të shqyrtuar disa nga aspektet e një sistemi të propozuar dhe të vendosë nëse ai është i përshtatshëm për një produkt final § Pse të shtohët prototipi në një cikël? § Përdoret për të shqyrtuar aspekte të rrezikshme të sistemit: • Rreziku i zhvillimit të sistemit të "gabuar" (çfarë nuk dëshiron konsumatori), mund të jetë një interfejs i përdoruesit (user interface) pa funksionalitet • Rreziqe të tjera teknike - p. sh. performanca, duke përdorur një teknologji të re, algoritme alternative, etj • Dhe? § Prototipi mund të hidhet tej ose të zhvillohet në produkt 11

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Prototyping 12

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Prototyping 12

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli V § Është

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli V § Është zhvilluar nga Ministria e Mbrojtjës Gjermane § Çfarë e bën këtë model të shpërfaqet? • Testimi i njësisë dhe sistemit verifikon dizajnin e programit, duke siguruar që pjesët dhe tërë produkti të jetë i saktë • Testim-pranimi, i kryer nga ana e konsumatorit më tepër se sa zhvilluesit, validon kërkesat, lidh çdo funksion të sistemit, i përmbush kërkesat e specifikuara • Si bëhët ky model i vlershëm për cikël? • Nëse problemet janë gjetur gjatë verifikimit ose validimit, atëherë ri-ekzekutohët ana e majtë e modelit V për të bërë korrigjime dhe përmirësime • Derisa ujëvara thekson dokumente dhe artefakte, modeli V thekson aktivitetet dhe korrektësinë 13

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli V Maintenance Requirements

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Modeli V Maintenance Requirements Analysis System Design Program Design User Acceptance Testing System Testing Unit and Integration Testing 14

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Zhvillimi me faza §

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Zhvillimi me faza § § § Në ditët e sotme, konsumatorët janë më pak të gatshëm të presin me vite për një sistem softueri që të jetë i gatshëm Kështu që është e nevojshme për të zvogëluar kohën e ciklit të produkteve softuerike • Në 1996, 80% e të hyrave të HP-së rrjedhin nga produktet e zhvilluar në dy vitet e mëparshme • Si është bërë e mundur kësaj radhe ky cikël i përshpejtuar ? Zhvillimi ne faza e redukon kohën e ciklit • Hartimi i një sistemi kështu mund të ofrohet në pjesë, përdoruesit shftytëzojnë disa funksione dërisa pjesa tjetër është në zhvillim e sipër • Pra, zakonisht kemi dy ose më shumë sisteme që punojnë paralelisht : • Sistemi operacional ose i prodhimit në përdorim nga klientët • Sistemi i zhvilluar i cili do të zëvendësojë atë aktuale • Nëse përdoruesi përdor Release n, zhvilluesi e ndërton Release n + 1 15

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi iterativ § Zhvillimi

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi iterativ § Zhvillimi iterativ /përsëritës/ përmirëson sistemin e përgjithshëm në çdo release • Dorëzimi i sistemit të plotë në release e parë, do të ndryshon funksionalitetin e çdo nënsistemi në çdo release të ri • Supozoni klientin që dëshiron të zhvillojë një pako procesimi • Qasja incrementale : ofron Creation functions në Release 1, pastaj së bashku Creation & Organization në Release 2, në fund shtohët Formatting në Release 3, e kështu…… • Qasja iterative: ofron formen e thjeshtë me të tre funksione në Verzionin 1, pastaj e rritë (duke e bërë atë më të shpejtë, duke përmirësuar interfejsin, etj) në versionet pasuese (subsequent releases) 16

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Iterative Model Design system

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Iterative Model Design system version n n = n+1 NO Develop system version n Validate system version n YES 17

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi inkremental Zhvillimi inkremental

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi inkremental Zhvillimi inkremental e parcializon sistemin sipas funkcionalitetit Verzioni (Release) fillestarton me nënsistem me pak funksional, më vonë shtohët funksionaliteti Në fig. 5 tregohët se si zhvillimi inkremental ndërton funksionalitetin e plotë Pro dhe kundër këtyre dy qasjeve? Shumë organizata kombinojnë qasjen iterative dhe inkrementale 18

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi inkremental Requirements Analysis

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi inkremental Requirements Analysis Arrange requirements in increments Design and develop increment NO Validate increment Integrate increment System OK? YES 19

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pyetje Cilat janë të

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pyetje Cilat janë të metat e modelit waterfall ? A mundet prototipi me i zbutur këto të meta? ose pse jo? A është modeli V më realist? A është realist? Pse, mjaftueshëm Pse shumë grupe të zhvillimit të softuereve preferojnë metoden e fazave dhe/ose modelet iterative & inkrementale ? A ka bërë ky diskutim të ju motivojë për studim t’iu shmangur asaj që sapo e dëgjuat? për 20

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi racional i unifikuar

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Procesi racional i unifikuar Rational Unified Process (RUP) § § Është zhvilluar prej “tre miqëve” në Rational Softuare (IBM): Grady Booch, Ivar Jacobson, dhe Jim Rumbaugh • Unified Modeling Language (UML) është një grup i shënimeve grafike dhe gjuhësore për modelim të sistemit, jo proces ose metodë • Tre miqët gjithashtu kanë zhvilluar Rational Unified Process (RUP) • Nuk na duhet të përdorim RUP për të përdorur UML • Interesant fakti: i ndryshëm nga modeli tradicional ujëvarë Procesi i modelit iterativ & incremental shquhët: • Produkti softuerik nuk leshohet si nje verzion i caktuar me një “big bang” në fund të projektit • Në vend të kësaj, zhvillohet dhe hedhet ne shitje i ndarë ne pjesë (prototipi, versioni i pjesëshëm, etj) 21

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Metoda agile § Në

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Metoda agile § Në mënyrë tipike metodë e lehtë • Angazhimi duke respektuar fazat dhe dokumentacionin • Kundrejt modelit waterfall i cili kërkon dokumentacion “të rëndë” në çdo fazë para procesimit metoda agile është: § Fleksibile, adaptabile, iterative § Shëmbull: RUP ose UP, Extreme Programming (XP), Scrum (“kacafytje”) 22

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Si do duken fazat

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Si do duken fazat tradicionale iterate? workflows që duket tradicionale, por hapërojnë në katër faza 23

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Fazat e ciklit Fillimi

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Fazat e ciklit Fillimi - "Fantazi” Elaborimi - "Dizajni / Detajet” Ndërtimi - "Bëjeni“ Tranzicioni - "Vendos atë“ Fazat nuk janë procesim klasik i kërkesave/ dizajnim/ kodim / implementim Fazat hapërojnë gjatë disa cikleve 24

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pika startuese Elaborimi …

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pika startuese Elaborimi … § Gjatë procesit te startimit (inception), vëndoset ajo që është racionale në biznes dhe fushëveprim për projektin • Business case: sa do të kushtojë dhe sa do të sjellë? • Qëllimi: përpjekja për të përceptuar madhësinë e projektit dhe nëse kjo mund të bëhet • Krijohët një dokument për vizionin dhe fushëveprimin në një nivel të lartë të abstraksionit § Në fazen e elaborimit (elaboration), mbledhim kërkesat e detajuara dhe bëjmë analiza të nivelit të lartë dhe dizajnit • Inception ju jep vision për të filluar një projekt, elaborimi përcakton riskun § Risku i kërkesave: rreziku i madh është se ju mund të ndërtoni sistemin e gabuar § Risku teknologjik: a mundet teknologjia në të vërtetë të bëjë punë? Copëzat a i përshtaten tërësisë? § Risku i shkathtësisë: a mund të keni stafin me ekspertizën që ju nevojitet? § Risku politik: a mund të merrni forcat politike rrugës? • Zhvilluesi përdor rastet, kërkesat jofunkcionale & domain model 25

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit … Konstruksioni Tranzicioni § Construction

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit … Konstruksioni Tranzicioni § Construction ndërton produktin- softuerin e cilësisë me shumë inkremente, të testuar dhe të integruar, secili që kënaq një prej kërkesave të projektit • Delivery/ Dorëzimi mund të jetë përdoruesit e jashtëm, të parët, apo vetëm ata të brendshëm • Çdo iteracion përmban fazat e zakonshme të ciklit: të analizës, projektimit, zbatimit dhe testimit • Planifikimi është krucial: përdor rastet dhe UML dokumentet § Transition aktivitetet përfshijnë testimin beta, akordim të performancës (optimizimin) dhe trajnim të përdoruesve § Nuk ka funksionalitet të ri nëse nuk është i vogël dhe thelbësor • Korrigjime difektesh …. është OK! 26

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Fazat UP janë iterative&inkrementale

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Fazat UP janë iterative&inkrementale §Inception §Faza e fizibilitetit dhe vizion i përafërt §Elaboration §Zbatimi i arkitekturës bërthamë, rezolucion me rrezik të lartë §Construction §Implementimi i elementeve të mbetura §Transition §Beta testet , dislokimi 27

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Artifaktet UP §UP përshkruan

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Artifaktet UP §UP përshkruan aktivitetet e punës, që rezultojnë me produkte te punes (work products) që quhen artefakte (artifacts) §Shëmbuj të artifakteve: §Vizioni, fushëveprimi dhe përshkrimet e rasteve të biznesit §Përdorni raste (përshkruaj skenare për ndërveprime user-system) §UML diagramet për modelimin e domain, sistemin e modelimit §Kodi burimor (dhe dokumentacioni kodi burim ) §web grafika §Skema e bazes se te dhenave (Database schema) 28

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Piketë e elaborimit të

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Piketë e elaborimit të parë Në fillim të elaborimit, identifikohen pjesë të projektit për hartim dhe zbatim Një skenar tipik dhe krucial (nga një rast në përdorim) Pas elaborimit të parë, projekti, themi është realizuar për 1/5 -ten Atëherë mund të japin vlerësime për pjesën tjetër të projektit Rreziqe të mëdha identifikohen dhe nënkuptohen Si është një e tillë piketë ndryshe nga një fazë në modelin ujëvarë? 29

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Disiplinat e procesit ose

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Disiplinat e procesit ose “workflows” • Analiza e kërkesave • Dizajn: arkitekturale dhe të nivelit të klasës • Implementimi • Testimi • Menaxhimi – Konfigurimi dhe ndryshimi – Projekti • Shumica nga workflows e proceseve ndodhin gjatë çdo iteracioni (ripërsëritjeje) 30

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pyetje Cilat janë katër

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit - Pyetje Cilat janë katër fazat e ciklit të UP? Çfarë ndodh në secilen nga fazat? Cilat janë disiplinat e procesit? Cilat janë disa nga dallimet më të mëdha që shquejnë UP nga modeli waterfall? 31

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit Diskutime 32

Metoda e analizes se strukturuar te sistemeve dhe Dizajnit Diskutime 32

Falemnderit! 33

Falemnderit! 33