Child pages
  • Fejlesztesi ciklus
Skip to end of metadata
Go to start of metadata

Fejlesztési ciklus

A Java Forum 2.0 portál jelenleg 60 ezer sornyi forráskóddal bír (FishEye), de ez csak az a mennyiség, amely a portál magját és a minimálisan szükséges portletek kódját tartalmazza: a későbbiekben ennek többszöröse várható. Ekkora kódbázis rendben tartása nem kis feladat, a fejlesztőknek és a komponens gazdáknak nagy felelősségük van abban, hogy a forráskód könnyen visszakereshető legyen a verziókezelt repóban.

A projekt nyílt forrású, de ez nem jelenti azt, hogy bárki bármilyen forráskódot vagy módosítást azonnal injektálhat a hivatalos repóba. Aki dolgozni szeretne egy feladaton, vagy javítani egy meglévő hibát, esetleg egy számára szükséges fejlesztést szeretne eszközölni: kérnie kell egy branch-et a Subversion repóban (és természetesen felhasználónevet, illetve jelszót), illetve hozzáférést a JIRA felületéhez. Nem árt feliratkozni a fejlesztői levlistára sem (http://lists.javaforum.hu/mailman/listinfo/javaforum-dev-hu).

A munka megbeszélése után a komponens gazdája kiosztja a feladatot a JIRA-ban (http://traq.javaforum.hu/jira/browse/JFPORTAL-6), ahol így követni tudjuk, hogy milyen feladatok vannak, és azok melyik kiadásban fognak megjelenni.

Komponens gazdai feladatok

A Java Fórum 2.0 több komponensből áll, amelyek összefognak egy-egy feladatkört, mint például a Backend Core (EJB) komponens, amely a portál működéséért felelős EJB szolgáltatásokat fogja össze. Minden komponensnek van gazdája, aki megtervezi a komponens fejlődési irányait, a koordinálja szükséges munkákat, ésatöbbi.

A komponens gazda oszt ki fejlesztési feladatokat, illetve a befutó hibákhoz fejlesztőket és prioritást társít. Rugdossa a fejlesztőket a megfelelő minőségű munka irányába, átnézi az elkészült forrásokat (általános QA, unit tesztek, stb.), teszteli a fejlesztett funkcionalitást, s idővel lezárja a feladatot, ha az megérett a lezárásra.

A lezárt feladatokhoz tartozó források a komponens gazda által kerülnek át az SVN trunk alá, ahonnan a projektgazda a release idejében egy release tag-et készít. Ha elkészült egy release, akkor a komponensgazda feladata, hogy innen a változások visszakerüljenek a fejlesztői branch-ekbe (egyszerű merge).

Fejlesztői feladatok

A munka megkezdésekor a JIRA felületén a feladatot felvett feladatnak kell állítani a Start progress használatával. Ez nem követi, hogy mennyi időt dolgoztál, illetve nem kell kikapcsolni, ha iszol egy kávét, ez csak annyit jelent, hogy a munka folyamatban van. Ha két hétig tart, akkor két hétig maradhat ebben az állapotban.

Minden fejlesztő a saját gépén, a saját környezetében dolgozik a saját adatbázisával. Ha elkészült a fejlesztéssel, illetve egy olyan résszel, amely egészét tekintve tesztelhető, akkor a JIRA felületén kitölti a munkanaplót a Work log done linken kattintva, majd ezek után a feladat JIRA azonosítójával a saját subversion branch-be felteszi a munkáját, és itt nagyon fontos, hogy a JIRA azonosító szerepeljen a commit message-ben, például "The bug JFPORTAL-6 has been fixed.". A JIRA ugyanis olvas az SVN repóból, és összeköti a megváltozott forráskódokat a feladat leírásával.

Az előző bekezdés tetszőleges alkalommal ismételhető, de mindenki törekedjen arra, hogy csak fordítható és működő kód kerüljön a verziókezelő rendszerbe, illetve senki ne használja biztonsági mentésnek, nem erre való. Minden branch minden nap éjjel ütemezetten lefordul, tehát lesz visszajelzés arról, hogy kinek nem jó a verziókezelési módszere... (smile)

Ha a feladat teljesen kész, akkor lezárható, mégpedig a JIRA-ban a Resolve Issue linket használva. Ekkor a feladat tesztelési fázisba kerül, ha a tesztelők és/vagy a komponensgazdák úgy gondolják, hogy megfelelően működik, akkor lezárásra kerül a feladat, ha nem, akkor újranyitásra.

<<Vissza

      
      
Page viewed times
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels