Vyhľadávanie v online časopise
Online časopis
Ako obstarávať projekty s agilným vývojom softvéru
Dátum: Rubrika: Články
Článok sa zameriava na praktické aspekty verejného obstarávania projektov na vývoj informačných systémov s využitím agilného vývoja a agilnej metódy riadenia. Vysvetľuje, čo je agilný vývoj, rozdiely v porovnaní s Waterfall modelom, ich stručné porovnanie, výhody a nevýhody. Článok opisuje stručne aj nové požiadavky a pravidlá na riadenie projektov informačných technológií verejnej správy agilnou metódou podľa novej vyhlášky o riadení projektov. V článku sú ďalej analyzované podmienky a požiadavky na nastavenie verejného obstarávania projektov s využitím agilného vývoja a agilnej metódy riadenia a praktické problémy a odporúčania s tým spojené.
Na agilný vývoj softvéru sa ostatné roky kladie stále väčší dôraz, čo sa premieta aj do sféry verejného obstarávania. Vo firemnom nákupe ide už o dlhoročne využívanú metodiku. To, že sa viac presadzuje aj vo verejnom obstarávaní, sa odzrkadľuje aj v aplikačnej praxi. Tejto téme sa venuje napríklad metodický materiál vytvorený OECD z roku 2022 s trochu zmätočným názvom
"Towards Agile ICT Procurement in the Slovak Republic",
ktorý bol v roku 2023 preložený aj do slovenčiny pod názvom
"Na ceste k agilnému obstarávaniu IKT v Slovenskej republike Príklady z praxe a odporúčania".
Napriek pomerne robustnému textu a širokému opisu vecných a procesných súvislostí sa však ani tento metodický materiál nezaoberá praktickými aspektmi, ako postupovať pri verejnom obstarávaní projektov na vývoj informačných systémov s využitím agilného vývoja. Úlohou tohto článku je v zhutnenej forme ponúknuť aspoň základné praktické poznámky, požiadavky a odporúčania súvisiace s touto problematikou.ČO JE AGILITA A AGILNÝ VÝVOJ?
Pojem agilita slúži na pomenovanie
schopnosti pružne reagovať na zmeny
v neistom, dynamickom prostredí s cieľom vysporiadať sa s nimi a úspešne sa na ne adaptovať v čo najkratšom čase. Ide teda o flexibilné prispôsobenie sa problémom s dôrazom na kvalitu a efektivitu výsledného produktu.Agilný vývoj softvéru
v sebe zahŕňa súbor rámcov a postupov založených na základných hodnotách a princípoch vyjadrených v
Manifeste pre agilný vývoj softvéru
(ďalej len "Manifest"). Tento dokument vytvorený developermi v roku 2001 vymedzuje 4 kľúčové hodnoty a 12 princípov. Tie by mali podľa jeho autorov využívať pri práci hlavne softvéroví vývojári, aby predišli komplikovaným a zdĺhavým procesom vývoja softvéru.Manifest rozlišuje
štyri základné hodnoty agilného vývoja softvéru,
a to:1.
jednotlivci a interakcie majú prednosť pred procesmi a nástrojmi,
2.
fungujúci softvér pred komplexnou dokumentáciou,
3.
spolupráca so zákazníkmi je dôležitejšia ako dojednávanie zmluvy,
4.
flexibilné reagovanie na zmenu pred slepým nasledovaním plánu.
Hodnoty Manifesta majú za úlohu
podporiť proces vývoja softvéru so zameraním na kvalitu,
a to konkrétne vytváraním produktov, ktoré spĺňajú potreby aj očakávania spotrebiteľov.Dvanásť princípov Manifesta v sebe zas zahŕňa rady pre optimalizáciu a zlepšenie pracovných výkonov jednotlivcov, tímov i procesu projektového riadenia pri vývoji softvéru v praxi. Ich cieľom je
vytvoriť a podporiť pracovné prostredie orientované na zákazníka,
ktoré by bolo v súlade s obchodnými cieľmi, ale zároveň by pružne reagovalo na potreby používateľov a trhové podmienky.Pri agilnom vývoji softvéru sa postupuje podľa 6 vzájomne prepojených
zásad a prístupov spoločného navrhovania:
1.
definovať výsledok,
2.
porozumieť používateľom,
3.
testovať predpoklady,
4.
zapojiť používateľov,
5.
pozorovať skutočné správanie,
6.
dodať, testovať, učiť sa, prispôsobovať.
Agile rozdeľuje projekt vývoja softvéru alebo systému na
malé cykly,
často označované ako "iterácie". Počas každej iterácie tím pracuje na celom vývojovom cykle vrátane plánovania, analýzy požiadaviek, návrhu, kódovania, testovania a preskúmania. Na konci každej iterácie sa dodá plne otestovaný, funkčný softvér, ktorý možno nasadiť.Výsledkom ďalších iterácií je ďalší softvér, ktorý nadväzuje na už dodaný softvér alebo ho dopĺňa. Vďaka tomu sa problémy dajú identifikovať včas a v relatívne menšom rozsahu, a preto sa dajú rýchlo vyriešiť. Služba sa "uvedie do prevádzky" až vtedy, keď je k dispozícii dostatočná spätná väzba, ktorá ukazuje, že služba používateľom funguje a spĺňa ich potreby. Existuje možnosť neustáleho zlepšovania a budovania služby, ktorá spĺňa potreby používateľov.
WATERFALL (VODOPÁDOVÝ) MODEL
Aby bolo možné pochopiť špecifiká uplatňovania
agilného prístupu
vo verejnom obstarávaní, je vhodné bližšie sa pozrieť na "tradičnú" vodopádovú (Waterfall) metódu, kde je proces postupný - v po sebe nadväzujúcich krokoch v podobe vodopádu. Začína sa zhromažďovaním požiadaviek, tvorbou plánov a realizáciou procesu verejného obstarávania. Potom sa na základe zákazky navrhne a vytvorí produkt. Posledná fáza zahŕňa testovanie a uvoľnenie softvéru pre verejného odberateľa. Až v tejto záverečnej fáze procesu sa získava spätná väzba od potenciálnych používateľov.V oblasti vývoja softvéru patrí skôr medzi menej iteračné a flexibilné prístupy, pretože postup plynie zväčša jedným smerom ("nadol" ako vodopád). Logika vodopádu je zjednodušene nasledovná: keď je fáza dokončená, jej výstup sa stáva vstupom pre ďalšiu fázu, ktorá sa začína hneď po skončení prvej. Pri
verejnom obstarávaní
na dodávku nových informačných systémov ide o
prevažujúci, tradičný model.
Vodopádový model vo verejnom obstarávaní ponúka množstvo výhod pre vývojárov softvéru a pre objednávateľov (verejných obstarávateľov a obstarávateľov):
1.
Vodopádový model poskytuje
štruktúrovaný prístup
- samotný model postupuje lineárne cez ľahko pochopiteľné a vysvetliteľné fázy.2.
Etapový vývojový cyklus
zabezpečuje disciplínu
- každá fáza má definovaný začiatok a koniec a dodávateľ aj objednávateľ môžu jednoznačne určiť pokrok (pomocou míľnikov). Zabezpečuje, že každá fáza je dokončená pred prechodom na ďalšiu.3.
Tento model kladie
dôraz na dokumentáciu
(napr. dokumenty s požiadavkami a návrhové dokumenty).4.
Prostredníctvom tohto modelu možno
odhadnúť náklady
na celý projekt a potrebné úsilie hneď
na začiatku,
vo fáze požiadaviek.5.
Pri správne definovanom opise predmetu zákazky a návrhu zmluvných podmienok dokáže verejný obstarávateľ/obstarávateľ použiť pri nadlimitnej zákazke aj
superreverznú verejnú súťaž
a je väčší predpoklad, že dostane
porovnateľné ponuky.
Pre vývojárov, ale aj pre objednávateľov (verejných obstarávateľov a obstarávateľov) má však vodopádový model aj viacero
nevýhod:
1.
Objednávatelia často
v
Pre zobrazenie článku nemáte dostatočné oprávnenia.
Odomknite si prístup k odbornému obsahu na portáli.
Prístup k obsahu portálu majú len registrovaní používatelia portálu. Pokiaľ ste už zaregistrovaný, stačí sa prihlásiť.
Ak ešte nemáte prístup k obsahu portálu, využite 10-dňovú demo licenciu zdarma (stačí sa zaregistrovať).
Bezplatný odpovedný servis pre predplatiteľov
Vaše otázky môžete zadať na www.otazkyodpovede.sk.