Szoftvertechnológia
2011.10.17
Szerelőműhely nyilvántartás Rendszerterv
Készítette: Ballagi – Pordány Dániel Árpád EHA: BAQSAAI.ELTE E-mail:
[email protected]
1. oldal
Szoftvertechnológia
2011.10.17
Tartalomjegyzék A szoftver .............................................................................................................................................3 Funkciók:........................................................................................................................................3 Projekt költségei, időbeosztása.............................................................................................................4 Határidők, mérföldkövek: ..............................................................................................................4 Felhasználói esetek:..............................................................................................................................4 1. ábra. Felhasználói esetek diagrammja.........................................................................................4 A program kommunikációs csatornái:..................................................................................................5 A program felépítése:...........................................................................................................................6 2. ábra. Osztálydiagramm................................................................................................................6 A program állapot diagrammja:............................................................................................................7 3. ábra. Állapot diagramm...............................................................................................................7 A program szekvencia diagrammja:.....................................................................................................8 4. ábra. Szekvencia digramm...........................................................................................................8
2. oldal
Szoftvertechnológia
2011.10.17
A szoftver A szoftver leírása: A program egy szerelőműhely nyilvántartását felügyeli. Az autószervizbe gépjárműveket visznek karbantartásra (vizsgáztatás, környezetvédelmi kártya kiállítás, éves átvizsgálás, rendkívüli átvizsgálás, olajcsere stb.), vagy javításra. Egy autószervizbe került gépjármű átvizsgálásának és/vagy javításának nyomon követését végző szoftver fő funkciója a munkalap, valamint a hozzá kapcsolódó tartalom (munkafolyamatok, anyagok) kezelése. Környezeti követelmények: A szoftver Linuxos környezetre optimalizált, a kód Windows kompatibilissé tehető. A futtatáshoz egyszerű személyi számítógép elegendő, semmilyen egyéb szoftverrel nem kell együttműködni. Szerkezeti felépítés: A szoftver egyetlen komponensből áll amely a konzol felületet, adatkezelés és a fájlkezelés is magában foglalja. Fejlesztés: A fejlesztés a vízesés modellnek megfelelően zajlik le amely során az objektumorientált paradigma kerül alkalmazásra. Kommunikáció és adatkezelés: A szoftver konzolos felületen kommunikál a felhasználóval. Az adatok betöltése valamint mentése egyszerű szöveges fájlokba történik. Minőségi mutatók: A szoftver 100%ig hibátlan funkciókat biztosít sértetlen adatfájlok esetében. Ha az adatfájlok sérülnek csak a korábbi adatok vesznek el, a további működés biztosított. A program memória valamint tárhely szükséglete az adatmennyiségtől függ. A program biztonsági funkciókat nem tartalmaz. A szoftver csak helyi gépen lesz elérhető, karbantartást nem igényel. Az átadás a program elkészültével történik meg. Funkciók: •
• •
•
•
•
A munkafelvevő új munkalapot nyit (munkafelvevő neve, a felvétel időpontja), ezen rögzíti a gépjármű és tulajdonosának adatait (rendszám, gyártmány, típus, tulajdonos neve, címe). A programban előre rögzítetten tároltak a szerelők nevei, a munkafolyamatok nevei és óradíjai, az anyagok nevei és egységárai, valamint az alkatrészek nevei és árai. A munkalapban tetszőleges számú munkafolyamat (idő órában, szerelő), valamint anyag (név, mennyiség) és alkatrész (név, mennyiség) adható meg, amelyek tételesen listázódnak a munkalap megtekintésekor. Ezek alapján megkapjuk a munkalap teljes szerelési időt, valamint az összeget. A munkalapnál megjelölhető, hogy a vásárló kifizette-e már az összeget. Csak azok a munkalapok törölhetőek, amelyeket a vevő már kifizetett. A programban több munkalapot is lehet szimultán kezelni, amiket a főmenü kilistáz. A munkalapok között lehet keresni felvevő neve, a felvétel időpontja, valamint a tulajdonos neve alapján. A munkalapot lehet egy szöveges fájlba kimenteni, amely könnyen kinyomtatható formátumban jeleníti meg a felvett adatokat.
3. oldal
Szoftvertechnológia Projekt költségei, időbeosztása
2011.10.17
Feltételek: Egy programozó alkalmazásával a fejlesztés megközelítőleg 40 munkaórát igényel, költségként a sörözéssel vagy semmittevéssel el nem töltött idő számolható fel. Határidők, mérföldkövek: A szoftver egyes egységei minden hét vasárnap estéjére készül el, így a szoftverfejlesztés heti ciklusokban valósul meg. • 2011.10.17.: Követelményleírás • 2011.11.29.: Rendszerterv • 2011.12.10.: A program alfa verziója • 2011.12.30.: A program béta verziója • 2012.01.10.: A program véglegesített verziója Felhasználói esetek: • • • •
A felhasználó létrehozhat új munkalapot Munkalapok kilistázása a főmenüben érhető el, ez szimultán munkalapkezelést biztosít Munkalap megnyitása és módosítása valamint törlése amennyiben a vevő fizetett már elérhető a felhasználónak Biztosított a keresés funkció a munkalapok között
1. ábra. Felhasználói esetek diagrammja
4. oldal
Szoftvertechnológia
2011.10.17
A program kommunikációs csatornái: A programot a felhasználó a billentyűzet segítségével tudja irányítani, a program minden esetben a kért információkat a képernyőre írja ki. A program az adatokat 5 fájlban tárolja: mechs.dat, workprocs.dat, comps.dat, mats.dat és jobs.dat. A fájlok szerkezete: A dolgozók neveit tároló fájl: mechs.dat, felépítése: <dolgozó neve> <dolgozó neve> … A munkafolyamatok leírását tartalmazó fájl: workprocs.dat, felépítése: <munkafolyamat neve> <óradíj> <munkafolyamat neve> <óradíj> … A munka során felhasználható anyagok leírását tartalmazó fájl: comps.dat, felépítése:
<egységár> <egységár> … A munka során felhasználható alkatrészek leírását tartalmazó fájl: mats.dat, felépítése: <egységár> <egységár> … Az eddigi munkalapokat tároló fájl: jobs.dat, felépítése: <dolgozó> … <dolgozó> … …
5. oldal
Szoftvertechnológia
2011.10.17
A program felépítése: A program 8 osztályból áll, leírásuk: •
•
• •
A program főbb funkcióinak elérése a Menu osztályon keresztül történik. Ebben az osztályban lehet betölteni valamint kimenteni az eddigi adatokat, új munkalapot létrehozni vagy egy meglévőt szerkeszteni vagy törölni ha már kifizették illetve tulaj, időpont és szerelő alapján lehet keresni a munkalapok között. A program a munkalapok adatait a Worksheet osztályban tárolja, melyből a tétel hozzáadása és fizetés beállítása érhetőek el. Emellett a teljes költség és ráfordított idő mennyiségét is le lehet kérdezni. A munkalapokhoz kapcsolt járművek és dolgozók adatit külön osztályban tároljuk, rendre: Vehicle és Mechanic. A különböző, munkalapokhoz adható tételek egy osztályból vannak származtatva, ennek a neve Services. A három származtatott osztály: WorkProc, Material és Component.
A program felépítését bemutató osztálydiagram:
2. ábra. Osztálydiagramm
6. oldal
Szoftvertechnológia
2011.10.17
A program állapot diagrammja: •
Egyedül a Menu osztály állapotváltozásait vizsgáljuk
•
A Worksheet osztály is végrehajt tevékenységekete, azonban ennek állapotai lényegtelenek a program futása szempontjából.
•
A Menu hajtja végre a tényleges tevékenységet a különböző menüpontok futtatásával, amelyek jellemzik a program különböző állapotait, így az állapotokat ezekhez kötjük.
•
A program egyedül az adatok kimentése után terminálhat.
3. ábra. Állapot diagramm
7. oldal
Szoftvertechnológia
2011.10.17
A program szekvencia diagrammja: A program indítása után a különböző metódusok a következő képpen követik egymást: •
A program indítása után betöltjük a memóriába az adatokat.
•
Amennyiben eddig még nem volt munkalapunk vagy újat kívánunk hozzáadni az AddSheet() metódussal létrehozzuk a Worsheet objektumot. Az objektum AddServ() metódusával újabb tételeket tudunk adni a munkalaphoz.
•
Ha a munkalapot már kifizették lehetőség van annak törlésére.
Szekvencia diagramm:
4. ábra. Szekvencia digramm
8. oldal