Drupal alapú fejlesztési terv az ubuntu.hu portálhoz
Készítők: Udvari Gábor,
[email protected]
A fejlesztési terv a Creative Commons Atribution-ShareAlike 3.0 Unported licenc alat szabadon terjeszthető, szerkeszthető
Utolsó módosítás: 2012. március 27.
Tartalomjegyzék 1. Fejlesztés célja.......................................................................................................................................................3 2. Fejlesztési terv összefoglalója...........................................................................................................................4 2.1. Kiinduló állapot............................................................................................................................................4 2.2. Célállapot.......................................................................................................................................................4 3. Tervezet feladatok..............................................................................................................................................6 3.1. Fejlesztési infrastruktúrák létrehozása..................................................................................................6 3.2. Drupal 6 frissítése Drupal 7-re.................................................................................................................7 3.3. Új design készítése......................................................................................................................................8 3.4. Ask Ubuntu rendszer megvalósítása......................................................................................................9 3.5. Tartalmat érintő fejlesztések kiadása...................................................................................................11 3.6. Moderációs eszközök fejlesztése...........................................................................................................11 3.7. Tartalmak frissítése az új rendszerre....................................................................................................12 3.8. Karbantartás, utómunkák........................................................................................................................12 4. Fejlesztés menete...............................................................................................................................................13 4.1. Munkacsoport............................................................................................................................................13 4.2. A projektvezető..........................................................................................................................................13 4.3. Feladatok csoportosítása, prioritások...................................................................................................14 4.4. Határidők, mérföldkövek........................................................................................................................14
2
1. Fejlesztés célja A projekt célja, hogy az ubuntu.hu portált egy nagyjából egy éves, intenzív és folyamatos fejlesztés eredményeként a felmerült igények alapján frissítse, átalakítsa. A projekt akkor sikeres, ha a kitűzöt feladatok legalább 65%-át sikerül megvalósítani, valamint a fejlesztés lezártával az új rendszer karbantartásához minimális erőforrás kell (egy-két rendszergazda) és üzemeltetéséhez nem szükséges fejlesztői vagy rendszergazdai tudás (szerkesztők, moderátorok). A fejlesztés idejének korlátozására azért van szükség, hogy az önkéntesek a csatlakozáskor el tudják bírálni, hogy mennyi ideig lennének lekötve a projektben, valamint az új rendszer használóinak csak egyszer kelljen alkalmazkodni a változásokhoz, a fejlesztés ne egy évekig elnyújtot, állandó változási folyamat legyen. Etől függetlenül a fejlesztés alat létrehozot infrastruktúrák és kidolgozot módszerek a későbbi fejlesztésekhez is használhatóak erőforrást megspórolva (és ezt fgyelembe kell venni a tervezéskor). A 65%-nál alacsonyabb megvalósítási arány azt jelentené, hogy az egy éves fejlesztés után még legalább fél év munka lenne hátra, aminek a megvalósítása már erősen függene az önkéntesek további részvételétől és motivációjától. A projekt szintén sikertelen akkor, ha a fejlesztés után a rendszer karbantartása meghaladná a jelenlegi rendszer karbantartási szintjét. Legalább 5 év működtetéssel kell számolni, ebben az időtartamban hibajavításokat, biztonsági frissítéseket kell biztosítani, ha ehhez ketőnél több önkéntesre van szükség, az már kockázatos a munkaerőt tekintve, így a rendszer biztonsága veszélybe kerülne. Az üzemeltetéshez két főnél már jóval nagyobb csoport szükséges, azonban csak akkor lehet egy nagyobb számú önkéntes csoportot toborozni, ha a rendszer üzemeltetéséhez nincs szükség különleges előképzetségre, a szerkesztők és moderátorok munkáját hibátlanul működő, jól tesztelt, felhasználóbarát funkcióknak kell segítenie. A projekt megvalósítása során folyamatosan ellenőrizni kell ezeket a sikerességi tényezőket, ha valamelyik feltétel veszélybe kerül, akkor a fejlesztési folyamaton korrigálni kell, azonban a célokon nem szabad változtatni. A tervezés során fgyelembe kell venni a részfeladatok teljesítésének lehetőségét, nem szabad megengedni, hogy a projekt sikertelensége esetén az összes befektetet munka kárba vesszen, az elkészült részfeladatoknak kivezethetőnek, újrafelhasználhatónak kell lenniük. A projekt sikertelensége nagyban befolyásolja a résztvevő önkéntesek motivációját, egy sikertelen kezdeményezés egy később indítandó (önmagában esetleg sikeres) projektre is rányomja a bélyegét, ezért a siker létfontosságú. Ha ebben vagy egy másik fejlesztési tervben kétséges elemek vannak, akkor azokat még a tervezési szakaszban ki kell javítani, kockázatos projektet nem szabad útjára indítani. 3
2. Fejlesztési terv összefoglalója 2.1. Kiinduló állapot •
Rendszer: Drupal 6.25
•
Regisztrált felhasználók száma (user id alapján): 254400
•
Beküldöt tartalom száma (node id alapján): 294500
•
Beküldöt hozzászólások száma (comment id alapján): 3254800
•
Engedélyezet modulok (becslés a működés alapján): ◦ Core modulok: Aggregator, Blog, Book, Comment, Contact, Forum, OpenID, Path, Poll, Profle, Taxonomy, Tracker, Upload ◦ Harmadik féltől származó modulok: moderációs modul (Moderation1??,), infótábla (saját modul, ami Menu API-ra épít,)
•
Alapértelmezet smink: Ubuntu Drupal Teme 20102??,
2.2. Célállapot •
Rendszer: Drupal 7.x
•
Felhasználók, tartalmak és hozzászólások átkerülnek az új rendszerbe, strukturális átalakítások lehetnek
•
Változások a modulokban: ◦ A core modulokban csak néhány kisebb változás történt a 7-es verzióban, a Profle modul megszűnt, a helyét a felhasználókhoz rendelt mezők veszik át, valamint az Upload modul szerepét a fájl mező veszi át. ◦ A Drupal 8 fejlesztésénél felvetődöt, hogy kikerülnek a magból a Blog, Book, Forum, Poll stb. modulok. Ezek a Drupal 7-re való migrációt egyáltalán nem befolyásolják, de ha a rendszer továbbra is marad Drupal alapokon, akkor a következő átállást megkönnyítendő érdemes ezeket a változásokat fejben tartani. ◦ Book: milyen tartalom használja ezt a modult, A tananyag az Ilias rendszert használja, a súgó milyen rendszert használ, ◦ Forum: felvetődöt, hogy a támogatás hatékonyabb lenne, ha egy Ask Ubuntu/Stack Exchange portálra hasonló rendszer kerülne bevezetésre. Szintén felvetődöt, hogy
1 2
htp://drupal.org/project/moderation htp://drupal.org/project/udtheme-2010 4
a moderátorok munkáját megkönnyítené, ha a fórumtémákat blogbejegyzéssé és fordítva is tudnák konvertálni. A feladatoknál meg kell vizsgálni, hogy ezekre alkalmas-e a core-ban lévő Forum modul. ◦ Harmadik féltől származó modulokra van Drupal 7 frissítési lehetőség, Meg kell vizsgálni, hogy a moderációs modult és az infótáblát egyszerű-e frissíteni vagy ez is külön feladat. ◦ Új, harmadik féltől származó modulok bevezetése, pl.: Media3, WYSIWYG4, Panels5, Views6 ezeket meg kell vizsgálni, beszélni. •
Változások a sminkben: ◦ Felvetődöt, hogy a sminket modernizálni kell. A feladatoknál ki kell rá térni, hogy a modernizálás milyen módon történjen, a változásokat be tudjuk-e vezetni az upstream Ubuntu Drupal Teme ágba vagy szakítsunk velük, ◦ Az új smink teljesen önálló legyen, vagy épüljön valamilyen szülő sminkre, pl.: Zen7, Boron8??, ◦ Plusz modulok, amikre szükség lehet az új témához, pl. Superfsh9, Panels A portál rendszereként érdemes továbbra is a Drupalt használni, mivel a vele épült portálok
jelentősége miat (pl.: ubuntu.com, whitehouse.gov, eu2011.hu), a körülöte kialakult kereskedelmi cégnek (Acquia10) és a nyüzsgő fejlesztői közösségnek (drupal.hu) hála biztosítot, hogy a jövőben is magas színvonalú, nyílt forráskódú termékek érkeznek. A magyar Drupal közösség11 az ország egyik legaktívabb webes közössége, évente tucatnyi programot szerveznek az ország minden táján. Nagy Gusztáv, a Kecskeméti Főiskola oktatója révén a Drupal elsajátításához rendkívül alapos tankönyvek, egyéb oktatóanyagok és tanfolyamok érhetőek el, a Drupal 7 alapismereti könyv megjelenését az FSF.hu támogatja a Szabad Szofver Pályázat 2011-en keresztül12. Az FSF.hu, Ubuntu közösség és a Drupal közösség kapcsolatát a megvalósítás során is igyekezni fogok kihasználni. Palócz István13 (pp) az egyik alapítótagja az Integral Vision Kf.-nek14, egy Drupal szakértői cégnek. Ezen kívül István informatika tanár révén erős kritikával él az informatikai éretségivel kapcsolatban, a VI. Oktatás Informatikai 3 4 5 6 7 8 9 10 11 12 13 14
htp://drupal.org/project/media htp://drupal.org/project/wysiwyg htp://drupal.org/project/panels htp://drupal.org/project/views htp://drupal.org/project/zen htp://drupal.org/project/boron htp://drupal.org/project/superfsh htp://www.acquia.com/ htp://drupal.hu/ htp://nagygusztav.hu/zold-ut-a-drupal-7-konyv-elkeszulesehez htp://palocz.hu/ htp://integralvision.hu/ 5
Konferencián „Az évszázad átverései az informatika éretségin” című előadásával15 ennek hangot is adot, valamint szemmel követi az Ubuntu éretségi remix kiadást is16. Palócz Istvánnal és Kulcsár Zsoltal (az Integral Vision másik alapítójával) a legutóbbi Kell Egy Weblap tanfolyam17 keretében kerültem ismeretségbe. Meg kell említeni Kurucz Istvánt (nevergone), aki a Drupal szakértői munkája mellet az Ubuntu fórumon is gyakran megfordul, mivel fejlesztői környezetéül az Ubuntut választota, és erről gyakran cikkezik18 is. Kurucz Istvánt az OpenArena játékkal kapcsolatban sikerült megismernem. Úgy gondolom, hogy a felsorolt szakértők az Ubuntuval kapcsolatos érdeklődésük miat szívesen adnának néhány tanácsot a projekt Drupal alapú kivitelezéséhez. A Drupal alapú megvalósítás azzal az előnnyel is jár, hogy a résztvevő önkéntes fejlesztőink alaposan megismerkednének a rendszerrel, és a projekt lezárta után a megszerzet tudással tovább segíthetik a szintén Drupal alapú szabad szofveres közösségeket, ilyen pl.: archlinux.hu, gimp.hu, fosszine.org, wesnoth.fsf.hu.
3. Tervezet feladatok A tervezet feladatok nagyjából a megvalósítás időrendjében szerepelnek, részletes beosztáshoz lásd a határidők és mérföldkövek részt. A tervezet időráfordításnál mindig az optimálisnál több időt adunk meg, így nagyobb eséllyel lehet elkerülni a csúszásokat.
3.1. Fejlesztési infrastruktúrák létrehozása A
kommunikációs
csatornák,
verziókezelő
és
projektmenedzsment
rendszerek
szükségességének megbeszélése, telepítése, beállítása. •
Megbeszélés: kellenek-e a különböző fejlesztést segítő szolgáltatások, ha igen mit és hogyan fogjuk használni. Időráfordítás: fejlesztői csoport minden tagja, 2 óra.
•
Tervezés: hova és milyen módon lesznek telepítve, beállítva a különböző szolgáltatások. Időráfordítás: projektvezető és/vagy rendszergazda, 8 óra.
•
Megvalósítás: a terveknek megfelelő megvalósítás. Időráfordítás: projektvezető és/vagy rendszergazda, 16 óra.
•
Tesztelés: a szolgáltatások egyszerű tesztelése, megfelelően működnek-e. Időráfordítás: rendszergazda, fejlesztők, tesztelők, 6 óra.
15 16 17 18
htp://www.ustream.tv/recorded/2041904567 htp://twiter.com/#!/tanarurkerem/status/143664836456842245384240 htp://www.tanarurkerem.hu/ htp://nevergone.hu/blog/1104515/teljes-erteku-drupal-fejlesztokornyezet-kialakitasa-ubuntu-linux-rendszeren 6
3.2. Drupal 6 frissítése Drupal 7-re A Drupal 6 támogatása a Drupal 8 megjelenése után fog megszűnni, ami előreláthatólag 2013 augusztusa lesz19. Mivel ez a fejlesztési projekt lezárása utáni évre esik, ezért ezt a lépést a projekt során kell végrehajtani, mivel a fejlesztés célja részben kifejtetek alapján a intenzív fejlesztési szakasz után valószínűleg nehezebb lesz önkénteseket találni egy ilyen feladatra. Az átállás után az oldalnak a régi kinézetet és működést kell biztosítania, csupán Drupal 7 alapon. •
Megbeszélés: a feladatok felosztása több fejlesztő közöt. Időráfordítás: fejlesztők, 2 óra
•
Tervezés:
szükséges
modulok,
scriptek,
sminkek
ellenőrzése,
alfeladatok
kiírása. Időráfordítás: fejlesztők, 16 óra. •
Az oldal kiinduló állapotának lementése: ebből fogunk dolgozni a fejlesztői rendszeren. Időráfordítás: fejlesztők, 4 óra.
•
Megvalósítás: a terveknek megfelelő modulok, sminkek lecserélése, scriptek megírása. Időráfordítás: fejlesztők, 32 óra.
•
Tesztelés:
tesztesetek
kidolgozása,
tesztek
végrehajtása,
hibajelentések
küldése.
Időráfordítás: tesztelők, 16 óra. •
Kiadás: ha minden teszteset sikeresen ellenőrizve let, adjuk ki a kódot, és az éles ubuntu.hu is legyen frissítve Drupal 7-re, hogy a projekt részfeladata legyen megvalósítva, a befektetet munka ne vesszen el, ha a projekt sikertelen. Időráfordítás: projektvezető, rendszergazdák, 4 óra.
19
htp://drupal.org/documentation/version-info 7
3.3. Új design készítése Az új designra viktorbp tet javaslatot az ubuntu.hu fórumában20. A közzétet nyitóoldal terv a következő:
A nyitóoldal nagy előrelépés az eddig használt Ubuntu Drupal Teme 2010 nyitóoldalához képest. A nyitóoldal egyaránt kiindulópontja az Ubuntut nem ismerő új látogatóknak és a visszatérő, már regisztrált tagoknak. Követendő példa, hogy a felületet több, egymástól elkülönítet részre bontjuk, amivel sokkal több információt tudunk egyszerre megjeleníteni, mint a mostani nyitóoldalon. 20
htp://ubuntu.hu/node/284821 8
Azonban a tervnek vannak hátrányai is. A színei szakítanak az Ubuntu Brand Guidelinesszal21, amit mindenképpen érdemes követni még akkor is, ha az oldal többi része szakít a központilag tervezet Ubuntu Drupal Teme használatával. A Canonical több oldalnyi és több száz megabyte-nyi segédanyagot bocsát a grafkusok segítségére, ezeket a tervezés során alaposan át kell tanulmányozni. A nyitóoldalterv másik hátránya, hogy az oldalon található rengeteg tartalomhoz nem biztosít átlátható navigációt. A rengeteg menüpont miat továbbra is érdemes lesz megtartani egy menüsávot, azonban kétségtelen, hogy a navigációt dinamikusabbá, gyorsabbá kell tenni. A végső kinézetnek gyakorlatilag ötvöznie kell a mostani kinézetet és viktorbp nyitóoldaltervét. Ennek a megvalósítására bőven szánunk időt a projekt során. •
Megbeszélés: követendő alapelvek, feladatbeosztás megbeszélése. Időráfordítás: fejlesztők, 2 óra.
•
Képernyőtervek készítése: (lehetőleg szabad szofveres) grafkai programban 3-4 képernyőterv
készítése,
legalább:
nyitóoldal,
egyedüli
szöveges
tartalom
(hír,
blogbejegyzés, stb), listázot tartalom (fórum, blogbejegyzések), bejelentkezés utáni felhasználói funkciók. Időráfordítás: fejlesztők, 32 óra. •
Képernyőtervek elfogadása: az elkészült terveket el kell fogadni az Ubuntu Brand Guidelines, felhasználói élmény és a megbeszélésen előkerült igények alapján. Időráfordítás: projektvezető, 2 óra.
•
Új Drupal smink létrehozása: az elfogadot képernyőtervek felvágása, HTML, CSS, JS-re átültetése a Drupal 7 témarendszere alapján. Időráfordítás: fejlesztők, 24 óra.
•
Új smink tesztelése: tesztesetek kidolgozása, az új smink tesztelése különböző rendszerek és böngészők alapján. Időráfordítás: tesztelők, 16 óra.
3.4. Ask Ubuntu rendszer megvalósítása Néhány éve blaselinux felvetete, hogy az ubuntu.hu fórumát is át kellene alakítani az Ask Ubuntu/Stack Exchange-szerű rendszerré22. A Stack Exchange portálok (jelenleg 85 ilyen van) a felhasználói visszajelzések alapján működnek. A segítő szándékú felhasználók válaszait a többi (eléggé tapasztalt) tag fel- és leszavazhatja az alapján, hogy mennyire hasznos a válasz. A szavazatok alapján az egyes válaszok a listában felfele és lefele mozoghatnak, így közvetlenül a kérdés alat a közösség által legjobbnak ítélt válasz fog helyet foglalni, ami nagyban megkönnyíti az információt keresők dolgát. Ezen kívül a válaszokat adó segítők is kapnak pontokat a helyes, illetve vesztenek pontokat a helytelennek szavazot válaszok miat. Ezek a pontok egyrészt jelzik 21 22
htp://design.canonical.com/the-toolkit/ubuntu-brand-guidelines/ htp://blaselinux.linuxegyszeruen.hu/2010/12/16/sudo-aptitude-upgrade-ubuntu-hu/ 9
a többi felhasználónak, hogy a segítő mennyire biztos a dolgában, másrészt a segítők különböző jogosultságokat szereznek az összegyűjtöt pontok alapján. Pl. a válaszok felfele minősítéséhez elég 5 pontot szerezni, azonban a válaszok leminősítéséhez már 125 pont szükséges, és így tovább. Az Ask Ubuntu rendszer részletes működésére kiterjedő írást a tervezési szakaszban fogunk készíteni, addig érdemes magán az Ask Ubuntu oldalon utána olvasni a szabályoknak. A rendszer használatától az várható, hogy a kérdésekre hosszabb és tartalmasabb válaszok születnek, amik közvetlenül a kérdések alat jelennek meg. Egyrészt a felhasználók a pontok miat maguk is törekednének a minél jobb válaszokra, másrészt az elég pontot gyűjtöt felhasználók Wiki-szerűen mások válaszait is tudják szerkeszteni, így a félmegoldások idővel egésszé válnak. Ehhez szakítani kell a jelenlegi moderálási hagyománnyal, hogy a felhasználók hozzászólásait szerkeszteni nem, csak elrejteni szabad. Érdemes kiterjeszteni az Ubuntu Wikiben már alkalmazot CC-BY-SA 3.0 Unported licencet az Ubuntu portálon történő összes tartalomra. Mivel ezt a licencet használja az összes Stack Exchange oldal, így az ot születet megoldások átvétele is egyszerűsödne. A felhasználói aktivitás és azonnali visszajelzések miat a moderátorok munkája egyszerűsödne, és a felhasználók is egyértelmű visszajelzést kapnának a teljesítményükről. A rendszer alkalmatlan a társalgások lebonyolítására, és mivel az ubuntu.hu portál lényeges vonzereje a közösség, ezért egy Stack Exchange-re hasonló rendszer bevezetése nem lehet kizárólagos. A segítségnyújtó kategóriákon kívül továbbra is biztosítani kell a megszokot vagy a megszokotnál jobb fórumlehetőségeket. A fejlesztés kihívása ez a ketősség: a Drupal 7 API és adatszerkezetén keresztül meg kell valósítani a hagyományos hozzászólási lehetőséget a Stack Exchange szavazható és mások által szerkeszthető hozzászólásai mellet. Emellet a kető rendszernek átjárhatónak kell lennie, hiszen a moderátorok igénye az volt, hogy a blogbejegyzéseket egyetlen katintással át tudják alakítani fórumbejegyzéssé és fordítva. Ennek a feladatnak a megvalósítására minden rendelkezésre áll a Drupal 7 alaprendszerben és különböző modulokban egyaránt23, azonban a fejlesztésnek hosszú életűnek kell lennie, a Drupal 8 (és későbbi) frissítéseket nem szabad megnehezíteni. Ezért lesz szükség a tervezésnél Drupal szakértők bevonására. •
Tervezés: a lehetséges megvalósítási módok leírása, a régi tartalmak szerkeszthetőségének jogi korlátozásait fel kell tárni. Időráfordítás: projektvezető, rendszergazdák, fejlesztők, 32 óra.
•
Konzultáció külső Drupal szakértőkkel: ki kell kérni a szakértők véleményét a különböző lehetséges megvalósítási tervekről. Nem várható el tőlük, hogy a feladatot megtervezzék,
23
htp://drupal.stackexchange.com/questions/114566/module-for-creating-a-site-similar-to-stack-overfow 10
csupán azt reméljük, hogy tanácsot tudnak adni, hogy a későbbi Drupal frissítések szempontjából melyik az időtálló megoldás. Időráfordítás: projektvezető, külső Drupal szakértők, 24 óra. •
Megvalósítás: a szakértők által javasolt terv megvalósítása, szükséges modulok telepítése és leprogramozása, a régi tartalmak frissítése nem ebbe a feladatba tartozik. Időráfordítás: fejlesztők, 56 óra.
•
Tesztelés: tesztesetek kidolgozása, a rendszer tesztelése. Időráfordítás: tesztelők, 16 óra.
3.5. Tartalmat érintő fejlesztések kiadása A fejlesztés ezen pontján az új design elkészítésével és az Ask Ubuntu rendszer megvalósításával összesen több, mint 200 munkaóra kiadatlan fejlesztés történt. Az Ask Ubuntu rendszert és az új kinézetet ezen a ponton élesíteni kell, hogy a felhasználók az új tartalmakat már eszerint a rendszer szerint tudják létrehozni. Minél többet késik ez a kiadás, annál több régi tartalom frissítését kell később végrehajtani, ami plusz munkát jelent. •
Teljesítményteszt: el kell végezni az új rendszer teljesítménytesztjét, kiadás előt meg kell vizsgálni, hogy a szerver terhelését nem rontja-e kritikusan. Időráfordítás: projektvezető, rendszergazdák, tesztelők, 24 óra.
•
Fejlesztések elfogadtatása: a két kiadatlan fejlesztés nagy változásnak számít, az oldal szerkesztőivel és karbantartóival el kell fogadtatni az új megjelenést és az Ask Ubuntu rendszer megvalósítását (technikai értelemben, hiszen az egész projektervet ekkor már elfogadták). Időráfordítás: projektvezető, 8 óra.
•
Kiadás: mentés készítése a fejlesztői verzióról, kiadás, az éles rendszeren telepítés. Időráfordítás: projektvezető, 4 óra.
•
Kiadás utáni felügyelet: a kiadás után beérkezet hibajelentéseket azonnal kezelni és javítani kell. Időráfordítás: fejlesztők, 24 óra.
3.6. Moderációs eszközök fejlesztése Érkeztek igények a moderátoroktól, és mivel ők a legnagyobb számú karbantartói csoport a portálon, ezért segíteni kell őket a munkájukban. •
Igényfelmérés: a moderátorok igényeinek felmérése, alfeladatok kiírása. Időráfordítás: moderátorok, projektvezető, 8 óra.
•
Tervezés: az igények és feladatkiírások alapján a fejlesztés megtervezése. Időráfordítás: fejlesztők, 16 óra.
11
•
Megvalósítás: a tervek alapján a funkciók leprogramozása, a létező modulok frissítése, új modulok írása. Időráfordítás: 32 óra.
•
Tesztelés: tesztesetek írása, az új eszközök tesztelése. Időráfordítás: tesztelők, 16 óra.
•
Kiadás: a fejlesztés elkészültével azonnal élesíteni kell, hogy a moderátorok munkáját segítse. Időráfordítás: projektvezető, 4 óra.
3.7. Tartalmak frissítése az új rendszerre Az Ask Ubuntu rendszer korai bevezetésével még csak azt értük el, hogy a felhasználók minél korábban már az új rendszer alapján hozzanak létre tartalmakat. A projekt egyik célja, hogy az eddig létrehozot tartalmak is elérhetőek, könnyebben kereshetőek legyenek az új rendszer alapján. Ehhez az átállást érintő, segítségnyújtó fórumokban szereplő összes tartalmat át kell nézni és osztályozni kell. Becslés szerint mire erre sor kerül, ez 10.000 node-ot és 100.000 hozzászólást jelent. Egy ilyen vállalkozás eléréséhez minden elérhető erőforrásra szükség van, ehhez pedig a követelményeket a lehető legalacsonyabbra kell szállítani, ami azt jelenti, hogy a tartalmak frissítéséhez felhasználóbarát funkciókat kell létrehozni, hogy mindenki segíteni tudjon. •
Tervezés:
az
egész
átállás
megtervezése,
követelmények,
szükséges
eszközök
megtervezése. Időráfordítás: projektvezető, fejlesztők, 16 óra. •
Eszközök elkészítése: a tervek alapján a régi tartalmak átállítását segítő eszközöket el kell készíteni. Időráfordítás: 32 óra.
•
Tesztelés: az eszközök tesztelése. Időráfordítás: tesztelők, 16 óra.
•
Eszközök elfogadtatása: az eszközöket át kell helyezni az éles rendszerre, hogy az átállítot tartalmak valós időben frissüljenek, ehhez a portál szerkesztőinek el kell fogadnia az eszközöket. Időráfordítás: projektvezető, 4 óra.
•
Kiadás: az eszközök kiadása, beüzemelése az rendszeren. Időráfordítás: projektvezető, 4 óra.
•
Régi tartalmak frissítése: az éles rendszeren működő funkciók segítségével a régi tartalmakat át kell nézni és frissíteni kell. Időráfordítás: önkéntesek (bárki, aki él és mozog, úgy tervezzük, hogy a fejlesztői csapat + 20 ember), 1000 óra (feltételezzük, hogy 1 óra alat egy ember 100 hozzászólást tud átolvasni és minősíteni).
3.8. Karbantartás, utómunkák A régi tartalmak frissítésével a projektet le lehet zárni. A következő utómunkákat akár a projekt alat is lehet végezni. 12
•
Dokumentáció, beszámoló készítése: beszámolókat érdemes a projekt alat is készíteni, ezzel fel lehet tartani a felhasználók érdeklődését és a fejlesztők motivációját is. Időráfordítás: projektvezető, 24 óra.
•
Projekt után felmerülő hibák, kérések kezelése: feladatok, hibajegyek létrehozása, az egy éves projekt után még fejleszteni hajlandó önkéntesek beosztása. Időráfordítás: projektvezető, 16 óra.
•
Drupal frissítések követése: az inkompatibilis frissítések, frissítésből fakadó hibák felderítése. Időráfordítás: projektvezető, 16 óra. A fenti feladatok és időráfordítások alapján a projekthez összesen 1586 munkaóra szükséges.
4. Fejlesztés menete 4.1. Munkacsoport A munkacsoport a felvetéstől kezdve növekszik, a munkacsoport mindenkori állapota megtalálható az Ubuntu Wikin24. A terv írásakor 5 fejlesztő és 2 tesztelő jelentkezet. Az 5 fejlesztő közül 2-nek grafkusi tapasztalata, 5-nek sitebuild, 5-nek fejlesztői tapasztalata, 2-nek Drupal tapasztalata, 3-nak szerver adminisztráció tapasztalata van. Ezzel a munkacsoportal a projekt megvalósítható.
4.2. A projektvezető A projekt szempontjából lényeges kérdés a projektvezető személye. Mivel az előzetes megbeszélések alapján csak a néhány személynek lesz közvetlen hozzáférése a fejlesztői virtuális géphez, ezért a projektvezetőnek szerver adminisztrációs tapasztalatokkal kell rendelkeznie, valamint elég múltal és elkötelezetséggel kell rendelkeznie az Ubuntu közösség iránt, hogy az egy éves fejlesztés alat a feladatot maradék nélkül el tudja látni, valamint a résztvevő önkénteseket megfelelően tudja motiválni. Erre a pozícióra én, Udvari Gábor szívesen jelentkezem, 2008 óta vagyok egy másik Barack virtuális gépen futó Drupal portálnak, a Magyar Wesnoth Közösség portáljának25 fejlesztője és karbantartója, a 10.04-es kiadás óta használok Ubuntut, eddig két Ubuntu Global Jamen vetem részt. Amennyiben projektvezetőként nem rám esik a választás, úgy gondolom, hogy Szenográdi Norbert Péter (Sevoir) és Somlói Richárd (ricsi-pontaz) is tökéletes választás lenne a pozícióra.
24 25
htp://wiki.ubuntu.hu/index.php/%C3%9Aj_ubuntu.hu_port%C3%A1l:Munkacsoport htp://wesnoth.fsf.hu/ 13
4.3. Feladatok csoportosítása, prioritások A feladatokat a fejlesztők képességei szerint lehet csoportosítani. Pl. amíg a fejlesztők a Drupal frissítésén dolgoznak, addig a grafkusok már dolgozhatnak a képernyőterveken, hiszen annak nincs előfeltétele, de a smink elkészítésével már érdemes megvárni a kész Drupal 7 rendszert. A feladatok prioritásai azt az elvet követik hogy a projektnek több kivezetése legyen. Ennek megfelelően azok a feladatok készülnek el előbb, amelyeket a lehető legkevesebb időráfordítással, és legkevesebb kockázatal élesíteni lehet. A legnagyobb erőfeszítést igénylő feladatot, a régi tartalmak átalakítását az új rendszerbe a projekt legvégére hagyjuk.
4.4. Határidők, mérföldkövek A határidők megszabásánál feltételezzük, hogy minden önkéntes heti 3 órát tud a projektel foglalkozni. Ezt az időmennyiséget szükség esetén viszonylag könnyen lehet növelni, akár a global jamhez hasonló fejlesztői hétvégékkel, így nagy biztonsággal elkerülhetőek a határidőtúllépések, csúszások. A régi tartalmak frissítésének kivételével a tervben mindig a 7 fős munkacsoportal számoltunk, a régi tartalmak frissítése igényli a kockázatos 7 + 20 fő beosztást. Mérföldkőnek számítanak az egyes kiadások, amikor a projekt különböző részeit vezetjük ki az éles rendszerre. Összesen 3 ilyen kivezetés lesz, ezek, és a részfeladatok határidejét a fenti beosztás szerint a következő időpontokra tervezem: •
Feladat elfogadása: ha a következő IRC találkozón történik: 2012. 04. 05.
•
Előkészítés (fejlesztői rendszer kialakítása): 2012. 04. 09.
•
Frissítés Drupal 7-re: 2012. 05. 21.
•
Új design elkészítése: 2012. 07. 02.
•
Ask Ubuntu rendszer elkészítése: 2012. 08. 06.
•
Új kinézet és Ask Ubuntu rendszer telepítése az éles portálra: 2012. 10. 08.
•
Moderációs eszközök fejlesztése: 2012. 11. 12.
•
Tartalmak frissítése az új rendszerre: 2013. 03. 11.
•
Utómunkák: 2013. 05. 06. A pontos és részletes projekterv elérhető az alábbi oldalon: htp://udionline.hu/fajlok/ubuntu/drupal-projekterv/ A projekterv a TaskJuggler nevű programmal készült, a terv forrása elérhető az alábbi
linken: htp://udionline.hu/fajlok/ubuntu/drupal-projekterv.tjp
14