Házon belüli vagy kiszervezett tesztelés

Hosszan lehet taglalni miért fontos a tesztelés, mennyi plusz kiadástól, kellemetlenségtől, presztízsveszteségtől kímélheti meg magát egy vállalkozás a megfelelő minőségbiztosítással. Ezek ismert és sokszor emlegetett tények. Nézzük meg inkább a lehetőségeket ennek a megvalósítására.

Ha egy cég ki szeretne adni egy szoftvert, választania kell a házon belüli tesztelés, tehát a saját csapat folyamatos fenntartása, a kiszervezés, azaz egy profi tesztelő cég megbízása, és aközött, hogy a felhasználói közönséggel ellenőrizteti a szoftver minőségét. Adott estben pedig ezek kombinációit érdemes megfontolni. A kiválasztott módszer nagy hatással lehet a termékre, az életútjára, a minőségére egyaránt.

Vegyük sorba, hogy miket érdemes tudni ezekről a megoldásokról, mik az előnyeik, hátrányaik.

Házon belüli, vagyis inhouse tesztelés

A leghagyományosabb módja a tesztelésnek. Kezdve egészen attól a ponttól mikor a fejlesztők még saját maguk nézték meg azt, hogy fut-e a programjuk, hasonlóan az analóg mesterekhez, akik az általuk készített gépet kipróbálták, egészen a jelenlegi tech cégekig, ahol szakképzett QA(Quality Assurance-Minőségbiztosítás, LINK) csapatok végeznek tesztelést számos módszerrel és eszközzel. Szándékosan a QA csapat kifejezést használtam, mert itt már gyakran automata és manuális tesztelők, fejlesztők közös munkájáról beszélünk a minőségbiztosítás érdekében. Ezek a csapatok jól ismerik a projekt tárgyát, a kitűzött vállalati és vállalási célokat. A szóban forgó módszer biztosítja a cég számára a tesztelési folyamat legmagasabb szintű ellenőrzését és az azonnali válaszokat a tesztelés bármely szakaszában felmerülő kérdésekre. A gyors reagálás, szoros együttműködés a covid alatt előtérbe kerülő távolról történő munkavégzést, kommunikációt, információ megosztást támogató eszközökkel már nem kizárólag ennek a formának a része.

A saját terméket fejlesztő szoftver cégek, ill. azok, akik saját, teljesen egyedi infrastruktúrát tartanak fent, gyakran állandó fejlesztő és tesztelő csapatokkal dolgoznak. Erre jó példa, amikor egy fejlesztő cég folyamatos kiadásokkal, update-ekkel, javításokkal dolgozik egy havi díjas alkalmazáson. Az újabb és újabb verziók folyamatos ellenőrzését belsős tesztelők látják el, együttműködve a fejlesztőkkel, menedzserekkel, designer-ekkel és más részvevőkkel. Így biztosítva a megfelelő minőséget a kiadások során.

Kiszervezett vagy ahogy legtöbbször használjuk outsource tesztelés

A fentiekkel ellentétben egy külső tesztelő cég által végzett ellenőrzést jelent. Ezeknek a cégeknek kifejezetten a szoftvertesztelés és a minőségbiztosítás a szakterületük. Változatos szaktudást felhasználva, külső nézőpontokat is figyelembe véve tudnak a vállalkozásoknak segíteni a szoftverek alapos tesztelésében. A változatosságba beleértve, hogy különféle tesztelési eszközökhöz, módszerekhez, platformokhoz értő tesztelők végzik el a feladatot. Az ilyen, sokszor iparágakon átívelő, számos cégnél megszerzett szaktudással rendelkező csapattal felszabadíthatóvá válnak bizonyos belső erőforrások, vagy megerősíthetőek a belső csapatok amikor sok a teendő.

Tegyük fel, hogy egy cég a meglévő Windows-ra fejlesztett program mellé szeretné, ha egyes funkciók mobil alkalmazásként is elérhetőek lennének. Az alkalmazás teszteléséhez már szüksége lesz speciális tudásra, extra erőforrásra, gyakorlott tesztelőkre. A munkát, ha kiszervezi, egyből olyan szakemberek kezébe tudja tenni a feladatot, akik járatosak a mobil alkalmazások tesztelésben, vagy akár abban, hogy mire kell figyelni a két rendszer összeérésénél. A korábbi tapasztalataikra támaszkodva, már a tervezési fázisban előre jelezhetik a hibákat, vagy például az új felhasználó nézőpontjából vizsgálva tehetnek fel kérdéseket. Mindezt megtehetik úgy, hogy csak a mobil app tesztelésére szerződnek, vagyis amikor elkészül a feladat, nem kell további költségeket tervezni, a megemelkedett létszám miatt. Ez a fajta gyorsaság a rendelkezésre állásban, a rugalmasság és a széles spektrumú tudás az, ami miatt népszerű a munka kiszervezése.

A közösségi- vagy tömegtesztelés

A legfiatalabb megoldás a három közül. Az alfa(LINK) és béta(LINK) tesztek korábban is léteztek, de ezzel a megoldással tesztelhetnek fejlesztés közben is nem kritikus rendszereket, korai hozzáférésű játékokat, kísérleti kiegészítőket meglévő szoftver mellé, azaz experimental feature-öket. A tárgyalt módszer a felhasználók különbözőségeire, mint például nyelvi különbségek, eltérő eszközök használata, nézőpontok és tapasztalatok variációira és a résztvevők számosságára alapoz. Ez a megoldás létező ügyfeleken, ügyfelek bizonyos meghívott csoportján, de erre szakosodott cégen keresztül is megvalósulhat.

Például elkészül a már meglévő szövegszerkesztő programhoz egy egyszerű beépített képszerkesztő modul, ami nem kezel felhasználói adatokat, nem befolyásolja a program eredeti képességeit, így felkérik a felhasználókat, hogy kapcsolják be a modult és próbálják ki. A visszajelzések alapján javítják a hibákat, és akár fel is mérhetik, hogy van-e igénye a felhasználóknak rá, és érdemes-e a továbbfejlesztésére. A valós felhasználást, ügyfélszokásokat, megszokott megoldásokat ezzel a módszerrel tudják tesztelni a legkönnyebben, valós demográfiai eloszlás és tudásszint mellett, amit nem egyszerű megvalósítani, vagy modellezni.

A három módszer megismerése után nézzük meg sorban az előnyeiket és hátrányaikat!

A házon belüli tesztelés előnyei

Meglévő domain ismeretek
A házon belüli tesztelők ideális esetben hosszú ideje és közelről ismerik a terméket, a termék fejlesztésének célját, valamint a fejlesztéséhez használt módszereket és eszközöket, ezáltal emelve a hibaazonosítási és -javítási folyamatok hatékonyságát.

Folyamatos kommunikáció
Mivel a belsős tesztelők például agilis környezetben közel állnak a házon belüli fejlesztőkhöz, a kérdéseket és gondokat egyszerűbben, közvetlenebb stílusban meg tudják beszélni, csökkentve a fejlesztési akadályokat. (Modern kommunikációs és remote munkát támogató eszközökkel ugyanez igaz az együtt dolgozó külsős munkatársakra is pl. agilis környezetben, ahol nagyon fontos a szoros együttműködés a fejlesztésen.)

Adatvédelem
A szervezet összes bizalmas adatát vagy a helyszínen tárolják, vagy csak belsős kollégákkal osztják meg, ill. a cég által felügyelt eszközökön folyik a munka, ezáltal csökkentve az adatok titkosságával kapcsolatos aggodalmakat.

Ellenőrzés
A vezetés teljes tesztelési folyamat során erősebb kontrolt tud gyakorolni a munkára, mint a közösségi tesztelésnél.

Jobb szinkron a vállalat céljaival
Sok esetben azok a tesztelők, akik házon belüli munkatársak, jobban tisztában vannak a vállalat jövőképével és céljaival, ami segíthet javítani a termékek minőségét. Ez megnyilvánul például az előre lépéssel kapcsolatos extra erőfeszítésekben, a céges tájékoztatók ismeretében.

Kiszámíthatóbb költségek
A tesztelők vállalati alkalmazottként történő felvételének költségei általában rögzítettek, így a költségvetés tervezése egyszerűbb, vagy kevesebb egyeztetést igényelnek a változások.

A házon belüli tesztelés hátrányai:

Korlátozott erőforrások
Mivel a házon belüli csapat korlátozott erőforrásokkal, például eszközökkel, létszámmal és tesztelési környezettel rendelkezik, a termék gyakran hiányos marad a tesztlefedettség tekintetében. Ez főleg határidőnyomás esetén válik hangsúlyosabbá.

A tesztelők elfogultsága
Ha a tesztelők már a tesztelés előtt hozzászoktak a szoftver bizonyos funkcióihoz, hajlamosak lehetnek figyelmen kívül hagyni bizonyos szempontokat, kényelmetlenségeket, vagy új felhasználók számára zavaró viselkedéseket, esetleg az elsőre nem egyértelmű megjelenítést.

Skálázhatósági nehézségek
A skálázás összetett feladat, mivel a házon belüli tesztelő csapat lassan bővíthető és költséges mind a keresésre, felvételiztetésre, egyeztetésekre fordított idő, mind a kiesett kapacitás miatti késés, a szükséges túlóra, vagy bent maradó hibák okozta gondok. Így kihívást jelent egyfelől a nagyobb vagy gyorsan fejlődő projektek kezelése, másfelől a nagyobb vállalások befejezése után az emberek megfelelő, hasznos és főleg értékteremtő, hasznot termelő munkával való ellátása, vagy akár a szükséges leépítések kihatása.

Többletköltségek
A házon belüli tesztelési módszer jelentősen növeli az üzleti költségeket, mivel egy új tesztelő felvétele és pozíciójának fenntartása újabb kiadásokkal jár, úgymint az eszközökkel való felszerelése, ezek karbantartása, az alkalmazott képzése, munkaügyi feladatainak ellátása.

A csapat hasonló gondolkodása
A házon belüli csapatok esetében kialakulhat a hasonló gondolkodásmód, az egymástól való tanulás, beszélgetések, az egy terméken és közösen szerzett tapasztalatok miatt. Ezért a tesztelés megközelítése nagyon kevés változatosságot mutathat, de az is előfordul, hogy cégen belüli szokásként teljesen megegyező lesz.

A kiszervezett, outsource tesztelés előnyei

Speciális szakértelem
A tesztelési szolgáltatók sok rétű, speciális ismeretekkel és szakértelemmel rendelkeznek, valamint változatos tudású csapatokat tartanak fenn, beleértve a különböző készségekkel és háttérrel rendelkező tesztelőket is. A jól kiválasztott szakterületeken megszerzett tudású tesztelő biztosítja, hogy a szoftvert szigorú és alapos tesztelésnek vessék alá.

Költséghatékonyság
A kiszervezett tesztelés egyik legfontosabb előnye, hogy költséghatékony. Ha külső szolgáltatásokat választ a teszteléshez, megszabadul a házon belüli személyi felvételek, eszközök beruházási és karbantartási kiadásaitól. Ez csökkenti a működési és egyéb általános költségeket.

Skálázhatóság
A három közül ez a leginkább skálázható megoldás. A projekt változásainak megfelelően alakítható a létszám, a csapattagok tudásszintje és szakterülete. Ez a rugalmasság nagyon hasznos olyan projekteknél, ahol viszonylag váratlanul változhat a terhelés, vagy a szigorú határidők betartása érdekében nagyobb erőforrásra van szükség.

Csökkentett kezelési teher
Ha a vállalkozás megtalálja azt a tesztelő céget, akivel együttműködik, a toborzást, a képzéseket rá tudja bízni.

Tanácsadás
Ha képzésben, akár módszertanban, akár egy konkrét tesztelési problémára keresi a cég a megoldást, outsource partneréhez fordulhat.

Objektivitás
Nagyon fontos a tesztelésben a függetlenség, azaz, hogy olyan szakember teszteljen, aki lehetőleg távol áll a kódtól, a fejlesztéstől. Erre a legjobb megoldás a külső tesztelő, aki új és „tiszta” perspektívát ad a szoftverteszteléshez. A belsős csapatokkal szemben, akik egy-egy problémához már hozzászoktak, az adott megoldás már nem idegen tőlük, a külső tesztelők friss szemmel ill. számos, más termékeken látott megoldások ismeretében vizsgálhatják a szoftvert.

A kiszervezett tesztelés hátrányai

Kommunikációs kihívás
Ha nem megfelelően alakítják ki a kommunikációt, pl. nem adnak lehetőséget a fejlesztőkkel való egyeztetésre, vagy a kommunikációs szoftverhez nem férnek hozzá a tesztelők, az nehezíti a közös munkát.

Ellenőrzési kihívás
Az ellenőrzési lehetőségek csökkenését jelentheti, ha a tesztelők nem ugyanabban az irodában, vagy online térben dolgoznak, mint a belsős kollégák.

Átmeneti időszak
A külső tesztelők felvétele és a projekt megértése időbe telik. Ebben az időszakban a kezdeti tesztelés lassabb és kevésbé hatékony lehet, hasonlóan a tapasztalt, de új alkalmazott felvétele utáni időszakhoz.

A közösségi kiszervezésű, tömegtesztelés előnyei

Változatos tesztelési környezetek
A különböző földrajzi területeken élő tesztelők biztosítják, hogy az eszközök, platformok és hálózati feltételek széles köre elérhető legyen tesztelésnél.

Valós forgatókönyvek
Mivel valódi felhasználók tesztelik és fedezik fel a terméket, oly módon, ahogyan használni fogják, így olyan, akár komoly problémákat is találhatnak, amelyek egyébként átcsúsztak volna a belső ellenőrzéseken.

Gyors visszajelzés
A közösségi tesztelés gyors visszajelzést ad, mivel sok tesztelő nézi egyszerre a terméket, ezáltal lerövidítve a hibák észleléséhez és jelzéséhez szükséges időt.

Alacsonyabb költségek
A közösségi tesztelés költséghatékony, mivel az eredményekért, jelen esetben a megtalált hibákért fizet a cég, és nem viseli a teljes munkaidős házon belüli tesztelő csapat fenntartásának terhét.

Rugalmasság és méretezhetőség
A közösségi kiszervezésű tesztelés méretezése egyszerűbb, hiszen meghívással, vagy a teljes közösség előtt való megnyitással is megvalósulhat, így mérettől függetlenül illeszkedhet kis- és nagyvállalatok különböző projektjeihez is.

Széleskörű tudáshoz való hozzáférés
A közösségi tesztelés lehetővé teszi a különböző háttérrel és szakértelemmel rendelkező tesztelők segítségének igénybevételét, ezzel növelve a tesztelés minőségét.

A közösségi kiszervezésű tesztelés hátrányai

Változékony minőség
A tesztelők tudásának, motiváltságának, tapasztalatainak sokfélesége miatt eltérő alapossággal vizsgálhatják a szoftvert. Ezért a különböző minőségi vizsgálatok következetlen eredményeket hozhatnak.

Koordinációs problémák
Amikor sokan dolgoznak egy terméken, az komoly kihívást jelenthet a tesztelést koordinálónak, ill. a kitűzött cél felügyelete a munka során több erőforrást emészt fel.

Titoktartási kérdések
Még ha komolyan át is gondolják a titoktartási kérdéseket, részletesen ellenőrzik a kikerülő anyagokat, felmerülhetnek adatvédelemmel és a szellemi tulajdonnal kapcsolatos kockázatok.

Ellenőrzés korlátozottsága
Korlátozott lehet a tesztelési feladatokra való rálátás, ezért nehezebb a tesztelés pontos körülményeinek ellenőrzése.

Visszajelzések kezelése
A részvevőktől érkező hibajelentések, leírások és visszajelzések nagy száma miatt ezek kezelése, nyomon követése, egyeztetése és összevetése csak megfelelő eszközökkel lehetséges, és így is komoly emberi munkát igényel.

Nehezen számolható költségek
A költségek nehezebben kalkulálhatóak lehetnek a projektek összetettsége és a hibák, észrevételek számának függvényében.

A három módszer közül melyik a jobb és miért?

Nem minden helyzetben egyértelmű a választás, hiszen vannak előnyök és hátrányok minden megoldásnál. Mégis a kiszervezés rugalmassága, tervezhetősége és a gyorsan megszerezhető, az igényeknek megfelelő szakértelem miatt a kiszervezés (outsource) gyakran komoly előnyt biztosít a belsős, vagy közösségi teszteléssel szemben a legtöbb vállalkozás számára.

A teszteléssel foglalkozó cégek több területen rendelkeznek speciális tudású tesztelőkkel legyen szó teljesítmény-, funkcionális-, vagy épp biztonsági tesztekről. Ezen tudás nem biztos, hogy olyan mélységben rendelkezésre áll a házon belüli tesztelők esetében, mint a tesztelő cég szakembereinél. Az outsource cégeknél fontos, az aktuális, akár speciális, akár szerteágazó tudás megszerzése, és ennek folyamatos fejlesztése az üzleti igények kiszolgálása érdekében.

A létszám és főleg a jól kiválasztott összetételű csapat kulcsfontoságú a megfelelő minőségbiztosítás, valamint a költséghatékonyság szempontjából is. A belső csapatok méretének változtatása sosem egyszerű akár átcsoportosításról van szó, akár más személyi változásokról. A projekt aktuális igényeinek lekövetésében a kiszervezés hatékonyabb, mint a belsős tesztelés, amellett, hogy nem veszíti el a dedikált tesztelők következetessége által biztosított előnyt és stabilitást úgy, mint a tömegtesztelés esetében.

Mindhárom módszernek megvan a helye a tesztelés világában, érdemes mérlegelni a lehetőségeket és az aktuális körülményeket, az előnyöket, hátrányokat és az alapján meghozni a döntést.

A cikk megírásához ötletadóként és alapként Dragana Stamenkovikj: Inhouse Vs. Outsourced Vs. Crowdsourced Testing: Which Is Better? című írása szolgált.

Forrás:

https://www.testdevlab.com/blog/inhouse-vs-outsourced-vs-crowdsourced-testing-which-is-better

https://www.quora.com/What-is-the-difference-between-crowdsourcing-and-outsourcing

https://hu.wikipedia.org/wiki/Crowdtesting

https://op360.com/blog//outsourcing-vs-crowdsourcing

Megosztás

Íratkozzon fel hírlevelünkre!

Kapcsolódó cikkek

Mi a különbség a szoftvertesztelés és a minőségbiztosítás között?

Bevezető A szoftverfejlesztés világában gyakran keveredik két fogalom: szoftvertesztelés és minőségbiztosítás (Quality Assurance, QA). Sok projektben szinonimaként használják őket, pedig valójában másról van szó. A különbség nem pusztán elméleti: a félreértések rossz folyamatokhoz, hiányos szerepkörökhöz és felesleges költségekhez vezethetnek. Ebben a cikkben áttekintjük, mit takar a két fogalom, hogyan viszonyulnak egymáshoz, és miért fontos, hogy

Az ERP bevezetések valódi költségei – és hogyan előzi meg a tesztelés a kudarcot

Bevezető Minden vállalati vezető, aki valaha ERP bevezetési projekt közelében járt, pontosan tudja azt az érzést, amikor a projekt költségei hónapról hónapra nőnek, a határidők csúsznak, és lassan úgy tűnik, mintha az egész vállalkozás egy feneketlen kútba dobná a pénzt. Az Enterprise Resource Planning rendszerek bevezetése talán a nagyvállalatok legnagyobb informatikai kihívása, és a statisztikák

Miért nem engedhetik meg a nagyvállalatok a professzionális szoftvertesztelés kihagyását?

Miért nem engedhetik meg a nagyvállalatok a professzionális szoftvertesztelés kihagyását?

Bevezető A mai digitális világban minden nagyvállalat vezetője előtt ott áll a kérdés: mennyire megbízhatók azok a szoftverrendszerek, amelyekre a cég napi működése épül? Sokszor úgy gondoljuk, hogy a szoftvertesztelési szolgáltatások csak egy újabb költségsor a már amúgy is feszített költségvetésben. Ez a felfogás azonban olyan súlyos hibának bizonyulhat, amely akár a vállalat létét is

Scroll to Top
Passed
Adatvédelmi áttekintés

Ez a weboldal sütiket használ, hogy a lehető legjobb felhasználói élményt nyújthassuk. A cookie-k információit tárolja a böngészőjében, és olyan funkciókat lát el, mint a felismerés, amikor visszatér a weboldalunkra, és segítjük a csapatunkat abban, hogy megértsék, hogy a weboldal mely részei érdekesek és hasznosak. Adatkezelési tájékoztató