Agilis modell

A rugalmas (Agilis) módszertan segít csökkenteni a kockázatot a szoftverfejlesztésben azáltal, hogy a munkafolyamatot több kis ciklusba helyezi át. Ezeket a ciklusokat iterációknak nevezik, és általában két-három hétig tartanak.

Az iteráció olyan, mint egy kis szoftverprojekt, amely feladatokból áll, amelyek mindegyike javítja a funkcionalitást. Ide tartozik: terv elkészítése, követelmények értékelése, projekt egyeztetése, kódírás, tesztelés, műszaki dokumentáció elkészítése.

Egy iteráció általában nem elég egy teljes értékű szoftverkiadáshoz. Az Agile-ben azonban az a jó, hogy a projekt kis részei minden iteráció végén készen állnak az értékelésre. Ez lehetővé teszi a csapat tagjai számára, hogy módosítsák a prioritásokat a további munkához anélkül, hogy megvárnák a végleges kiadást.

„Agilis” fejlesztési módszertant alkalmazva minden iteráció után konkrét eredményt láthatunk. Vagyis a fejlesztő megértheti, hogy munkájának eredménye megfelel-e a követelményeknek vagy sem. Ez a rugalmas modell egyik fontos előnye.

Ami a hátrányokat illeti, az Agile használatakor néha nehéz megbecsülni a munkaerő-források költségét és a projekt költségvetését. Ha a rugalmas modell gyakorlati alkalmazásának lehetőségeit vesszük, akkor ezek közül a leghíresebb az Extreme Programming (XP).

Az XP a csapattagok mindennapos rövid találkozóin és rendszeres (hetente egyszer vagy ritkábban) találkozókon alapul. A napi gyűléseken (napi standup) általában megbeszélik:

  • a munka jelenlegi eredményei;
  • az egyes csapattagok által elvégzendő feladatok listája;
  • a felmerült nehézségeket és azok megoldásának módjait.

Kiáltvány

Az agilis egy egész fejlesztési irány, ezért a munkára vonatkozó szabályokat egy speciális dokumentumban - Agile Manifesto - deklarálják. Ez magában foglalja mind a gyakorlatokat, mind az elveket, amelyek szerint a csapatnak dolgoznia kell.

Az Agilis Kiáltvány 4 alapötletből és 12 alapelvből áll.

Főbb ötletek:

  • a fejlesztők közötti együttműködés fontosabb, mint az eszközök;
  • a termék működő verziója elsőbbséget élvez a dokumentációval szemben;
  • A csapat és az ügyfél közötti kölcsönös megértés fontosabb, mint a szerződés feltételei;
  • Az eredeti terv szükség esetén bármikor módosítható.

Ami az Agilis 12 alapelvét illeti, itt vannak:

  • a fő prioritás az, hogy az elkészült program megfeleljen a megrendelő elvárásainak;
  • a feltételek megváltoztatása bármely szakaszban megengedett, még a fejlesztés végső szakaszában is (ha ez javíthatja a szoftver minőségét és versenyképességét);
  • a szoftvertermék működő verzióinak rendszeres szállítása (14 naponta, havonta vagy negyedévente);
  • a siker kulcsa a rendszeres interakció az ügyfél és a fejlesztők között (lehetőleg napi);
  • projekteket kell építeni az irántuk érdeklődők körében, biztosítani kell az ilyen embereknek a munkához szükséges feltételeket és mindenféle támogatást;
  • az információk csapaton belüli megosztásának legjobb módja a személyes találkozó;
  • a szoftver működő verziója a fejlődés legjobb mutatója;
  • minden érdekelt félnek képesnek kell lennie a kívánt munkatempó fenntartására a szoftverfejlesztési folyamat során;
  • a műszaki fejlesztés és a jó tervezés javítja a rugalmasságot;
  • fontos, hogy legyen egyszerű, és ne alkosson túl;
  • a legjobb eredményeket azok a csapatok érik el, amelyek képesek önszerveződni;
  • A csapat tagjainak rendszeresen gondolkodniuk kell azon, hogyan javíthatják hatékonyságukat a munkafolyamat megváltoztatásával.

Az Agilis kiáltvány szerint a jó szoftverfejlesztési folyamat közvetlenül azoktól az emberektől függ, akik részt vesznek ebben a folyamatban. Ehhez a lehető leghatékonyabban kell megszervezni interakciójukat, a legszervezettebb csapatot kell létrehozni.

Módszertanok

Az Agilis Kiáltványban számos módszertan is található, amelyek elmagyarázzák az értékeket és az elveket:

  • Agilis Modellezés;
  • Agilis egységes folyamat;
  • Agilis adatmódszer
  • Gyors alkalmazásfejlesztés (DSDM);
  • Essential Unified Process;
  • extrém programozás;
  • funkcióvezérelt fejlesztés;
  • Getting Real;
  • Nyit;
  • Dulakodás.

Az Agilis Modellezés olyan elvek, kifejezések és gyakorlatok gyűjteménye, amely felgyorsítja és leegyszerűsíti a szoftvermodellek és a dokumentációk fejlesztését.

Az Agilis Modellezés célja a modellezés és a dokumentáció fejlesztése. Fontos megjegyezni, hogy ez nem foglalja magában a kódolást, a tesztelést vagy a projektvezérléssel, telepítéssel és támogatással kapcsolatos problémákat. Ez a módszer azonban magában foglalja a kód áttekintését.

Az Agile Unified Process egy olyan módszertan, amely megkönnyíti a felhasználók számára a közelítést (modellezést). Általában kereskedelmi szoftverek fejlesztésére használják.

Agilis adatmódszer - több hasonló módszertan, amelyben az ügyfelek feltételeit több csapat együttműködésével érik el.

DSDM - ez a megközelítés abban különbözik a többitől, hogy a fejlesztőkkel együtt a leendő termék felhasználói is aktívan részt vesznek benne.

A funkcióvezérelt fejlesztés olyan fejlesztési módszertan, amelynek időkorlátja van: „mindegyik funkciót legfeljebb két hétig kell megvalósítani.”

Érdemes megfontolni, hogy ha kicsi a használati eset, akkor ez jellemzőnek tekinthető. Ha jelentős, akkor több funkcióra kell osztani.

A Getting Real egy iteratív módszertan, amelyben először a programfelületet fejlesztik, és csak ezután fejlesztik a funkcionalitását.

Az OpenUP egy fejlesztési módszer, amely a projektciklust négy szakaszra osztja: kezdet, finomítás, építés és átadás.

Az Agilis alapelvei szerint a munka időtartamától függetlenül minden érintettnek, csapattagnak lehetőséget kell biztosítani az ismerkedésre és a döntéshozatalra. Ennek köszönhetően lehetőség nyílik a helyzet hatékony kontrollálására és a köztes eredmények időbeni kiértékelésére. A projektterv meghatározza az életciklust, és a végeredményt az alkalmazás stabil kiadásának kell tekinteni.

Ami a Scrumot illeti, szabályozza a fejlesztési folyamat irányításának szabályait, és lehetővé teszi a meglévő kódolási gyakorlatok alkalmazását, a feltételek módosításának vagy módosításának lehetőségével. Ezzel a módszertannal a fejlesztés korai szakaszában láthatja és kiküszöbölheti a várt eredménytől való eltéréseket.

Nézzük ezt egy kicsit részletesebben...