www.huro-cbc.eu
Algoritmus terv
Algoritmus általános áttekintése
Inputok és outputok definiálása
Folyamatok meghatározása
Készült az Agóra Alapítvány részére Kelt Budapesten, 2012. augusztus 24-én
TeTT Consult www.tettconsult.eu
Az algoritmus terv az Elastic Survey: The Creation of the Elastic Survey editor c. projekt keretében készült. Az Elastic Survey projekt a Magyarország-Románia Határon Átnyúló Együttműködési Program 20072013 keretében valósul meg (www.huro-cbc.eu), az Európai Unió támogatásával, az Európai Regionális Fejlesztési Alap valamint a Magyar Köztársaság és Románia társfinanszírozásával. A program célja közelebb hozni egymáshoz a határmenti térségben élő embereket, közösségeket és gazdasági szereplőket az együttműködésbe bevont térség közös fejlesztésének elősegítése érdekében, a határmenti térség alapvető erősségeire építve. Vezető Partner: Agóra Alapítvány a Társadalomkutatásért Projekt Partner: Asociația Infotour Carei Projekt teljes költségvetése: 49.400 Euro ERFA támogatás: 41.595 Euro A jelen tanulmány nem feltétlenül tükrözi az Európai Unió hivatalos álláspontját.
2
Tartalomjegyzék Algoritmus általános áttekintése ............................................................................................................ 4 Inputok és outputok definiálása .............................................................................................................. 6 A honlap felépítése.............................................................................................................................. 6 A honlap szerkezete ............................................................................................................................ 7 Inputok és outputok a honlapon ......................................................................................................... 8 A nap kérdése elem ........................................................................................................................... 11 Folyamatok meghatározása .................................................................................................................. 14
3
Algoritmus általános áttekintése Az Elastic Survey Editor (Rugalmas Kérdőívszerkesztő) program működését a nap kérdése elemen keresztül dolgoztuk ki és mutatjuk be. A kérdőívszerkesztő újítása, hogy az előre megadott válaszokon kívül további válasz opciók is megadhatók, amik aztán a további válaszolók esetében mint előre megadott válasz opció fog jelentkezni. Ily módon a kérdőív a gyakorlatban tovább fejleszti magát, változik, és igazodik a válaszadókhoz. A felülete egy honlap lesz, így az adatbázis az online kitöltött kérdőívekkel folyamatosan frissülni fog.
Elastic survey – nap kérdése Nap kérdése html elem
Kutatói felhasználói felület
- Megjeleníti a nap kérdését beágyazott módon bármilyen honlapon - Itt adnak választ a megkérdezettek - Itt hozhatnak létre saját válaszokat - Itt jelennek meg a felhasználók által megadott válaszlehetőségek - Html és jQuery-t használ
- Honlap - Kutatók felhasználói felülete - Itt regisztrálhatnak, hozhatnak létre és szerkeszthetik kérdőíveket a kutatók - Ezen a felületen lehet letölteni kérdőívek eredményeit - Itt található a legenerált, beágyazható Html kódja a nap kérdésének
- Válaszok - Új válaszok - Metadata
- Autentifikálás - Kérdőív létrehozási és szerkesztési kérések - Kérdőív cél honlapjának adatai
- Html iniciáló kód - Kérdés szövege - Válasz lehetőségek - Metadata
Backend
- Lementett kérdőív adatai - Kérdőívek tartalma - Kérdőívek tartalma menthető formában - Nap kérdése b á h ó kód
Asp.net mvc program
Adatbázis
- Szoftver logikai központja - Ez a komponens kezeli a kutatói felhasználói felület kéréseit - Ez a komponens ír és olvas az adatbázisban Ez a komponens generálja a nap kérdésének felhasználói felületét
- Itt vannak tárolva a kutatók felhasználói információi - Itt vannak tárolva a kérdőívek - Itt lesznek tárolva a megkérdezettek által bevezetett válaszok - Kizárólag a backend programja fér hozzá
1. ábra: A nap kérdése elem áttekintése
Az Elastic Survey – a nap kérdése alkalmazás az négy fő összetevőből áll: a felhasználó felület, ahol megjelenik a nap kérdése, és ahol válaszadók válaszolhatnak a kérdésre; a kutatói felhasználó felület, 4
ahol a nap kérdéseit létre lehet hozni; a program, amely az alkalmazás logikai komponense; illetve az adatbázis, ahol tárolva vannak a felhasználók hozzáférési adatai és a nap kérdéseinek táblái. Ezen összetevők közül a kutatói felhasználói felületet, amely egy honlap a frontendnek nevezzük, a háttérben működő, a felhasználók számára láthatatlan program és adatbázis a backend-et képezi. A kutatói felhasználói felület az egy olyan honlap, melynek segítségével rugalmas nap kérdése típusú kérdőívet lehet létrehozni. A honlapon a kérdőívek szerkesztése akkor elérhető, ha a kutató regisztrál. Regisztráció után új kérdőívet lehet létrehozni és lementeni, régieket lehet módosítani, illetve le lehet tölteni kérdőívek kitöltött tábláit is. A nap kérdése felhasználói felület egy Html elem, amelyet egy már létező honlapba be lehet illeszteni. Ez a komponens tartalmazza a nap kérdését, illetve a megadható válaszok listáját. Ellentétben más nap kérdése jellegű felületekkel, a kitöltők ezen a felületen a kérdésekre saját választ is adhatnak. Amennyiben saját válasz adása mellett döntenek, a program frissíti a kérdés tábláját, és ez az új válaszlehetőség mindenki számára megjelenik, aki a felületet látogatja, olyan módon, mintha ez egy előre meghatározott válaszlehetőség lenne. Ettől válik rugalmassá a nap kérdése. Válaszadás után ezen a felületen megjelenik egy grafikon, mely ábrázolja az eddigi válaszok összesítését, természetesen ezt a funkciót le lehet tiltani még akkor, mikor a kutató szerkeszti a nap kérdését. A program feladata az alkalmazás logikai hátterének biztosítása. Amikor egy kutató bármilyen folyamatot kezdeményez a kutatói felhasználói felületen, akkor ezeket a kéréseket a program átveszi, és elvégezteti a feladatokat az adatbázison (regisztráció, nap kérdésének szerkesztése, táblák letöltése). Miután egy kutató véglegesített egy kérdőívet, a program feladata a Html felhasználó elem generálása, melynek végterméke egy olyan Html komponens, melyet be lehet ágyazni egy már létező honlapba. Ez e generált Html elem olyan egyszerű és érthető kell legyen, mint egy Youtube embed. Az alkalmazás minden információt az adatbázisban tárol. Az adatbázisnak három típusú táblára lesz szüksége. Az első típusú táblából összesen csak egyre lesz szükség, ez fogja tartalmazni a regisztrált felhasználók adatait (felhasználónév, titkosított jelszó, név, elérhetőség). A második táblából annyira lesz szükség, ahány felhasználó van, ez fogja rendszerezni az összes kérdőívet, amit egy kutató készített. A harmadik táblatípus az a nap kérdését, megadható válaszokat és megadott válaszokat tartalmazza, ebből a típusból annyi tábla lesz, ahány nap kérdése jelegű kérdőív összesen.
5
Inputok és outputok definiálása A honlap felépítése A jól megtervezett honlap az alapja a rendszer jó működésének. Ezen a felületen lehet ugyanis bevinni az adatot (input) és kinyerni is (output). A jól megtervezett felület vezet az eredményes munkafolyamathoz, az pedig az elégedett felhasználóhoz. Célunk,hogy a rugalmas kérdőívezés elsőre bonyolultnak tűnő struktúráját olyan egyszerű és logikus lépésekre bontsuk, hogy azt minden kutató megértse, és könnyen használni tudja. A honlappal kapcsolatos elvárások, követelmények: •
•
•
•
•
•
•
•
Átlátható, szellős elrendezés. Egyértelműen meg kell jelennie a választási lehetőségeknek és az információknak rögtön a főoldalon. A szövegeknek jól olvashatónak kell lennie mind betűméretet, betűtípust, sorhosszt, mind pedig a hátteret illetően. A stílust következetesen minden oldalon alkalmazni kell. Világos szerkezetű felosztás. A menüpontok egyértelműen meghatározottak, nincs keresztbe hivatkozás. Az egyes menüpontoknál egyértelmű, hogy arra kattintva hova fog jutni a látogató. A menüpontok a felső menüsorból minden oldalról elérhetők, ám a főoldalon röviden kifejtésre is kerülnek ezek a funkciók. Informatív. Egy honlapnál nagyon fontos, hogy rögtön a főoldalon kiderüljön, hogy miről szól a lap, milyen belső tartalmakkal fog találkozni rajta a látogató. Ezt esetünkben a „Mi a rugalmas kérdőívezés” és a „Take a tour” menüpontok jelentik. Kontakt információk. Nem szabad lefelejteni egy honlapról az elérhetőségeket, email címet, telefonszámot ahol a készítőkkel fel lehet venni a kapcsolatot, illetve segítséget lehet kérni a kérdőívszerkesztéshez. Mindent el lehet érni a főoldalról. A könnyű navigáció nagyon fontos egy honlapnál, a látogatónak mindig tudnia kell, hogy éppen hol tartózkodik a struktúrában és mik a választási lehetőségei. A böngészés során minden menüpont elérhető kell legyen minden oldalról, ezzel egyszerűvé téve a menüpontok közötti váltást. Illeszkedik a szakma standardjához. Egy felhasználó számára az is fontos szempont, hogy a megszokott formulákkal, más hasonló oldalakról megismert megoldásokkal találkozzon, ezzel egyszerűsítve a felület használatát. Bemutatja a mintákkal a végterméket. Így a kutató tudja, hogy mire számítson, hogy milyen kérdőívet tud létrehozni, mik a lehetőségei a kérdőívkészítésnél. Ez amellett, hogy megkönnyíti a használatot, szintén a bizalmat növeli a honlappal szemben, a felhasználó azonnal tudja, hogy nem zsákbamacskát kap. Illeszkedjen minden böngészőhöz. Egyértelműnek tűnik, de nagyon fontos szempont amire oda kell figyelni egy honlap készítésénél, hogy minden böngészővel kompatibilis legyen. A programozáskor kell arra is figyelni, hogy kicsinyítésnél/nagyításánál megmaradjon az eredeti honlapszerkezet, ne essen szét a lap.
6
A honlap szerkezete
2. ábra: A honlap képe
A menügombok a következő funkciókkal bírnak: Főoldal – bármelyik alpontból visszairányít a főoldalra. Ez egyszerűvé teszi a navigációt, mert van egy fix pont, ahova minden menüpontból vissza lehet jutni. A főoldalról újra lehet kezdeni a keresést, mert onnan minden menü elérhető. Rugalmas kérdőívezés – a módszer részletes ismertetése. Ebben a menüpontban lehet megismerni a rugalmas kérdőívkészítés és feldolgozás módszertanát, annak előnyeit és felhasználási módjait. Bemutató (take a tour) – ismerteti a rugalmas kérdőívszerkesztés menetét, részletesen kifejtve az egyes lépéseket. Ennek megtekintése minden új felhasználó számára ajánlott, ami külön ki is lesz emelve a főoldal felületén. Új kérdőív – csak bejelentkezett felhasználók látják. Itt lehet elkezdeni az új kérdőív szerkesztését, a kérdőív generálásától az elmentéséig. Kérdőíveim – csak bejelentkezett felhasználók láthatják. Itt lehet megtekinteni és szerkeszteni a korábban elkészített, lementett, de még nem publikált kérdőíveket. Ebben a menüben van lehetőség a publikálásra (weboldalra történő kihelyezésre) is 7
Bejelentkezés, regisztráció – új felhasználók itt tudnak regisztrálni, regisztrált felhasználók bejelentkezni. Fenti menüsorban levő gombok a főoldalon is megjelennek rövid magyarázattal. Az Új kérdőív és a Kérdőíveim gombok itt a bejelentkezés/regisztráció felületre vezetnek. Minta nap kérdése– a programmal készített mintákat lehet megtekinteni.
Inputok és outputok a honlapon
Kutató
1. Regisztráció, belépési adatok 2. Új kérdőív kérés 3. Új kérdőív kérdésének és válaszlehetőségeinek meghatározása 4. Kérdőív mentése 5. Kérdőív szerkesztési kérés 6. Kérdőív beágyazási kérés, paraméterekkel 7. Kérdőív táblájának exportálási kérése
Kutatói felhasználói felület
Kérések továbbítása
Kutatói felhasználói felület
0. Hibaüzenet 1. Belépéssel járó felhasználói felület 2. Új kérdőív forma megjelenítése 3. Új kérdőív megjelenítése hozzáadott válaszlehetőségekkel, kérdéssel 4. Kérdőív mentésének megerősítése 5. Lementett kérdőív megjelenítése 6. Beágyazott kérdőív kód formában való megjelenítése 7. Exportált kérdőív tábla elérhetősége
Backend
3. ábra: Inputok és outputok a honlapon
Egy kutató az információ bevitelét a rendszerbe a kutatói felhasználói felület segítségével érheti el, ez tulajdonképpen egy honlap, ahol a kutató a kéréseit gombok megnyomásával, mezők kitöltésével továbbíthatja a programhoz. A program kimenete ugyancsak a honlap keretén belül tekinthető meg.
8
1. Regisztráció A regisztrálási gombra való kattintással a felhasználó a regisztráció oldalra navigál. Bemenet: A következő adatokat szolgáltatnia kell a felhasználónak a regisztrációhoz: kívánt felhasználónév, kívánt jelszó, név, elérhetőség (e-mail).
Kimenet: Amennyiben a megadott információk helytelenek (bármelyikük hiányzik, nem elég hosszú a jelszó, nem létező e-mail cím vagy már használatban lévő e-mail cím), akkor a rendszer hibaüzenetet jelez, és megkéri a felhasználót a helyesbítésre. Amennyiben minden információ helyes, a rendszer visszajelzi, hogy sikeresen létre lett hozva a felhasználói fiók. Amikor ez megtörténik, akkor a honlap menüben megjelenik két új gomb: Új kérdőív, Kérdőíveim.
2-4. Új kérdőív létrehozása: Az Új kérdőív gombra vagy menüpontra kattintva, a felhasználó az új kérdőív oldalra navigál. Kimenet: Ha bármelyik kötelező mező hiányosan van kitöltve, a rendszer visszajelez, nem lehet hiányosan publikálni nap kérdését. Ha minden mező helyesen van kitöltve, akkor a rendszer megjeleníti a végleges változatát a kérdőívnek, és megnyomhatóvá válik a mentés gomb.
Bemenet: A nap kérdéséhez a következő mezőket kell kitölteni: kérdés mező, választható válaszok mező (legalább két választ kell meghatározni)
5. Kérdőív szerkesztése Publikálás előtt a felhasználóknak esélyük van változtatni a nap kérdésén. Ez a lehetőség megszűnik, amint egy nap kérdésének a publikálási folyamatát befejezi a felhasználó. Ez annak érdekében fontos, hogy következetes és helyes eredményhez vezessen a kérdőív. Bemenet: A kérdőíveim gombra vagy menüpontra kattintva a felhasználó egy listából kiválaszthatja, hogy melyik nap kérdését szeretné módosítani. Ebben a listában megjelennek a publikált kérdőívek is, de ezeket módosítani nem lehet. Amint a felhasználó kiválasztott egy kérdőívet, megjelenik a kérdőív kezelő oldal, ahol különböző műveleteket hajthat végre a kérdőívén, egyik lehetőség a módosítás, ha erre kattint, akkor módosíthatja a kérdőívet.
Kimenet: A rendszer megjeleníti a kérdőívet, és ezt módosítani lehet, akárcsak egy új kérdőívet, a vele járó folyamatok azonosak.
9
6. Kérdőív beágyazása Egy sikeresen lementett kérdőív az megosztásra készen áll, közzétevés végeredménye az a Html nap kérdését tartalmazó elem, melyet be lehet ágyazni egy honlapba. Bemenet: A kérdőíveim menüponton keresztül a felhasználó eljut a kérdőíveit tartalmazó listához, itt kiválasztja a közzétételre szánt kérdőívet, rá kattintva megjelenik az közzététel opciója. Ez egy olyan oldalt nyit meg, ahol a felhasználó testreszabhatja a nap kérdésének grafikai megjelenítését. Alkalma lesz kiválasztani a színeket, betűtípust illetve a Html elem méretét.
Kimenet: A megadott információk alapján a program legenerálja a nap kérdése elem beágyazható kódját, és ezt megjeleníti a felhasználó számára. Ha a felhasználó ezentúl megnyitja a jelenlegi kérdőíve oldalát, akkor ez a kód folyamatosan elérhető lesz mostantól fogva. Ezt a kódot bármilyen honlapba könnyen be lehet illeszteni egy másolás és beillesztéssel.
7. Kérdőív táblájának exportálása Egy már lezárt vagy még futó kérdőív táblázatát is le lehet tölteni a felhasználói felületről. Bemenet: A kérdőívek listájáról rá lehet kattintani egy kérdőívre, ami előhozza a kérdőív oldalát. Itt az egyik elérhető művelet a kérdőív táblájának exportálása.
Kimenet: Ha a felhasználó kérvényezi a tábla letöltését, akkor a program exportálja az adatbázisból az adott kérdőív tábláját, és a letöltési linket megjeleníti a felhasználó számára. Az export terméke egy Excel táblázat, melyet excelben vagy spss-ben meg lehet nyitni, és ott tovább lehet értelmezni. A letöltött tábla tartalmazza az összes eddig gyűjtött választ.
A kérdőívszerkesztés folyamatának eredménye egy felhasználói felület, ezt a felületet, lehet beágyazni más honlapokba, ez tartalmazza a nap kérdését. A beágyazás folyamata a felhasználó számára igen egyszerű egy html kód segítségével. Ezt a módszert ismerhetjük a youtube videó beágyazásából, ahhoz hasonlóan történik (embedded). Ily módon ugyanazt a nap kérdését több honlapba is be lehet ágyazni.
10
A nap kérdése elem
4. ábra: A nap kérdése elem megjelenítése
Alapállásban az első illusztráció jelenik meg, a kérdés alatt megjelennek a válaszlehetőségek, és az új válasz lehetőség. Ez nagyon fontos, hogy már rögtön megjelenésében különbözzön a korábban megszokott Egyéb, éspedig… válaszlehetőségtől. A kérdőjelre mutatva itt meg is jelenik a kérdőív működésének részletes leírása. Az egér kurzora mellett egy kis ablakocskában látja a felhasználó, hogy mi is az a rugalmas kérdőív: az új választ csatolásával új válasz opció keletkezik, azaz a későbbiekben választ adó emberek számára is megjelenik az ő válasza a listában. Ezek a válasz opciók minden beágyazott nap kérdésében meg fognak jelenni, amivel minden egyes válaszadó egyben a kérdőív szerkesztésében is részt vehet. Az új válasz opció kiválasztása után megjelenik a felület, ahol a válaszadó beírhatja a saját válaszát. Ez a válasz opció fog megjelenni a későbbiekben a további válaszadók előtt, mint válasz opció. Miután a válaszadó válaszolt a kérdésre, azonnal megjelenik a kutatás eddigi eredménye, azaz az eddig adott válaszok százalékos eloszlása. Ez a kérdőív outputja, ami minden válaszadó előtt látható. A kérdés és a válasz opciók felületének megjelenésébe a kutatónak is van beleszólása. Ő választja ki a betűtípust, betűméretet és háttérszínt, de a struktúra előre meghatározott lesz. ez azért fontos, mert ennek a felületnek is teljesítenie kell a honlappal szemben is támasztott követelményeket, vagyis hogy átlátható, világos szerkezetűnek kell lennie, jól olvasható formában megjelennie.
11
Felhasználó
1. Válasz kiválasztása 2. Kérdőjelre kattintás 3. Új válasz meghatározása 4. Beküldés
Html elem
Kérések továbbítása
Html elem
0. Potenciális hibaüzenet 2. Visszaküldi a leírását a rugalmas kérdőívezésnek 3. Új válasz hozzá lett adva a meghatározott válaszok listájához, frissítés küldése a Html elemhez 4. Válasz le lett mentve az adatbázisban, statisztika továbbítása a felhasználói felületre
Backend
5. ábra: A nap kérdése elem felépítése
Egy válaszadó az információ bevitelt a rendszerbe (válaszadás a nap kérdésére) egy honlapra beágyazott Html nap kérdése elem segítségével teheti meg. Ez a felület több honlapon is azonos formában jelenik meg, ezt a felületet bárhány honlapra is fel lehet tölteni. A válaszadó, azon kívül, hogy a már betáplált válaszlehetőségek közül választ, létrehozhat saját opciót is, és ezt betáplálhatja a rendszerbe, mely folyamatnak köszönhetően válik a rendszer rugalmassá. 1. Válasz kiválasztása Bemenet: A felhasználó számára megjelenik egy lista a megadható válaszokkal, amennyiben talál olyan választ, mely szerinte megfelelő a kérdésre, akkor bejelöli a válasz mellett található gombot, majd a beküldés gombra kattintva elküldi a választ.
Kimenet: Amennyiben a válasz technikai szempontból helytelen volt (nem volt kiválasztva egy válasz sem), a rendszer hibaüzenetet küld vissza, és helyesbítést kér. Ha ki volt választva egy válaszlehetőség, akkor a rendszer visszajelez, hogy a felhasználó megadta a válaszát és frissíti a Html nap kérdése elemet, hogy arról a gépről ne lehessen még egyszer választ adni.
12
2. Kérdőjelre kattintás A Új válasz gomb mellett látható kérdőjelre kattintva egy kitöltő azt tudhatja meg, hogy miért is rugalmas ez a rendszer, és hogy milyen hatása van annak, ha ő egy új választ határoz meg. Kimenet: Miután a kérdőjel gombot megnyomja a felhasználó, a rendszer egy kis ablakocskát jelenít meg az egér kurzora mellett, mely leírja tömören azt, hogy az általa meghatározott új válasz lehetősége ezen túl minden felületen a választható válaszok listájába bekerül (bővül a meghatározott válaszok listája). 3. Új válasz megadása Bemenet: A kitöltő az új válasz gombra kattint
Kimenet: A rendszer az új válasz gombot kicseréli egy válasz mezőre, majd miután a felhasználó elküldte új válaszát, a program frissíti a Html nap kérdése elemet, és a meghatározott válaszok listájába beilleszti az új választ.
4. Beküldés Kimenet: Válaszadás után a program megváltoztatja a Html elem tartalmát, választ már nem lehet adni arról a számítógépről, ahol már beküldtek egy választ, és megjelenít egy grafikont, mely az eddig adott válaszokat összesíti.
13
Folyamatok meghatározása Felhasználói felületről (honlapról) kezdeményezett folyamatok I.1 Regisztráció kérése, szükséges adatokkal
Felhasználó
Felhasználói felület (honlap)
Kérések továbbítása
I.5 Belépett felhasználói felület megjelenítése
Backend Adatbázis I.4 Felhasználó bevezetése a regisztrált felhasználók listájába
I.3 Kérés a felhasználó adatbázisba való bevezetésére
Program I.2 Regisztráció adatainak ellenőrzése
6. ábra: Felhasználói felületről (honlapról) kezdeményezett folyamatok
Regisztráció A regisztráció folyamatát a felhasználó kezdeményezi. Regisztráció szükséges a többi folyamat elindításához és a felhasználói felület teljes mértékű kihasználásához. Regisztrációkor egy lineáris folyamat megy végbe a rendszerben. A honlapon a regisztráció gombra kattintva a felhasználó megnyitja a regisztrációs ablakot, ahol megadja e kért információkat (név, e-mail, elérhetőség). Amikor megnyomja a „regisztrálok” gombot, akkor a honlap továbbküldi az kérést a programhoz. A program leellenőrzi, hogy a megadott információ minden szempontból helyes-e (minden mező ki van-e töltve, és helyesen van-e kitöltve). Amennyiben az információ hiányosnak bizonyul, a program a honlap keretén belül visszajelez, és igazítást kér. Ha minden megadott információ helyesnek bizonyul a program szerint, akkor továbbküldi ezeket az információkat az adatbázishoz, ahol a program becsatolja az új felhasználót az adatbázis felhasználókat tartalmazó táblájába.
14
Sikeres regisztrációt automatikus belépés követi. A honlapon a bejelentkezés végén a program megjeleníti a honlap teljes felhasználói felületét (használhatóvá válnak az „Új kérdőív” és „Kérdőíveim” menüpontok.
Felhasználó
I.1 Új kérdőív létrehozásának kérése II.1 Kérdés megfogalmazása III.1 Válaszlehetőségek megadása
Felhasználói felület (honlap)
Kérések továbbítása
Backend Adatbázis I.4 Tábla létrehozása, mely a nap kérdésének összes információját tartalmazza II.4 Kérdés csatolása a táblához III.4 Válaszlehetőségek csatolása
I.3 Új tábla létrehozásának kérése az adatbázisban II.3 Kérdés csatolási kérése a táblához III.3 Válaszlehetőségek csatolási kérése
I.5 Kérdőív szerkesztési felület megnyitása
Program I.2 Kérdőív létrehozásának inicializálása II.2 Információ helyességének ellenőrzése III.2 Információ helyességének ellenőrzése
7. ábra: A kérdőív létrehozásának folyamata
A nap kérdése kérdőív létrehozásának és szerkesztésének folyamata csak pár részletben tér el egymástól. Ezt a folyamatot felhasználó kezdeményezi a honlapról akkor, mikor az Új kérdőív gombra kattint. Ekkor megjelenik a kérdőív szerkesztésének az oldala. A kérdőív létrehozása az három lineáris folyamatból áll. Amikor a felhasználó megnyitja az új kérdőív létrehozására szánt oldalt, akkor a program a háttérben átveszi a kérést, és kérvényezi az adatbázistól az új táblának a létrehozását. Mikor a tábla létrejött az adatbázisban, a felhasználó felületen megjelennek a kérdőívvel kapcsolatos mezők: kérdés és megadható válaszok mezeje.
15
A felhasználó egy mezőben megfogalmazva betáplálja a kérdést, aminek helyességét a program leellenőrzi. Hiba esetén visszajelez a felhasználónak a honlapon keresztül. Amennyiben minden helyes, a program hozzácsatolja az adatbázis táblájához a kérdés szövegét. Ezek után a felhasználó egy mezőbe beírhatja a megadható válaszokat, minden választ külön sorba kell beírni. Ezt az információt a program beilleszti a kérdőív táblájához az adatbázisban. Mindezek után, mikor a kutató lementi az új kérdőívet, akkor az adatbázisban lévő felhasználók táblájában az új kérdőív tábláját hozzácsatolja az adott kutatóhoz (tulajdonoshoz). Ez azért fontos, mert amikor a felhasználó a „Kérdőíveim” menüpontra kattint, akkor ebből a táblából lehet előhívni azokat a nap kérdése kérdőíveket, amelyekhez ennek a kutatónak hozzáférése van. A kérdőív szerkesztés folyamatát bármikor abbahagyhatja a felhasználó, ebben az esetben minden addigi módosítás semmisnek tekinthető.
Felhasználó
I.1 Nap kérdésének publikálási kérése II.1 Nap kérdésének megjelenítési (grafikai) paramétereinek megadása
Felhasználói felület (honlap)
Kérések továbbítása
Backend Adatbázis
I.4 Nap kérdése táblájának lekérése az adatbázistól I.5 Nap kérdése táblájának továbbítása a programhoz
I.3 Publikálási opciók felületének megnyitása II.3 Nap kérdése beágyazási kódjának a megjelenítése
Program I.2 Nap kérdésének beágyazható változatának inicializálása II.2 Nap kérdése Html elemének létrehozása
8. ábra: Html-elem (nap kérdése felhasználói felület) generálásának folyamata
Egy nap kérdése típusú kérdőív közzététele az a folyamat, melynek eredményeképpen a felhasználó egy Html elemet kap, melyet ha beágyaz bármilyen honlapba, akkor ott megjelenik a nap kérdése. Ezt a Html elemet több honlapba is be lehet ágyazni párhuzamosan, mindegyik felületen folyhat attól a ponttól fogva az adatgyűjtés. 16
A Html generálása két lineáris folyamatból áll: A felhasználó a honlapon a kérdőíveim gombra kattint, melynek következtében megjelenik az összes általa szerkesztett nap kérdése. Itt kiválaszthatja a publikálás opciót. Ezt a kérést a felhasználói felület továbbítja a programhoz, mely első lépésben inicializálja a Html elemet, melyet hamarosan feltölt tartalommal. A program lekéri az adatokat az adatbázistól. A második folyamat azzal indul, hogy a felhasználói felületen a kutató beállíthatja a nap kérdésének részleteit grafikus szempontból (milyen színeket használjon, milyen betűtípust). Ezt egy kis beépített szerkesztő keretén belül teheti, ahol egérrel, felhasználóbarát módon állítja be ezeket a dolgokat. Miután ezeket véglegesítette a felhasználó, az információt a felhasználói felület továbbítja a programnak. A program, az adatbázisból kapott információk és a felhasználó által megadott grafikai információk alapján, egy Html elemet generál. Végső lépés az, amikor ezt a Html kódot megjeleníti a felhasználói felületen, ezt a felhasználó kimásolhatja és beillesztheti a cél honlapokba. Beágyazás után teljes mértékben beélesített lesz a rendszer.
17
Felhasználó
I.1 Kérdőív exportálásának kérése II.1 Kérdőív eredményeinek grafikus bemutatása iránti kérés
Felhasználói felület (honlap)
Kérések továbbítása
Backend Adatbázis
I.4&II.2 Nap kérdése táblájának lekérése az adatbázistól I.5&II.3 Nap kérdése táblájának továbbítása a programhoz
I.7 Excel táblázat letöltési linkje II.5 Grafikonok megjelenítése
Program I.2 Excel táblázat inicializálása I.6 Excel táblázat feltöltése az adatbázisból kapott tartalommal II.4 Adatbázis táblája alapján való grafikon generálása
9. ábra: Nap kérdése kérdőív exportálása és megjelenítése
Az alkalmazás nem csupán exportálni tudja a gyűjtött adatokat, hanem grafikusan is meg tudja jeleníteni az információt a felhasználói felület keretén belül. Ez a két megjelenítési forma két külön folyamat. Az kérdőív tábláját letölteni nem csak a nap kérdése lezárása után lehet, hanem bármikor menet közben is alkalom van erre. Ha a felhasználó a kérdőíveim menü ponton keresztül kiválaszt egy kérdőívet, és a kérdőív exportálása gombra kattint, akkor ezzel elindítja az exportálási folyamatot. Ezt a kérést a felhasználó felület a programnak továbbítja, amely következő lépésként létrehoz egy excel táblázatot. Ezek után a program lekéri az adatbázisból a kérdőív teljes tábláját, mely tartalmazza az összes eddig megadott választ. Ezeket az adatokat a program belehelyezi a létrehozott excel táblázatba, majd a szerveren egy export könyvtárban tárolja az állományt (ez az export könyvtár a felhasználó nevén létrehozott könyvtáron belül található). Végső lépésként megjeleníti a letöltési linket a felhasználói felületen, ahonnan a kutató letöltheti a táblázatot. Ezzel a táblázattal tovább lehet dolgozni, értelmezni MS Excel vagy SPSS programok segítségével. Amennyiben a felhasználó grafikusan akarja megjeleníteni a kérdőív tartalmát, akkor a kérdőíveim menüponton belül kiválaszthat egy kérdőívet, és ott a kérdőív megjelenítés gombra kattint. Ezt a 18
kérést továbbítja a felhasználói felület, majd a program lekéri az adatbázisból a kérdőív adatait. Ezeket az adatokat felhasználva grafikont generál a program .jpg kiterjesztésben, és ezt végső lépésként meg is jeleníti a felhasználói felületen.
19