Gábor Dénes Főiskola
VPR Vállalkozói Portál Rendszer
Készítette: Konzulens: Diplomamunka-terv ssz: Dátum:
Molnár László Mészáros György 1204/2004 Budapest, 2005.05.22
2
Tartalom:
1. Előszó.................................................................................................................................6 2. Bevezetés........................................................................................................................7 2.1. Portálok ..................................................................................................................7 2.2. VPR ........................................................................................................................8 2.3. Programozási nyelvek .............................................................................................9 2.3.1. PHP.................................................................................................................9 2.3.2. .NET .............................................................................................................10 2.3.3. JAVA ............................................................................................................12 3. A téma önálló kidolgozása ............................................................................................13 3.1. Fejlesztői dokumentáció........................................................................................13 3.1.1 Modellező nyelv és módszertan .....................................................................13 3.1.1.1 UML .........................................................................................................13 3.1.1.2 RUP ..........................................................................................................14 3.1.2 Előkészítési fázis ...........................................................................................15 3.1.2.1 Feladatspecifikáció ....................................................................................15 3.1.2.2 Üzleti folyamatok ......................................................................................16 3.1.2.3 Szakterületi objektummodell .....................................................................19 3.1.2.4 Fogalomgyűjtemény ..................................................................................19 3.1.2.5 Követelmény leírás....................................................................................24 3.1.3 Kidolgozási fázis ...........................................................................................34 3.1.3.1 Használati esetek .......................................................................................34 3.1.3.2 Fontosabb aktivitások ................................................................................42 3.1.3.3 Csomagok .................................................................................................47 3.1.3.4 Logikai adatbázisterv.................................................................................49 3.1.4 Építési fázis...................................................................................................55 3.1.4.1 Fizikai adatbázisterv ..................................................................................55 3.1.4.2 Rendszerterv..............................................................................................56 3.1.4.3 Osztályok ..................................................................................................58 3.1.5 Átadási fázis..................................................................................................67 3.1.5.1 Telepítési terv............................................................................................67 3.1.5.2 Tesztterv....................................................................................................68 3.2. Felhasználói dokumentáció ...................................................................................78 3.2.1 Ügyfél dokumentáció ....................................................................................78 Felhasználó adatainak kezelése .................................................................................78 Cég adatainak kezelése .............................................................................................82 Honlap adatainak kezelése ........................................................................................84 Letöltések adatainak kezelése....................................................................................88 Hírek adatainak kezelése...........................................................................................90 Kedvencek adatainak kezelése ..................................................................................93 Termékek adatainak kezelése ....................................................................................95 3.2.2 Rendszergazdai dokumentáció.......................................................................99 Felhasználó adatainak kezelése .................................................................................99 A FAQ adatainak kezelése ......................................................................................100 Hírlevél adatainak kezelése .....................................................................................102 Szavazások adatainak kezelése................................................................................105 Fórum adatainak kezelése .......................................................................................107 3
4. A jövő, fejlesztési javaslatok...........................................................................................111 5. Összefoglalás..................................................................................................................111 6. Irodalomjegyzék .............................................................................................................112 6.2 Nyomtatott média................................................................................................112 6.3 Online média.......................................................................................................112 Mellékletek ........................................................................................................................113 A. Forráskód (src)...............................................................................................................113 B. Felhasznált programok teljes listája................................................................................113 C. Teljes osztályleírás (JavaDoc) ........................................................................................113 A JavaDoc osztályleírás nem szerepel nyomtatott formában csak mellékletként a CD-n. D. Programozási nyelvek összehasonlítási táblázat..................................................................113 D. Programozási nyelvek összehasonlítási táblázat .............................................................114 E. Adatbázis táblák és kapcsolataik részletes leírása ...........................................................115 Adatbázis: vpr.............................................................................................................115 Tábla: country.........................................................................................................115 Tábla: download .....................................................................................................115 Tábla: faq................................................................................................................115 Tábla: favorite.........................................................................................................116 Tábla: firm..............................................................................................................116 Tábla: forum ...........................................................................................................116 Tábla: forumpost.....................................................................................................117 Tábla: news.............................................................................................................117 Tábla: newspaper ....................................................................................................117 Tábla: poll...............................................................................................................118 Tábla: pollanswer....................................................................................................118 Tábla: product.........................................................................................................118 Tábla: site ...............................................................................................................118 Tábla: taxrate ..........................................................................................................119 Tábla: template .......................................................................................................119 Tábla: topic.............................................................................................................120 Tábla: user ..............................................................................................................120 Tábla: usertype .......................................................................................................120
4
5
1. Előszó Napjainkban a szoftverfejlesztésen belül egyre nagyobb szerepet kapnak a webes alkalmazások. Egyre több vállalkozás jelenik meg az Interneten, bővülő szolgáltatásokkal és honlap tartalommal. Diplomamunkám bemutat egy valós igény alapján elkészített és a jövőben (bővített változatban) az Interneten tényleges működő portált. Annak működését, elkészítésének körülményeit és menetét. A dolgozat első részében a portálokról általában beszélek, majd ismertetem a létrehozáshoz felmerült programozási nyelveket. Az első rész végén pedig az általam fejlesztett portál (VPR) néhány jellemzőjét mutatom be. Ezt követően az alkalmazás fejlesztésének leírása következik. Először a fejlesztői dokumentációt, majd a felhasználó dokumentációt (súgó) ismertetem. A dolgozat végén összefoglalom a leírtakat, értékelem az elért eredményeket és a rendszer továbbfejlesztési lehetőségeit boncolgatom. A munkám alapja lesz egy nagyobb teherbírású, még inkább dinamikus rendszer kifejlesztésének. Remélem a publikus verzió segítheti a szerveroldali programozókat portálok kifejlesztésében.
6
2. Bevezetés Ebben a fejezetben beszélek a portálokról és a fejlesztésükhöz használható programozási nyelvekről, valamint a VPR (Vállalkozói Portál Rendszer) alapvető jellegzetességeiről
2.1. Portálok A következőkben röviden be szeretném mutatni, hogy mit is takar a "portál" fogalma. A "Webopedia”1 nevű internetes enciklopédia megfogalmazása szerint: "A portál egy olyan Web-hely, amely széles körű erőforrásokat és szolgáltatásokat kínál, mint például e-mail, fórumok, kereső, online bolt." A portálok sajátja továbbá a felhasználók kezelése, ahol regisztrációval a honlap látogatói további szolgáltatásokat érhetnek el jogosultsági szintjüktől függően. A portálokat két fő csoport szerint bonthatjuk fel: horizontális és vertikális. Horizontális portál2: „Témák sokaságával foglalkozó, "populáris" portál, amelyet az emberek általában napi rendszerességgel látogatnak.”. Vertikális portál3: „Szigorúan egy adott témával, vagy emberek egy csoportjával foglalkozó portál. A vertikális portálok horizontális társaiknál az adott témával jóval behatóbban foglalkoznak, és ebből adódóan általában szűkebb közönséghez szólnak. A vertikális portálokat az emberek csak alkalmi jelleggel, akkor keresik fel, ha az adott témával kapcsolatos információra van szükségük.”. Az általam kialakítandó portál vertikális jellegű, a vállalkozások létrehozásával és az Interneten való megjelenésével foglalkozik.
1
http://www.webopedia.com/TERM/W/Web_portal.html http://pcforum.hu/szotar/horizont%E1lis+port%E1l.html 3 http://pcforum.hu/szotar/vertik%E1lis+port%E1l.html 2
7
2.2. VPR A VPR (Vállalkozói Portál Rendszer) vállalkozók és mikrovállalkozások internetes megjelenését segítő portál rendszer. A rendszer a dinamikus, erőforrás igényes oldalak és a teljesen statikus oldalak közti űrt próbája áthidalni. Az oldalak szerkesztése dinamikus, de a megjelenítés statikus oldalakból áll. Ezáltal a honlapok készítése és karbantartása egyszerű, nem igényel semmilyen szaktudást, az oldalak megjelenítése gyorsabb. Továbbá a projekt célja a kezdeti túlbuzgó, izgő-mozgó honlap tervezési megoldások (ill. ezek hiányának) kiváltása, tekintve a statikus honlapok nagy többségének harmóniamentes megjelenését. Az eddigi rendszerek erősen logikus és hierarchikus gondolkodást igényeltek (jellemzően a programozók ilyenek), melyek ugyan rendkívül rugalmasak és sokrétűen beállíthatóak, de használatuk emiatt az emberek többsége részére bonyolult. A legszembetűnőbb különbség az eddigi portál és CMS rendszerekkel szemben, hogy azok többségben saját szervert igényelnek illetve az „egy vállalkozás - egy portál” elven működnek. A VPR használatával több tucat, esetlegesen több 100 honlap karbantartható. Lehetővé teszi honlapok és az adminisztrátorok adatainak kezelését a rendszergazda (portál üzemeltetője) számára. A honlapok adminisztrátorai (felhasználók) pedig a saját honlapjukat és személyes adataikat menedzselhetik. A rendszer moduláris tervezésű, a design, a tartalom, és a háttérrendszerek függetlenek egymástól, és tetszőleges módon kombinálhatók, bővíthetők további modulokkal. A felhasználók számára keresési, rendezési, katalógus és egyéb interaktív szolgáltatások is rendelkezésre állnak, amelyek egységes felületen (böngészőn) keresztül jelennek meg.
8
2.3. Programozási nyelvek A portál megvalósítása szerver-kliens architektúra szerint történik. A szerver általában egy (vagy több) központi számítógépen fut, míg a kliensek tetszőleges helyen lehetnek az Interneten. Az alkalmazás logikáját és az esetleges adatszolgáltatást a szerver valósítja meg. A kliens oldal egyszerűbb, a szerver által elkészített weboldalt egy böngészőn keresztül jeleníti meg, amely a felhasználó számára beviteli és megjelenítési felületként szolgál. Ezen alapfeltételek mellett 3 programozási platform jöhet szóba. Ezek a PHP, a .NET (főként ASP) és a JAVA (J2EE). Az összehasonlítási mátrixuk a mellékletben (D) található.
2.3.1. PHP A PHP jelentése a hivatalos honlap4 szerint:
„A PHP (Hypertext Preprocesszor) egy széles körben használt, általános célú szkript nyelv, melyet elsősorban webes alkalmazásokhoz fejlesztettek ki és HTML kódba ágyazva használják”. Ez azt jelenti, hogy amit PHP nyelven írunk, annak kimenete a forráskód feldolgozása után HTML utasítások sorozata lesz. Azért szkript nyelv, mert ellentétben a hagyományos programozási nyelvekkel, forráskódját nem kell lefordítani futtatás előtt, mivel a parancsértelmező magát a forrást értelmezi, és az alapján állítja elő a kimenetet. A HTML (HyperText Markup Language) az Internet-oldalak – szintén szöveges – leírónyelve, amelyet az Internet-böngésző programok képesek értelmezni, és a leírás alapján előállítani a weboldalakat. A PHP szerver (kiszolgáló) oldali nyelv, ami annyit jelent, hogy a HTML-lel ellentétben az Internet-böngészők nem képesek értelmezni, ezért a PHP elemek HTML kóddá alakítása már a kiszolgálón megtörténik, még mielőtt eljutna a böngészőhöz. Szintakszisa hasonlít a C nyelvre, könnyen tanulható. Rövid idő alatt látványos eredményeket érhetünk el vele. Ingyenesen használható, nagy népszerűségnek örvend főként a fiatalok körében. A magyar webtárhely szolgáltatók által leginkább támogatott dinamikus nyelv.
4
http://www.php.net/
9
A nyelv kisebb alkalmazások fejlesztéséhez rendkívül gyorsan és egyszerűen, de nagyobb rendszerek kódolására csak korlátozottan használható főként az objektumorientált megközelítés hiánya (hiányosságai) és a bővítés nehézségei miatt.
2.3.2. .NET A .NET (dotnet) keretrendszer jelentése a hivatalos honlap5 szerint: „A .NET keretrendszer egy fejlesztő és futtató környezet, melyben különböző nyelvek és könyvtárak együttműködésével windows alapú alkalmazások fejleszthetők, menedzselhetők, telepíthetők és integrálhatók más rendszerekkel”. Magában foglalja a klienseket, szervereket, fejlesztőeszközöket, és a következő elemekből áll: -
A .NET keretrendszer – fejlesztői platform
-
XML webszolgáltatások – integráció
-
Visual Studio .NET – fejlesztőeszköz
-
Szerver és kliens – operációs rendszerek
A .NET egyes elemeinek összefüggéseit jól szemlélteti a következő ábra (MS6):
1. ábra: A .NET felépítése 5 6
http://msdn.microsoft.com/netframework/gettingstarted/default.aspx http://www.developer.hu (cikk: A Microsoft .NET alapjai (technológiai áttekintés))
10
A .NET Framework két főbb részből áll: nyelvfüggetlen futtatórendszer (Common Language Runtime, CLR), és egységes osztálykönyvtár (CLS - Common Language Specification), mely tovább bontható az alaposztályokra (Base Frameworks), és megjelenítési osztályokra (Application Frameworks). A CLR a rendszerszolgáltatások fölé épülve az alkalmazás tényleges végrehajtásáért felelős. Feladatai a függőségi viszonyok feloldása, memóriakezelés, biztonsági előírások betartása, komponensek közti kommunikáció megvalósítása, szálak és folyamatok kezelése. Az ASP.NET és Windows Forms az Application Frameworks részét alkotják. Az előbbi hagyományos webes alkalmazások és webszolgáltatások, az utóbbi pedig Windows alkalmazások fejlesztését teszi lehetővé. A .NET-es fordítóprogramok által generált kód közvetlenül képes együttműködni a CLRrel. Ez a felügyelt kód (managed code). Minden CLR-kompatibilis fordító a forráskódot Microsoft Intermediate Language (Microsoft közbenső nyelv, MSIL vagy röviden IL) kódra fordítja le. Ez egy közbenső nyelv, mely CPU-független utasításokat tartalmaz, és hatékonyan lefordítható gépi kódra. Ezt a just-in-time (futásidő alatti vagy igény szerinti, JIT) fordítók hajtják végre. Ugyancsak fordításkor generálódnak a meta adatok, melyek tartalmazzák az egyes típusok és metódusok leírását. Az ASP.NET egy olyan kiszolgáló oldali programozási környezet, amely webes felületek építéséhez biztosít egy hatékony keretrendszert. Elődje az ASP (Active Server Pages), amely egy viszonylag egyszerű webes futtatókörnyezet. 1997-ben az IIS (Internet Information Server) részeként jelent meg. Az ASP kódok a PHP-hoz hasonlóan dinamikusan építik fel az IIS által szolgáltatott oldalakat. Ezek az oldalak statikus HTML és ASP programkód keverékéből állhatnak. Az ASP.NET ennek a futtatókörnyezetnek a .NET-es megfelelője. Az eredeti ASP-t teljesen újraírták úgy, hogy igyekeztek megtartani a legjobb tulajdonságait. Az ASP.NET egyik újítása, hogy a mögöttes kód szolgáltatással lehetővé teszi, hogy a HTML kimenetet és a programozott eljárást külön állományokba írjuk, ezáltal elválasztható a megjelenítési és az üzleti logika réteg. A .NET nagy előnye a Microsoft háttértámogatása és az erős objektumorientált megközelítés. Hátránya az egyszeri viszonylag nagy költségű befektetés és az operációs rendszerhez kötött futtatási környezet. 11
2.3.3. JAVA A JAVA (J2EE) jelentése a hivatalos honlap7 szerint:
„A Java technológia egy objektumorientált, operációs rendszer független, többszálú programozási környezet. Alapja lehet webes és hálózati szervizeknek, alkalmazásoknak, robotika programozásának és egyéb beágyazott eszközöknek ”. A J a v a nyelvet a Sun Microsystems fejlesztette ki a C++ nyelvből kiindulva, automatizálva a memóriakezelést és egyszerűsítve a pointerkezelést. A .NET-hez hasonlóan a fordítóprogram egy géptől független bájtkódot (.class fájl) generál, melyet a JVM (Java Virtual Machine) értelmez és natív kódra fordít. A teljesítmény itt is növelhető JIT fordítóval. A fejlesztés alapja a JDK (Java Development Kit – Java Fejlesztő Készlet), mely tartalmazza az összes java alapkönyvtárt, parancssori fordítót és futtatót. A Java felépítése, teljesítménybeli tudása, működése és szintaktikája szinte teljesen megegyezik a .NET-ével (Java és C++ nyelvből indultak ki). A lényegi különbségek a Java javára a platform és adatbázis független fejlesztés, valamint az akár ingyenes fejlesztői és futtatói környezet, továbbá a közel 10 éves előny a megjelenés és tapasztalatok terén. Hátrány lehet, hogy bár a Java mögött is számos cég sorakozik fel, de a Microsoft lényegesen tőkeerősebb. A J2SE (alapkönyvtárak, asztali alkalmazásokhoz), J2ME (mobil alkalmazásokhoz) és J2EE (nagyvállalati és szerver oldali fejlesztésekhez) mellett a SUN és egyéb cégek (IBM, The Apache Software Foundation) oldalairól további ingyenesen használható könyvtárak (pl: J3D, Struct, Spring, Hibernate) és fejlesztő eszközök (pl: Eclipse, NetBeans) tölthetőek le. A JSP, JSTL, szervlet, JavaBean és különböző framework -ök használatával a megjelenítési, üzleti logikai és adatkapcsolati réteg teljesen szétválasztható. Így fejlesztésük teljesen különválhat és a későbbiekben ezek a rétegek variálhatók. A .NET-hez hasonlóan főként nagyobb projekteknél alkalmazható sikerrel, de mivel ingyenes alternatívák is vannak operációs rendszer, adatbázis és fejlesztő környezet terén így közepes projekteknél is jól használható. 7
http://www.sun.com/java/about/
12
3.
A téma önálló kidolgozása Ez a fejezet az UML/RUP ismertetése kivételével teljes egészében a saját művem. A
témát két különálló részre osztottam: fejlesztői és felhasználói dokumentáció. A fejlesztői dokumentáció a program készítésének lépéseit mutatja be az UML modellező nyelv és a RUP módszertan segítségével. A felhasználói dokumentáció a program használatához nyújt segítséget.
3.1. Fejlesztői dokumentáció A fejlesztői dokumentációban bemutatom a fejlesztés során használt UML/RUP-ot, valamint a fejlesztés különböző fázisait: előkészítési, kidolgozási, építési és átadási.
3.1.1 Modellező nyelv és módszertan
3.1.1.1
UML
Az UML (Unified Modeling Language, Egységesített Modellező Nyelv) a hivatalos honlap 8 szerint: „… az OMG (Object Management Group) leginkább használt specifikációja, mellyel nem csak az alkalmazások struktúráját, viselkedését és architektúráját modellezhetjük, hanem az üzleti folyamatokat és az adatok struktúráját is.” Más9 megközelítésben: „Grafikus jelölésrendszer a szoftver különböző nézeteinek modellezésére. Segítségével tervezni és dokumentálni tudjuk programjainkat.” Az UML nyelvben a 12 alapdiagram 10 használatával dokumentálhatjuk a fejlesztés egyes szakaszait: 8
http://www.uml.org/ Angster Erzsébet: Objektumorientált tervezés és programozás, 2002, 4Kör Bt., 44.old 10 http://www.omg.org/gettingstarted/what_is_uml.htm#12DiagramTypes 9
13
-
Strukturális diagrammok (statikus): osztály, objektum, komponens, telepítési
-
Viselkedési diagrammok (dinamikus): használati eset, szekvencia, aktivitás, együttműködés, állapot
-
Modell menedzsment diagrammok: csomagok, alrendszerek, modellek
A 12 alapdiagram megléte nem feltétlenül jelenti, hogy mindet (illetve csak ezeket) minden alkalommal használni kell. A legfontosabbak: használati eset, együttműködés (vagy szekvencia), osztály.
3.1.1.2
RUP
A RUP (Rational Unified Process, Rational Egységesített Eljárás) a hivatalos honlap11 szerint: „… szoftverfejlesztési folyamat platform …, mellyel a projekt minden egyes fázisához kiválaszthatók a folyamathoz szükséges komponensek.” A RUP-ot az UP-ból (Unified Process, Egységesített Eljárás) fejlesztette ki a Rational cég, melyet jelenleg az IBM átvett és az ő védjegyük alatt elérhető. Az UP az OMT, Booch és OOSE eljárások egyesítéseként jött létre 1997-ben. Lényege a projektek fázisokra, majd a fázisok folyamatokra bontása. A folyamatok (követelmény feltárás, analízis, tervezés, implementálás, tesztelés) eloszlása minden fázison belül más és más. A fázisok12 (és fő feladatok):
11 12
-
Előkészítési fázis (inception): feladat feltárása, követelmények
-
Kidolgozási fázis (elaboration): tervezés
-
Építési fázis (construction): implementálás
-
Átadási fázis (transition): tesztelés
http://www-306.ibm.com/software/awdtools/rup/ Angster Erzsébet: Objektumorientált tervezés és programozás, 2002, 4Kör Bt., 47-48.old
14
3.1.2 Előkészítési fázis
3.1.2.1
Feladatspecifikáció
A VPR vállalkozók és mikrovállalkozások internetes megjelenését segítő portál rendszer, mely a dinamikus, erőforrás-igényes oldalak és a teljesen statikus oldalak közti űrt próbája áthidalni. A honlapok építése és szerkesztése dinamikus, de a megjelenítés statikus oldalakból áll. Ezáltal a honlapok készítése és karbantartása egyszerű, nem igényel semmilyen szaktudást, az oldalak megjelenítése gyorsabb. Továbbá a projekt célja a kezdeti túlbuzgó, izgő-mozgó honlap tervezési megoldások (ill. ezek hiányának) kiváltása, tekintve a statikus honlapok nagy többségének harmóniamentes megjelenését. A VPR részben vertikális portálként a vállalkozásokkal foglalkozik, részben pedig honlap építőként és tartalomkezelőként működik. Ez utóbbi a hírek, a termékek és az egyéb vállalkozói adatok kezelésén keresztül valósul meg. Az eddigi rendszerek erősen logikus és hierarchikus gondolkodást igényeltek (jellemzően a programozók ilyenek), melyek ugyan rendkívül rugalmasak és sokrétűen beállíthatóak, de használatuk emiatt az emberek többsége részére bonyolult. A legszembetűnőbb különbség az eddigi portál és tartalomkezelő (CMS) rendszerekkel szemben, hogy azok többségben saját szervert igényelnek illetve az „egy vállalkozás - egy portál” elven működnek. A VPR használatával több tucat, esetlegesen több 100 honlap karbantartható. A rendszerben 3 típusú felhasználó van jelen, különböző jogosultságokkal: 1.
rendszergazda (személyes adatok, honlapok és adminisztrátorok menedzselése)
2.
adminisztrátor (személyes, céges és a saját honlapokra vonatkozó adatok menedzselése)
3.
látogató (nincsenek tárolt adatok) A rendszergazda a rendszer teljes ura. Lehetősége van a honlapok és az adminisztrátorok
adatainak kezelésére (hozzáadás, módosítás, törlés). Ő a portál üzemeltetője. A honlapok adminisztrátorai (ügyfelek) pedig a saját honlapjukat (oldalak és sablonok hozzáadása, módosítása) és személyes adataikat menedzselhetik. A vállalkozói (céges) honlapokat az ügyfelek (látogatok) HTML oldalakon keresztül érhetik el.
15
A használathoz (bármely fél részéről) bármilyen szabványos böngészőprogram alkalmas, mivel az oldalak szabványos HTML felületen jelennek meg. A felületnek az átviteli teljesítmény növelése miatt kerülnie kell a nagyméretű objektumok használatát (nagy grafika, hang, videó). A rendszergazda és az ügyfelek böngészőből indítanak egy kérést a szerver felé, amely ezután legenerálja (adatbázisból szerveroldali kódokkal) a kért oldalt, majd továbbítja a kliens felé. A látogatók az ügyfelek által létrehozott céges honlapokat statikus oldalakon láthatják. A létrehozás és módosítás dátuma rögzítésre kerül.
A VPR fő ismérvei: -
(Nagyon) Egyszerű honlap építés és karbantartás
-
Felhasználói modulok (hírek, termékek, letöltések, kedvencek/partnerek linkgyűjtemény)
-
VPR modulok (Felhasználói + fórum, hírlevél, kérdőív, FAQ)
-
Sablonok (különböző megjelenési forma)
-
Többnyelvű kezelő felület (kezdetben magyar)
-
Ingyenes fejlesztői és futtatási környezet
-
GPL verzió is elérhető a későbbiek során
3.1.2.2
Üzleti folyamatok
1. Az ügyfél létrehozza és karbantartja a honlapját és a saját adatait.
2. ábra: Az ügyfél üzleti folyamatai
16
A felhasználó (ügyfél) kérést indít a böngészőből, majd elvégzi az adatai karbantartását. A műveletek a saját honlapjára vagy a saját személyes illetve céges adataira vonatkoznak. A karbantartás után a rendszer véglegesíti a változásokat.
2. A rendszergazda karbantartja a honlapokat és az ügyfelek adatait.
3. ábra: A rendszergazda fő üzleti folyamatai
A felhasználó (rendszergazda) kérést indít a böngészőből, majd elvégzi az adatok karbantartását. A műveletek az ügyfelek honlapjára vagy a felhasználók személyes ill. céges adataira vonatkoznak. A karbantartás után a rendszer véglegesíti a változásokat.
17
3. A rendszergazda karbantartja a portált.
3. ábra: A rendszergazda kiegészítő üzleti folyamatai
A felhasználó (rendszergazda) kérést indít a böngészőből, majd elvégzi a portál adatainak karbantartását. A műveletek a portálra vonatkoznak. A karbantartás után a rendszer véglegesíti a változásokat.
18
3.1.2.3
Szakterületi objektummodell
4. ábra: Szakterületi objektummodell
A rendszer a VPR köré épül. A rendszernek 2 aktív felhasználója van: a rendszergazda és az ügyfelek. A látogatók csak minimálisan, közvetett módon használják a rendszer adta lehetőségeket, beavatkozni nem tudnak. A VPR a permanens adattárolást adatbázis használatával oldja meg. A főrendszer tovább bontható 3 alrendszerre. Ezek: felhasználó kezelő, portál kezelő és honlap kezelő. A felhasználó kezelőben regisztrálhatnak, módosíthatják az adataikat a felhasználók. A beléptető rendszeren keresztül léphetnek be a rendszerbe és léphetnek ki onnan. Ez a rendszer tartalmazza a felhasználók adatainak elérését. A portál kezelőn keresztül aktiválhatók és módosíthatók az elérhető portálmodulok. A honlap kezelőn keresztül hozhatók létre az ügyfél honlapok és aktiválhatók az azokhoz tartozó modulok.
3.1.2.4
Fogalomgyűjtemény
Üzleti (Business): Portál: 19
A "Webopedia" nevű internetes enciklopédia [*szám] megfogalmazása szerint: "A portál egy olyan webhely, amely széles körű erőforrásokat és szolgáltatásokat tesz elérhetővé, mint például e-mail, fórumok, kereső, online bolt, stb." Horizontális portál [http://pcforum.hu]: Témák sokaságával foglalkozó, "populáris" portál, amelyet az emberek általában napi rendszerességgel látogatnak. A horizontális portálok egy-egy témában a vertikális portáloknál jóval kevesebb, és általában jóval kevésbé megbízható információkat kínálnak. (pl: http://index.hu, http://origo.hu) Vertikális portál [http://pcforum.hu]: Szigorúan egy adott témával, vagy emberek egy csoportjával foglalkozó portál. A vertikális portálok horizontális társaiknál az adott témával jóval behatóbban foglalkoznak, és ebből adódóan általában szűkebb közönséghez szólnak.A vertikális portálokat az emberek csak alkalmi jelleggel, akkor keresik fel, ha az adott témával kapcsolatos információra van szükségük. (pl: http://prog.hu, http://pcforum.hu) Tartalomkezelő rendszer [http://pcforum.hu]: Különböző tartalmak rendezett tárolására, megjelenítésére és visszakeresésére használható szoftverrendszer. A CMS (Content Management System) fogalom leggyakrabban a web-bel kapcsolatosan merül fel, ahol gyakorlatilag a különböző portálokat - az azok által kínál funkciókat, illetve maga a portál webes megjelenítését biztosító - szoftvert szokás érteni alatta. [http://www.xpedient.hu/prg/szakmai+szotar.php]: Általában kevés szaktudást igénylő internetes alkalmazás, mely lehetővé teszi, hogy szinte bárki összetett weboldalt birtokoljon. Az alkalmazás jellegéből adódóan a weboldal rövid idő alatt összeáll, programozási tudást nem vagy egészen keveset igényel. Honlap (http://home.iae.nl/users/nickl/mikrosz.html): „… nemzetközi URL-címmel rendelkező információs lelőhely bemutatkozó oldala a Világhálón.”
20
„… a honlap alatt egy olyan névjegytartalmú főoldalt értünk, mely mögött több-kevesebb weboldal húzódhat meg, utalásokkal, további címláncokkal, olykor terjedelmes multimédiás adatbázissal, sok eredeti információval.” Statikus [http://pcforum.hu]: Jelző olyan elemek és tartalmak leírására, amelyek állapota hosszú időn keresztül változatlan marad, és általában csak kifejezett erre irányuló emberi beavatkozás során módosulnak. Dinamikus [http://pcforum.hu]: Jelző olyan elemek és tartalmak leírására, amelyek állapota folyamatosan változik vagy változhat különböző bemeneti adatok vagy az idő függvényében. Sablon (template) [http://pcforum.hu]: Dokumentumok vagy adathalmazok alapszerkezetét leíró, azok példányosítása során felhasznált struktúra. Menü [http://pcforum.hu]: A szoftver által végezhető műveleteket listázó beviteli elem. A menük feleslegessé teszik a szöveges parancsok megjegyzését, hiszen alkalmazásukkor a felhasználónak mindössze egy listából kell kiválasztania, hogy pontosan melyik műveletet kívánja következőnek végrehajtani. Banner [http://pcforum.hu]: Weboldalakba ágyazott, különböző hirdetési információkat tartalmazó téglalap alakú grafika vagy animáció. A reklámcsíkok régebben animált GIF állományok voltak, mostanában azonban már inkább a jóval több lehetőséget biztosító Flash (Macromedia - *.swf) eszközökkel készülnek. Logo: Embléma. Cégek esetében márkajelzés is lehet.
21
Statisztika (report): A portálról és az ügyfél honlapokról bizonyos információk nyerhetők tulajdonságlista formájában. Ilyen adatok pl: látogatottság, honlapok száma, ügyfelek száma, stb. Fórum [http://origo.hu]: „A Fórum egy olyan online közösségi tér, ahol mindenki kifejtheti véleményét az őt érdeklő témákról…” Topik [http://origo.hu]: "Topik"-nak hívunk egy-egy konkrét, valamely felhasználó által felkínált vitát, témakört.
Moderátor [http://origo.hu]: „A moderátoroknak ugyanakkor joguk van egyes üzenetek, vagy szükség esetén egész topikok törlésére, vagy lezárására, a vita befejezettnek nyilvánítására, amennyiben az ütközik az alapelvekben megfogalmazottakkal …” Szerver-kliens [http://pcforum.hu]: Olyan architektúra, amelyen a kommunikációban résztvevő két fél nem egyenrangú módon vesz részt, hanem dedikált szerepeket (szerver illetve kliens) töltenek be. A jellemzően a kliens kezdeményezi, mégpedig azzal a céllal, hogy valamilyen műveletet vagy lekérdezést végeztessen el a szerverrel. A szerver a kérést megkapva elvégzi a megfelelő lépéseket, majd az eredményt a kliens felé továbbítja. Bár az adatok a kommunikáció során értelemszerűen mindkét irányban áramolhatnak, a műveleteket elvégzését mindig a kliens kezdeményezi, és mindig a szerver hajtja végre - ennek megfordítására nincs mód. Azokat az architektúrákat, amelyekben mindkét fél kölcsönösen kezdeményezheti művelet végrehajtását a másikon, egyenrangúnak szokás hívni. Modul [http://pcforum.hu]: Egy adott szoftverbe vagy hardverbe opcionálisan beépíthető, annak képességeit bővítő vagy módosító kiegészítő.
22
Technikai (Technical): Adatbázis [http://pcforum.hu]: Adatok egy vagy több szempont szerint rendezett gyűjteménye. SQL [http://www.rovidites.hu]: structured query language - strukturált lekérdezőnyelv Számítógépes adatbázisokban való kereséshez kifejlesztett szabványos parancsnyelv. A legtöbb nagy adatbáziskezelő érti, de mivel az emberek számára elég nehezen megjegyezhető parancsokat tartalmaz, rendszerint elrejtik egy barátságosabb felhasználói felület mögé, vagy különböző rendszerek közötti közvetítőnyelvként használják. MVC [http://www.infopen.hu/archivum/99/99012/muhely3.htm]: Model (modell) – View (nézet) – Controller (vezérlő) architektúra, a különböző rétegek szétválasztására. Példa (JAVA nyelven, webes alkalmazáson keresztül bemutatva): „A felhasználó kitölt egy HTML űrlapot, és a Submit (benyújt) gombra kattint, ami a kérést egy Java vezérlőnek (a Controllernek) postázza. A servlet leolvassa a bemeneti paramétereket, és továbbadja az EJB-knek (a Model), amelyek végrehajtják az elvégzendő feladat logikáját. Az elvégzendő feladat logikájának eredményétől és a felhasználói profiltól függően a servlet kiválaszt egy JSP-t (a View), és hívja, hogy bemutassa az eredményeket. A JSP kiveszi az eredményeket az EJB-kből, és egyesíti az eredetileg átadott HTML űrlappal, amit azután visszaküld a felhasználónak.” XML [http://pcforum.hu]: A W3C által kidolgozott, az SGML-en alapuló HTML-hez hasonló, de annál (…) szigorúbb szabályokkal rendelkező, adatok és metaadatok ábrázolására alkalmas leírónyelv. Az XML-t elsősorban platformok közötti adatcserére alakították ki, de napjainkban már számtalan
23
specifikus változata is létezik, például a web - é s W A P -oldalak megjelenítésének szabályozására is. Properties fájl: Statikus adattárolásra (főként beállítások, elemek nyelvi megfelelője) használt szöveges állomány (pl. beallitasok.propreties).
3.1.2.5
Követelmény leírás
Funkcionális (felhasználói): -
A felhasználói (ügyfél, rendszergazda) adatok kezelése : Minden regisztrált felhasználó láthatja / megváltoztathatja a személyes és céges adatait (kivéve azonosító/email változtatása). A rendszergazda bármely felhasználó, bármely adatát láthatja / megváltoztathatja / törölheti (a jelszavak nem láthatóak). A felhasználói adatok a következőket tartalmazzák: név, cím, telefonszám, email, jelszó, hírlevélre feliratkozva. Csak a rendszergazda számára látható felhasználói adatok: regisztráció dátuma, utolsó bejelentkezés dátuma, aktív, felhasználó típusa.
-
Az ügyfél -honlapok adataina k k e z e l é s e : Minden felhasználó láthatja / megváltoztathatja / törölheti a saját honlapjának adatait. A rendszergazda bármely felhasználó, bármely adatát láthatja / megváltoztathatja / törölheti. A honlap adatai tartalmazzák: név, banner felirata, alapértelmezett sablon, webmaster email, aktív.
-
A portál adatainak kezelése: A rendszergazda karbantartja a portált. Feltölti tartalommal, moderálja a fórumot. A portál adatait tetszőlegesen módosíthatja (néhány adat csak szöveges properties vagy xml fájlokon keresztül érhető el). A látogatók csak olvashatnak illetve regisztrálhatnak, de az ügyfelek (regisztrált látogató) beléphetnek és a fórumon topikot nyithatnak vagy válaszolhatnak. A portál adatai: modulok listája. Minden modulnak van aktív beállítása (későbbiekben kerül kidolgozásra). A további adatok egyediek (szakterületi követelményeknél).
24
Nem funkcionális (technikai): -
a rendszer lásson el 100-1000 honlapot (napi 1000-50000 statikus és 100-5000 dinamikus lapletöltés)
-
a rendszer legyen többnyelvű (kidolgozva csak a magyar) és egyszerűen bővíthető további nyelvekkel
-
a rendszer legyen operációs rendszer független (a lehető legnagyobb mértékben)
-
a rendszer tervezése UML / RUP szerint történjen, az MVC elvek figyelembe vételével
-
a rendszer legyen biztonságossá alakítható (https / SSL)
-
a rendszer ingyenes futtatási környezetben is működjön (esetleg ingyenes fejlesztői)
-
a rendszert futtató szerver gyengébb / olcsóbb (500Mhz, 256MB ~ 20eFt) típus is lehet, a kliens gép pedig „bármilyen” teljesítményű lehet (min. 200Mhz, 64MB ~ 5eFt)
-
a rendszer tartalmazzon 5-10 referencia oldalt
-
a rendszer kezelje az egyedi felhasználói jogosultságokat
-
feltöltésnél a jsp és jspx fájlok tiltása
Szakterületi (VPR, portál): A portál tartalmazza: -
Felhasználói modulok: hírek, termékek, letöltések, kedvencek, elérhetőség (cégadatok)
-
VPR modulok: fórum, hírlevél, szavazás, FAQ
Modulok részletezése: (A modulok alatti képek csak illusztrációk!) 1. Hírek: A felhasználó (rendszergazda-portál, ügyfél-saját honlap) megadja a hír címét és a hír teljes szövegét. Ezután a hírek menüpont alatt a hírek oldal tetején (legfrissebb) megjelenik a hír címe, teljes szövege és a létrehozás dátuma.
25
5. ábra Hírek - http://www.opencms.org
2. Termékek: A felhasználó (rendszergazda-portál, ügyfél-saját honlap) megadja a termék nevét, típusát (kategória), rövid leírását, teljes leírását, képét a termékről, az árát és az áfa kulcsot. Ezután a termékek menüpont alatt a termékek listáját a rendszer táblázat formájában ábrázolja és a termék neve mellett - a megjelenítésre kattintva megmutatja a termék teljes leírását.
6. ábra Terméklista - http://depo.hu
26
7. ábra Termék részletei - http://depo.hu
3. Letöltések: A felhasználó (rendszergazda-portál, ügyfél-saját honlap) megadja a letölthető fájlt (feltöltés, max. méret: 5MB!!!). Ezután a letöltések menüpont alatt a letöltések listáját a rendszer táblázat formájában ábrázolja (fájlnév, feltöltés dátuma, típusa, mérete) és a letöltendő neve mellett - a letöltésre kattintva – elindul a fájl letöltése. Későbbiekben : A publikus fájlokat bárki letöltheti, a „saját használatra” szánt fájlokat csak a feltöltőjük. A letölthető fájlok mérete nem haladhatja meg a diskquotát.
8. ábra Letöltés - http://www.opencms.org
27
4. Kedvencek: A felhasználó (rendszergazda-portál, ügyfél-saját honlap) megadja a kedvenc linkjeinek (akár partnerek) a nevét és az URL-t. A létrehozott linkekre kattintva a látogatók az ügyfél kedvencei / partnerei oldalára juthatnak.
9. ábra Kedvencek, partnerek - http://origo.hu
28
5. Elérhetőség: A személyes és céginformációk (vagy tetszőleges) alapján a felhasználó beállíthatja / használhatja az elérhetőség oldalt a menüben. Ekkor néhány információ megadásával egy teljes céginformáció oldal hozható létre.
10. ábra Elérhetőség: http://www.origo.hu
6. Fórum: E z a m o d u l csak a portálban létezik, az ügyfél honlapján nincs. A rendszergazda a moderátor, aki törölheti a megadott (nem megfelelő) topic-okat és válaszokat. Az ügyfelek a regisztrált fórumtagok, akik olvashatják és írhatnak is a fórumba. A látogatók csak olvashatják a fórumot. Egy látogató nem regisztrálhatja magát pusztán fórumtagnak, hanem csak ügyfélnek (teljes portál tagság).
11. ábra Fórum, topikok - http://origo.hu
29
12. ábra Fórum, válaszok - http://origo.hu
7. Hírlevél: E z a m o d u l csak a portálban létezik, az ügyfél honlapján nincs. A rendszergazda hírlevelet (automatikus levél bizonyos időközönként továbbítva az ügyfelek felé) hozhat létre. Beállíthatja a hírlevél címét, szövegét, (első) küldési időpontját. A hírlevélre feliratkozott felhasználóknak megy a hírlveél. Későbbiekben: Különböző szűrési feltételek mellett, különböző felhasználóknak címezheti a leveleket.
13. ábra Hírlevél - http://www.prog.hu
30
8. Szavazás: E z a m o d u l csak a portálban létezik, az ügyfél honlapján nincs. A rendszergazda létrehozhat szavazási modult, melyben a feltett kérdésre néhány (min. 2) alternatíva közül választhatnak az ügyfelek (pl.: Milyen az új portál? 1. jó, 2. átlagos, 3. rossz). Az eredményeket a rendszer rögzíti, ezek később megtekinthetőek Későbbiekben : Egy ügyfél egy szavazásban csak egyszer vehet részt.
14. ábra Szavazás - http://origo.hu
31
9. FAQ: Frequently Asked Questions - Gyakran Ismételt Kérdések (GYIK). Ez a modul csak a portálban létezik, az ügyfél honlapján nincs. A hírekhez hasonlóan működő modul. Tartalmazza a legtöbbször felmerülő kérdések listáját és a válaszokat.
15. ábra FAQ - http://www.prog.hu
Nem követelmények: -
felhasználói regisztráció utáni levélküldés és visszaigazolás
-
elfelejtett jelszó kérése és küldése levélben
-
teljesen egyforma megjelenés a különböző típusú böngészőkben (elég ha nincs jelentős eltérés)
-
a rendszer nem tartalmazza: webshop (csak terméklista), fizetési rendszer, nyomtatás, web-es levelezési felület, sablon- és képkezelő
-
a hozzáadás (INSERT) és módosítás (UPDATE) műveletek utáni köztes oldal (vagy átirányítás) alkalmazása (törlésnél megvan), az oldalfrissítések (reload) alkalmazásából adódó ismétlődések kiküszöbölése.
-
a szöveges részek hosszának 255 karakternél nagyobbra növelése
32
-
felhasználók szűrése IP vagy felhasználónév alapján a szavazásnál (mindenki akár többször is szavazhat)
-
feltöltésnél folyamatjelző (progress bar) használata
-
cikkek modul
-
service réteg beiktatása Az összevont feladatok (pl: felhasználó törlése – cég t. + honlap t. + honlap elemeinek törlése) a különböző megjelenítésektől (pl: web, alkalmazás, wap) függetlenítése.
Alapvető felhasználói interfész leírások
16. ábra A portál felépítésének váza
17. ábra A portál felépítése
33
3.1.3 Kidolgozási fázis
3.1.3.1
Használati esetek
A rendszer aktorai:
18. ábra A rendszer aktorai
A rendszerben szereplő 3 fő actor van, melyek a Felhasználó osztályból származtathatók. A rendszergazda végzi a rendszerrel kapcsolatos karbantartási műveleteket. A teljes rendszerhez hozzáfér, bármely funkciót végrehajthat. Alapértelmezett, üres rendszerben is jelenlévő, regisztrált felhasználó. Az ügyfél (administrator) a saját adatai kezelését végezheti el. Ezek az adatok a személyes, céges és a saját honlappal kapcsolatos adatok. Regisztrált felhasználó. A látogató böngészheti a portál és az ügyfelek oldalait, de beavatkozni nem tud. Nem regisztrált felhasználó, de regisztrálhat (látogató Æ
34
ügyfél).
A rendszer architektúráját meghatározó, kulcsfontosságú használati esetek
A rendszer funkcionálisan 3 nagy blokkra oszlik. Ezek a felhasználók karbantartása, a honlapok karbantartása és a portál karbantartása.
19. ábra A fő használati esetek
A Felhasználói adatok karbantartása: A rendszergazda bármely felhasználó adatait karbantarthatja, az ügyfél csak a sajátjait. Regisztráció és belépés szükséges a funkció használatához. A Portál adatainak karbantartása: A rendszergazda karbantartja a portált. Belépés szükséges a funkció használatához. A Honlap adatainak karbantartása: A rendszergazda bármely honlap adatait karbantarthatja, az ügyfél csak a sajátjait. Regisztráció és belépés szükséges a funkció használatához.
35
A honlapok megtekintése és keresése: E két funkció használatához nem szükséges belépni, így bármely felhasználó által használható funkciók. A létrehozott honlapok a sites mappában érhetők el. Regisztráció: A rendszerbe való belépéshez regisztráció szükséges. Bizonyos funkciók csak így érhetők el. A látogatókból ügyfelek lehetnek, ha regisztrálnak. A regisztráció a személyes adatok megadásával történik. A rendszergazda által elérhető funkciók:
20. ábra A rendszergazda által elérhető funkciók
A rendszergazda a rendszer bármely funkcióját elérheti. A felhasználók, a honlapok és a portál karbantartásához be kell lépnie. A honlapok megtekintése és a portálon való kereséshez nem szükséges a belépés.
36
A rendszergazda karbantartja a felhasználói adatokat:
21. ábra A rendszergazda karbantartja a felhasználókat
A karbantartás magába foglalja a felhasználó hozzáadását, adatainak módosítását, törlését és a keresést. A rendszergazda karbantartja a honlapokat:
22. ábra A rendszergazda karbantartja a honlapokat
A karbantartás magába foglalja a honlapok hozzáadását, adatainak módosítását és törlését.
37
A rendszergazda karbantartja a portált:
23. ábra A rendszergazda karbantartja a portált
A karbantartás ebben az esetben csak a portál adatainak módosítását jelenti. A portált törölni vagy új portált hozzáadni nem lehet. Az ügyfelek által elérhető funkciók:
24. ábra Az ügyfél által elérhető funkciók
Az ügyfelek (adminisztrátor) a rendszer hozzájuk kapcsolódó funkcióit elérhetik el. A saját felhasználói adatok és a saját honlap adatainak karbantartásához be kell lépnie. A honlapok megtekintése és a portálon való kereséshez nem szükséges a belépés. 38
Az ügyfél karbantartja saját felhasználói adatait:
25. ábra Az ügyfél karbantartja a személyes adatait
Az ügyfél belépés után módosíthatja személyes és céges adatait. Saját profilját is törölheti. A profil hozzáadása a regisztrációval történik. Egy már regisztrált ügyfél is regisztrálhat, de csak belépés előtt. A honlapok megtekintéséhez nem kell belépnie.
26. ábra Saját adatok részletezése
A regisztrált felhasználó a saját adatai közül bármelyiket megváltoztathatja. A rendszergazda nem láthatja az ügyfelek jelszavait, csak megváltoztatni tudja azt.
39
Az ügyfél karbantartja saját honlapja(i) adatait:
27. ábra Az ügyfél karbantartja a honlapjait
Az ügyfél belépés után létrehozhat honlapokat, módosíthatja azok tartalmát, törölheti azokat a rendszerből. Egy ügyfél bármennyi honlapot létrehozhat. A honlapok megtekintéséhez nem kell belépnie.
40
.A látogatók által elérhető funkciók:
28. ábra A látogató által elérhető funkciók
A látogató nem tud aktívan beavatkozni a rendszerbe. 3 funkció elérhető számára: a honlapok megtekintése (böngészés), a portál használata és a regisztráció (látogató Æ
ügyfél). A portál
használatával elérhetők a letöltések, a keresés, a hírek, a fórum (olvasás) és a szavazás.
41
3.1.3.2
Fontosabb aktivitások
Felhasználó (vagy honlap) hozzáadása – Regisztráció Leírás: A portált látogatók a portál bizonyos funkcióinak eléréséhez regisztrálják magukat a rendszerben. A regisztráció a személyes vagy /és céges adatok megadásával történik. Aktorok: látogató, ügyfél, rendszergazda Előfeltételek: a portál látogatása Folyamat: 1. A felhasználó a regisztrációra kattint 2. A felhasználó kitölti a regisztrációs űrlapot 3. A felhasználó elküldi a regisztrációs űrlapot 4. A rendszer ellenőrzi a felhasználó által küldött adatokat 5. A rendszerben új felhasználói profil jön létre a felhasználónak 6. A rendszer visszajelez a felhasználónak és belépteti Megszakított folyamat: 1. A felhasználó nem tölti ki az űrlapot, a rendszer hibaüzenetet küld 2. A felhasználó rossz adatokat ad meg (pl.: hibás email cím), a rendszer hibaüzenetet küld, a felhasználó javít
29.ábra: A regisztráció folyamata
42
Felhasználó belépése a rendszerbe – Belépés Leírás: A portált látogatók a portál bizonyos funkcióinak eléréséhez be kell lépjenek a rendszerbe. A belépés a felhasználónév (email cím) és a jelszó megadásával történik. Aktorok: ügyfél, rendszergazda Előfeltételek: regisztráció Folyamat: 1. A felhasználó a belépésre kattint 2. A felhasználó kitölti a belépési űrlapot 3. A felhasználó elküldi a belépési űrlapot 4. A rendszer ellenőrzi a felhasználó által küldött adatokat 5. A felhasználó sikeresen belépett 6. A rendszer visszajelez a felhasználónak Megszakított folyamat: 1. A felhasználó nem tölti ki az űrlapot, a rendszer hibaüzenetet küld 2. A felhasználó rossz adatokat ad meg (pl.: hibás email cím), a rendszer hibaüzenetet küld, a felhasználó javít
30.ábra: A belépés folyamata
43
Felhasználói adatok (bármely adatra: honlap, portál) módosítása – Módosítás Leírás: A regisztrált felhasználók a belépés után megváltoztathatják adataikat (személyes, céges, honlap). A módosítás a megváltozott adatok megadásával (a régi adatok javításával) történik. Aktorok: ügyfél, rendszergazda Előfeltételek: (regisztráció,) belépés Folyamat: 1. A felhasználó a megnézi az adatait, majd a módosításra kattint 2. A felhasználó módosítja az adatait az űrlapon 3. A felhasználó elküldi az űrlapot 4. A rendszer ellenőrzi a felhasználó által küldött adatokat 5. A felhasználó adatai mentésre kerültek 6. A rendszer visszajelez a felhasználónak Megszakított folyamat: 1. A felhasználó nem tölti ki az űrlapot, a rendszer hibaüzenetet küld 2. A felhasználó rossz adatokat ad meg (pl.: hibás email cím), a rendszer hibaüzenetet küld, a felhasználó javít 3. A rendszer bizonyos esetekben (pl: adatbázis hiba) nem tudja végrehajtani a kért tranzakciót. Ekkor hibaüzenet küld a felhasználó felé.
31.ábra: A módosítás folyamata
44
Felhasználó törlése Leírás: A felhasználó saját profilját törölheti (a rendszergazda mindenkiét, csak a sajátját nem). A törlés az adatoknál a profil törlésére kattintva történik. Aktorok: ügyfél, rendszergazda Előfeltételek: (regisztráció,) belépés Folyamat: 1. A felhasználó a törlésre kattint 2. A felhasználó megerősíti a törlést 3. A rendszer ellenőrzi a felhasználó által küldött adatokat 4. A rendszer törli a profilt és kilépteti a felhasználót. 5. A rendszer visszajelez a felhasználónak Megszakított folyamat: 1. A felhasználó nem erősíti meg a törlést, a rendszer nem töröl. 2. A felhasználó rossz adatokat ad meg, a rendszer hibaüzenetet küld.
32.ábra: A törlés folyamata
45
Portál keresése – Keresés Leírás: A felhasználók az adatok között kereshetnek (FAQ, fórum). A keresés a keresett adat(ok) megadásával történik. Aktorok: látogató, ügyfél, rendszergazda Előfeltételek: a portál látogatása Folyamat: 1. 2. 3. 4. 5. 6.
A felhasználó a keresésre kattint A felhasználó beírja / kiválasztja a keresendő adatot az űrlapon A felhasználó elküldi az űrlapot A rendszer ellenőrzi a felhasználó által küldött adatokat A rendszer kilistázza a találatokat A rendszer visszajelez a felhasználónak
Megszakított folyamat: 3. A felhasználó nem tölti ki az űrlapot, a rendszer hibaüzenetet küld
33.ábra: A keresés folyamata
Az adatok megtekintése az egyszerű folyamat miatt nem kerül bemutatásra.
46
3.1.3.3
Csomagok
A rendszer fő funkciói szerint 3 fő részre bontható: felhasználó-, portál- és honlap kezelés. A folyamatok leegyszerűsítve mindhárom esetben ugyanazok: a felhasználók egy grafikus felületen keresztül kérdeznek le, hozzáadnak, módosítanak és törölnek adatokat az adatbázisból. A működés szemléltetéséhe z e lsőké nt a te lje s r e ndsz e r c soma g é s osztálydiagramja kerül megtervezésre. Majd egy prototípus készül, melyben a teljes felhasználó kezelés kerül megvalósításra (tervezés + implementálás). A rendszertervet a kiválasztott nyelv sajátosságai, keretrendszerek alkalmazása és azok maximális kihasználása érdekében a későbbiekben egy adott nyelvre kell optimalizálni (építési fázis). A tervezés jelenlegi fázisában a rendszerterv a később használt programozási nyelvtől függetlenül készül, de megköveteli az OO meglétét.
34.ábra: A rendszerben használt csomagok
35.ábra: Alcsomagok
47
A csomagok tartalma: hu.mlaci.vpr.web: A vezérlő osztályokat tartalmazó csomag. Ezek az osztályok végzik a HTML lapokról érkező kérések feldolgozását, majd az eredmények megadott lapra továbbítását. Használja a db, bus és util csomagokat. hu.mlaci.vpr.db: Az adatbázis hozzáféréseket végző osztályokat tartalmazó csomag (xxxDao interfészek). Használja a bus és util csomagokat. hu.mlaci.vpr.db.daoimpl: A xxxDao interfészek metódusait megvalósító osztályokat (xxxDaoImpl) tartalmazza. hu.mlaci.vpr.bus: Az üzleti logikát (logic csomag) illetve az adatok átmeneti tárolását végző osztályokat tartalmazza. hu.mlaci.vpr.util: Az esetlegesen felmerülő segédosztályokat tartalmazza (pl: karakterkódolás, email, stb). hu.mlaci.vpr.test: Az automatizált teszteléshez szükséges osztályokat tartalmazza.
48
3.1.3.4
Logikai adatbázisterv
36. ábra: Az adatbázis logikai terve
A kiindulási pont a felhasználó (user) tábla, melynek kapcsolata van (egy-több) a cég (firm) táblával. Így egy felhasználónak több cége lehet. A cég további kapcsolatban (egy-egy) van a honlap (site) táblával, mely szerint egy céghez egy honlap tartozhat. A honlap azonosítója lehetne a cég azonosítója, de a bővítésre gondolva (egy-több) van honlap azonosító is. Az adatbázis tervezésénél a telefonszám és email címek további táblákban is megoldhatók lettek volna (sőt szinte szükségszerű lenne), de ezen alapverzióban ezek szándékosan nem szerepelnek. A honlap kapcsolatban (egy-több) van a termék (product), a kedvenc (favorite), a download (letöltés) és a hírek táblákkal, továbbá a sablon (template)
49
táblával (több-egy). A termék (product) és az adókulcs több-egy kapcsolatban van, mert egy adókulcshoz több termék is tartozhat. A felhasználó (user) tábla kapcsolatban (egy-több) áll a topik (topic) és a hozzászólás (forumpost) táblákkal. Valamint a topik is kapcsolatban (több-egy) van a fórum (forum) táblával. A fórum táblái a portálhoz tartoznak, de mivel csak egy portál van így nincs közvetlen kapcsolat. A szavazás (poll) és a szavazásválasz egy-több kapcsolatban van, mert egy szavazáshoz több válasz is tartozhat.
Az adatbázis táblák részletezése (barackszín, sötét – elsődleges kulcs; sárga, világos – külső kulcs) Tábla: country Magyarázat: Országok
Mezők: Név Leírás countryId Az ország azonosítója name Az ország neve
Tábla: download Magyarázat: Letöltések
Mezők: Név Leírás downloadId A letöltés azonosítója siteId A honlap azonosítója fileName A fájl adott neve realFileName A fájl igazi neve size Méret description Leírás
Tábla: faq Magyarázat: FAQ
Mezők: Név faqId
Leírás A FAQ azonosítója
question Kérdés answer Válasz
50
Tábla: favorite Magyarázat: Kedvencek, Partnerek
Mezők: Név favoriteId siteId name url description
Leírás A kedvenc azonosítója A honlap azonosítója Név Hivatkozás Leírás
Tábla: firm Magyarázat: Cégek
Mezők: Név Leírás firmId A cég azonosítója firmName A cég neve email A felhasználó azonosítója countryId Az ország azonosítója zip Irányítószám city Város address Cím phoneNr Telefonszám
Tábla: forum Magyarázat: Fórum adatai
Mezők: Név Leírás forumId A fórum azonosítója topicPerPage Topikok száma oldalanként maxTopic Maximális topikszám a fórumban
Tábla: forumpost Magyarázat: Fórum válasz
Mezők: Név Leírás forumPostId A hozzászólás azonosító email A hozzászóló (felhasználó) azonosítója topicId A tartalmazó topik azonosítója post A hozzászólás szövege
51
Tábla: news Magyarázat: Hírek
Mezők: Név newsId siteId title newsBody
Leírás A hír azonosítója A honlap azonosítója A hír címe A hír szövege
Tábla: newspaper Magyarázat: Hírlevél
Mezők: Név newsPaperId title newsPaperBody sendDate
Leírás A hírlevél azonosítója Cím Szöveg A küldés dátuma
Tábla: poll Magyarázat: Szavazás
Mezők: Név Leírás pollId A szavazás azonosítója pollQuestion Kérdés
Tábla: pollanswer Magyarázat: Szavazás válasz
Mezők: Név
Leírás
pollAnswerId A szavazásválasz azonosítója pollId
A szavazás azonosítója
pollAnswer
Válasz
pollNr
A kapott szavazatok száma
52
Tábla: product Magyarázat: Termékek
Mezők: Név productId siteId taxRateId name price description
Leírás A termék azonosítója A honlap azonosítója A adókulcs azomosítója A termék neve Ár Leírás
Tábla: site Magyarázat: Honlapok
Mezők: Név Leírás siteId A honlap azonosítója firmId A cég azonosítója templateName A sablon neve name A honlap neve description Leírás bannerTitle A banner felirata copyright A copyright felirat webmaster A webmester emailcíme
Tábla: taxrate Magyarázat: Adókulcs
Mezők: Név Leírás taxRateId Az adókulcs azonosítója taxRate Adókulcs
Tábla: template Magyarázat: Sablonok
Mezők: Név Leírás templateName A sablon azonosítója (neve) cssPath A sablon css fájl elérési útja
53
Tábla: topic Magyarázat: Topikok
Mezők: Név Leírás topicId A topik azonosítója email A létrehozó (felhasználó) azonosítója forumId A tartalmazó fórum azonosítója title A topik címe createDate A létrehozás időpontja lastModDate A utolsó hozzászólás időpontja
Tábla: user Magyarázat: Felhasználók
Mezők: Név Leírás email A felhasználó azonosítója userTypeId A felhasználó típusa password Jelszó lastName Vezetéknév firstName Keresztnév countryId Az ország azonosítója zip Irányítószám city Város address Cím phoneNr Telefonszám
Tábla: usertype Magyarázat: Felhasználók típusa
Mezők: Név Leírás userTypeId A felhasználó típusának azonosítója name A felhasználó típusa
54
3.1.4 Építési fázis
3.1.4.1
Fizikai adatbázisterv
37. ábra: Az adatbázis fizikai terve
55
A kapcsolatot összekötő rombusz fehér oldala az “egy”, a fekete a “több” kapcsolatot mutatja. Az adatbázisban található szöveges részek (pl: description, question, answer, post) mérete 255 karakter hosszúságúra van korlátozva az alapverzióban. Ennek mérete optimálisan nagyobb kellene legyen (pl: text formátum). A táblákban lévő “active” mező jelentőssége csak a továbbfejlesztés után jön elő. Néhány tábla a létrehozás dátumával (createDate) és indexekkel (további kiegészítéseket igényelne az adatbázisműveleknek megfelelően) is ki lett egyészítve. Az adatbázis és teljes kapcsolatrendszere a mellékletben (E) található.
3.1.4.2
Rendszerterv
A 2. fejezetben a programozási nyelvek összehasonlítása után és a követelményeket figyelembe véve az objektumorientált megközelítés, az ingyenes fejlesztői és futtatói környezet, a stabilitás és a továbbfejleszthetőség miatt a választásom a JAVA nyelvre esett. A megvalósítás során igyekeztem a nyelvhez használható legújabb és legjobban használható kiegészítőket és keretrendszereket kiválasztani. Az elsődleges cél a különböző logikai rétegek teljes szétválasztása volt. Ezen rétegek: -
megjelenítési (presentation)
-
üzleti modell és logika (business)
-
adatkapcsolati (data)
Megjelenítési réteg: Ez a réteg végzi a beviteli (form) é s kimeneti (eredmény dinamikus adatokkal) felület megjelenítését és az ezt vezérlő osztályokat (controller). A vezérlők feldolgozzák a HTML és JSP lapokról érkező adatokat, majd az üzleti réteg segítségével módosításokat végeznek rajta vagy adatokat írnak/olvasnak az adatbázisból. Ezután továbbítják a kapott eredmény a JSP lapokra. Az MVC elv szerint itt található a „view” réteg a JSP és HTML lapok formájában, és a „controller” a vezérlő osztályok formájában. Üzleti réteg: A contollerek használják az adatok átmeneti tárolására (model: entity bean) vagy a beviteli adatok feldolgozásásra (logic: pl.validation). Ez a réteg segítségével a beviteli mezőkről érkező adatok átmenetileg tárolódnak, majd ezekből kiolvasva az adatkapcsolati réteg
56
közreműködésével az adatbázisba kerülnek. Az MVC elv szerint itt található a „model” réteg az entity bean-ek és a validation bean-ek formájában. Adatkapcsolati réteg: Ez a réteg az adatbázis műveleteket végzi. Használja az üzleti réteg entitás osztályait az adatbázis adatok átmeneti tárolására. Az MVC elv szerint itt is megtalálható a „model” réteg az adatkapcsolati osztályok formájában.
38. ábra: A rendszer logikai rétegei13
39. ábra: Az MVC modell 14 a Spring15 keretrendszerekben
Az xml fájlok a rendszer Spring keretrendszeren keresztüli beállításait tartalmazzák. 13
http://www.onjava.com/pub/a/onjava/excerpt/BFLJava_chap8/index.html http://www.onjava.com/lpt/a/4976 15 http://www.springframework.org/ 14
57
3.1.4.3
Osztályok
Felhasználókezelés: Alaposztályok: x
UserController: A dinamikus (JSP, ASP, PHP) és a statikus (HTML) lapoktól érkező kérések feldolgozását végzi, kivéve a FORM-ok. A feldolgozás után visszaadja a megadott lapot. x
UserDao: Kapcsolat a UserDaoImpl osztály és a külső osztályok közöt t. Az adatbázis kapcsolatot megvalósító osztály interfésze. Az általa tartalmazott metódusok segítségével érhető el az adatbázis. x
UserDaoImpl: A UserDao interfész metódusait megvalósító osztály. x
User: Az adatbázisban található user tábla és a FORM-okról feldolgozott adatokat átmenetileg tartalmazó osztály. x
UserValidator: A FORM-okról (regisztráció, adatok módosítása) beolvasott felhasználói adatok helyességét ellenőrző osztály.
Kiegészítő osztályok: x
MultiAccessController:
x
A hozzáférési jogosultságot ellenőrző osztály. UserFormController: A HTML lapokról érkező FORM adatokat (regisztráció, adatok módosítása)
x
feldolgozó és ellenőrző osztály. UserForm:
58
A UserFormController osztály segédosztálya. Segítségével ellenőrizhető a duplajelszó bevitel és a FORM típusa (hozzáadás vagy módosítás). x
LoginFormController: A HTML lapokról érkező FORM adatokat (belépés) feldolgozó és ellenőrző osztály. x
LoginValidator: A FORM-okról (belépés) beolvasott felhasználói adatok helyességét ellenőrző osztály. x
UserTest: A felhasználóhoz kapcsolódó használati esetek automatizált tesztelése (alfa teszthez).
40. ábra: A felhasználókezelés osztálykapcsolati terve
A JSP vagy HTML lapokról érkező kéréseket a web csomag osztályai dolgozzák fel, majd a bus és db csomagok felhasználásával az adatoknak megfelelő végeredményt szolgáltatnak. A db csomagon belüli interfész jelentőssége akkor kerülne felszínre, ha az adatkapcsolati réteget több féle implementációval kívánnánk megvalósítani (pl: oracle specifikus DB elérések). A test csomaggal a követelményeknek megfelelő használati esetek többségét automatikusan tesztelhetjük (alfa teszt).
59
Az adatáramlás (együttműködési diagrammok)
Regisztráció
41. ábra: A regisztráció folyamata
Felhasználói adatok módosítása
42. ábra: Felhasználói adatok módosítása
60
Belépés
43. ábra: Belépés
Felhasználók listázása
44. ábra: A felhasználók listázása
61
A felhasználókezelési osztályok részletezése:
45. ábra: A felhasználókezelési osztályok részletezése
62
Portálkezelés: Alaposztályok: x
PortalController: A dinamikus (JSP, ASP, PHP) és HTML lapoktól érkező kérések feldolgozását végzi, kivéve a FORM-ok. A feldolgozás után visszaadja a megadott lapot. x
xxxDao: Kapcsolat a xxxDaoImpl osztály és a külső osztályok között. Az adatbázis kapcsolatot megvalósító osztály interfésze. Az általa tartalmazott metódusok segítségével érhető el az adatbázis. Az xxx megfelelői: Faq, Poll (szavazás), PollAnswer (szavazás válasz), NewsPaper (hírlevél), Forum, Topic. x
xxxDaoImpl: Az xxxDao interfész metódusait megvalósító osztály. x
Faq, Poll, PollAnswer, NewsPaper, Forum, Topic: Az adatbázisban található táblák és a FORM-okról feldolgozott adatokat átmenetileg tartalmazó osztályok. x
FaqFormController, Poll…, NewsPaper…, Forum…: A FORM-okról érkező adatokat feldolgozó osztályok. x
xxxValidator: A FORM-okról (hozzáadás, módosítás) beolvasott adatok helyességét ellenőrző osztály.
Kiegészítő osztályok: x
FaqTest, PollTest, NewsPaperTest, ForumTest: A portálkezeléshez kapcsolódó használati esetek automatizált tesztelése (alfa teszthez).
63
46. ábra: A felhasználókezelési osztályok részletezése
64
Honlapkezelés: Alaposztályok: x
SiteController: A dinamikus (JSP, ASP, PHP) és HTML lapoktól érkező kérések feldolgozását végzi, kivéve a FORM-ok. A feldolgozás után visszaadja a megadott lapot. x
xxxDao: Kapcsolat a xxxDaoImpl osztály és a külső osztályok között. Az adatbázis kapcsolatot megvalósító osztály interfésze. Az általa tartalmazott metódusok segítségével érhető el az adatbázis. Az xxx megfelelői: Firm (cég), Site ( honlap) , Download ( letöltés), Favorite (kedvenc), News (hír), Product (termék). x
xxxDaoImpl: Az xxxDao interfész metódusait megvalósító osztály. x
Firm, Site, Download, Favorite, News, Product: Az adatbázisban található táblák és a FORM-okról feldolgozott adatokat átmenetileg tartalmazó osztályok. x
FirmFormController, Site…, Favorite…, News…, Product…: A FORM-okról érkező adatokat feldolgozó osztályok. x
xxxValidator: A FORM-okról (hozzáadás, módosítás) beolvasott adatok helyességét ellenőrző osztály.
Kiegészítő osztályok: x
FirmTest, Site…, Download…, Favorite…, News…, Product…: A portálkezeléshez kapcsolódó használati esetek automatizált tesztelése (alfa teszthez).
65
47. ábra: A felhasználókezelési osztályok részletezése
66
3.1.5 Átadási fázis
3.1.5.1
Telepítési terv
A rendszer szerver oldali részén 2 gép (lehet 1 gépen is) a VPR szerver és a DB szerver. A VPR dolgozza fel a kliens gépekről érkező kéréseket, a DB szerver pedig az adatok végleges tárolását (elmentés az adatbázisban) és a kérésekhez tartozó tartalom szolgáltatását (lekérdezések eredménye) végzi. A kliens gépek biztonságos SSL kapcsoltban lehetnek a szerverrel, kivétel a látogatók. A VPR a DB szerverrel JDBC vagy ODBC (vagy hasonló) kapcsolatban van.
46. ábra: A telepítési terv
67
3.1.5.2
Tesztterv
A projekt tesztelése 2 lépésben történik. Az első lépés az alfa teszt melyet a fejlesztő végez a különböző unitok, modulok és használati esetek tesztelésével. Ezek egy része automatizálható és a fejlesztő környezetből vagy parancssorból futtatható (xxxTest osztályok). A tesztelés második szakaszában a tesztelést (lehetőség szerint) egy harmadik személy végzi a használati esetek szerint, figyelembe véve az esetleges tévesztéseket az adatbevitelnél illetve a szándékos adatmanipulálás lehetőségét. A harmadik – átadás utáni – tesztfázist a dolgozat nem foglalja magába.
3.1.5.2.1
Alfa teszt
A teszt végrehajtása automatikus, előre megírt tesztosztályok alapján. Az osztályokat a JUnit könyvtár osztályából (TestCase) származtatom. Az unit és integráció teszt összevonásra kerül a könnyebb implementálhatóság és változtathatóság miatt. A beviteli funkciók tesztelése üresen, számmal és szöveggel történik. UserTest.java: A felhasználókhoz kapcsolódó használati esetek tesztelése. Tartalmazza: regisztráció, bejelentkezés, felhasználói adatok módosítása, felhasználó keresése, felhasználó törlése, felhasználók listája. Részletesen: 1.
Regisztráció (jó adatokkal)
2.
Regisztráció (rossz adatokkal) - Nem sikerülhet
3.
Regisztráció (üres mezőkkel) - Nem sikerülhet
4.
Belépés (jó adatokkal)
5.
Belépés (rossz adatokkal) - Nem sikerülhet
6.
Belépés (üres mezőkkel) - Nem sikerülhet
7.
Felhasználók listázása (nincs belépve)
8.
Felhasználók listázása (rendszergazda belépve)
9.
Egy felhasználó adatai (saját)
10.
Egy felhasználó adatai (rendszergazda)
11.
Egy felhasználó adatai (másik felhasználó) - Nem sikerülhet
12.
Egy felhasználó email szerinti keresése (belépett felhasználó)
68
13.
Egy felhasználó email szerinti keresése (nincs belépve) - Nem sikerülhet
14.
Egy felhasználó email szerinti keresése (paraméterek nélkül, belépve) - N e m
sikerülhet 15.
Egy felhasználó adatainak módosítása (saját)
16.
Egy felhasználó adatainak módosítása (másik felhasználó) - Nem sikerülhet
17.
Egy felhasználó adatainak módosítása (rendszergazda)
18.
Egy felhasználó adatainak törlése (másik felhasználó) - Nem sikerülhet
19.
Egy felhasználó adatainak törlése (rendszergazda)
20.
Kilépés
FaqTest.java: A F A Q -hoz (Gyakran Ismételt Kérdések) kapcsolódó használati esetek tesztelése. Tartalmazza: faq hozzáadása, faq módosítása, faq keresése, faq törlése, faq lista. Részletesen: 1.
FAQ lista (nincs belépve, lista)
2.
FAQ lista (nincs belépve, táblázat)
3.
Egy FAQ hozzáadása (nincs belépve) – Nem sikerülhet
4.
Egy FAQ hozzáadása (rendszergazda belépve)
5.
Egy FAQ adatai (nincs belépve)
6.
Egy FAQ kérdés szerinti keresése (nincs belépve)
7.
Egy FAQ válasz szerinti keresése (nincs belépve)
8.
Egy FAQ adatainak módosítása (nincs belépve) – Nem sikerülhet
9.
Egy FAQ adatainak módosítása (rendszergazda)
10.
Egy FAQ törlése (nincs belépve) – Nem sikerülhet
11.
Egy FAQ törlése (rendszergazda)
NewsPaperTest.java: A hírlevélhez kapcsolódó használati esetek tesztelése. Tartalmazza: hírlevél hozzáadása, hírlevél módosítása, hírlevél keresése, hírlevél törlése, hírlevél lista.
69
Részletesen: 1.
Hírlevél lista (nincs belépve, táblázat)
2.
Hírlevél lista (rendszergazda, táblázat)
3.
Egy hírlevél hozzáadása (nincs belépve) – Nem sikerülhet
4.
Egy hírlevél hozzáadása (rendszergazda belépve)
5.
Egy hírlevél adatai (nincs belépve) – Nem sikerülhet
6.
Egy hírlevél adatai (rendszergazda belépve)
7.
Egy hírlevél cím szerinti keresése (nincs belépve)
8.
Egy hírlevél szöveg szerinti keresése (nincs belépve)
9.
Egy hírlevél adatainak módosítása (nincs belépve) – Nem sikerülhet
10.
Egy hírlevél adatainak módosítása (rendszergazda)
11.
Egy hírlevél törlése (nincs belépve) – Nem sikerülhet
12.
Egy hírlevél törlése (rendszergazda)
PollTest.java: A szavazáshoz kapcsolódó használati esetek tesztelése. Tartalmazza: szavazás hozzáadása, szavazás módosítása, szavazás keresése, szavazás törlése, szavazás lista. Részletesen: 1.
Szavazás lista (nincs belépve, táblázat)
2.
Szavazás lista (rendszergazda, táblázat)
3.
Egy szavazás hozzáadása (nincs belépve) – Nem sikerülhet
4.
Egy szavazás hozzáadása (rendszergazda belépve)
5.
Egy szavazás válaszának hozzáadása (nincs belépve) – Nem sikerülhet
6.
Egy szavazás válaszának hozzáadása (rendszergazda belépve)
7.
Egy szavazás adatai (nincs belépve)
8.
Egy szavazás kérdés szerinti keresése (nincs belépve)
9.
Egy szavazás adatainak módosítása (nincs belépve) – Nem sikerülhet
10.
Egy szavazás adatainak módosítása (rendszergazda)
11.
Egy szavazás törlése (nincs belépve) – Nem sikerülhet
12.
Egy szavazás törlése (rendszergazda)
70
ForumTest.java: A fórumhoz kapcsolódó használati esetek tesztelése. Tartalmazza: fórum hozzáadása, fórum módosítása, fórum keresése, fórum törlése, fórum lista. Részletesen: 1.
Fórum lista (nincs belépve, táblázat)
2.
Egy fórum hozzáadása (nincs belépve) – Nem sikerülhet
3.
Egy fórum hozzáadása (rendszergazda belépve)
4.
Egy topik hozzáadása (nincs belépve) – Nem sikerülhet
5.
Egy topik hozzáadása (rendszergazda belépve)
6.
Egy topik adatainak módosítása (nincs belépve) – Nem sikerülhet
7.
Egy topik adatainak módosítása (rendszergazda)
8.
Egy hozzászólás hozzáadása (nincs belépve) – Nem sikerülhet
9.
Egy hozzászólás hozzáadása (rendszergazda belépve)
10.
Egy fórum adatai (nincs belépve)
11.
Egy topik cím szerinti keresése (nincs belépve)
12.
Egy fórum adatainak módosítása (nincs belépve) – Nem sikerülhet
13.
Egy fórum adatainak módosítása (rendszergazda)
14.
Egy fórum törlése (nincs belépve) – Nem sikerülhet
15.
Egy fórum törlése (rendszergazda)
FirmTest.java: A céghez kapcsolódó használati esetek tesztelése. Tartalmazza: cég hozzáadása, cég módosítása, cég törlése, cég lista, cég adatai. Részletesen: 1.
Saját céglista (nincs belépve) – Nem sikerülhet
2.
Saját céglista (rendszergazda belépve)
3.
Teljes céglista (nincs belépve) – Nem sikerülhet
4.
Teljes céglista (rendszergazda belépve)
5.
Egy cég hozzáadása (nincs belépve) – Nem sikerülhet
6.
Egy cég hozzáadása (rendszergazda belépve)
71
7.
Egy cég adatai (nincs belépve) – Nem sikerülhet
8.
Egy cég adatai (rendszergazda belépve)
9.
Egy cég adatainak módosítása (nincs belépve) – Nem sikerülhet
10.
Egy cég adatainak módosítása (rendszergazda)
11.
Egy cég törlése (nincs belépve) – Nem sikerülhet
12.
Egy cég törlése (rendszergazda)
SiteTest.java: A honlaphoz kapcsolódó használati esetek tesztelése. Tartalmazza: honlap hozzáadása, honlap módosítása, honlap törlése, honlap lista, honlap adatai. Részletesen: 1.
Saját honlaplista (nincs belépve) – Nem sikerülhet
2.
Saját honlaplista (rendszergazda belépve)
3.
Teljes honlaplista (nincs belépve) – Nem sikerülhet
4.
Teljes honlaplista (rendszergazda belépve)
5.
Egy honlap hozzáadása (nincs belépve) – Nem sikerülhet
6.
Egy honlap hozzáadása (rendszergazda belépve, csak a teszt alatt lehet 2 honlapja)
7.
Egy honlap adatai (nincs belépve) – Nem sikerülhet
8.
Egy honlap adatai (rendszergazda belépve)
9.
Egy honlap adatainak módosítása (nincs belépve) – Nem sikerülhet
10.
Egy honlap adatainak módosítása (rendszergazda)
11.
Egy honlap törlése (nincs belépve) – Nem sikerülhet
12.
Egy honlap törlése (rendszergazda)
NewsTest.java: A hírekhez kapcsolódó használati esetek tesztelése. Tartalmazza: hír hozzáadása, hír módosítása, hír törlése, hír lista, hír adatai. Részletesen: 1.
Saját hírlista (nincs belépve, táblázat) – Nem sikerülhet 72
2.
Saját hírlista (rendszergazda belépve, táblázat)
3.
Saját hírlista (nincs belépve, lista)
4.
Teljes hírlista (nincs belépve) – Nem sikerülhet
5.
Teljes hírlista (rendszergazda belépve)
6.
Egy hír hozzáadása (nincs belépve) – Nem sikerülhet
7.
Egy hír hozzáadása (rendszergazda belépve, csak a teszt alatt lehet 2 honlapja)
8.
Egy hír adatai (nincs belépve) – Nem sikerülhet
9.
Egy hír adatai (rendszergazda belépve)
10.
Egy hír adatainak módosítása (nincs belépve) – Nem sikerülhet
11.
Egy hír adatainak módosítása (rendszergazda)
12.
Egy hír törlése (nincs belépve) – Nem sikerülhet
13.
Egy hír törlése (rendszergazda)
FavoriteTest.java: A kedvencekhez kapcsolódó használati esetek tesztelése. Tartalmazza: kedvenc hozzáadása, kedvenc módosítása, kedvenc törlése, kedvenc lista, kedvenc adatai. Részletesen: 1.
Saját kedvenclista (nincs belépve, táblázat) – Nem sikerülhet
2.
Saját kedvenclista (rendszergazda belépve, táblázat)
3.
Saját kedvenclista (nincs belépve, lista)
4.
Teljes kedvenclista (nincs belépve) – Nem sikerülhet
5.
Teljes kedvenclista (rendszergazda belépve)
6.
Egy kedvenc hozzáadása (nincs belépve) – Nem sikerülhet
7.
Egy kedvenc hozzáadása (rendszergazda belépve, csak a teszt alatt lehet 2 honlapja)
8.
Egy kedvenc adatai (nincs belépve) – Nem sikerülhet
9.
Egy kedvenc adatai (rendszergazda belépve)
10.
Egy kedvenc adatainak módosítása (nincs belépve) – Nem sikerülhet
11.
Egy kedvenc adatainak módosítása (rendszergazda)
12.
Egy kedvenc törlése (nincs belépve) – Nem sikerülhet
13.
Egy kedvenc törlése (rendszergazda)
73
ProductTest.java: A termékekhez kapcsolódó használati esetek tesztelése. Tartalmazza: kedvenc hozzáadása, kedvenc módosítása, kedvenc törlése, kedvenc lista, kedvenc adatai. Részletesen: 1.
Saját terméklista (nincs belépve, táblázat) – Nem sikerülhet
2.
Saját terméklista (rendszergazda belépve, táblázat)
3.
Saját terméklista (nincs belépve, lista)
4.
Teljes terméklista (nincs belépve) – Nem sikerülhet
5.
Teljes terméklista (rendszergazda belépve)
6.
Egy termék hozzáadása (nincs belépve) – Nem sikerülhet
7.
Egy termék hozzáadása (rendszergazda belépve, csak a teszt alatt lehet 2 honlapja)
8.
Egy termék adatai (nincs belépve) – Nem sikerülhet
9.
Egy termék adatai (rendszergazda belépve)
10.
Egy termék adatainak módosítása (nincs belépve) – Nem sikerülhet
11.
Egy termék adatainak módosítása (rendszergazda)
12.
Egy termék törlése (nincs belépve) – Nem sikerülhet
13.
Egy termék törlése (rendszergazda)
DownloadTest.java: A letöltésekhez kapcsolódó használati esetek tesztelése. Tartalmazza: letöltés hozzáadása, letöltés lista. Részletesen: 1.
Saját letöltéslista (nincs belépve, táblázat) – Nem sikerülhet
2.
Saját letöltéslista (rendszergazda belépve, táblázat)
3.
Teljes letöltéslista (nincs belépve) – Nem sikerülhet
4.
Teljes letöltéslista (rendszergazda belépve)
5.
Saját letöltéslista (nincs belépve, lista)
6.
Egy letöltés hozzáadása (feltöltendő fájl nélkül) – Nem sikerülhet
74
3.1.5.2.2
Béta teszt
A teszt végrehajtása manuális. A súgó alapján lépésről lépésre végigvisz minden funkciót. A beviteli funkciók tesztelése üresen, számmal és szöveggel (hosszú[255+], közepes[10], rövid[1]) történik. A tesztet a programozó és a (beta) tesztelők végzik (elvileg 1-3 fő). Adminisztrátorok: 1.
Regisztráció (automatikus beléptetés)
2.
Belépés
3.
Felhasználói adatok megtekintése
4.
Felhasználói adatok szerkesztése
5.
Felhasználók listája
6.
Felhasználói profil törlése
7.
Cég hozzáadása
8.
Cég adatainak megtekintése
9.
Cég szerkesztése
10.
Cégek listája
11.
Cég törlése
12.
Honlap hozzáadása
13.
Honlap adatainak megtekintése
14.
Létrehozott honlap megtekintése
15.
Honlap szerkesztése
16.
Honlapok listája
17.
Honlap törlése
18.
Letöltés hozzáadása (Feltöltés)
19.
Letöltés adatainak megtekintése
20.
Letöltés szerkesztése
21.
Letöltések listája
22.
Saját letöltések listája
23.
Letöltéseim
24.
Letöltés törlése
25.
Hír hozzáadása
26.
Hír adatainak megtekintése
75
27.
Hír szerkesztése
28.
Hírek listája
29.
Saját hírek listája
30.
Híreim
31.
Hír törlése
32.
Kedvenc hozzáadása
33.
Kedvenc adatainak megtekintése
34.
Kedvenc szerkesztése
35.
Kedvencek listája
36.
Saját kedvencek listája
37.
Kedvenceim
38.
Kedvenc törlése
39.
Termék hozzáadása
40.
Termék adatainak megtekintése
41.
Termék szerkesztése
42.
Termékek listája
43.
Saját termékek listája
44.
Termékeim
45.
Termék törlése
Rendszergazda: 0.
Belépés
1.
Felhasználólista
2.
Felhasználó adatainak megtekintése (Rendszergazdáé)
3.
Felhasználó adatainak hozzáadása (Rendszergazdáé)
4.
Felhasználó adatainak szerkesztése (Rendszergazdáé)
5.
Felhasználó törlése (Rendszergazdáé) – Nem sikerülhet
6.
Felhasználó adatainak megtekintése (Adminisztrátoré)
7.
Felhasználó adatainak hozzáadása (Adminisztrátoré)
8.
Felhasználó adatainak szerkesztése (Adminisztrátoré)
9.
Felhasználó törlése (Adminisztrátoré)
10.
FAQ lista
11.
FAQ hozzáadása
76
12.
FAQ adatainak megtekintése
13.
FAQ szerkesztése
14.
FAQ törlése
15.
Hírlevél lista
16.
Hírlevél hozzáadása
17.
Hírlevél adatainak megtekintése
18.
Hírlevél szerkesztése
19.
Hírlevél törlése
20.
Szavazás lista
21.
Szavazás hozzáadása
22.
Szavazás adatainak megtekintése
23.
Válasz hozzáadása
24.
Válasz adatainak megtekintése
25.
Válasz szerkesztése
26.
Válasz törlése
27.
Szavazás szerkesztése
28.
Szavazás (+ válaszok) törlése
29.
Fórum lista
30.
Fórum hozzáadása
31.
Fórum adatainak megtekintése
32.
Topik lista
33.
Topik hozzáadása
34.
Topik adatainak megtekintése
35.
Hozzászólás lista
36.
Hozzászólás hozzáadása
37.
Hozzászólás törlése
38.
Topik szerkesztése
39.
Topik törlése
40.
Fórum szerkesztése
41.
Fórum törlése
42.
Kilépés
77
3.2. Felhasználói dokumentáció 3.2.1 Ügyfél dokumentáció Felhasználó adatainak kezelése Regisztráció A portál bizonyos funkcióinak eléréséhez be kell lépni a rendszerbe, amit egy regisztráció kell megelőzzön. A regisztrációhoz az űrlapon található összes adat megadása szükséges. Az adatok megadása után a „Regisztráció” gombra kattintva a rendszer automatikusan beléptet. A „Regisztráció” funkció a bal oldali menüből érhető el.
Belépés A belépés a felhasználónév (email cím) és a jelszó megadásával történik. Az űrlapon a jelszó karakterei nem látszanak, helyettük speciális karakterek vannak (pl: *). A
78
„Belépés” funkció a bal oldali menüből érhető el. Az adatok megadása után a „Belépés” gombra kattintva a rendszer belépteti a felhasználót.
Felhasználói adatok megtekintése A felhasználói adatok megtekintéséhez be kell lépni. A saját adatok megtekintése a bal oldali menü feletti email címre kattintva lehetséges a „Belépve” cím alatt.
79
Felhasználói adatok szerkesztése A felhasználói adatok szerkesztéséhez be kell lépni. A saját adatok szerkesztése a felső oldali menü „Személyes adataim szerkesztése” kattintva lehetséges. A változások érvényesítéséhez a „Mentés” gombra kel kattintani. Az adatok mentéséhez a „Jelszó ismét” mezőt is ki kell tölteni.
Felhasználók listája A felső menü „Felhasználók” elemére kattintva, a rendszerben regisztrált felhasználók listája tekinthető meg. A felhasználói adatok csak a rendszergazda számára elérhetőek.
80
Felhasználói profil törlése A „Felhasználói adatok”-nál a „profilom törlése”-re kattintva a felhasználó adatai törölhetők (Figyelem: A törlés törli a felhasználóhoz tartozó cégeket és honlapokat is!). A törlés után a belépéshez új regisztráció szükséges. A törlés után a rendszer visszaigazolja a törlés sikerességét („A felhasználó törlése sikerült”).
81
Cég adatainak kezelése Cég hozzáadása A cég hozzáadásához az űrlapon található összes adat megadása szükséges. Az adatok megadása után a „Mentés” gombra kattintva a rendszer létrehozza a céget a megadott adatok alapján. A megadott adatok a létrehozott honlap „Céginformáció” oldalán is szerepelnek.
Cégek listája A felső menü „Cégek” elemére kattintva, a rendszerben a felhasználó által regisztrált cégek listája tekinthető meg. A „Parancsok” oszlopból a céghez kapcsolódó funkciók érhetők el. A „Honlap hozzáadása” paranccsal új honlap adható a céghez. Egy céghez csak egy honlap tartozhat.
82
Cég adatainak megtekintése A cég adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Cégek”, majd a cég neve melletti „Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális céget törölni, a cégadatokat módosítani vagy a céghez honlapot adni lehet.
Cég adatainak szerkesztése A cég adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Cégek”, majd a cég neve melletti „Szerkeszt” hivatkozásra kattintva lehetséges (alternatíva: Cég adatainak megtekintése Æ
Cégem módosítása). A változások
érvényesítéséhez a „Mentés” gombra kel kattintani. A cég módosításához az űrlapon található összes adat megadása szükséges.
83
Cég törlése A „Cégek listája”-nál a „Töröl”-re kattintva a cég adatai törölhetők. Figyelem: A törlés törli a céghez tartozó honlapot és annak elemeit is! A törlés után a rendszer visszaigazolja a törlés sikerességét („A cég törlése sikerült.”). Honlap adatainak kezelése Honlap hozzáadása A honlap hozzáadásához az űrlapon található összes adat megadása szükséges. Az adatok megadása után a „Mentés” gombra kattintva a rendszer létrehozza a honlapot az űrlap adatai és a cég adatai szerint. A „Név” mezőben a honlap nevét kell megadni, mely a későbbiek során azonosítja a honlapot. A „Leírás” mező a honlap kezdőlapján található üdvözlőszöveg. A sablon kiválasztása a honlap kinézetét befolyásolja. A „Banner címe” a honlap felső részén található kép (Cég logo vagy banner) felirata. A „Copyright” és a „Webmester email” a lábléchez tartozó információkat adja meg.
84
Honlapok listája A felső menü „Honlapok” elemére kattintva, a rendszerben a felhasználó által regisztrált honlapok listája tekinthető meg. A „Parancsok” oszlopból a honlaphoz kapcsolódó funkciók érhetők el. Új honlap hozzáadása a céglistánál lehetséges.
85
Honlap adatainak megtekintése A honlap adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok”, majd a cég neve melletti „Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális honlapot törölni vagy a honlap adatait módosítani lehet. A további hivatkozások a honlap oldalainak előnézetét (Letöltéseim, Híreim, Kedvenceim, Termékeim) és a szerkesztésükhöz szükséges oldalakat adják.
Létrehozott honlap megtekintése A „Honlap adatainak megtekintése” oldalon az „URL” mező melletti hivatkozásra kattintva egy új ablakban megjelenik a létrehozott honlap. A böngészőbe a webtárhely (jelenleg: http://molnarl.hdsnet.hu/vpr/sites) után a cég azonosítót beírva érhető el az oldal (pl: http://molnarl.hdsnet.hu/vpr/sites/22).
86
Honlap adatainak szerkesztése A honlap adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok”, majd a honlap neve melletti „Szerkeszt” hivatkozásra kattintva lehetséges (alternatíva: Honlap adatainak megtekintése Æ
Honlapom
módosítása). A változások érvényesítéséhez a „Mentés” gombra kel kattintani. A honlap módosításához az űrlapon található összes adat megadása szükséges. A „Név” mező a honlap nevét határozza meg, amely nem azonos a honlap felirataival. A „Leírás” a kezdőlap tartalma lesz. A sablon a megjelenésen (CSS fájl) változtat. A banner a honlap tetején megjelenő kép és a banner címe az azon lévő felirat. A Copyright és a Webmester a honlap láblécén található információkra utalnak.
87
Honlap törlése A „Honlapok listája”-nál a „Töröl”-re kattintva a honlap adatai törölhetők. Figyelem: A törlés törli a honlaphoz tartozó elemeket is! A törlés után a rendszer visszaigazolja a törlés sikerességét („A honlap törlése sikerült.”). Letöltések adatainak kezelése Letöltés hozzáadása (feltöltés) A feltöltéshez nem szükséges az űrlapon található összes adat megadása. A fájlnév megadása nélkül a valódi fájlnevet veszi alapul a rendszer. A „Leírás” mező a fájl tartalmának leírása. Az adatok megadása után a „Feltöltés” gombra kattintva a rendszer feltölti az adott fájlt a szerverre és létrehozza a „Letöltések” lapot a létrehozott honlapon, ha még nincs ilyen. Ha már van ilyen lap, akkor hozzáadja a feltöltött fájlt a listához.
Saját letöltések listája Az aktuális honlap adatait megtekintve a lenti menüből kiválasztható a „Saját letöltési lista szerkesztése”. A „Teljes letöltési lista” elemére kattintva, a rendszerben a összes regisztrált letöltés listája tekinthető meg. A „Parancsok” oszlopból a letöltéshez kapcsolódó funkciók érhetők el. A „Feltöltés” hivatkozásra kattintva további fájlok adhatók a listához.
88
Letöltéseim A „Honlap adatok” oldal „Letöltéseim”-re kattintva a letöltések előnézeti képe látható. A létrehozott honlapon hasonlóan néznek ki a felsorolt letöltések. Letöltés adatainak megtekintése A letöltés adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját letöltési lista szerkesztése Æ
Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális letöltést törölni vagy a letöltés adatait módosítani lehet. A „Saját letöltési listá”-ra kattintva a letöltésekhez jutunk vissza.
89
Letöltés adatainak szerkesztése A letöltés adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját letöltési lista szerkesztése Æ
Szerkeszt” hivatkozásra kattintva lehetséges (alternatíva: Letöltés adatainak megtekintése Æ
Letöltésem módosítása). A változások érvényesítéséhez a „Mentés”
gombra kel kattintani. A letöltés módosításához az űrlapon található összes adat megadása szükséges. A fájlnév nem módosítható (csak törlés és hozzáadással).
Letöltés törlése A „Letöltések listája”-nál a „Töröl”-re kattintva a letöltés törölhető. A törlés után a rendszer visszaigazolja a törlés sikerességét („A letöltés törlése sikerült.”). Hírek adatainak kezelése Hír hozzáadása A hír hozzáadásához szükséges az űrlapon található összes adat megadása. A cím mezőben a hír címét kell megadni. A „Szöveg” mező a hír tartalmának leírása. Az adatok megadása után a „Mentés” gombra kattintva a rendszer tárolja a hírt és létrehozza a „Hírek” lapot a létrehozott honlapon, ha még nincs ilyen. Ha már van, akkor hozzáadja a hírt a listához.
90
Saját hírek listája Az aktuális honlap adatait megtekintve a lenti menüből kiválasztható a „Saját letöltési lista szerkesztése”. A „Teljes letöltési lista” elemére kattintva, a rendszerben a összes regisztrált letöltés listája tekinthető meg. A „Parancsok” oszlopból a letöltéshez kapcsolódó funkciók érhetők el. A „Hír hozzáadása” hivatkozásra kattintva további fájlok adhatók a listához.
Híreim A „Honlap adatok” oldal „Híreim”-re kattintva a hírek előnézeti képe látható. A létrehozott honlapon hasonlóan néznek ki a felsorolt hírek.
91
Hír adatainak megtekintése A hír adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját hírlista szerkesztése Æ
Megnéz”
hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális hírt törölni vagy a hír adatait módosítani lehet. A „Saját hírlistá”-ra kattintva a hírekhez jutunk vissza.
Hír adatainak szerkesztése A hír adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját hírlista szerkesztése Æ
Szerkeszt”
hivatkozásra kattintva lehetséges (alternatíva: Hír adatainak megtekintése Æ
Hírem
módosítása). A változások érvényesítéséhez a „Mentés” gombra kel kattintani. A hír módosításához az űrlapon található összes adat megadása szükséges.
92
Hír törlése A „Hírek listája”-nál a „Töröl”-re kattintva a hír törölhető. A törlés után a rendszer visszaigazolja a törlés sikerességét („A hír törlése sikerült.”).
Kedvencek adatainak kezelése Kedvenc hozzáadása A kedvenc hozzáadásához szükséges az űrlapon található összes adat megadása. A név mezőben a kedvenc elnevezését kell megadni. A „Hivatkozás” mezőbe a kedvencre mutató hivatkozást kell megadni (pl.: http://www.prog.hu). A „Leírás” mező a kedvenc tartalmának leírása. Az adatok megadása után a „Mentés” gombra kattintva a rendszer tárolja a kedvencet és létrehozza a „Kedvencek” lapot a létrehozott honlapon, ha még nincs ilyen. Ha már van, akkor hozzáadja a kedvencet a listához.
Saját kedvencek listája Az aktuális honlap adatait megtekintve a lenti menüből kiválasztható a „Saját kedvenc lista szerkesztése”. A „Teljes kedvenc lista” elemére kattintva, a rendszerben a összes regisztrált kedvenc listája tekinthető meg. A „Parancsok” oszlopból a kedvenchez
93
kapcsolódó funkciók érhetők el. A „Kedvenc hozzáadása” hivatkozásra kattintva további fájlok adhatók a listához.
Kedvenceim A „Honlap adatok” oldal „Kedvenceim”-re kattintva a kedvencek előnézeti képe látható. A létrehozott honlapon hasonlóan néznek ki a felsorolt kedvencek. Kedvenc adatainak megtekintése A kedvenc adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját kedvenclista szerkesztése Æ
Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális kedvencet törölni vagy a kedvenc adatait módosítani lehet. A „Saját kedvenc listá”-ra kattintva a kedvencekhez jutunk vissza.
94
Kedvenc adatainak szerkesztése A kedvenc adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját kedvenclista szerkesztése Æ
Szerkeszt” hivatkozásra kattintva lehetséges (alternatíva: Kedvenc adatainak megtekintése Æ
Kedvencem módosítása). A változások érvényesítéséhez a „Mentés”
gombra kel kattintani. A kedvenc módosításához az űrlapon található összes adat megadása szükséges.
Kedvenc törlése A „Kedvencek listája”-nál a „Töröl”-re kattintva a kedvenc törölhető. A törlés után a rendszer visszaigazolja a törlés sikerességét („A kedvenc törlése sikerült.”). Termékek adatainak kezelése Termék hozzáadása A termék hozzáadásához szükséges az űrlapon található összes adat megadása. A név mezőben a termék elnevezését kell megadni. Az „Ár” mezőbe a termék nettó árát (Ft nélkül) kell megadni (pl.: 10000). A „Leírás” mező a termék tartalmának leírása. Az adatok megadása után a „Mentés” gombra kattintva a rendszer tárolja a terméket és létrehozza a „Termékek” lapot a létrehozott honlapon, ha még nincs ilyen. Ha már van, akkor hozzáadja a terméket a listához.
95
Saját termékek listája Az aktuális honlap adatait megtekintve a lenti menüből kiválasztható a „Saját termék lista szerkesztése”. A „Teljes termék lista” elemére kattintva, a rendszerben a összes regisztrált termék listája tekinthető meg. A „Parancsok” oszlopból a termékhez kapcsolódó funkciók érhetők el. A „Termék hozzáadása” hivatkozásra kattintva további termékek adhatók a listához.
Termékeim
96
A „Honlap adatok” oldal „Termékeim”-re kattintva a termékek előnézeti képe látható. A létrehozott honlapon hasonlóan néznek ki a felsorolt termékek. Termék adatainak megtekintése A termék adatainak megtekintéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját terméklista szerkesztése Æ
Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális terméket törölni vagy a termék adatait módosítani lehet. A „Saját termék listá”-ra kattintva a termékekhez jutunk vissza.
Termék adatainak szerkesztése A termék adatainak szerkesztéséhez be kell lépni. Az adatok megtekintése a felső menü feletti „Honlapok Æ
Honlap adatai Æ
Saját terméklista szerkesztése Æ
Szerkeszt” hivatkozásra kattintva lehetséges (alternatíva: Termék adatainak megtekintése Æ
Termékem módosítása). A változások érvényesítéséhez a „Mentés”
gombra kel kattintani. A termék módosításához az űrlapon található összes adat megadása szükséges.
97
Termék törlése A „Termékek listája”-nál a „Töröl”-re kattintva a termék törölhető. A törlés után a rendszer visszaigazolja a törlés sikerességét („A termék törlése sikerült.”).
98
Rendszergazdai dokumentáció
3.2.2 Rendszergazdai dokumentáció Felhasználó adatainak kezelése Felhasználók listája A felső menü „Felhasználók” elemére kattintva, a rendszerben regisztrált felhasználók listája tekinthető meg. A listából kiválasztott bármely felhasználó adatai menedzselhetőek.
Felhasználói profil törlése A „Felhasználói adatok”-nál a „Felhasználó törlése”-re vagy a „Felhasználók listá”-jánál a „Töröl”-re kattintva a felhasználó adatai törölhetők (Figyelem: A t ö rlés törli a felhasználóhoz t a r t o z ó cégeket és honlapokat is!). A törlés után a belépéshez új regisztráció szükséges. A törlés után a rendszer visszaigazolja a törlés sikerességét („A felhasználó törlése sikerült”). A rendszergazda nem törölhető.
99
A FAQ adatainak kezelése FAQ hozzáadása és módosítása A faq elem (Gyakran Ismételt Kérdés és a hozzá tartozó válasz) hozzáadásához az űrlapon található összes adat megadása szükséges. Az adatok megadása után a „Mentés” gombra kattintva a rendszer létrehozza a faq elemet a megadott adatok alapján. Módosításnál a már megadott adatokat szerkeszthetjük.
FAQ-ok listája A felső menü „FAQ” elemére kattintva a FAQ-ok listája tekinthető meg. A „Parancsok” oszlopból a FAQ-hoz kapcsolódó funkciók érhetők el. Az ügyfelek részére csak az aktív FAQ-ok látszanak.
100
FAQ adatainak megtekintése Az adatok megtekintése a felső menü feletti „FAQ”, majd a FAQ neve melletti „Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális FAQ-ot törölni vagy a FAQ adatokat módosítani lehet.
101
FAQ törlése A „FAQ-ok listája”-nál a „Töröl”-re vagy a FAQ adatainál a „FAQ törlése”-re kattintva a FAQ adatai törölhetők. A törlés után a rendszer visszaigazolja a törlés sikerességét („A Faq törlése sikerült.”). Hírlevél adatainak kezelése Hírlevél hozzáadása és szerkesztése A hírlevél hozzáadásához az űrlapon található összes adat megadása szükséges. Az adatok megadása után a „Mentés” gombra kattintva a rendszer létrehozza a honlapot az űrlap adatai és a cég adatai szerint. A „Küldés”-nél naptár segítségével adhatjuk meg az időpontot órában és a dátumot.
102
Hírlevélek listája A felső menü „Hírlevél” elemére kattintva, a rendszergazda által hozzáadott hírlevelek listája tekinthető meg. A „Parancsok” oszlopból a honlaphoz kapcsolódó funkciók érhetők el.
103
Hírlevél adatainak megtekintése Az adatok megtekintése a felső menü feletti „Hírlevél”, majd a hírlevél neve melletti „Megnéz” hivatkozásra kattintva lehetséges. Az adatok alatti hivatkozásokkal az aktuális honlapot törölni vagy a hírlevél adatait módosítani lehet.
104
Hírlevél törlése A „Hírlevelek listája”-nál a „Töröl”-re kattintva a hírlevél adatai törölhetők. A törlés után a rendszer visszaigazolja a törlés sikerességét („A hírlevél törlése sikerült.”). Szavazások adatainak kezelése Szavazás hozzáadása és szerkesztése A szavazás létrehozása 2 lépésben történik. Elsőként a „Kérdés” megadásával létrehozzuk a szavazást, majd a „Válasz hozzáadásá”-val létrehozzuk a lehetséges válaszokat egyenként.
105
Szavazások listája A felső menüből a „Szavazás”-ra kattintva a rendszerben a összes szavazás listája tekinthető meg. A „Parancsok” oszlopból a szavazáshoz kapcsolódó funkciók érhetők el. A „Szavazás hozzáadásá”-val újabb szavazás hozható létre.
Szavazás adatainak megtekintése A bal oldali szavazás modult használva vagy a „Szavazás lista” egyik eleme melletti „Megnéz”-re kattintva a kiválasztott szavazás adatait tekinthetjük meg. A szavazás alatt a válaszok listája és a szavazás eddigi eredménye látható.
106
Szavazás törlése A „Szavazás listája”-nál a „Töröl”-re kattintva a szavazás törölhető. A törlés után a rendszer visszaigazolja a törlés sikerességét („A szavazás törlése sikerült.”). Fórum adatainak kezelése Fórum hozzáadása és szerkesztése A fórum hozzáadásához szükséges az űrlapon található összes adat megadása. A megadható adatoknak jelenleg nincs befolyása, nincsenek implementálva. A rendszerben jelenleg csak 1 fórum lehet.
107
Fórumok listája A rendszerben jelenleg csak 1 fórum lehet. A „Fórum”-ra kattintva a felső menüben, megjelenik az éppen aktuális fórum. A „Parancsok” oszlopból a fórumhoz kapcsolódó funkciók érhetők el. A „Fórum hozzáadása” hivatkozásra kattintva létrehozható új fórum. Ez a funkció csak akkor elérhető, ha még nincs egy fórum sem.
Fórum adatainak megtekintése Az adatok megtekintése a felső menü feletti „Fórum Æ
Megnéz” hivatkozásra kattintva
lehetséges. Az adatok alatti hivatkozásokkal az aktuális fórumot törölni (Figyelem: minden tartalmazott topik és hozzászólás törlődik!) vagy a fórum adatait módosítani lehet. A „Topikok” részen a fórum topikjai menedzselhetőek. A „Topik hozzáadásá”-val lehet a fórumhoz újabb topikot hozzáadni.
108
Fórum és topik törlése A „Fórum listája”-nál a „Töröl”-re vagy a „Fórum adatai”-nál a „Fórum törlésére” kattintva a fórum törölhető (Figyelem: minden tartalmazott topik és hozzászólás törlődik!). A törlés után a rendszer visszaigazolja a törlés sikerességét („A fórum törlése sikerült.”). A topikok törlése a „Fórum adatai” alatt található topikok részen lehetséges a „Töröl”-re kattintással (Figyelem: minden tartalmazott hozzászólás törlődik!).
109
Telepítési útmutató
Futtatói környezet: -
JAVA JDK 1.5
-
Tomcat 5.5 + vpr.war telepítés (deploy)
-
Kiegészítő könyvtárak: spring (spring.jar 1.5), mysql connector (mysql-connectorjava-3.0.9-stable-bin.jar), activation.jar, aopalliance.jar, apache-commons, cos.jar, displaytag-1.0-rc2.jar, dom4j.jar, hu_mlaci_misc.jar, jstl.jar, junit.jar, log4j-1.2.8.jar, mail.jar, sitemesh-2.1.jar, standard.jar
-
MySQL 4.0.18 (vagy későbbi)
-
MySQL schema, alap táblaszerkezet (vpr.sql, vpr_with_datas.sql) importálása, előtte a vpr adatbázist létre kell hozni (felhasználó: vpr, jelszó: q1w2e30, encoding: hungarian)
-
Operációs rendszer: bármely JRE-t futtatni képes
-
Hardver: min: bármely JRE-t futtatni képes, ajánlott: legalább PII, 64 MB RAM
Telepítés: A JDK, Tomcat, MySQL telepítése után az adatbázist kell feltölteni a mellékelt schema fájl importálásával. Ezután a vpr.war fájlt (tartalmazza a kiegészítőket is) kell telepíteni (deploy) a Tomcat szerver alatt.
Fejlesztői környezet: Megegyezik a futtatóival, de a fejlesztés az Eclipse-el és pluginjaival történt. -
Eclipse
-
Plugin-ek: UML, Tomcat
További információ a telepítéssel kapcsolatban a hivatalos honlapokon: - java: http://java.sun.com/j2se/1.5.0/download.jsp - tomcat 5.5: http://jakarta.apache.org/tomcat - kiegészítők: http://www.springframework.org, http://www.apache.org/, http://www.opensymphony.com/sitemesh/download.html - MySQL 4.0.18: http://dev.mysql.com/downloads/mysql/4.0.html 110
- eclipse: http://www.eclipse.org/downloads/index.php - eclipse-uml: http://www.omondo.com/download - eclipse-tomcat: http://www.sysdeo.com/eclipse/tomcatPlugin.html
4. A jövő, fejlesztési javaslatok A program rengeteg fejlesztési lehetőséget rejt magában. Ezek legtöbbje a Követelmények fejezetben (Nem követelmények) megtalálhatók. Elsősorban a kényelmi funkciók szorulnak bővítésre, mint például a jelszókezelés vagy többnyelvűség. Az architektúrális bővíthetőségről sem szabad megfeledkezni. A logikai rétegek bővítésével (service) további kliensek csatlakoztathatók a szerverhez és később csak a megjelenítési rétegen kell változtatni, az üzleti logika és az adatkapcsolati réteg változatlan maradhat. A szöveges részek (description, question, answer) adatbázis mezői maximum 255 karaktert tudnak tárolni. Ezt a mező típusának változtatásával könnyedén növelhetjük. Az alkalmazás bármely JDBC driverrel rendelkező adatbázis alatt futtatható a forráskód újrafordítása nélkül, de nagyobb adatbáziskezelőknél a tárolt eljárásokkal további teljesítménynövekedés érhető el. Ez a xxxDao interfészek alá történő xxxDaoImpl osztályok fejlesztésével érhető el. A projekt és a diplomamunka nagyságának különbsége miatt néhány fontos modul is kimaradt. Ezek a cikkek, képkezelő és sablonkezelő.
5. Összefoglalás A Vállalkozói Portál Rendszer fejlesztése befejeződött. A rendszer éles helyzetben is használható, de néhány szükséges változatást és bővítést még el kell végezni rajta. A fejlesztés során megismertem a portálok különböző moduljait, a JAVA programozási nyelv webes könyvtárait és a Spring keretrendszert. Bár mindhárom területen vannak még hiányosságok és ismeretlen területek, azért az alapokon túl néhány további részt is sikerült elsajátítanom. A portál végleges verziója 2006 közepére várható. A jelenlegi verzió elérhető a http://molnarl.hdsnet.hu/vpr oldalon.
111
6. Irodalomjegyzék 6.2
Nyomtatott média
-
Angster Erzsébet: Objektumorientált tervezés és programozás .- 4 Kör Bt., 2002.
-
Vég Csaba: Alkalmazásfejlesztés .- Logos 2000 Bt., 1999.
-
Hans Bergsten: JavaServer Pages .- Oreilly-Kossuth kiadó, 2001.
-
Raffai Mária, Kovács Katalin, Tóth Dániel: Objektum-orientált alkalmazás-fejlesztés 3, Novodat, 2002
-
Jason Hunter: Java szervletek programozások .- Oreilly-Kossuth kiadó, 2002
-
Szelezsán János: Adatbázisok .- LSI, É.n.
-
Kupcsikné Fitus Ilona: Adatbázisok, példatár .- LSI, É.n.
-
Nyékyné Gaizler Judit: J2EE, Útikalaúz Java programozóknak .- ELTE TTK, 2002
-
Sipos Marianna: Programozás élesben .- InfoKit, 2004
6.3
Online média
-
JAVA: http://java.sun.com/
-
Tomcat: http://jakarta.apache.org/tomcat/
-
MySQL: http://www.mysql.com/
-
Spring keretrendszer: http://www.springframework.org/
-
Java vs .Net: http://java.oreilly.com/news/farley_0800.html
-
Eclipse IDE: http://www.eclipse.org/
-
Eclipse UML: http://www.omondo.com/
-
ServerSide: http://www.theserverside.com/
-
JavaWorld: http://www.javaworld.com/
-
Prog.hu: http://www.prog.hu/
-
BME Java lista: http://javasite.bme.hu:8081/levlista/index.jsp
-
Tervezési minták: o Data Access Object (or DAO) pattern: http://java.sun.com/blueprints/patterns/DAO.html o IoC pattern: http://www.onjava.com/pub/a/onjava/2004/10/20/springaop2.html o Overview of framework architecture: http://www.onjava.com/pub/a/onjava/2004/04/07/wiringwebapps.html
112
Mellékletek A. Forráskód (src) A forráskód nem szerepel nyomtatott formában csak mellékletként a CD-n.
B. Felhasznált programok teljes listája -
Windows XP, Windows 2003 Server Java JDK 1.4.2 és 1.5 (verzióváltás) MySQL 4.0.18 MySQL Front 2.5 és 3.2 (verzióváltás) Tomcat 5.0.28 és 5.5.4 (verzióváltás) MS Access (adatbázis logikai tervezése) DBDesigner 4 (adatbázis fizikai tervezése) Eclipse 2.1.3 és 3.0.2 (verzióváltás) MS Paint (képek) MS FrontPage (HTML és JSP szerkesztés) Internet Explorer 6, Mozilla 1.0
C. Teljes osztályleírás (JavaDoc) A JavaDoc osztályleírás nem szerepel nyomtatott formában csak mellékletként a CD-n.
113
D. Programozási nyelvek összehasonlítási táblázat PHP PHP Programozási nyelv Alapnyelv/Szintaktika Fejlesztési környezet
C Sok ingyenes, akár egyszerű editor.
Programozási platform .NET JAVA (J2EE) Bármely támogatott Java (JSP, szervletek, (C#, Visual Basic, Bean-ek) ASP) C++, JAVA C++ MS Visual Studio, Sok ingyenes WebMatrix, Sharp (Eclipse, NetBeans) Develop és kereskedelmi.
Bármely Nem egységes Közepesen sok (főként webes projecktekhez) Sok, ingyenes és kereskedelmi mindig fordít (lehet cache-elni) Kicsi nagyon gyors közepes, erőtejes lassúlás Alig Rövid Rövid
Microsoft ODBC Sok
Bármely JDBC/ODBC Sok (+ J2ME mobilhoz)
Kevés, főként kereskedelmi egyszer fordít
Sok, ingyenes és kereskedelmi egyszer fordít
Nagy gyors gyors
Közepes gyors gyors
Teljes Hosszú Közepes
Teljes Hosszú Közepes
Hosszú
Rövid
Rövid
Könnyű, de nehézkessé válhat a projekt nővekedésével XML, SOAP Nehezen elkülöníthető 3-4 alapvető réteg szerint. Egyéni fejlesztők Szinte nincs Rengeteg
Könnyű
Könnyű
Alap XML, SOAP Könnyen elkülöníthető 3-4 alapvető réteg szerint. Microsoft Erős Kevés
SOAP, CORBA, XML Könnyen elkülöníthető 3-4 alapvető réteg szerint.
1995, (1998 - PHP4, 2004 - PHP5)
2000/2001
Megjelenés
Ár/Teljesítény/TCO
Ingyenes, kisebb rendszerekre, alacsony.
Kereskedelmi, nagyobb rendszerekre, magas.
1993, (1997 szervletek, 1999 JSP) Ingyenes és kereskedelmi, nagyobb rendszerekre, magas.
Futtatási környezet Adatbázis kezelés Alapkönyvtárak Bővített könyvtárak (3rd party) Működés Hardverigény Sebesség (kis projekt) Sebesség (nagy projekt) OO Tanulási idő Fejlesztési idő (kis projekt) Fejlesztési idő (nagy projekt) Továbbfejlesztési lehetőségek Átjárhatóság Csoportmunka támogatás Háttértámogatás Marketing Magyar tárhelyszolgáltatók száma
Alap (PHP 5) Nehéz Sok (főként kezdők, Fejlesztők (community) kevés profi) Kivételkezelés Hibakeresés
114
Teljes Könnyű Közepesen sok (főként profik)
SUN, IBM Közepes Kevés
Teljes Nagyon könnyű Sok (főként profik)
E. Adatbázis táblák és kapcsolataik részletes leírása Adatbázis: vpr Tábla: country Comment: Országok
Indexek: Név Típus PRIMARY countryId country_id countryId
Mezők: Név Típus NULL Alapérték Extrák Leírás countryId char(3) Az ország azonosítója name varchar(50) NULL Az ország neve
Data: countryId name eng Anglia ger Németország hun Magyarország usa Egyesült Államok
Tábla: download Comment: Letoltesek
Indexek: Név Típus PRIMARY downloadId downloadId downloadId
Mezők: Név Típus NULL Alapérték Extrák Leírás downloadId int(10) unsigned auto_increment A letöltés azonosítójat siteId int(10) unsigned 0 A honlap azonosítója fileName varchar(255) NULL A fájl adott neve realFileName varchar(255) NULL A fájl igazi neve size int(10) unsigned NULL Méret description varchar(255) NULL Leírás
Tábla: faq Comment: FAQ
Indexek: Név Típus PRIMARY faqId faqId faqId
Mezők:
115
Név faqId
Típus
NULL Alapérték
int(10) unsigned
Extrák
Leírás
auto_increment A FAQ azonosítója
question varchar(255)
NULL
Kérdés
answer varchar(255)
NULL
Válasz
Tábla: favorite Comment: Kedvencek, Partnerek
Indexek: Név Típus PRIMARY favoriteId favoriteId favoriteId
Mezők: Név favoriteId siteId name url description
Típus NULL Alapérték Extrák Leírás int(10) unsigned auto_increment A kedvenc azonosítója int(10) unsigned 0 A honlap azonosítója varchar(60) NULL 0 Név varchar(255) NULL Hivatkozás varchar(255) NULL Leírás
Tábla: firm Comment: Cegek
Indexek: Név
Típus
PRIMARY firmId
Mezők: Név Típus NULL Alapérték Extrák Leírás firmId int(10) unsigned auto_increment A cég azonosítója firmName varchar(50) NULL A cég neve email varchar(30) A felhasználó azonosítója countryId char(3) Az ország azonosítója zip int(4) unsigned NULL Irányítószám city varchar(60) NULL Város address varchar(50) NULL Cím phoneNr varchar(30) NULL Telefonszám
Tábla: forum Comment: Forum adatai
Indexek: Név Típus PRIMARY forumId
Mezők: Név Típus NULL Alapérték Extrák Leírás forumId int(10) unsigned auto_increment A fórum azonosítója topicPerPage int(3) unsigned NULL 10 Topikok száma oldalanként maxTopic int(3) unsigned NULL Maximális topikszám a fórumban
116
Data: forumId topicPerPage maxTopic active 1 20 999 1
Tábla: forumpost Comment: Forum valasz
Indexek: Név Típus PRIMARY forumPostId forumPostId forumPostId
Mezők: Név Típus NULL Alapérték Extrák Leírás forumPostId int(10) unsigned auto_increment A hozzászólás azonosító email varchar(30) A hozzászóló (felhasználó) azonosítója topicId int(3) unsigned 0 A tartalmazó topik azonosítója post varchar(255) NULL A hozzászólás szövege
Tábla: news Comment: Hirek
Indexek: Név Típus PRIMARY newsId newsId newsId
Mezők: Név newsId siteId title newsBody
Típus NULL Alapérték Extrák Leírás int(10) unsigned auto_increment A hír azonosítója int(10) unsigned 0 A honlap azonosítója varchar(100) NULL A hír címe varchar(255) NULL A hír szövege
Tábla: newspaper Comment: Hírlevél
Indexek: Név Típus PRIMARY newsPaperId newsPaperId newsPaperId
Mezők: Név newsPaperId title newsPaperBody sendDate
Típus NULL Alapérték Extrák Leírás int(10) unsigned auto_increment A hírlevél azonosítója varchar(100) NULL Cím varchar(255) NULL Szöveg timestamp(14) 00000000000000 A küldés dátuma
117
Tábla: poll Comment: Szavazas
Indexek: Név Type PRIMARY pollId
Mezők: Név Típus NULL Alapérték Extrák Leírás pollId int(10) unsigned auto_increment A szavazás azonosítója pollQuestion varchar(255) NULL Kérdés
Tábla: pollanswer Comment: Szavazas valasz
Indexek: Név Type PRIMARY pollAnswerId pollAnswerId pollAnswerId
Mezők: Név
Típus
NULL Alapérték
pollAnswerId int(10) unsigned
Extrák
Leírás
auto_increment A szavazásválasz azonosítója
pollId
int(10) unsigned
pollAnswer
varchar(255)
0
pollNr
int(10) unsigned NULL
NULL
A szavazás azonosítója Válasz A kapott szavazatok száma
Tábla: product Comment: Termekek
Indexek: Név Típus PRIMARY productId productId productId
Mezők: Név productId siteId taxRateId name price description
Típus NULL Alapérték Extrák Leírás int(10) unsigned auto_increment A termék azonosítója int(10) unsigned 0 A honlap azonosítója int(3) unsigned 0 A adókulcs azomosítója varchar(120) NULL A termék neve int(10) unsigned NULL Ár varchar(255) NULL Leírás
Tábla: site Comment: Honlapok
118
Indexek: Név Típus PRIMARY siteId siteId siteId
Mezők: Név Típus NULL Alapérték Extrák Leírás siteId int(10) unsigned auto_increment A honlap azonosítója firmId int(10) unsigned 0 A cég azonosítója templateName varchar(30) A sablon neve name varchar(30) NULL 0 A honlap neve description text Leírás bannerTitle varchar(50) NULL A banner felirata copyright varchar(50) NULL A copyright felirat webmaster varchar(80) NULL A webmester emailcíme
Tábla: taxrate Comment: Adokulcs
Indexek: Név Típus PRIMARY taxRateId
Mezők: Név Típus NULL Alapérték Extrák Leírás taxRateId int(3) unsigned auto_increment Az adókulcs azonosítója taxRate int(3) unsigned NULL 0 Adókulcs
Data: taxRateId taxRate 1 10 2 12 3 25
Tábla: template Comment: Sablonok
Indexek: Név Típus PRIMARY templateName templateName templateName
Mezők: Név Típus NULL Alapérték Extrák Leírás templateName varchar(30) 0 A sablon azonosítója (neve) cssPath varchar(255) NULL A sablon css fájl elérési útja
119
Data: templateName cssPath Blue sky ../css_design/blue_sky.css Green leaf ../css_design/118.css Green leaf right ../css_design/green_leaf_right_menu.css Green leaf top ../css_design/118_felso_menu.css Red mars top ../css_design/118_red_felul.css Standard ../css_design/std.css
Tábla: topic Comment: Topikok
Indexek: Név Típus PRIMARY topicId topicId topicId
Mezők: Név Típus NULL Alapérték Extrák Leírás topicId int(3) unsigned auto_increment A topik azonosítója email varchar(30) A létrehozó (felhasználó) azonosítója forumId int(10) unsigned 0 A tartalmazó fórum azonosítója title varchar(100) NULL A topik címe createDate timestamp(14) A létrehozás időpontja lastModDate timestamp(14) 00000000000000 A utolsó hozzászólás időpontja
Tábla: user Comment: Felhasznalok
Indexek: Név Típus PRIMARY email email email
Mezők: Név Típus NULL Alapérték Extrák Leírás email varchar(30) A felhasználó azonosítója userTypeId varchar(4) A felhasználó típusa password varchar(20) 0 Jelszó lastName varchar(20) NULL Vezetéknév firstName varchar(15) NULL 0 Keresztnév countryId char(3) Az ország azonosítója zip int(4) NULL 0 Irányítószám city varchar(60) NULL Város address varchar(50) NULL 0 Cím phoneNr varchar(30) NULL Telefonszám
Tábla: usertype Comment: Felhasznalok tipusa
120
Indexek: Név
Típus
PRIMARY userTypeId userTypeId userTypeId
Mezők: Név Típus NULL Alapérték Extrák Leírás userTypeId varchar(4) A felhasználó típusának azonosítója name varchar(30) NULL A felhasználó típusa
Data: userTypeId name admi Adminisztrátor root Rendszergazda user Felhasználó
121