Tesztelés a Gyakorlatban - A szakértő tesztelők lapja


A szoftver hibák elkerülése: Tanulság a HealthCare.gov-ból

Reflektorfényben a közelmúltbeli HealthCare.gov szoftver bukásai. Az eset tanított a kormányzatnak pár kemény leckét, amiket a profik hosszú ideig emlegetni fognak:

  • A performancia nem egy utólagos dolog.
  • Az integrációs tesztelés központi tényező a szoftver-fejlesztési erőfeszítéseknek, és amíg ez nem teljes, az alkalmazás nincs kész az élesbe állásra.
  • Az ujjal mutogatás nem javítja ki a szétesett szoftvert - és ez meghatározó jele egy rosszul működő vállalatnak.

Ebben a cikkben három leckét dolgozok ki.

1. Szoftverhiba lecke: A performancia nem egy utólagos dolog

Hat héttel az indulás után a HealthCare.gov bajba jutott honlapja még mindig szenved a lassú teljesítménytől és elfogadhatatlan válaszidőktől. A becslések szerint 50.000 amerikai sikeresen szerződött egészségügyi biztosítási kötvényre, de ez a szám messze elmarad a kormány korábbi becsléseitől, ami 500.000 ember szerződtetését jósolta csak az első hónapra.

A kormány úgy látszik a a nehezebb utat választotta: Ha nem végez teljesítmény tesztelést - és nem biztosít megfelelő szerver erőforrásokat – az szoftverhibákhoz és nyilvános szégyenhez vezethetnek, ezzel károsítva a vállalat hírnevét. A kereskedelmi vállalkozások ugyanezt a leckét tanulták meg néhány évvel korábban az elektronikus kereskedelemben, amikor a honlapjuk az ünnepek közeledtével az online-vásárlók áradatát nem volt képes befogadni.

A nyilvános leégés mindig kemény csapás. De a dolgok manapság keményebbek, mint az e-kereskedelmi katasztrófák idején voltak. Abban az időben, a közösségi média ahogy most már tudjuk, nem létezett. Manapság amikor az ügyfelek rossz tapasztalatot szereznek egy honlapnál, azonnal nyilvánossá teszik a véleményüket a Twitteren, vagy a Facebook-on.

2. Szoftverhiba lecke: Az integrációs teszt igenis számít

Az integrációs tesztelés - ahol a különálló egységeket egy nagyobb rendszerbe hoznak össze, hogy lássák hogyan dolgoznak együttesen - a komplex alkalmazások adottsága. És ma szinte minden virtuális rendszer ami fejlesztés alatt van, komplex. A mai szoftverek információkat húznak át más alkalmazások adatbázisaiból, amelyek különálló társaságok, különböző időben készítettek. Ezek gyakran távoli helyeken futnak, sokszor a felhőben. És legtöbbjük erősen függ az idegen felek által készített szolgáltatásoktól.

Ezek olyanok lehetnek, mint a Google Analytics, vagy pénzmozgást ellenőriző pénzügyi szolgáltatások. Az együttműködése ezen szolgáltatásoknak, alkalmazásoknak és adatbázisoknak hatalmas befolyással lehet a performanciára. Ha az alkalmazás a fejlesztése alatt nem volt kitéve a folyamatos integrációs tesztelésnek, egyszerűen nem áll készen, hogy az élesítésre.

Ez a fogalom nyilván elveszett a CGI Federal-nál, aki az egyik vezető szoftverfejlesztési szolgáltató a HealthCare.gov-nál. A cég szóvivői nyilvánosan kijelentették, hogy a CGI nem volt felelős az end-to-end tesztelésért, amely biztosítaná az oldal egységeinek helyes működését és a szoftverhibák elkerülését. Ehelyett a szóvivők ujjal mutogattak más fejlesztőkre, akik még segítettek felépíteni a HealthCare.gov-ot.

3. Szoftverhiba lecke: Az ujjal mutogatás nem javítja ki a szétesett szoftvert

A performancia problémák megoldása - kitalálni, mi volt a baj, és hogyan lehet azt megjavítani - szoros munkakapcsolatot igényel a szoftverfejlesztés folyamatában résztvevő összes játékos között. A teljesítmény és az integrációs tesztelés esetében is, olyan mintha ez újdonság lett volna a szolgáltatóknak, akik a HealthCare.gov-on dolgoztak.

Ami a jövőt illeti, az ujjal mutogatás problémáját elég nagy feladat helyrehozni, mert ez már sokkal többről szól, mint egy egyszerű hárításról, hogy a másik a hibás.

Az egész csapat az agilis fejlesztési módszerrel dolgozott, amely hasznos segítséget nyújt a megértéshez, mi is valójában a tét. Az agilis projekteknél, minden csapattag felelős a fejlesztés alatt álló szoftver minőségéért. Ha a tesztelés egy hibát talál, az nem egy másik ember hibája. A csapat minden tagja egyformás felelős. Ez a fogalom kényszeríti a tagokat, hogy egymás érdekeiben járjanak el - és a nagyobb csapat érdekeiben - egészen a projekt kezdetétől. Ez nagyban különbözik attól a kijelentéstől, hogy "Héj, ez nem az én hibám.".

A gyakori ujjal mutogatás – a kormányzatban, vagy egy vállalatban – egy sokkal nagyobb probléma jele: a szervezeti kultúra hibája, ami lehetővé teszi az alkalmazottaknak hogy mindenre azt mondhassák: "Nem az én gondom."

Annak a látványa, hogy a nagy szoftverfejlesztő játékosok egy projektben ujjal mutogatnak egymásra, nagyban aláássa az egész szoftver-ipar hitelességét. Ez lecke minden szoftver-iparban dolgozó szakember számára: „Ha az alkalmazás nem működik, vállaljuk a felelősséget érte. Mondjuk ki, hogy nem működik – és kezdjünk el dolgozni a javításon!”.

Minden más csak a hozzá nem értésre utal.

Hogyan kezeled a szoftver hibáit? Úgy gondolod a HealthCare.gov esetén lehetett volna másképp kezelni?


Eredeti cikk:
http://searchsoftwarequality.techtarget.com/feature/Avoiding-software-failures-Lessons-from-HealthCaregov



Szerző:
Jennifer Lent

<< Vissza