Ha azonban ilyen mennyiségben vesz minket körül ember által készített működési terv (szoftver), akkor óhatatlan, hogy itt-ott hibával fogunk találkozni. Az utóbbi időben kétségtelenül a legjobban megismert szoftverhiba a német bankkártyákhoz kapcsolódik, amikor is több tízmillió bankkártyát nem tudtak tulajdonosaik használni a 2009-2010-es évváltás miatt. Hogy pontosan mi okozta a hibát, az végül is teljesen mindegy.
Az érdekesség kedvéért persze érdemes felfújni egy-egy ilyen történetet. Hiszen gondoljuk csak magunkat a képzeletbeli Hans helyébe: mi történne, ha egyszer csak a sarki boltban nem tudnánk fizetni a kártyánkkal!? Nyilván Hansnak sem kell majd pszichológushoz járnia a trauma kikezeléséért, mivel rögtön két választása is adódik: az ősi módszer - készpénz; vagy egyszerűen előhúzza a másik bankkártyáját, ami akár működhet is.
Amikor ilyen látványos szoftverhibákról számol be a média, mindenki hajlamos szem elől téveszteni a szoftverek célját: ez véletlenül sem az, hogy tökéletes világot képezzenek körénk! A bankkártya szoftvernek az volt a célja, hogy egyszerűen, gyorsan jussunk pénzünkhöz, amit amúgy a bank kezel, s az idő nagyobb részében hitelekben kölcsönad más ügyfeleinek. Mi a másik megoldás? Nem létezik bank, mindenki óriási köteg pénzekkel szaladgál. Az épp pár napra meghibásodott szoftver tehát elérte célját: az ügyfelek használják a kártyákat, egyszerűbb mindenki élete, s pár naptól eltekintve bármikor használhatja is. Személy szerint én nagyobb problémának élem meg, hogy az autókat olykor-olykor kötelező szervizre kell vinni...
De közelítsük azok irányából a helyzetet, akik szerint elfogadhatatlan egy ilyen hiba. Mennyivel többet lenne hajlandó fizetni a ?nem elfogadó" ügyfél azért a szolgáltatásért, amely ugyan jóval korlátozottabb, mint a piacon amúgy elérhető, s drágább is, de legalább biztosan mindig működik? Ha így tesszük fel a kérdést, rögtön kisebb lesz a kétkedők tábora; senki nem hajlandó egy látszólag gyengébb szolgáltatásért többet fizetni. Inkább kivárja azt a pár nap kiesést, de legalább van bankkártyája, azonnali személyes hitele, internetes fizetési lehetősége és így tovább.
Ha technológiai irányból közelítünk, sajnos akkor sem jobb a helyzet.
A ma előállított szoftverrendszerek mérete és bonyolultsága sokszor meghaladja az ember átlátóképességét, s csak egyes részekért tudnak a fejlesztők/üzemeltetők felelni. Tipikusan ilyenek a pénzintézeti szoftverek, amelyek egyes komponensei több évtizedesek is lehetnek, ezek keverednek az újabb és újabb megoldásokkal, ám a teljes rendszer cseréje a pénzintézet csődjét jelentené, így ezzel kell együtt élnie. Be kell látnunk, hogy ma nem létezik olyan módszer, módszertan, fejlesztőeszköz, amely lehetővé tenné ekkora rendszerek hibamentes és gazdaságos fejlesztését.
Ha a bankkártya problémát nagynak ítéljük, gondoljunk vissza a Mars-járó elveszítésére! Ott ?pénz nem számít" elven ment a fejlesztés, s végül mégis több projekt is kudarcba fulladt. Az egyik például azért (1999-ben), mert a két tervező cég más mértékegységben számolta a méreteket. Utólag persze minden hiba egyértelműnek tűnik, de éppúgy, mint bármilyen folyamatnál, a szoftverfejlesztés és tesztelés közben is adódhatnak hibák. Egyesek problémásabbak (a Marsra durván 1 év az utazási idő), egyesek könnyebben elviselhetők (5-6 napig nem tudjuk használni a bankkártyánkat).
Az egész történetből persze a legfontosabb pontot teljesen kihagyták a beszámolók: a bankkártyák projektje egy olyan üzleti és szoftverprojekt, amely sikeres lett, eljutott a végfelhasználókhoz, s azok többnyire elégedettek is a rendszer működésével.
Ezzel ellentétben megszámlálhatatlan azon szoftverprojektek száma, amelyek sosem jutnak olyan fázisba, hogy egyáltalán láthassuk őket. A fejlesztés során ezen vagy azon a ponton elbuknak, így például leállítja a teljes projektet a menedzsment azzal a felkiáltással, hogy ?mégsem erre gondoltunk". E projektek egy része igazán megérdemelné a hírverést, hiszen bőven találhatunk közöttük százmilliós vagy akár milliárdos projektet is.
A média által kiemelt és felfújt szoftverhibák az esetek többségében valamilyen jelentéktelen probléma miatt adódnak, s társadalmi vagy pénzügyi vonzatuk is viszonylag csekély. Azok a rendszerek ugyanis, amelyek például a bankközi átutalásokat felügyelik, jóval magasabb minőségben készülnek, így nem nagyon fogunk olyan hírrel találkozni, hogy ?leállt a bankok közötti elszámolás egy szoftverhiba miatt".
Azok a hírek is hiányoznak - nagyon nagy szerencsénkre -, amelyek arról számolnának be, hogy ilyen vagy olyan gépek (vonatok, daruk, metrók, repülőgépek...) szoftverhiba miatt emberi áldozatot követeltek. Ezeken a területeken ugyanis a fejlesztés sokkal inkább a ?biztos", mint a ?funkciógazdag" irányba mozdul el, hiszen a kérdés így már másképp hangzana: ?Ön a gyorsabb vagy a biztonságosabb repülőre ülne fel inkább?"
Szoftverhibák voltak, vannak s lesznek is; minden olyan területen, ahol nem feltétlenül kritikus a szoftver működése, találkozhatunk ilyen problémával. A kérdés csak az, ki dönti el, hogy az adott terület kritikus-e vagy sem? Reméljük, a készítők ezt a döntést képesek felelősséggel meghozni.