A Quart it. munkatársai a strukturált, az objektumorientált módszertanok elveit, technikáit, alkalmazhatóságuk erős és gyenge pontjait egyaránt ismerik:
- A strukturált módszertanok közé tartozó SSADM számos technikája jóval szélesebb körben ismert, a folyamatokért felelős szakemberek számára könnyebben megérthető és alkalmazható, mint az objektumorientált technikák/ábrázolásmódok. Az SSADM alapokon vezetett fejlesztési projekt azonban lényegesen nehezebben reagál a környezet változásaira, mint azt az iteratív, vagy spirál megközelítésre épülő társai teszik.
- A RUP alapelvei, megközelítése közelebb áll a kor elvárásaihoz. A fejlesztés folyamatának gyakorlatilag valamennyi részéhez, részletéhez kínál technikákat, sablonokat, meghatározza a szükséges diszciplinákat, a különböző szereplők feladatait. A RUP alkalmazásának legnagyobb kockázata éppen a módszertan teljességéből fakad: a módszertan bátor és tapasztalt kezet igénylő projektre szabása nélkül a fejlesztők, elemzők, de leginkább az ügyfelek számára sokszor inkább a megértésnek gátja, s nem támasza lesz.
- Az MSF alapelveiben, megközelítésében nagyon hasonlít az egyéb objektumorientált módszertanokra, így a RUP-ra is. Az MSF pragmatikus: számos olyan könnyen alkalmazható, belakható technikát, alapelvet ad közre, amelyekkel a projekt elfogadottsága és eredményessége tovább javítható.
Saját projektjeinkben a javasolt technikák alkalmazhatósága, a módszertan által kínált folyamat egyszerűsége, áttekinthetősége a legfontosabb szempont. Munkánk során a RUP egy leegyszerűsítését használjuk, amelyet a tipikus környezeti igények szerint kiegészítünk hagyományos strukturált, vagy az MSF-ből, vagy agilis módszertanokból származó technikákkal vagy elvekkel. Fejlesztési projektjeink során ragaszkodunk a következő alapelvek figyelembevételéhez:
- A fejlesztést fázisokra bontjuk. A fázisokat termékek elkészítése zárja le. A termékeket megosztjuk a projekttagok között, és az érdekeltek rendelkezésére bocsátjuk, így a projekt előrehaladása és az előrehaladás iránya is ellenőrizhető, követhető.
- Ügyelünk arra, hogy a projekt során lehetőség szerint valamennyi érdekelt megjeleníthesse véleményét. A fejlesztés olyan elfogadott projekt célok irányában és olyan elfogadott keretek (scope) között haladjon, amelyek az érdekeltek közötti kompromisszumokat tükrözik.
- Fontosnak tartjuk, hogy a projekt csapatban valamennyi szereplő megfelelő súllyal jelenjen meg. Projektjeinkben kiemelt szerepet biztosítunk a rendszer leendő felhasználóinak és az általuk képviselt funkcionális és használhatósági szempontoknak. A felhasználókhoz hasonlóan igyekszünk a projektbe korán bevonni a rendszer leendő informatikai és üzleti üzemeltetőt, működtetőit is. Hisszük, hogy amennyiben az általuk képviselt szempontok a projekt kereteinek meghatározásakor már jelen vannak, úgy a rendszer könnyebben, gördülékenyebben lesz bevezethető és működtethető.
- Ha a feladat mérete vagy a probléma összetettsége megkívánja, akkor a feladatot inkrementális iterációkra bontjuk: az elemzési és tervezési, valamint a fejlesztési és tesztelési fázist többször, mindig teljesebb funkcionalitást elérve megismételjük. Ennek köszönhetően az érdekeltek és a felhasználók többször és megfelelő időben kapnak visszajelzéseket a projekt irányáról. Véleménykülönbségek, eltérések, félreértések esetén a korrekció lényegében kockázatmentes és olcsóbb.
Előkészítés
Az előkészítés fázis célja, hogy meghatározza a projekt kereteit, azonosítsa a fejlesztésben érdekelteket, kialakítson egy olyan közösen elfogadott termékvíziót, amelyet a környezet és a projekt egésze egyaránt elfogad. A fejlesztési projektcsapat felállításakor lehetőség szerint az MSF csapat modelljét alkalmazzuk. Figyelünk arra, hogy a csapatban a leendő felhasználók és a leendő üzemeltetők is helyet kapjanak, használhatósági elvárásaikat érvényre tudják juttatni. A fázis legfontosabb terméke a Termékvízió, amely rögzíti, hogy a projekt tagjai és a szervezet érdekeltjei mit várnak el a megvalósítandó rendszertől, elérve ezáltal azt, hogy a közreműködők megértsék és elfogadják azokat a kompromisszumokat, amelyek a projekt hatókörének meghatározásakor születtek.
Elemzés és tervezés
Az elemzés és tervezés fázisában vagy fázisaiban a rendszer vagy iteráció által kínált funkciók részletesebb felmérése és megtervezése történik meg. Ez a fázis egy nagyobb rendszer fejlesztése esetén tipikusan több iterációban valósulhat meg. A fázis végeredményeképpen egyrészt követelmény-, vagy funkcionális specifikációk jönnek létre, amelyek tartalmazzák a rendszerrel szemben támasztott felhasználói követelményeket, a rendszer elvárt működésének meghatározását, másrészt a megvalósítás módját meghatározó rendszertervek születnek.
Fejlesztés
A fejlesztés során történik a részletesen felmért és megtervezett funkcionalitás tényleges kifejlesztése, illetve a kifejlesztett funkciók tesztelése funkcionális, használhatósági, üzemeltethetőségi szempontok szerint. A fejlesztés végén előálló termék funkcionalitásában, kiterjedésében már teljes, azonban minősége még nem feltétlenül megfelelő.
Stabilizáció
A Stabilizáció fogalmát az MSF vezeti be. A fejlesztést követő stabilizációs fázis célja, hogy a már rendelkezésre álló és funkcionáló alkalmazást vagy modult minőségében a bevezetésre alkalmassá tegye. Az intenzív tesztelési szakaszok maximális figyelmet és jelenlétet kívánnak az ügyfél és a szállító tesztelésbe bevont munkatársaitól. A stabilizáció a funkcionális, és egyéb kritikus hibákat nem tartalmazó kódminőség elérésekor zárul le.
Bevezetés, Telepítés
A megfelelő minőséget elérő alkalmazást a leendő felhasználók számára elérhetővé kell tenni. Ez az alkalmazáskomponensek telepítését, a felhasználók és az üzemeltetők oktatását jelenti. A fázist a rendszer éles indítása, a végtermékek átadása és az elért eredmények megünneplése zárja.
Támogatás
Lehetőség szerint egy rövid támogatási szakasszal fejezzük be a fejlesztési projektet. A Támogatási szakasz célja, hogy a rendszer éles indítását követő rövid időszakban, a tényleges használat megkezdésekor általában az átlagosnál jóval magasabb a jelzett hibák, üzleti észrevételek, kezelést igénylő technikai, üzleti, szabályozási problémák megfelelő szinten legyenek kezelve. Ezen időszakban a rendszert, az üzleti környezetet és a megoldást jól ismerő munkatársaink rendelkezésre bocsátásával, a használattal kapcsolatos kérdések gyors megválaszolásával, a problémák folyamatos kezelésével tudjuk a rendszer gördülékenyebb befogadását elősegíteni.