Professional Documents
Culture Documents
Project Justification The Timesheet Reporting tool will be the creation of a user-friendly web-based application. The application will automate the process of tracking the daily time entries made by employees.
Project Scope Description The timesheet reporting tool will be used as a tracking tool to review the time entries by the Information Technology employees globally.
Project Objective To create a tool to track the timesheet entries for all the Information Technology employees.
• User access for the tool granted to all employees
• Admin access to support team
High-Level Requirements • Report generation access to project managers
• Enable users to remotely access the tool
• Standard templates for all reports
• Multi-level approvals for timesheets
• Timesheet tasks additions to the tool by Admin access users
In Scope
• ‘Copy Previous Week’ timesheets feature
• Access tool via Desktop
• New project/task added to the tool by managers
• Connectivity with HRMS to update employee leaves automatically
Out of Scope
• Role-based task list template
• Access tool via mobile and tablet
Cost Item Estimated Project Cost Actual Spend Cost until completion Variance
Software $2300 $900 $1400 NA
Cost Estimate Hardware $5000 $1500 $3500 +/- 1000
Other $750 $0 $750 +/- $100
Total $8050 $2400 $5650
• Timesheets will be updated by users daily.
Assumptions
• Timesheets task list will be updated once a month
• A Single system to record time hours for FTE and Contractors
• Run timesheet reports identifying missing entries
Deliverables • Generate reports identifying productive tasks and work hours
• Generate charts for steering committee packs
• Detailed user guide on steps to update the tool for all users
• Unplanned leaves not captured from the leave system
Constraints
• Timesheet view access for the team only to Direct managers
Faleminderit…!
❑Aktivitetet/fazat e përgjithshme në të
gjitha proceset e softuerit/SDLC.
▪ Specifikimi/Analiza (Planefikimi & definimi i
kërkesave të sistemit dhe përdoruesit).
▪ Dizajnimi (Dizajnimi i arkitektures, programit,
GUI, etj).
▪ Implementimi (Kodimimi i sistemit)
▪ Validimi (Testimit dhe Miratimi)
▪ Evuluimi (Mirmbajtja dhe Zbatimit/Dorzimi)
Zbatimi (Instalimi)
Këto aktivitete përfshijnë zhvillimin e produktit softuerikë & Mirmbajtja
Incremental
Iterative
❑Përparsi:
▪ E thjeshtë dhe e drejtpërdrejtë
▪ E përshtatshme për sisteme të vogla dhe të thjeshta
❑ Përparsi
▪ Kërkesa është e qartë para se të fillojë zhvillimi (kodimi)
▪ Secila fazë përfundon në një periudhë specifike kohore.
▪ Si model linear, është i lehtë për tu zbatuar
▪ Secila fazë rezulton me një dokumentim përkatës të duhur
❑ Mangësi:
▪ Mund të shfaqen probleme kur kalojmë nga një faza në tjetren.
▪ Nuk është fleksibil dhe nuk mbështet ndonjë ndryshim të kërkesave
▪ Klienti e sheh produktin pasi të mbarojnë të gjitha fazat.
❑ Përparsi
▪ Njëjt si ujëvara + testuesi është i përfshirë nga faza e
kërkesës.
❑ Mangësi:
▪ I ngurtë
▪ Nëse ndryshimet ndodhin në mes të rrugës, jo vetëm
dokumentacioni i kërkesave, por edhe
dokumentacioni i testimit duhet të ndryshohet
▪ Nuk është i përshtatshëm për projekte afatshkurtra
pasi kërkon rishikime në secilën fazë
Metodologjia Agile…
▪ DevOps është një proces i vazhdueshëm i ndërtimit, testimit, vendosjes (deployments) dhe monitorimit.
Faleminderit…!
Zbatimi (Instalimi)
Këto aktivitete përfshijnë zhvillimin e produktit softuerikë & Mirmbajtja
nga fillimi e deri në përfundim.
Ramiz HOXHA © 2021 UBT 4
Procesi i Zhvillimit të Softueri…
❑Megjithatë, një process softuerik përfshin gjithashtu përshkrimin e procesit i cili
përfshin:
▪ Produktet: rezultatet e një aktiviteti. p.sh, Specifikimi i Kërkesës për
Softuerin (SRS) ndoshta një model për arkitekturën e softuerit.
▪ Rolet: përgjegjësitë e njerëzve të përfshirë në proces. p.sh, menaxheri i
projektit, programuesi, etj.
▪ Kushtet para dhe pas: kushtet që duhet të jenë të përfshira para dhe pas
një aktiviteti.
o p.sh, kushtet paraprake të dizajnit arkitekturor janë kërkesat e miratuara nga klienti,
ndërsa gjendja pas është diagramet që përshkruajnë arkitekturën që janë shqyrtuar.
Incremental
Iterative
❑Përparsi:
▪ E thjeshtë dhe e drejtpërdrejtë
▪ E përshtatshme për sisteme të vogla dhe të thjeshta
❑ Përparsi
▪ Kërkesa është e qartë para se të fillojë zhvillimi (kodimi)
▪ Secila fazë përfundon në një periudhë specifike kohore.
▪ Si model linear, është i lehtë për tu zbatuar
▪ Secila fazë rezulton me një dokumentim përkatës të duhur
❑ Mangësi:
▪ Mund të shfaqen probleme kur kalojmë nga një faza në tjetren.
▪ Nuk është fleksibil dhe nuk mbështet ndonjë ndryshim të kërkesave
▪ Klienti e sheh produktin pasi të mbarojnë të gjitha fazat.
❑ Përparsi
▪ Njëjt si ujëvara + testuesi është i përfshirë nga faza e
kërkesës.
❑ Mangësi:
▪ I ngurtë
▪ Nëse ndryshimet ndodhin në mes të rrugës, jo vetëm
dokumentacioni i kërkesave, por edhe
dokumentacioni i testimit duhet të ndryshohet
▪ Nuk është i përshtatshëm për projekte afatshkurtra
pasi kërkon rishikime në secilën fazë
Metodologjia Agile…
Faleminderit…!
Metodologjia Agile…
❑Përgjegjësitë:
▪ Performon ekzekutimin e Sprint’it – kryen detyrat e dizajnimit, programimit, integrimit dhe
testimit te artikujve të Product backlog në Inkremente.
▪ Inspekon dhe Adapton – në Scrum’in ditore inspekton progresin drejt qëllimit të sprintit dhe
përsht planin për punën e ditës aktuale. Po ashtu në fund të secilit sprit përfshihet në
aktivitetet e inspektimit për review të sprintit dhe retrospektiven e sprintit.
▪ Kujdeset për Pruduct backlog – përfshin krijimin dhe rafinimin, vlerësimin, dhe prioritizon
artikujt e product backlog’ut.
Sprint Backlog:
lista e kërkesave(artikujëve) që-duhët ralizuar
❑Attendees include:
▪ the Scrum Team and key stakeholders invited by the Product Owner;
▪ The PO explains what Product Backlog items have been “Done” and what has
not been “Done”;
▪ The Developers discuss what went well during the Sprint, what problems it
ran into, and how those problems were solved;
▪ The Developers demonstrate the work that it has “Done” and answers
questions about the Increment;
▪ The Product Owner discusses the Product Backlog as it stands.
(b)
(a)
Struktura e tregimit të përdoruesit (user stories):
As a [Type of User],
I need [Function to Perform]
so that [Business Value]
Si [Lloji i përdoruesit], më duhët [Funksioni për të kryer] në mënyrë që [Vlera e biznesit]
p.sh: Si blerës librash, më duhët të paguaj duke përdorur kartën time të kreditit, në mënyrë që unë mund të blejë një libër të zgjedhur.
Faleminderit…!
Inxhinieria e
Kërkesave
Inxhinieria e Menaxhimi i
Kërkesave kërkesave
❑Ky proces përfshin ekip zhvilluesish ose inxhinierësh softuerësh, analistësh biznesi, klientë
dhe përdoruesit e fundit.
SCRUM
❑P.sh si:
– Menaxherët (managers)
– Përdoruesit (users)
– Idealisht, të gjitha palët kryesore të interesit (ideally, all key
stakeholders)
o Intervista o Brainstorming
o Pyetësorët o JAD
o Obzervimi
o Fokus grupe
o Seminaret e faselituar
o Prototipimi o Analiza e dokumentacionit
Tregim i përdoruesit përshkruan llojin e përdoruesit, çfarë ata duan dhe pse,
Një Tregim i përdoruesit ndihmon për të krijuar një përshkrim të thjeshtuar të një kërkese.
Çfarë (qëllimi)
Pse (arsye)
Si blerës librash, mund të paguaj duke përdorur kartën time të kreditit, kështu që unë mund të blejë një libër të zgjedhur.
Epic
User Stories
Biseda (Convarsation):
Ekstrakt i takimeve të palëve të interest, is PO, BO the tjeret në lidhje me tregimi e përdoruesve
Zhvilluesi: Cilet student mund te e paraqesin provimi
Product Owner: Studenti qe ka ndjekur lenden dhe eshte i regjistruar.
. . . . . .
Konfirmimi / Kriteret e Pranimit (Confirmation / Accepted criteria):
Nëse Një student është i regjistruar
Dhe ka ndjekur ligjërata dhe nuk është i notuar paraprakish
Kur lista e lëndeve shfaqet nga sistemi
Dhe studenti përzgjedh lëndet duke klikuar në kutinë e zgjedhjes (checkbox)
Dhe ka zgjedhur max dy lënd te për afatin jo te rregull
Dhe studenti konfirmon duke shtypur butonin e OK.
Pastaj sistem shfaq (printon) listen e konfirmimit te provimeve që student ka studenti.
Faleminderit…!
Pjesa që definon
kërkesës funksionale
Pjesa që definon
kërkesën jofunksionale
Kërkesa organizative
❑ Përdoruesit e sistemit Mentcare do të autethetikohet duke përdorur kartën e identitetit të
autoritetit shëndetësor.
Kërkesa e jashtme
❑ Sistemi do të zbatojë dispozitat për privatësinë e pacientit siç përcaktohet në HStan-03-
2006-priv.
Ato specifikojnë, "Çfarë duhet të bëjë sistemi?" Ato specifikojnë, "Si duhet t'i përmbushë sistemi kërkesat funksionale?"
Zakonisht Përdoruesi specifikon kërkesën Kërkesa jofunksionale specifikohet nga personat teknikë
funksionale. p.sh. Arkitekt, drejtues teknikë dhe zhvillues të programeve kompjuterikë.
Të e detyrueshme të plotësohen këto kërkesa. “Nuk është e detyrueshme” të plotësohen këto kërkesa.
▪ Si një klient online bankar, unë dua të bëje kontrollimin e gjendjes së llogarisë time bankare dhe ajo të shfaqet brenda
5 sekondave në kërkesën në mënyrë që të mos zhgënjehem dhe të shoh nëse kam fonde për të paguar faturat e
mia.
▪ Si klient, dua të jem në gjendje të ekzekutoj produktin tuaj në të gjitha versionet e Windows nga Windows 2000 e tutje.
▪ Si një Analist Financiar, unë dua të shoh transaksionet mujore për klientët e mi në mënyrë që t'i këshilloj ata për
investime të mundshme.
▪ Kriteret e Pranimit
o Sistemi shfaq të gjitha transaksionet që përmbushin parametrat e kërkimit brenda 10 sekondave
nga marrja e kërkesës.
o Transaksionet për klientët e etiketuar si konfidenciale shfaqen vetëm te përdoruesit me nivelin
e 2 të sigurisë.
o Vlera e transaksionit mujore mbi 1000 euro është verefikuar me nenviz me ngjyre të kalter.
Biseda (Convarsation):
Ekstrakt i takimeve të palëve të interest, is PO, BO the tjeret në lidhje me tregimi e përdoruesve
Zhvilluesi: Cilet student mund te e paraqesin provimi
Product Owner: Studenti qe ka ndjekur lenden dhe eshte i regjistruar.
. . . . . .
Konfirmimi / Kriteret e Pranimit (Confirmation / Accepted criteria):
Dhënë/Nëse Një student është i regjistruar
Dhe ka ndjekur ligjërata dhe nuk është i notuar paraprakish
Kur lista e lëndeve shfaqet nga sistemi
Dhe studenti përzgjedh lëndet duke klikuar në kutinë e zgjedhjes (checkbox)
Dhe ka zgjedhur max dy lënd te për afatin jo te rregull
Dhe studenti konfirmon duke shtypur butonin e OK.
Atëherë sistem shfaq (printon) listen e konfirmimit te provimeve që student ka studenti.
Faleminderit…!
❑Hapi i parë për të shkruar një rast përdorimi/skenar është përcaktimi i grupit të
"aktorëve" që do të përfshihen në tregim.
▪ Aktorët janë njerëz (ose pajisje) të ndryshme që përdorin sistemin ose produktin brenda kontekstit
të funksionit dhe sjelljes që do të përshkruhen se si sistemi operon.
▪ Aktori dhe përdoruesi nuk janë domosdoshmërisht e njëjta gjë.
▪ Një përdorues tipik mund të luajë disa role të ndryshme kur përdor një sistem, ndërsa një aktor
përfaqëson një klasë entitetesh të jashtme (shpesh, por jo gjithmonë, njerëz) që luajnë vetëm
një rol në kontekstin e rastit të përdorimit/skenarit.
nr Emri Skenarit Përshkrimi Skenarit të pa-përpunuar (Përdoruesi) Përshkrimi Skenarit të përpunuar (Inxhinieri i Kërkesave)
Sistem verifikon kartelen e kreditit te Klientit dhe të
Taulanti ka nevoj të terheq para në bankomat 100 € PIN numrit, më pastaj shfaq opsionin për tërheqje të
nga llogaria e ti rrjedhse. Ai ka nevoj për valuta parave në valuata të ndryshme si (5€, 10€, 20€, 50€,
Tërheqja e
prje 10 € që të paguaj Taxin. 100€, 200€ dhe vlerat të ndryshme sipas nevojës së
1 Parave në
Taulanti po ashtu dëshiron një faturë të printuar përdoruesit p.sh, 35€). Po ashtu shfaq opcionin e
Bankomat
pasi ai gjithmon ka dëshir të ketë informata apo printim të fatures me informata të bilancit të
gjurmë për secilin transaksion në llogain e tij. përditsuar. Më pastaj sistemi njfton klientin të merr
kartelen e krediti dhe ofron parat të kërkuara.
2 ….. …… ……….
▪ Një kriter i pranimit zakonisht bie dakord se cilat rezultate të us duhet të plotësohen.
P.sh: "Si udhetare, unë dua të kem një biletë digjitale me barkod për udhëtim me tren në telefonin tim, në
mënyrë që të mos kem nevojë ta shtyp atë dhe të mbaj një letër me vete."
Dhënë (si ndodhin gjërat)
Formati vijues AC: Kur (veprimi i ndërmarrë)
Atëherë/Pastaj (rezultati i këtij veprimi)
Një klient afrohet për të bërë një porosi. Asisteni i dyqanit (Arkatari/ja) përdor sistemin për të
krijuar një porosi të re, për të shtuar artikuj në porosi, për të gjurmuar informacionin e klientit,
Skenari
për të ruajtur porosinë dhe për të printuar formularin dhe faturën e porosisë. Gjatë rrugës,
sistemi shfaq detaje për mallrat, nëntotalin dhe totalin
Llojet e përshkrimit të
Use Cases
Llojet e përshkrimit të
4. The customer enters their PIN code
5. The ATM validates the bank card against the PIN code
6. The ATM presents service options including "Withdraw"
7. The customer chooses "Withdraw"
Aktori është
një rol jo individ
• <<includes>> përdoret për ngjarjet që janë pjesë e use case-it burimor (p.sh kontrollo bilancin)
• <<extend>> përdoret për ngjarjet që është funksion i zgjeruar i use case-it burimor (p.sh
printo dhe rauj si hard-kopje)
Sistemi
Asocimi
Aktori
Faleminderit…!
përseritse
Procesi i Dizajni i
SRS
Dizajnit Softuerit
Domeni i Domeni i
Problemit Zgjidhjes
matet nga aftësia për t’u zgjeruar programin, përshtatshmëria, shërbimi, testueshmëria, përputhshmëria.
Sub-Systems/components
High-Level Design
Modules/Packages
Classes
Low-Level Design
Methods
Kontrolleri
Klienti 1
3 BDH
5
JSP pages
View
Serveri Aplikacioni
App_Data - mund të përmbajë skedarë me të dhënave të aplikacionit si fila ( LocalDB, mdf, xml) dhe filja të tjerë
që lidhen me të dhënat. IIS kurrë nuk do të shërbejë fijla nga folderat e App_Data.
App_Start folder mund të përmbajë file të Klasave të cilat do të ekzekutohen kur fillon aplikacioni. fajlat e
konfigurimit si AuthConfig.cs, BundleConfig.cs, FilterConfig.cs, RouteConfig.cs etj. MVC 5 përfshin BundleConfig.cs,
FilterConfig.cs dhe RouteConfig.cs si default.
Content folder përmban fajla statikë si fajla të CSS, imazhe dhe fajla ikonash. Aplikacioni MVC 5 përfshin
bootstrap.css, bootstrap.min.css dhe Site.css si default.
Controllers folder përmban klas fijla për kontrollerin. Kontrollorët merren me kërkesën (requests) e përdoruesve
dhe kthen një përgjigje (respons).
Models folder përmban fijla të klasave të BO. Në mënyrë tipike, klasa e modelit përfshin vetit (properties) publike,
të cilat do të përdoren nga aplikacioni për të mbajtur dhe manipuluar të dhënat e aplikacionit.
Scripts folder contains fajlat e JavaScript ose Angular për aplikacionin. MVC 5 përfshin fajla të javascript për
bootstrap, jquery 1.10 dhe modernizues si default.
Views folder përmban fajla html për aplikacionin. Tipik VIEW fajlat është një fajl .cshtml ku ju krijoni html dhe
HTML/CSS, JS, Servlet, JSP, ASPx, Spring/.NET MVC
❑Arkitektura Mikroshërbimeve
▪ një aplikacion monolit është një njësi e vetme e përbashkët,
▪ një aplikacion me arkitekturë mikroshërbimeve - zbërthyer në njësi më të vogla të pavarura.
▪ Modulet/serviset e komunikojnë me njëri-tjetrin përmes metodave të definuar të quajtura API
(Ndërfaqet e Programimit të Aplikimit).
Arkitekturë e Microservice
Shembulli:
daigramit të
komponenteve
VS
Faleminderit…!
▪Modulariteti
▪ Fshehja/mbrojtja e të dhënave (Data hiding)
▪ Pavarësia funksionale (Functional independence)
▪ Rifaktorimi
▪ Sistemi Modular është një sistem modulesh, ndërfaqesh (ose interfesash) dhe
rregullash konfigurimi që mundësojn konfigurimin e produkteve për ekzekutimi të
funksioneve.
▪ Suksesi është ndërtuar mbi fleksibilitetin, agilitetin dhe efektshmëri.
▪ Këto module duhet të jenë të lehta për t’u implementuar, kuptuar, testuar, modifikuar, zëvendësuar
ose fshirë në mënyrë të izoluar pa ndonjë ndikim të madh në pjesën tjetër të sistemit.
Klienti dhe porosia janë të lidhura ngushtë me Porosija duhet të dijë vetëm id e klientit ka
njëri-tjetrin. nevojë për një referencë për objektin e klientit.
Klienti po ruan listën e të gjitha porosive të bëra
nga një klient, ndërsa porosia po ruan Ne mund t'i lidhim dobët (loose coupled) të
referencën për objektin Klienti. dy klasat duke bërë këto ndryshime
fig. 9
❑Hapi 3.
▪ Për secilën nga kutitë e nivelit të parë pyesni:
▪ Nga se përbëhet ky funksion?
▪ Vizatoni kutitë e nivelit tjetër. Përsëriteni për
nivele të mëtejshme sipas nevojës.
M3
M1 M4
M2
M8 M7
M8
aplikacioni
objects
Modulet
Faleminderit…!
klasës.
studenti
puntori administrativ
▪ E quajtur edhe fusha, variabla, veti.
Profesori Ndërtesat/objektet
Metodat
Realization
© 2019 UBT
Diagramet e Klasës në UML:
Asociacionet & pjesamarrja
▪ Shembulli 1: Tregon kur min një profesor ose më shumë udhëzon/udhëzojnë shumë student, po
ashtu studentët kan shumë lëndë për të i ndegjuar.
emri i rolit
Drejtimi një-kahësh
i asocimit
emri i lidhjes
asocimit
© 2019 UBT
Diagramet e Klasës në UML:
Asociacionet & pjesamarrja
Shembulli 2:
▪ Një profesor ligjeron 1 deri në 3 lëndë
▪ Secila lënd ligjerohet nga vetëm një profesor.
▪ Një student mund të merr/ndegjojë 1-6 lëndë.
▪ Një lëndë mund të ketë 15-120 student.
© 2019 UBT
public class Profesori {
private String ID_Profesori;
Private String emri;
private float paga;
}
public class Studenti {
private String ID_Studenti;
Private String emri;
private int kredit;
}
public GrupiLigjerates(){
lende = new Lenda[6];
student = new Studenti[120];
……
}
}
Qe nga fillimi konstatohet se kërkesat për aplikacioni janë te qarta. Por me klientin gjegjësisht komunën e
Prishtinës jemi pajtuar qe për arsye qe te ju afroj klientëve (vozitësve) mundësi për shfrytëzimi sa me te
shpejt te parkimit te vetuar me qe rast ne kem ofruar pjesërisht APP me disa funksione si shfaqja vizuale e
shtrirjes se parkingut përkatësish të hapësirave te lira (slloteve) njëkohësisht mundësi te pagesës ne
hyrje/dalje te parkingut.
Ky aplikacion do të mundësoj pagesën online dhe gjithashtu përfshinë funksionet si gjetja e lokacionit te
parkingut me te afere me hapësira të lira (sllote) dhe mundësi te plot te rezervimit nga distanca
Klasa IRezervimi
Përmban modelin e
nevojshme të Modulin
Rezervimi
në Modulin Pagesa
Klasa Paguesi
Përmban modelin e
nevojshme të Modulin
Përdoruesi/Entiteti Paguesi
në Modulin Pagesa
Klasa iKartelBankes
Përmban modelin e
nevojshme të Modulin
Përdoruesi/Servisi Bankes
KartelaBankes
në Modulin Pagesa
Përmban modelin e
nevojshme të Entitetit
agregatorit Pagesa
në Modulin Pagesa
Përmban modelin e
nevojshme të servisit
Pagesa
në Modulin Pagesa
Klasa Fatura
Përmban modelin e
nevojshme të Entitetit
Fatura
në Modulin Pagesa
Detajet e diagramit
të Klasës
modulin Pagesa
Një Agregacion
P.sh, një makinë është një automjet dhe një kamion është një automjet, në
këtë rast, automjeti është një gjë gjenerale, ndërsa makina dhe kamioni janë
gjërat më specifike.
Faleminderit…!
Diagramet e UML në
dizajnimin e softuerit
Relacionet
▪ Gjërat (Things),
▪ Relacionet
(Relationships), and
▪ Diagramet (Diagrams)
Diagramet
Një shigjetë përfaqëson një ngjarje. Ngjarjet përfaqësojnë gjërat që ndodhin në një kohë dhe vend të
caktuar. Shigjeta përfaqësojnë drejtimin e rrjedhës në diagram. Pikat drejtimi i shigjetës paraqet/
tregon progresin e aktiviteteve
Një diamant përfaqëson ose një vendim (i quajtur edhe një degë) ose një bashkim. Vendimet kanë një
shigjetë që hyn në diamant dhe disa që dalin. Mund të përfshihet një kusht që tregon vlerat e
gjendjes. Bashkimet tregojnë disa ngjarje që kombinohen për të formuar një ngjarje.
Një drejtkëndësh i rafshët dhe i gjërë përfaqëson një shirit të sinkronizimit. Këto përdoren për të
treguar aktivitete paralele, dhe mund të kenë një ngjarje që futet në shiritin e sinkronizimit dhe disa
ngjarje që dalin prej saj, të quajtur një pirun (FORK)
Një sinkronizim në të cilin disa ngjarje që shkrihen/rezultojn në një ngjarje quhet një bashkim
(JOIN)
Ka dy simbole që tregojnë fillimin dhe fundin e diagramës. Fillimi shfaqet si një rreth i mbushur.
Gjendja përfundimtare shfaqet si një rreth i zi i rrethuar nga një rreth i bardhë.
“Ju jeni duke fjetur në shtrat, priteni për alarmin tuaj. Kur
përfundon alarmi ju zgjoheni, vishuni dhe zbriseni në katin e
poshtëm. Ju pregaditeni pak mëngjes dhe përderisa ju hani
mengjesi ju gjithashtu lexoni gazetën e mëngjesit. Kur të mbaroni,
largoheni nga shtëpia.”
zgjoheni Visheni
Alarmi
Pret alarmin ndalet? Zgjohet
[PO]
[JO]
Han
mengjesin
Pregadit Largohet nga
mengjesin shtëpia
Lexon
gazeten
[JO]
Shkon poshtë
Han
mengjesin
Pregadit Largohet nga
mengjesin shtëpia
Lexon gazeten
[JO]
Shkon poshtë
Han
Poshtë
mengjesin
Largohet nga
Bënë mengjesin
shtëpia
Lexon gazeten
Faleminderit…!
Modeli RUP
Modeli
Prototipit
Modeli
spicy
food
Buss crashes
zhvillimit të softuerit.
Analiza dhe dizajni Kodimi Testimi
Kodimi dhe
❑Megjithatë, këto të dhëna janë mjaft relative logjika
33%
Dizajnimi
50%
Fig. 1.2 Numri relativ i gabimeve të bëra gjatë fazave të zhvillimit të softuerit
Komponenteve
kërkesave dhe
Testimi i Sistemit
Pas-Implementimit
ose Integrimit
Arkitektura
ose Pranimit
Analiza e
Testimi i
Mirmbajtja
40
Fault origin (%)
30
❑Shtimi i vlerave përmes testimit nënkupton ngritjen e cilësisë ose besueshmërisë së programit.
1. Testimi është në thelb rreth zgjedhjes së grupeve të caktuar të vlerave nga domeni i inputeve
të softuerit që testohet
2. Duke ofruar vlerat hyrse testues, krahasoni rezultatet aktuale me rezultatet e pritshme
Metoda e testimit sipas kutis të bardhë Metoda e testimit sipas kutis të zezë
Për të qenë më efikas në kohë dhe buxhet dhe për të mos testuar të gjithë numrat ndërmjet 1 dhe
12, numrat <1 dhe> 12, ne ndajini të dhënat e testimit në 3 grupe, së pari për ndarje të vlefshme
(klasa: 1 deri në 12, sekondë për ndarje të pavlefshme (<1) ndarje e pavlefshme (> 12)
Çdo numër i një ndarje të veçantë të klasës do të gjenerojë të njëjtin rezultat. Kjo është
arsyeja pse kjo teknikë quhet ndarja e klasës së ekuivalencës.
▪ Analiza e vlerave kufitare është një teknikë e rëndësishme pasi dihet gjerësisht se vlerat në
kufijtë shkaktojnë më shumë gabime në system.
▪ Prandaj një testues duhet gjithmonë të kontrollojë kufijtë sikur sistemi të dështojë, ka të ngjarë
të dështojë në këto kufij vendimesh.
▪ To apply BVA, we will take the minimum and maximum (boundary) values from the valid
partition (1 and 12 in this case) together with first or last value respectively in each of the
invalid partitions adjacent to the valid partition (0 and 13 in this case)
…, -3, -2, -1, 0 1, 2, 3……., 12 13, 14, 15….. …, -3, -2, -1, 0 1, 2, 3……., 12 13, 14, 15…..
+
Ndarja invalide 2 Ndarja valide Ndarja invalide 2 Ndarja invalide 2 Ndarja valide Ndarja invalide 2
❑Sipas shembullit ne do të kemi tri teste për ndarjen e ekuivalencës (një nga secila prej tri
ndarjeve) dhe katër teste të vlerave kufitare
❑Për të kryer testet ECP dhe BVA, një testues mund të përdorë një nga kombinimet e
mëposhtme të të dhënave të testimit:
[-3, 6, 20] (for ECP tests) and [0,1,12,13] (BVA tests]
[-4, 4, 14] (for ECP tests) and [0,1,12,13] (BVA tests]
[-1, 5, 15] (for ECP tests) and [0,1,12,13] (BVA tests]
? ? ?
Interest rate:
Total paid back:
1 2 64 65
invalid valid invalid
70
valid: non-zero
first character:
invalid: zero
number of digits: 5 6 7
invalid invalid
valid