A Jazz egy méretezhető, bővíthető, csapatok együttműködését támogató platform a szoftverfejlesztési életciklus során végrehajtandó feladatok zökkenőmentes integrációjához.

Miért szükséges a Jazz Platform?

A csapatban végzett szoftverfejlesztés olyan, mint egy hangszeren játszani egy zenekarban. Minden zenésznek a saját részét kell játszania, miközben összhangban van a többiekkel. Meg kell egyezniük abban, hogy hogyan kommunikálnak, és oda kell figyelniük az egymásnak küldött jelzésekre, vagy az előadás összeomlik. Egyaránt szükség van a szoros együttműködésre az egyéni virtuóz tulajdonságokra. Hasonlóképpen, a szoftverfejlesztőknek a minőségi kód elkészítésére és a tevékenységeik koordinálására egyaránt figyelmet kell fordítani, hogy az összes rész megfelelően illeszkedjen az egészbe.

Az integrált fejlesztői környezetek (IDE), mint például az Eclipse, sikeresen javították az egyéni hatékonyságot. A fejlesztőknek azonban legalább olyan aktívan kell részt venniük a csapatuk munkájában, mint ahogy írják a saját kódjukat. Ezen a ponton lép be a Jazz Platform, amely áthelyezi a fókuszt az egyén hatékonyságáról a csapat hatékonyságára.

A fókusz áthelyezésének egyik példája

Fontolja meg, hogy mennyi ideig tart egy csapat számára egy feltételezett hiba nyomkövetése és javítása. Egy hiba javításával kapcsolatos munka a csapaton belül áramlik: Miklóstól, aki felfedezte és jelentette a problémát Ricsihez, aki átnézi a bejövő hibajelentéseket és kiosztja a munkát Zsuzsinak, majd Zsuzsihoz, aki javítja a hibát, és végül vissza Miklóshoz ellenőrzésre. A hibajavítás maga is áramlik a csapaton belül: Zsuzsitól, aki javítja a problémát a kódfolyamban, Miklóshoz, aki ellenőrzi a javítást az összeépítésben, amely tartalmazza azt.

Hibaáramlások

Ezek a folyamatok igen törékenyek lehetnek. A csapaton belüli folyamatok leállnak, ha egy javítás a hibajelentés frissítése nélkül lesz beiktatva, vagy ha nincs hivatkozás, amely összeköti a javítást egy adott kódfolyammal és összeépítéssel. Ezek a leállások zavarhoz vezetnek a csapaton belül, és akadályozzák az előrehaladást. És ami még rosszabb, hogy a leállás nem feltétlenül lesz azonnal nyilvánvaló a csapat egyik tagja számára sem. Van továbbá egy átszövés a tartományra vonatkozó munka (vagyis a szoftvertermék kódjának írása) és az elsődlegesen csapat együttműködésének fenntartására vonatkozó munka (vagyis a hibák megjelölése javítottként) között.

Bár az IDE számos eszközt integrál, a fejlesztő még mindig sok ismétlődő könyvelési tevékenységet végez kézzel - olyan munkát, amely kritikus fontosságú a csapat hatékony együttműködésének érdekében, ugyanakkor rendkívül könnyű elfelejteni vagy pontatlanul végezni. Jobb lenne, ha Zsuzsi egyszerűen meg tudná mondani a fejlesztői környezetnek, hogy most éppen egy adott hiba javításán dolgozik. Utána, amikor befejezi a javítást és a tesztesetet, akkor jelezhetné, hogy készen van. Anélkül, hogy neki ezzel további teendői lennének, a rendszer elküldené a módosított fájlokat és társítaná azokat egy hibajelentéssel, frissítené az összeépítési megjegyzéseket, és megjelölné lezártként a hibajelentést. Ha az eszközök így automatizálnák a könyvelést, akkor tovább növelnék a csapat hatékonyságát azzal, hogy biztosítják a hibajelentések és kódbeikatások közötti fontos kapcsolatok megbízhatóságát. Ugyanakkor az egyéni csapattagok hatékonyabbak lehetnének az unalmas és hibalehetőségeket rejtő könyvelési kötelezettségek automatizálása következtében.

A Jazz Platform áthidalja az űrt

A Jazz a szoftver teljes életciklusát támogató együttműködési platform, melynek célja a feladatok zökkenőmentes integrálásának támogatása szoftver életciklusának részét képező valamennyi fázisban (a korábbi példahelyzet csak az életciklus közepének néhány általános feladatát érintette). A Jazz Platform célja, hogy egyaránt kiterjeszthető legyen ügyfél és kiszolgáló oldalon, valamint néhány fős csapatoktól nagyvállalati környezetekig biztosítsa a méretezhetőséget. Megvalósítja az eszközök által támogatott folyamatvezérlési elvet, ahol az eszközök megértik a csapat fejlesztési folyamatát és segítik a csapattagokat, hogy kövessék ezt a folyamatot anélkül, hogy ez akadályozná őket.

A Jazz platformnak nem csak az a célja, hogy meglévő kiterjesztési pont eszközöket integráljon, hanem az is, hogy egy olyan platformot biztosítson, amelyre minden eddiginél több integrált életciklus eszköz funkciót lehet építeni. Amikor az életcikluson átívelő fejlesztőeszközök integrációja ily módon valósul meg, olyan dolgokat lehet megtenni, ami korábban a különálló pont megoldások készletével elképzelhetetlen volt. Az ehhez hasonló integrált teljes körű szolgáltatásokat biztosító eszközök segítik a csapatokat a szoftverek hatékonyabb elkészítésében, és a szoftverfejlesztési folyamatot sokkal élvezhetőbbé teszik.

Jazz egy folyamatközpontú platform

A Jazz platform célja, hogy átfogó támogatást biztosítson a szoftverfejlesztés teljes életciklusán át. A projekt összes fázisán átívelő egyetlen szál a folyamat, melynek követésében a csapattagok megegyeztek. A folyamat megtanítható a Jazz platformnak, amely a csapatot a folyamatra jellemző módokon segítheti. Ez a folyamattámogatás sokféle (és teljesen nyitott) formákban történhet, a menet közbeni szabályellenőrzésektől az online folyamatsúgóig (például az F1 billentyű), vagy a tevékenységek automatikus könyveléséig. A Jazz platform a következőképpen támogatja a folyamatokat:

A Jazz platform tervezésekor és elkészítésekor a következő szempontok érvényesültek:

A Jazz platform elsődleges szerepe, hogy az eszközök íróinak olyan használható mechanizmusokat és követhető szabályokat nyújtson, amelyek zökkenőmentesen integrált életciklus eszközök készítéséhez vezetnek. Ezeket a mechanizmusokat jól meghatározott API-kon keresztül biztosítja. A Jazz platform az új eszközök fejlesztését megkönnyítő hasznos építőelemeket és keretrendszereket is nyújt.