39
David Mesarič INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU Diplomsko delo Maribor, avgust 2011

INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

David Mesarič

INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Diplomsko delo

Maribor, avgust 2011

Page 2: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

I

Diplomsko delo univerzitetnega strokovnega študijskega programa

INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Študent: David Mesarič

Študijski program: UN ŠP Računalništvo in informacijske tehnologije

Mentor: izred. prof. dr. Milan Zorman

Somentorica: asist. dr. Mateja Verlič

Lektorica: Petra Zupanc

Maribor, avgust 2011

Page 3: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

II

Page 4: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

III

ZAHVALA

Zahvaljujem se mentorju izred. prof. dr. Milanu

Zormanu in somentorici asist. dr. Mateji Verlič za

pomoč in vodenje pri opravljanju diplomskega

dela.

Posebna zahvala velja staršem, ki so mi omogočili

študij.

Page 5: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

IV

INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Ključne besede: Judo, vodenje tekme, informacijski sistem, C#, ASP.NET, MySQL

UDK: [659.2:004]:004.43(043.2)

Povzetek

Cilj diplomske naloge je bil razviti aplikacijo, ki nam bo olajšala vodenje judo tekem ter

beležila rezultate posameznih tekem. V aplikacijo smo vključili spletno stran za prijavo

tekmovalcev ter prikaz rezultatov posameznih tekem, žreb in semafor za prikazovanje točk.

Opisali smo tudi vsa razvojna okolja, ki so bila potrebna za razvoj te aplikacije.

Page 6: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

V

INFORMATION SYSTEM FOR JUDO COMPETITION

MANAGEMENT

Key words: Judo, match management, information system, C#, ASP.NET, MySQL

UDK: [659.2:004]:004.43(043.2)

Abstract

The goal of this thesis was to develop an application which will make the management of

judo tournaments easier and keep track of the results. The application will include a

website which will allow online registration of competitors for a tournament and show the

results of previous competitions. The application will offer an automatic draw and

scoreboard. We also described the programming environments necessary for its

development.

Page 7: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

VI

VSEBINA

1 UVOD ............................................................................................................................ 1

1.1 PREDPOSTAVKE IN OMEJITVE ................................................................................... 1

1.2 STRUKTURA DIPLOMSKEGA DELA ............................................................................ 2

2 RAZVOJNO OKOLJE ................................................................................................ 3

2.1 PROGRAMSKI JEZIK C# ............................................................................................. 3

2.1.1 Kaj lahko C# program naredi? .......................................................................................... 3

2.2 ASP.NET ................................................................................................................ 3

2.3 MYSQL PODATKOVNA BAZA ................................................................................... 3

3 IMPLEMENTACIJA APLIKACIJE ......................................................................... 5

3.1 PROGRAMSKO OKOLJE ............................................................................................. 5

3.2 PODATKOVNA BAZA ................................................................................................. 5

3.3 IZDELAVA INTERNETNE STRANI ............................................................................... 6

3.3.1 Vnos ter pregled tekem ......................................................................................................... 7

3.3.2 Vnos ter pregled klubov ....................................................................................................... 8

3.3.3 Vnos ter pregled tekmovalcev ............................................................................................ 9

3.3.4 Prijava na tekmo .................................................................................................................. 10

3.4 IZDELAVA ŢREBA ................................................................................................... 11

3.4.1 Pridobivanje ter dodajanje tekmovalcev za žreb ........................................................ 12

3.4.2 Žrebanje nasprotnikov ........................................................................................................ 14

3.5 VODENJE TEKME..................................................................................................... 15

3.5.1 Uvoz kategorije ..................................................................................................................... 16

3.5.2 Vodenje tekmovanja ............................................................................................................ 16

3.6 SEMAFOR ............................................................................................................... 17

3.6.1 Semafor za vodenje tekme ................................................................................................. 18

3.6.2 Semafor za prikaz gledalcem ............................................................................................ 19

4 REZULTATI .............................................................................................................. 20

4.1 SPLETNA STRAN ..................................................................................................... 20

4.2 ŢREB ...................................................................................................................... 20

4.3 VODENJE TEKME .................................................................................................... 21

4.4 SEMAFOR ............................................................................................................... 22

5 SKLEP ......................................................................................................................... 24

6 LITERATURA, VIRI ................................................................................................ 25

Page 8: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

VII

7 PRILOGE ................................................................................................................... 27

7.1 SEZNAM SLIK ......................................................................................................... 27

7.2 SEZNAM PRIMEROV KODE ...................................................................................... 27

7.3 NASLOV ŠTUDENTA................................................................................................ 28

7.4 KRATEK ŢIVLJENJEPIS ............................................................................................ 28

Page 9: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 1

1 UVOD

Judo je borilna veščina in šport, ki od človeka terja veliko telesno sposobnost, znanje ter

disciplino. Judo tehnike se izvajajo stoje in na tleh. Stoje se večinoma izvajajo meti,

medtem ko se na tleh izvajajo končni prijemi, davljenja ter vzvodi [1].

Judo izvira iz Japonske in je nastal leta 1882 kot mešanica tehnik drugih borilnih veščin, ki

so jih uporabljali samuraji več sto let. Njen začetnik je bil Jigoro Kano [2]. Čeprav judo

izvira iz borilnih, vojaških veščin, katerih namen je ubiti, poškodovati ali onemogočiti

nasprotnika, se ta danes močno razlikuje od izvirnih veščin, katere tehnike vsebuje še

dandanes. Tehnike juda so danes prilagojene tako, da tisti, ki se ukvarja z judom, lahko

izvaja tehnike varno in brez nevarnosti, da bi pri tem poškodoval svojega nasprotnika.

Tekmovalni judo za razliko od ostalih borilnih veščin ne vsebuje brc, udarcev, vzvodov za

metanje in oroţja, temveč temelji na podlagi rušenja nasprotnikovega ravnoteţja na tla s

pomočjo izkoriščanja njegove sile[1]

Izraz judo vsebuje dve japonski besedi; ju pomeni mehka, do pa pomeni pot, torej mehka

pot [1].

V letu ustanovitve je judo treniralo 9 učencev, tretje leto pa se je število povzpelo kar na

174. Prvi uspeh te borilne veščine se je pokazal ţe leta 1886, ko so judoisti pod okriljem

Jigora Kana premagali šolo zelo znanega učitelja ju-jitsa. V 15 borbah so dosegli kar 13

zmag in 2 neodločena rezultata.

Leta 1964 je bil judo prvič na olimpijskih igrah v Tokiu [3]. Danes je judo najuspešnejša

japonska borilna veščina. Po vsem svetu naj bi bilo preko 30 milijonov judoistov, kar judo

uvršča na tretje mesto v številčnosti na svetu [4]. Na samem začetku juda na tekmovanjih

še ni bilo pravil, tako so zmagovalce proglašali vodilni mojstri takratnih veščin. O pravilih

borbe se lahko govori le od prvega japonskega prvenstva leta 1930 dalje. Takrat so se

tehnike začele tudi točkovati [1].

Zaradi napredka v tehnologiji smo se odločili, da v diplomskem delu razvijemo

elektronsko aplikacijo, ki bo v pomoč pri prijavi na tekmo ter pri samem vodenju tekem.

Razvili smo spletno stran, kjer je moţno prijaviti klube ter posamezne tekmovalce na

določeno tekmo, ţreb, ki skrbi za naključno razvrstitev nasprotnikov in hkrati upošteva

tudi pravila ţrebanja, ter semafor, ki prikazuje točke.

1.1 Predpostavke in omejitve

Kot glavno omejitev v diplomskem delu smo predpostavili, da končni rezultat za delovanje

celotne aplikacije potrebuje internetno povezavo. Lahko pa se izvaja tudi vsak del

aplikacije posebej. Prav tako je naša aplikacija prilagodljiva za prihodnje nadgradnje.

Page 10: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 2

1.2 Struktura diplomskega dela

V drugem poglavju smo opisali tehnologije, ki smo jih potrebovali za izdelavo

diplomskega dela. To so programski jezik C#, ASP.NET framework ter MySQL

podatkovna baza.

Tretje poglavje smo namenili razvoju naše aplikacije. Opisali smo funkcionalnosti, ki smo

jih vključili, ter njihov namen.

V četrtem poglavju smo prikazali rezultate naše aplikacije. Dodali smo tudi slike končnega

izdelka.

Page 11: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 3

2 RAZVOJNO OKOLJE

2.1 Programski jezik C#

C# je splošno namenski, objektno orientirani programski jezik. Izumil ga je Anders

Hejlsberg leta 1999 ali 2000 na Microsoftu. Njegova sintaksa je zelo podobna Javini z eno

veliko razliko, in sicer so vsi tipi spremenljivk potomci skupnega razreda (prednika).

Naloga C# je natančno definirati serijo operacij, ki naj jih računalnik izvede za dosego

zadanega cilja. Večina teh operacij vključuje manipulacijo s števili in tekstom. To pa ni

vse, kar C# zmore. Vse, kar lahko računalnik fizično izvede, je mogoče v C# tudi

sprogramirati. Računalniki nimajo inteligence, zato jim mora biti natančno povedano, kaj

narediti; to pa je definirano s programskim jezikom, ki ga uporabljamo. Ko so enkrat

sprogramirani, lahko ponavljajo v kodi zapisane korake koliko krat ţelimo in z zelo visoko

hitrostjo. Sodobni računalniki so tako hitri, da lahko preštejejo do milijarde v samo sekundi

ali dveh [5].

2.1.1 Kaj lahko C# program naredi?

Tipične programske naloge vključujejo vstavljanje podatkov v podatkovne baze in branje

iz le-teh, prikazovanje grafik z veliko hitrostjo pri igrah ali videu, krmiljenje elektronskih

naprav, priključenih na računalnik, ter celo predvajanje glasbe in posebnih zvočnih

efektov. Lahko napišemo tudi program za generacijo glasbe [5].

2.2 ASP.NET

ASP.NET je Microsoftov brezplačni spletni okvir. Z njim lahko ustvarimo dinamične

spletne strani, aplikacije in storitve [6]. Prvič je bil izdan leta 2002 z verzijo 1.0 kot del

.NET programske platforme in je naslednik Microsoftove ASP tehnologije [7]. ASP.NET

je zgrajen na osnovi Common Language Runtime (CLR), ki dovoljuje programerjem, da

lahko napišejo ASP.NET kode z uporabo katerega koli podprtega .NET jezika. Eden

najpomembnejših ciljev .NET je bil, da lahko programerji, ki pišejo ASP.NET aplikacijo,

uporabljajo več programskih jezikov. Dokler vsaka stran ASP.NET vsebuje le en

programski jezik, lahko premešamo različne strani, ki uporabljajo različen jezik, in skupaj

bodo delovale brezhibno[8].

2.3 MySQL podatkovna baza

MySQL podatkovna baza je postala najbolj popularna odprtokodna baza na svetu zaradi

njene zmogljivosti, zanesljivosti in enostavnosti za uporabo. Podatkovna baza MySQL je

bila prvič izdana januarja leta 1998. Prav tako se ta podatkovna baza pogosto uporablja za

Page 12: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 4

novo generacijo aplikacij, ki temeljijo na skupku odprtokodne programske opreme LAMP

(Linux, Apache, MySQL, PHP / Perl / Python) [9]. Veliko največjih in najhitreje

razvijajočih se svetovnih organizacij, kot so Facebook, Google, Adobe, Lucent in Zappos,

se zanaša na podatkovno bazo MySQL, da prihranijo čas in denar pri delovanju njihovih

obseţnih spletnih strani. MySQL deluje na skoraj vseh platformah, vključno z

operacijskimi sistemi Linux, UNIX in Windows, ter zagotavlja tudi delovanje na večini

programskih jezikov, kot so C, C#, Java, Eiffel, Perl, PHP, Python in Tcl [10].

MySQL podatkovna baza se kot vse ostale podatkovne baze uporablja za sledenje spletnih

ali programskih podatkov. Tehnični izraz za MySQL je Relational Database Management

System (RDBMS). MySQL je programska oprema , ki neprekinjeno deluje in omogoča

drugim programom, da dostopajo do njenih podatkov. Podatkovna baza je zgrajena iz

tabel, ki so strukturirane tako, da lahko vsebujejo posebne tipe informacij. Nekatera polja

lahko vsebujejo samo števila, medtem ko druga polja samo datume oziroma druge

podatkovne tipe [10].

Page 13: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 5

3 IMPLEMENTACIJA APLIKACIJE

Cilj razvoja aplikacije informacijskega sistema za vodenje judo tekem je bil olajšati in

pospešiti potek prijave, ţreba in vodenja na judo tekmovanjih.

Omogočili smo preprosto registracijo klubov in tekmovalcev ter prijavo le-teh na

tekmovanje preko naše spletne strani. Izdelali smo elektronski ţreb, ki razvrsti ter grafično

prikaţe tekmovalne pare za vse starostne in teţnostne kategorije. Izdelali smo tudi

vmesnik, ki sledi poteku borb ter beleţi zmagovalce, in semafor, ki je namenjen

prikazovanju borbenega časa ter točk, ki jih prisodi sodnik.

V tem poglavju smo podrobneje opisali ter slikovno prikazali implementacijo zgoraj

naštetih funkcionalnosti.

3.1 Programsko okolje

Za razvoj diplomskega dela smo uporabili programski jezik C#. Za shranjevanje podatkov

smo uporabili MySQL podatkovno bazo, za implementacijo internetne strani pa spletno

aplikacijo ASP.NET.

3.2 Podatkovna baza

Za vsako obširnejšo spletno aplikacijo stoji podatkovna baza, ki sluţi za shranjevanje

podatkov. V naši aplikaciji smo uporabili Microsoftovo MySQL podatkovno bazo.

Najprej smo na podlagi podatkov, ki jih potrebujemo za delovanje spletne aplikacije in

izvedbo ţreba, kreirali tabele; torej tabele tekmovalcev, klubov, tekem, prijav na tekmo ter

rezultatov. Da lahko pridobimo podatke, ki so v različnih tabelah, moramo tabele najprej

povezati in se prepričati, da so relacije med njimi ena proti mnogo oziroma mnogo proti

ena. V nasprotnem primeru moramo za dosego takih relacij ustvariti vmesno tabelo.

Da lahko iz spletne strani dostopamo do podatkovne baze ter pridobimo ţelene podatke, se

je potrebno z bazo najprej povezati. To povezavo doseţemo s pomočjo t.i. connection

stringov. Povezavo z bazo moramo vzpostaviti pred vsakim dostopanjem do podatkov ter

jo po končanem delu tudi prekiniti. Ko ţelimo pridobiti podatke iz podatkovne baze,

moramo vnaprej določiti tabelo, oziroma tabele, v katerih se ti podatki nahajajo. To

storimo z uporabo poizvedbenih stavkov.

Page 14: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 6

Slika 1: ER diagram podatkove baze

<connectionStrings>

<add name="baza" providerName="System.Data.SqlClient" connectionString="Data Source='';Initial

Catalog='';User Id='';Password='';" />

</connectionStrings>

Primer kode 1: Connection string

SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["baza"].

ConnectionString);

myConnection.Open();

Primer kode 2: povezava na bazo

3.3 Izdelava internetne strani

Na večini tekmovanj po svetu klubi svoje tekmovalce prijavljajo zadnji trenutek pred

začetkom tekmovanja. To je zelo nezaţeleno ter zamudno, saj je treba za vsak klub in

vsakega tekmovalca preveriti, če je le-ta registriran, ter ga ročno vnesti v računalnik za

kasnejši ţreb.

Page 15: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 7

Zato smo naredili spletno aplikacijo, s katero vodimo predčasno prijavo na tekmovanja,

hkrati pa nam računalnik tudi sam preverja, če je tekmovalec oziroma klub, ki se ţeli

prijaviti na tekmo, registriran. Dobra lastnost takšnega pristopa je tudi v tem, da podatkov

kluba ter tekmovalcev ni potrebno ponovno vnašati pri udeleţbi na naslednjem

tekmovanju, saj se vse shrani v podatkovni bazi in tako se preprosto označi prisotnost

tekmovalca za naslednjo tekmo.

V našo spletno aplikacijo smo vključili moţnost pregleda registriranih tekmovalcev in

klubov ter samo registracijo le-teh. Prav tako nam omogoča prijavo na tekmo ter dodajanje

samih tekem, na katere se lahko prijavimo.

3.3.1 Vnos ter pregled tekem

Vsako tekmo, ki naj bi se izvedla, je potrebno pred začetkom sezone prijaviti na judo

zvezo, da jo ta odobri ter doda na koledar judo tekmovanj. Navesti je potrebno točno

določen kraj in datum tekme.

Če ţelimo uporabljati spletno prijavo na tekmovanja, moramo uporabniku najprej prikazati

nabor tekem, na katere se lahko prijavi. Za kaj takšnega pa je najprej potrebna opcija za

vnos novih tekem, tako da nam ni potrebno neposredno dostopati do podatkovne baze.

Moţnosti vnašanja tekem nimajo vsi, saj bi to privedlo do velike zmede ter podvajanja

tekmovanj oziroma laţnih vnosov. Pri vnosu nove tekme je potrebno vpisati ime, kraj,

naslov, občino, poštno številko in datum tekme. Vse to je tudi vidno pri samem pregledu

tekem.

Za vnos tekme smo uporabili gradnik detailsview, za pregled tekem pa gradnik gridview.

Slika 2:Pregled tekem

Page 16: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 8

Slika 3: Vnos nove tekme

3.3.2 Vnos ter pregled klubov

Zaradi laţjega iskanja ter sortiranja tekmovalcev pri sami prijavi na tekmo smo v

aplikacijo dodali moţnost registracije novih klubov. Ta korak je obvezen, saj je potrebno

pri dodajanju novega tekmovalca iz gradnika DropDownList poimenuj! izbrati klub. Če

klub še ni registriran, je nemogoča tudi registracija samega tekmovalca. V primeru, da bi

klub bilo potrebno ročno vnašati pri prijavi vsakega tekmovalca, bi se zapisi gotovo

razlikovali, torej bi bilo sortiranje po klubih nemogoče. Za registracijo kluba smo uporabili

gradnik detailsview.

Vsak klub mora pri registraciji navesti ime, lokacijo ter elektronski naslov kluba. Ti

podatki so vidni pri pregledu vseh klubov, kar nam omogoča kontaktiranje klubov. Za

prikaz vseh klubov smo uporabili gradnik gridview.

Slika 4: Pregled klubov

Page 17: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 9

Slika 5: Vnos novega kluba

3.3.3 Vnos ter pregled tekmovalcev

V našo aplikacijo smo dodali moţnost za pregled tekmovalcev, shranjenih v podatkovni

bazi. S pomočjo gradnika DropDownList preprosto izberemo klub, iz katerega ţelimo

prikazati tekmovalce.

Prav tako smo vključili moţnost dodajanja novih tekmovalcev, ki jih ţelijo klubi prijaviti

na tekmovanje preko naše spletne strani. To smo rešili s pomočjo gradnika DetailsView.

Ob registraciji novega tekmovalca je potrebno vpisati osebne podatke, spol ter trenutno

teţnostno kategorijo. S pomočjo gradnika DropDownList je potrebno izbrati klub. Če

tekmovalec zamenja kategorijo, se to ob prvi tekmi popravi ter ponovno zapiše v bazo.

Slika 6: Pregled tekmovalcev

Page 18: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 10

Slika 7:Vnos novega tekmovalca

3.3.4 Prijava na tekmo

Prijava tekmovalcev na tekmo mora biti kar se da enostavna in hitra, saj bi v nasprotnem

primeru pri klubih z velikim številom tekmovalcev povzročala le še več teţav.

V naši aplikaciji smo enostavnost zagotovili tako, da s pomočjo gradnikov DropDownList

najprej izberemo tekmo, na katero prijavljamo tekmovalce, in klub, iz katerega so. S tem si

zelo olajšamo delo, saj nam ni potrebno ročno iskati tekmovalcev iz določenega kluba. Ko

pridobimo seznam tekmovalcev, s pritiskom na gradnik button prijavi prijavimo vse, ki se

bodo udeleţili tekme.

Slika 8: Prijava na tekmo

Page 19: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 11

protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)

{

SqlConnection myConnection = new SqlConnection(ConfigurationManager.

ConnectionStrings["baza"].ConnectionString);

SqlCommand cmd = new SqlCommand("INSERT INTO Tekma (Kraj, Naslov, Obcina,

Postna_stevilka, Datum, Ime_tekme) VALUES (@Kraj, @Naslov, @Obcina,

@Postna_stevilka, @Datum, @Ime_tekme);", myConnection);

cmd.Parameters.Add(new SqlParameter("@Kraj", SqlDbType.VarChar, 50));

cmd.Parameters.Add(new SqlParameter("@Naslov", SqlDbType.VarChar, 50));

cmd.Parameters.Add(new SqlParameter("@Obcina", SqlDbType.VarChar, 50));

cmd.Parameters.Add(new SqlParameter("@Postna_stevilka", SqlDbType.VarChar, 4));

cmd.Parameters.Add(new SqlParameter("@Datum", SqlDbType.Date));

cmd.Parameters.Add(new SqlParameter("@Ime_tekme", SqlDbType.VarChar, 50));

cmd.Parameters["@Kraj"].Value = ((TextBox)(DetailsView1.FindControl("TextBox1"))).Text;

cmd.Parameters["@Naslov"].Value = ((TextBox)(DetailsView1.FindControl("TextBox2"))).Text;

cmd.Parameters["@Obcina"].Value = ((TextBox)(DetailsView1.FindControl("TextBox4"))).Text;

cmd.Parameters["@Postna_stevilka"].Value=((TextBox)(DetailsView1.FindControl("TextBox5"))).Text;

cmd.Parameters["@Datum"].Value =

((Calendar)DetailsView1.Rows[5].FindControl("Calendar1")).SelectedDate.Date;

cmd.Parameters["@Ime_tekme"].Value = ((TextBox)(DetailsView1.FindControl("TextBox6"))).Text;

myConnection.Open();

cmd.ExecuteNonQuery();

myConnection.Close();

}

Primer kode 3: Vpis nove tekme

3.4 Izdelava žreba

Prizadevanje za enake moţnosti za vse tekmovalce se je najbolj pokazalo z določitvijo

kategorij glede na teţo ter starost tekmovalcev. Začelo se je s tremi teţnostnimi

kategorijami, skozi leta so dodali še 4, tako da je trenutno 7 teţnostnih kategorij v starostni

kategoriji članov. Poleg kategorij pa so za večje moţnosti tekmovalcev uvedli tudi sistem

dvojnega repasaţa na tekmovanjih, ki dovoljuje poraţencu iz prvega kola po zmagah v

repasaţu zasesti tretje mesto [1].

Na večjih judo tekmovanjih se danes zbere ţe tudi preko 70 tekmovalcev na kategorijo,

zato mora temu primerno ţrebanje tekmovalnih parov potekati dokaj hitro. Glede na veliko

število tekmovalcev se danes skoraj po vsem svetu ţe uporablja računalniško vodenje

ţreba tekmovalcev.

Pri judo ţrebu moramo biti pozorni na mnoga pravila. Tako je potrebno tekmovalce iz istih

drţav ali klubov v ţrebu razvrstiti tako, da se ne pomerijo ţe v prvem kolu. Pomembno je

tudi razvrščanje nosilcev v posamezni kategoriji na drţavnih prvenstvih. Tekmovalca, ki

sta v svoji kategoriji na prejšnjem drţavnem prvenstvu dosegla prvo in drugo mesto, sta

nosilca v tej kategoriji in sta pri ţrebu razvrščena tako, da se lahko srečata le v finalnem

dvoboju oziroma v borbi za tretje mesto.

Page 20: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 12

V naši aplikaciji smo izdelali elektronski ţreb tekmovalcev ter pri tem upoštevali pravila,

ki so predpisana s strani Judo zveze Slovenije (JZS). Sam ţreb se deli na vnos ter

pridobivanje tekmovalcev iz podatkovne baze in na ţrebanje tekmovalnih parov. Imamo

tudi moţnost tiskanja narejenih ţrebov.

3.4.1 Pridobivanje ter dodajanje tekmovalcev za žreb

Ker je velika moţnost, da kakšen klub zamudi s prijavo na tekmo preko spletne strani ali

pa se tekmovanja udeleţijo ekipe iz drugih drţav, ki jim je ta način prijave neznan, smo

morali zagotoviti, da se lahko kljub temu prijavijo na dan samega tekmovanja.

Naredili smo vmesni korak pridobivanja ter dodajanja tekmovalcev, kjer lahko dodajamo

nove tekmovalce ter klube in prijavljamo ţe obstoječe tekmovalce, ki so zamudili s prijavo

na tekmovanje. Podatke lahko sortiramo po klubih, drţavi, spolu ter teţnostni in starostni

kategoriji. Tu lahko tudi urejamo podatke, saj tekmovalci pogosto zamenjajo kategorijo ali

klub. To nam olajša delo, saj nam ni potrebno dostopati direktno do podatkovne baze, da

spremenimo ali zbrišemo podatke.

Prav tako smo vključili moţnost branja podatkov iz excelove datoteke, tako da lahko

podake o tekmovalcih pridobimo tudi na ta način.

Ko zagotovimo, da so vsi tekmovalci prijavljeni in so njihovi podatki pravilni, izberemo

teţnostno in starostno kategorijo ter spol in pritisnemo gradnik button žrebanje. S tem

odpremo novo okno, kjer se bo izvedel ţreb. Ta korak je potrebno narediti za vsako

kategorijo posebej.

Page 21: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 13

Slika 9: Priprava za žreb

private void pridobi_excel_file_Click(object sender, EventArgs e)

{

try

{

System.Data.OleDb.OleDbConnection MyConnection;

System.Data.DataSet ds;

System.Data.OleDb.OleDbDataAdapter MyCommand;

MyConnection = new System.Data.OleDb.OleDbConnection("provider=

Microsoft.Jet.OLEDB.4.0;Data Source='c:\\kategorija.xsl';Extended

Properties=Excel 8.0;");

MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from

[List1$]", MyConnection);

MyCommand.TableMappings.Add("Table", "TestTable");

ds = new System.Data.DataSet();

MyCommand.Fill(ds);

dataGridView1.DataSource = ds.Tables[0];

MyConnection.Close();

}

catch (Exception ex)

{

MessageBox.Show(ex.ToString());

}

}

Primer kode 4: Pridobi podatke iz excelovega dokumenta

Page 22: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 14

private void prijavi_tekmovalce(object sender, EventArgs e)

{

SqlConnection myConnection = new SqlConnection();

myConnection.ConnectionString = "my connection string";

myConnection.Open();

SqlCommand vse_prijave = new SqlCommand("insert into Prijava_na_tekmovanje (FK_TEKMA,

FK_TEKMOVALEC) values (@idTekme,@idTekmovalca);", myConnection);

vse_prijave.Parameters.Add(new SqlParameter("@idTekme", SqlDbType.Int));

vse_prijave.Parameters.Add(new SqlParameter("@idTekmovalca", SqlDbType.Int));

vse_prijave.Parameters["@idTekme"].Value = tekme[izberi_tekmo_combo.SelectedIndex];

for (int i = 0; i < tabela_s_tekmovalci.RowCount; i++)

{

if (tabela_s_tekmovalci.Rows[i].Selected == true)

{

tabela_s_tekmovalci.Rows[i].Cells[8].Value = true;

vse_prijave.Parameters["@idTekmovalca"].Value =int.Parse(tabela_s_tekmovalci.Rows[i].Cells[0].

Value.ToString());

vse_prijave.ExecuteNonQuery();

}

}

}

Primer kode 5: Prijavi tekmovalca na tekmo

3.4.2 Žrebanje nasprotnikov

V naši aplikaciji najprej s pomočjo gradnikov radiobutton določimo ali bo ţreb potekal na

podlagi drţav ali klubov. Nato v primeru, da sta drţavna nosilca na tekmi, obkljukamo

gradnika checkbox na desni strani njunih imen. Če je iz istega kluba prisotnih 3 ali več

tekmovalcev, lahko trenerji določijo, kateri se med seboj ne smejo srečati pred finalom oz.

borbo za 3. mesto (določijo t. i. klubske nosilce). To pri ţrebu zagotovimo tako, da

tekmovalcem, ki jih ţelimo na eni strani ţreba, dodelimo liha števila, ostalim pa soda.

S pritiskom na gradnik button žrebanje program tekmovalcem naključno dodeli števila, ki

so povezana z mesti v grafičnem prikazu. Pri tem upošteva drţavne in klubske nosilce.

V primeru napak smo vključili tudi moţnost preklica ţreba. S tem se nam vsa prejšnja

urejanja razveljavijo.

Ko je ţreb končan, se podatki shranijo v podatkovno polje in se zapišejo v datoteko, iz

katere jih preberemo za prikaz na semaforju.

Glede na to da potek tekmovanja deluje na podlagi izpadanja, smo za grafični prikaz ţreba

uporabili binarno drevo in ga zaradi laţjega pregleda razdelili na dva enaka dela. Program

to drevo napolni v največji globini s podatki, pridobljenimi pri ţrebu. Nato tekmovalce, ki

imajo prvo borbo prosto, prestavi za eno stopnjo višje.

Ker je potrebno ţreb pokazati tudi trenerjem in vsem tekmovalcem, smo dodali moţnost

tiskanja ţreba.

Page 23: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 15

Slika 10: Grafični prikaz žrebanja

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)

{

Bitmap bmp = new Bitmap(PrikazZrebaPanel.Width, PrikazZrebaPanel.Height);

PrikazZrebaPanel.DrawToBitmap(bmp, new Rectangle(0, 0, PrikazZrebaPanel.Width,

PrikazZrebaPanel.Height));

e.Graphics.DrawImage(bmp, 0, 0);

}

Primer kode 6: Tiskanje žreba

3.5 Vodenje tekme

Pri judo tekmovanjih je klicanje tekmovalcev na blazine in rezultate borb potrebno

zapisovati sproti. Vse to vzame veliko časa, saj je na večjih tekmah tudi do pet borilnih

prostorov. Prihaja lahko tudi do napak. Prav tako je potrebno določiti popravne borbe

(repasaţe), ko so znani polfinalisti kategorije,

V naši aplikaciji smo implementirali vmesnik, ki skrbi za elektronsko sprotno zapisovanje

rezultatov ter pošilja podatke o naslednji borbi do semaforja, kjer se izpišejo. Ker pa je

namen aplikacije, da daje moţnost delovanja brez semaforja, smo omogočili tudi ročno

vodenje zmagovalcev.

Page 24: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 16

3.5.1 Uvoz kategorije

Kot smo ţe omenili, smo ţrebe po kategorijah shranili v tekstovno datoteko na trdem

disku. V tem delu aplikacije preprosto s pomočjo gradnika OpenFileDialog s pritiskom na

gumb preberemo datoteko, ki vsebuje kategorijo, ki jo potrebujemo, in program jo grafično

prikaţe. Uvozimo lahko dve kategoriji naenkrat, saj se pogosto na enem borilnem prostoru

vodijo dve kategoriji hkrati.

Slika 11: Uvoz kategorije

3.5.2 Vodenje tekmovanja

V tem delu aplikacije je predvsem pomembno beleţenje zmagovalcev ter klicanje

naslednjih tekmovalnih parov na borilni prostor. V naši aplikaciji smo to avtomatizirali

tako, da se podatki o zmagah beleţijo sami, ko jih pridobimo iz aplikacije semafor, ki šteje

točke v borbi. Vključili smo tudi moţnost ročnega določanja ter popravljanja podatkov.

Semafor, s katerim točkujemo borbe, avtomatsko pridobi naslednji par nasprotnikov iz

aplikacije za vodenje tekme ter jih izpiše na ekran. Prav tako pa po končani borbi določi

zmagovalca na podlagi borbenih točk ter podatke pošlje nazaj in temu primerno posodobi

grafični prikaz.

Zaradi moţnih napak ter tudi zato, da bi lahko aplikacija za vodenje tekme delovala brez

semaforja za prikaz točk, smo dodali moţnost ročnega vnašanja podatkov. Za

napredovanje zmagovalca v naslednji krog tekmovanja je potrebno le klikniti na gumb z

njegovim imenom, vse ostalo pa je narejeno programsko.

Page 25: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 17

Tekmovalni judo je šport na izpadanje, vendar pa dobiš moţnost za popravne borbe v

primeru, če pride nasprotnik, ki te je premagal, do polfinala. Ker se na začetku tekmovanja

še ne ve, kako se bo razvijal potek tekme, je potrebno popravne borbe določiti šele, ko sta

znana oba polfinalista. Ta postopek je časovno zelo potraten in zahteva veliko pozornosti,

da ne pride do napak, zato smo v naši aplikaciji to naredili programsko. Ko sta znana oba

polfinalista, preprosto kliknemo na gradnik button repasaž in avtomatsko pridobimo nove

tekmovalne pare.

private void ShraniRezultate_Click(object sender, EventArgs e)

{

SaveFileDialog dialog = new SaveFileDialog();

if (dialog.ShowDialog() == DialogResult.OK)

{

pictureBox1.BringToFront();

Bitmap bmp = new Bitmap(VodenjePanel.Width, VodenjePanel.Height);

VodenjePanel.DrawToBitmap(bmp, new Rectangle(0, 0, VodenjePanel.Width, VodenjePanel.Height));

bmp.Save(dialog.FileName, System.Drawing.Imaging.ImageFormat.Jpeg);

pictureBox1.SendToBack();

}

}

Primer kode 7: Naredimo sliko končnih rezultatov

3.6 Semafor

Pri judu se vsaka izvedena tehnika judoista točkuje s točkami ippon, waza-ari in yuko,

vsaka prepovedana akcija pa je kaznovana s shido ali hansoku-make (izključitev). Prvi

shido je le opozorilo, drugi nasprotniku prinese točko yuko, tretji pa waza-ari. Četrta kazen

pomeni ippon in zmago za nasprotnika. Tekmovalec si lahko prisluţi tudi direktni

hansoku-make, če izvede nevarno ali prepovedano tehniko ali se med borbo neprimerno

vede. Z direktnim hansoku-make tekmovalec tudi izgubi pravico do nadaljnjega nastopanja

na tekmovanju.

Na tekmovanjih poleg sodnika, ki sodi borbo, potrebujemo še vsaj dva ali več pomočnikov,

ki beleţijo sodniške odločitve na registrator ter merijo čas tekme. Število dodatnih ljudi, ki

jih potrebujemo za pomoč pri sojenju na velikih tekmovanjih, kjer se tekmuje na več

blazinah, precej naraste.

V našo aplikacijo smo zato vključili tudi semafor za točkovanje ter merjenje časa. S tem

smo zmanjšali potrebo po dodatni pomoči in olajšali samo beleţenje rezultatov.

V naši aplikaciji smo semafor razdelili na semafor za vodenje tekme ter semafor za prikaz

gledalcem. Semafor za vodenje tekme je vmesnik, s katerim merimo čas, beleţimo točke in

pridobivamo naslednje tekmovalne pare. Semafor za prikaz gledalcem pa je namenjen za

prikaz rezultatov in časa gledalcem.

Page 26: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 18

3.6.1 Semafor za vodenje tekme

V tem delu aplikacije imamo veliko funkcionalnosti. Imamo moţnost določanja in

merjenje borbenega časa, pridobivanje tekmovalnih parov in beleţenje točk.

private void cas_Tick(object sender, EventArgs e)

{

if ((minutes == 0) && (seconds == 0))

{

cas.Enabled = false;

sekundeLabel.Text = "00";

minuteLabel.Text = "0";

minuteLabel.ForeColor = Color.Red;

sekundeLabel.ForeColor = Color.Red;

Beep(300, 1500);

}

else

{

if (seconds < 1)

{

seconds = 59;

if (minutes == 0)

{

minutes = 59;

}

else

{

minutes -= 1;

}

}

else

seconds -= 1;

minuteLabel.Text = minutes.ToString();

if (seconds / 10 == 0)

{

sekundeLabel.Text = "0" + seconds.ToString();

}

else

{

sekundeLabel.Text = seconds.ToString();

}

}

if (semafor_open)

prikaz_na_semaforju();

}

Primer kode 8: Timer za prikaz glavnega časa

Prav tako je to del, ki se prikaţe ob zagonu aplikacije. Na tem oknu imamo moţnosti, ki

nam odprejo ţreb ter okno za vodenje tekme.

Ker se lahko na isti blazini vodi več starostnih kategorij hkrati, ki nimajo enakega časa

borbe, smo naredili funkcionalnost hitrega spreminjanja časa. To smo dosegli tako, da

uporabnik za spremembo dolţine borbe preprosto klikne na gradnik button spremeni, vpiše

Page 27: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 19

nov čas borbe ter pritisne na gradnik button potrdi.

V tem delu aplikacije s pritiskom na gumb pridobimo naslednje tekmovalne pare iz

aplikacije vodenja tekme. Imena tekmovalcev se izpišejo na sam semafor, kjer so vidna

tako nam kot gledalcem. Istočasno program pridobi tudi tekmovalni par, ki se bo boril

naslednjo borbo.

Ko se borba konča in je znan zmagovalec, s pritiskom na gradnik button Prenesi

zmagovalca prenesemo zmagovalca v aplikacijo za vodenje tekme.

3.6.2 Semafor za prikaz gledalcem

To okno sluţi za prikaz podatkov gledalcem ter sodniku na blazini. Na njem so prikazani

identični podatki kot na semaforju, kjer beleţimo točke; torej ime, priimek ter drţava

trenutnih tekmovalcev, ki sta na borilnem prostoru, in pa točke, ki smo jih zabeleţili. Na

tem semaforju je tudi moţnost za prikaz reklamnih sporočil.

Page 28: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 20

4 REZULTATI

V tem poglavju kot rezultate opišemo in prikaţemo videz naše aplikacije.

4.1 Spletna stran

Ob obisku naše spletne strani se nam kot domača stran odpre koledarček s tekmami, ki se

jih lahko udeleţimo. Na zgornji levi strani imamo meni, s katerim se lahko premikamo do

ostalih funkcionalnosti.

Slika 12: spletna storitev

4.2 Žreb

Najprej izberemo, za katero tekmo ţelimo izdelati ţreb, in pridobimo podatke iz

podatkovne baze s klikom na gradnik button pridobi ter jih zapišemo v tabelo. Nad tabelo

imamo moţnosti sortiranja. Prav tako imamo moţnost dodajanja novih klubov ter

tekmovalcev in urejanja le-teh. Tekmovalce za ţreb lahko tudi uvozimo iz excelovega

dokumenta. S klikom na gradnik button žrebanje se nam odpre novo okno, kjer se izvaja

ţreb. V zgornjem desnem kotu imamo vse podatke trenutne kategorije. Ţreb se grafično

prikaţe na levi strani aplikacije.

Page 29: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 21

Slika 13: Žreb

4.3 Vodenje tekme

Imamo moţnost vodenja dveh kategorij naenkrat, kjer ima vsaka kategorija svoj zavihek.

Najprej pridobimo ţreb s trdega diska s pritiskom na gradnik button izberi kategorijo. Prav

tako imamo moţnost vodenja kategorije elektronsko oziroma ročno. Elektronsko vodenje

kategorije je avtomatizirano s pomočjo semaforja. Če pa ţelimo kategorijo voditi ročno,

zmagovalce določamo s pritiskom na njihova imena. Ko so znani polfinalisti, s pritiskom

na gradnik button repasaž določimo popravne borbe. Ko so končane vse borbe v kategoriji,

se grafični prikaz rezultatov shrani za prikaz na internetni strani.

Page 30: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 22

Slika 14: Vodenje tekme

4.4 Semafor

Semafor upravljamo s pomočjo miške. Na spodnjem delu aplikacije imamo moţnosti za

nastavljanje časa ter pridobivanje naslednjih tekmovalnih parov. Prav tako imamo tu

moţnost odpreti okno, kjer se izvajata ţreb in samo vodenje tekme.

Slika 15: Semafor za prikaz gledalcem

Page 31: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 23

Slika 16: Semafor za točkovanje

Page 32: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 24

5 SKLEP

V diplomskem delu smo se ukvarjali z izdelavo informacijskega sistema za vodenje judo

tekem. Razvili smo aplikacijo, ki nam sluţi za prijavo na tekmovanja, prikazovanje točk,

vodenje rezultatov ter sam ţreb. Vsak del aplikacije lahko deluje tudi neodvisno drug od

drugega.

S tem smo poenostavili ter olajšali vodenje tekme, prav tako pa smo zmanjšali število

dodatnih pomočnikov, saj aplikacija večino dela naredi sama.

V tretjem poglavju smo opisali funkcionalnosti naše aplikacije, le-to pa smo prikazali v

četrtem poglavju. Naleteli smo tudi na teţave pri ţrebu zaradi pomanjkanja literature v

zvezi s pravili ţrebanja.

V prihodnosti načrtujemo nadgradnjo aplikacije s kamero in mikrofonom, ki bosta

prepoznavala sodniške odločitve ter s tem avtomatizirala tudi ta del aplikacije. S tem bomo

še zmanjšali potrebo po dodatni pomoči.

Page 33: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 25

6 LITERATURA, VIRI

[1] Michael Brousse, David Matsumoto, Judo – a sport and a way of life,

JAJKZS, 2002 Maribor

[2] Judo, dostopno na

http://sl.wikipedia.org/wiki/Judo

[Zadnji obisk: 3.9.2011]

[3] Zgodovina juda, dostopno na

http://www.os-brsljin.si/izdelki/borilne/Miklavc/Judo/zj.html

[Zadnji obisk: 1.9.2011]

[4] Gorazd Meško, 50 let juda v Sloveniji,

Judo zveza Slovenije, 2002 Slovenj Gradec

[5] David Bolton, C# For Beginners - Learn about C#, dostopno na

http://cplus.about.com/od/introductiontoprogramming/a/cshbeginners.htm

[Zadnji obisk: 6.9.2011]

[6] Get Started with ASP.NET, dostopno na

http://www.asp.net/get-started]

[Zadnji obisk: 5.9.2011]

[7] ASP.NET, dostopno na

http://www.startvbdotnet.com/aspsite/asp/

[Zadnji obisk: 2.9.2011]

[8] Scott Hanselman, What is ASP.NET, dostopno na

http://www.asp.net/general/videos/what-is-asp-net

[Zadnji obisk: 1.9.2011]

[9] Why MySQL, dostopno na

http://www.mysql.com/why-mysql/

[Zadnji obisk: 7.9.2011]

Page 34: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 26

[10] MySQL, dostopno na

http://en.wikipedia.org/wiki/MySQL

[Zadnji obisk: 8.9.2011]

Page 35: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 27

7 PRILOGE

7.1 Seznam slik

Slika 1: ER diagram podatkove baze ..................................................................................... 6

Slika 2:Pregled tekem ............................................................................................................ 7

Slika 3: Vnos nove tekme ...................................................................................................... 8

Slika 4: Pregled klubov ......................................................................................................... 8

Slika 5: Vnos novega kluba ................................................................................................... 9

Slika 6: Pregled tekmovalcev ................................................................................................ 9

Slika 7:Vnos novega tekmovalca ........................................................................................ 10

Slika 8: Prijava na tekmo ..................................................................................................... 10

Slika 9: Priprava za ţreb ...................................................................................................... 13

Slika 10: Grafični prikaz ţrebanja ....................................................................................... 15

Slika 11: Uvoz kategorije .................................................................................................... 16

Slika 12: spletna storitev ..................................................................................................... 20

Slika 13: Ţreb ...................................................................................................................... 21

Slika 14: Vodenje tekme ..................................................................................................... 22

Slika 15: Semafor za prikaz gledalcem ............................................................................... 22

Slika 16: Semafor za točkovanje ......................................................................................... 23

7.2 Seznam primerov kode

Primer kode 1: Connection string .......................................................................................... 6

Primer kode 2: povezava na bazo .......................................................................................... 6

Primer kode 3: Vpis nove tekme ......................................................................................... 11

Primer kode 4: Pridobi podatke iz excelovega dokumenta ................................................. 13

Primer kode 5: Prijavi tekmovalca na tekmo....................................................................... 14

Primer kode 6: Tiskanje ţreba ............................................................................................. 15

Primer kode 7: Naredimo sliko končnih rezultatov ............................................................. 17

Primer kode 8: Timer za prikaz glavnega časa .................................................................... 18

Page 36: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 28

7.3 Naslov študenta

David Mesarič

Gozdarska cesta 49

2382 Mislinja

Tel.studenta: 041 292 257

e-mail študenta: [email protected]

7.4 Kratek življenjepis

Rojen: 15.1.1988

Šolanje: OŠ Mislinja

Poklicna in tehniška elektro in računalniška šola Velenje

Fakulteta za elektrotehniko, računalništvo in informatiko Maribor

Page 37: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 29

Page 38: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 30

Page 39: INFORMACIJSKI SISTEM ZA VODENJE TEKEM V JUDU

Informacijski sistem za vodenje tekem v judu Stran 31