OMT esettanulmány ny Tornabajnokság g eredmény nyilvántart ntartó rendszere Lajos Miskolci Egyetem Általános Informatikai Tanszék A megoldandó feladat A cél egy tornabajnokság eredmény nyilvántartó rendszerének megtervezése. A rendszernek nyilván kell tartania a szereplőket, a versenyeket és az azokon elért eredményeket. Az előzetes feladat vázlat mellékelve. Lajos OMT esettanulmány OMTESET / 2 Követelmény analízis. A leírás önmagában nem elegendő, mert pontatlan hiányos Beszerzendő további anyagok szabálykönyvek, versenyszabályok stb. eddig használt bizonylatok, dokumentumok résztvevőkkel készített interjúk Célszerűen elkészítendő: összefoglaló rendszer specifikáció rendszer funkciólista Lajos OMT esettanulmány OMTESET / 3
Követelmény analízis 2. Összefoglaló rendszer specifikáció TORNA rendszer.0 verzió, Rendszerspecifikáció A rendszernek az alábbiakat kell tudnia: Az egyes versenyek struktúrájának (a versenyszámok, azokon belül a szerek) nyilvántartása A egyesületek és versenyzőik, valamint a versenyeken résztvevő csapatok összetételének nyilvántartása A versenybírók nyilvántartása, ezen belül hogy melyikük melyik szer ására jogosult, melyik versenyre van kijelölve, és ott kinek milyen pontszámokat adott. A versenyek és az eredmények folyamatos nyilvántartása Lajos OMT esettanulmány OMTESET / 4 Követelmény analízis 3. Rendszer funkciólista TORNA rendszer.0 verzió, Funkciólista Egy csapat nevezése egy versenyre Egy csapat nevezése egy versenyszámba Csapat összetételének változtatása kijelölése egy szerhez Az egyes szerek és versenyek eredményei A szezonon belüli sorrend számítása Értesítés a verseny beosztásról a versenyzőknek és a bíróknak Lajos OMT esettanulmány OMTESET / 5 Osztályok azonosítása. A feladat egy tornabajnokság eredményeit nyilvántartó rendszer készítése. A rendszernek automatizálnia kell a versenyek kiírását, a versenyzők regisztrálását és az eredmények nyilvántartását egy versenyszezonon belül. tornabajnokság maga a rendszer, a kiírás, regisztrálás és eredmények nyilvántartása operáció. szezon egy absztrakció - potenciális osztály. Lajos OMT esettanulmány OMTESET / 6
Osztályok azonosítása 2. A tornaszövetség egyesületek együttese, a csapatok egymás ellen versenyeznek. Minden csapat a tagjait nevezheti az egyes versenyekre. az aláhúzottak osztályként kezelendők. A verseny azonban még nem eléggé tisztázott fogalom. Hasonlóan nem tisztázott a csapat (csapat = egyesület?) Lajos OMT esettanulmány OMTESET / 7 Osztályok azonosítása 3. Egy tipikus verseny versenyszámokból áll, amelyeket egy napon belül bonyolítanak le. Egy versenyszám lehet például a női csapat, női egyéni, férfi csapat stb. Mindegyik lehet junior és felnőtt korosztály számára kiírva. Ha egy egyesület jelentkezik egy versenyre, minden versenyszámban indítania kell versenyzőket. Minden versenyszámra minden csapat ugyanannyi versenyzőből áll, akiknek a versenyszám valamennyi szerén indulniuk kell. duplán aláhúzott szöveg: csapat jelentése verseny, versenyszám, szer osztályok női csapat, stb csak a versenyszám osztály előfordulásai. nap csak egy adatstruktúra. Lajos OMT esettanulmány OMTESET / 8 Osztályok azonosítása 4. Minden versenyszámban különböző szereken kell versenyezni. Például a női verseny gerendából, ugrásból, felemás korlátból és talajgyakorlatból áll. Minden szer egyidőben használatban van. Egy csapat minden tagja bemutatja a gyakorlatát egy szeren, majd megy a következő szerhez. Csak előfordulások. Lajos OMT esettanulmány OMTESET / 9
Osztályok azonosítása 5. Minden szerhez óbírók vannak kijelölve, akik értékelik a gyakorlatokat. Minden bíró za a gyakorlatokat. Az általa adott pontszámot jelenti a ónak. A ó elhagyja a legalacsonyabb és a legmagasabb pontszámot, és a maradék átlagát számítja. Ez lesz az adott versenyző eredménye az adott szeren. A csapat eredménye az adott szeren a tagjai egyéni pontszámainak összege. A bíró osztály a óbírók egy kapcsolat a szer és a bíró osztály között. A pontszám absztrakció, de nem osztály, csak adattípus. A ó osztálynak látszik. Az automatizált rendszerben megszűnik szereplőnek lenni, és csak egy operáció marad (adatok összegyűjtése és számítás végzése). Tehát nem osztály. Lajos OMT esettanulmány OMTESET / 0 Osztályok azonosítása 5. A szerenkénti eredmények összege adja a versenyszámban elért eredményt minden egyes csapatnál. Az eredmény csak attribútuma egy már ismert osztálynak Lajos OMT esettanulmány OMTESET / Osztályok azonosítása 6. A szövetség az egyes versenyek lebonyolításán felül elkészíti egy szezonra a versenynaptárt, biztosítja a bírók delegálását az egyes versenyekre és szerekre, nyilvántartja a versenyzők és az egyesületek eredményeit, és nyilvánosságra hozza a szezon eredményeit. a versenynaptár és a szezon eredményei az eddig ismert osztályok adataiból származtatható mennyiségek (A tervezés során ezekből is osztály válhat.) Lajos OMT esettanulmány OMTESET / 2
Osztályok azonosítása 5. Atag és a versenyző fogalmak vizsgálata lehetséges osztályokként jelöltük meg Mindkét fogalom mögött ugyanaz a természetes objektum (egy személy) áll - a szövegben közvetlenül nem szereplő absztrakció: a tornász osztály. Egy tornász objektum egyszerre tag (egy egyesületben) és lehet versenyző, ha nevezik egy versenyre. A tag és a versenyző tehát kapcsolatok a tornász osztály és más osztályok között. Lajos OMT esettanulmány OMTESET / 3 Osztályok azonosítása 6. Szezon szám Csapat Szövetség Lajos OMT esettanulmány OMTESET / 4 Osztályok leírása Csapat: i tagokból az egyesület nevezi. : Az egyesület tagjai versenyezhetnek. Szezon: A szezon az az időszak, ami alatt a versenyek zajlanak Szövetség: A szövetség egyesületekből áll. : A verseny csapatok találkozója. számokból áll. szám: A versenyszámban versenyeznek egymással a csapatok. ekből áll. Lajos OMT esettanulmány OMTESET / 5
Osztályok közötti kapcsolatok szám meghirdetés elõírás jeletkezõ teljesítés verseny kiírás óbírók Szezon Szövetség ó résztvevõ teljesítlés nevezés tag Csapat versenyzõ Lajos OMT esettanulmány OMTESET / 6 Kapcsolatok finomítása szer-bíró kapcsolat: bíráskodik vagy bíráskodhat? óbírók fajta teljesítés minõsített típus teljesítlés Lajos OMT esettanulmány OMTESET / 7 Kapcsolatok számossága szám elõírás meghirdetés fajta jeletkezõ verseny kiírás óbírók típus teljesítés Szezon minõsített Gy akorlat Szövetség résztvevõ teljesítl és nevezés tag 0.. versenyzõ Csapat Lajos OMT esettanulmány OMTESET / 8
Attribútumok azonosítása új osztályokat is találhatunk. pl. tornász - egyesület viszonya s zuletesi_datum : Date jelentkezés tag Egy esület nev : String Tagság kezdete : Date vege : Date Lajos OMT esettanulmány OMTESET / 9 Általánosítás - pontosítás pl. tornász és bíró Résztvevõ név : String cím : String szuletesi_datum : Date kijelolt() minositett() Lajos OMT esettanulmány OMTESET / 20 szám elõírás : jeletkezõ Csapat 0.. Szezon kezdet : Date Új osztálydiagram Objektum modell kapcsolatokkal és attributumokkal (Nem teljes!) elõírás meghirdetés Szövetség név : String résztvevõ : nevezés verseny k iírás résztvevõ nev : String idõpont : Date helyszín : String kijelolt() minositett() tag versenyzõ minõsített óbírók típus Lajos OMT esettanulmány OMTESET / 2 fajta Tagság kezdete : Date vege : Date Résztvevõ név : String cím : String jelentkezés teljesítés teljesítlés szuletesi_datum : Date
Dinamikus modell. Use case: Egy bíró kijelölése egy adott szeren bíráskodók közé:. Ha a bíró még nincs kijelölve 2. és a bíró minősített az adott szerre 3. add a bírót az adott szerre kijelölt bírákhoz Pl. együtműködési diagr. Talajgyakorlat : típus 3: add_biro( ) : 2: minositett : kijelolt( ) Új bíró : Lajos OMT esettanulmány OMTESET / 22 Dinamikus modell 2. Use case: Egy tornász pontszámának számítása egy adott versenyen:. Egy verseny valamennyi szerére vegyük a tornász pontszámát 2. Vegyük a pontszámot a gyakorlatra, amelyet a tornász bemutatott 3. Minden bíróra a bírói testületből vegyük a pontszámot, amit a bíró a gyakorlatra adott Lajos OMT esettanulmány OMTESET / 23 Dinamikus modell 3. : : (tornász) Ebből adódik: szer : 2: osszes_pontszam() szükséges operációk kapcsolatok: gyakorlat : verseny - versenyszám versenyszám - szerek szerek-bírók a pontszám a bíró és a szer közötti kapcsolat attribútuma - jobb lenne, ha osztály lenne 3: pontszam() biró : Lajos OMT esettanulmány OMTESET / 24
Dinamikus modell 4. kijelolt() minositett() untitled() pontszamok : Pontszám nyers_pontszam() eredmeny() ó Pontszám Lajos OMT esettanulmány OMTESET / 25 Kontext diagram: Funkcionális modell. vezõ helyszínek Csapat nevezése idõpontok Csapat eredmények eredmény nyilvántartás Kijelölés Adott pontok Egyéni eredmények Lajos OMT esettanulmány OMTESET / 26 Funkcionális modell 2. Első szintű adatfolyam diagram: vezõ idõpontok helyszínek Csapat nevezése Csapat eredmények Egyéni eredmények naptár összeállítás 2 eek lebonyolítása 3 Eredménylisták közzététele naptár Egy verseny résztvevõi Pontszámok Adott pontok Nevezett csapatok Összesített pontszámok Kijelölés D verseny adatok D Eredmények Lajos OMT esettanulmány OMTESET / 27
szám elõírás : csapat_nevezes() egyeni_eredmenyek() Műveletek azonosítása Objektum modell kapcsolatokkal, attributumokkal és operációkkal (Nem teljes!) elõírás meghirdetés idõpont : Date helyszín : String meghirdetes : szám óbírók típus fajta csapat_pont(csapat : Csapat) : Integer add_gyakorlat() add_biro() egyesulet_regisztr() verseny kiírás Pontszám minõsített Szezon ó jel etkezõ kezdet : Date verseny_kiiras() kijelolt() Szövetség minositett() név : String untitled() résztvevõ : Résztvevõ név : String cím : String résztvevõ Tagság kezdete : Date nev : String tag vege : Date teljesítés pontszamok : Pontszám nyers_pontszam() eredmeny() teljesítlés nevezés jelentkezés 0.. Csapat versenyzõ Lajos OMT esettanulmány szuletesi_datum : Date OMTESET / 28 (Funkcionális modell után) Csomag diagram Alrendszerekre bontás. Torna GUI Eredmény nyilvántartás Felhasználói felület Adattárolás <<globális>> Adatszerkezetek Lajos OMT esettanulmány OMTESET / 29 Alrendszerekre bontás 2. Komponens diagram lebonyolítás naptár Eredmény listák Résztvevõk nyilvántartása Lajos OMT esettanulmány OMTESET / 30
Telepítési diagram A rendszer topológiája Szövetségi szerver File re telepített laptop Intern et LAN File i munkaállomások Adatbázis s zerver (A szövetségnél) Lajos OMT esettanulmány OMTESET / 3 Vezérlés elvének meghatározása Funkciónként különböző lehet Batch módban verseny jegyzőkönyv eredmény listák Interaktív módban verseny eredmények Lajos OMT esettanulmány OMTESET / 32