how use poka yoke technique improve software quality
Softvérové inžinierstvo je disciplína, ktorá sa zameriava na výrobu vysoko kvalitného softvéru prostredníctvom systematického a dobre naplánovaného prístupu k vývoju softvéru.
Obsahuje veľa osvedčených postupov, dodržiavajúcich normy na dosiahnutie kvalitného produktu. Tri hlavné fázy vývoja softvéru sú Analýza - Návrh - Implementácia. Dosiahnutie vysoko kvalitného softvéru je nevyhnutné pre výrobu bezchybného produktu.
Čo sa dozviete:
Softvérové procesné inžinierstvo
Správa defektov
Poruchou je neočakávané alebo nežiaduce správanie, ktoré sa vyskytne vo výrobku. Všetko, čo súvisí s chybou, je nepretržitý proces, nie konkrétny stav.
Nájdenie a odstránenie chyby v počiatočnom štádiu vývoja softvéru skracuje čas, prepracovanie a peniaze. Hľadanie chyby v neskorších fázach stojí vždy niekoľkonásobne viac ako počiatočné fázy. Zvyšuje kvalitu pridaním spoľahlivosti, prenosnosti, udržiavateľnosti atď.
Preto je vhodné, aby každá spoločnosť mala s Manažment defektov tím pre správu systémov a defektov v každej fáze vývoja s cieľom dosiahnuť dobrú kvalitu výrobkov a získať dôveru zákazníkov.
Jednou z takýchto metód kontroly chýb je POKA-YOKE,
Čo je Poka-Yoke?
Je to proces zabezpečenia kvality, ktorý zaviedol japonský inžinier Shigeo Shingo. Tento termín sa v japonskom jazyku používa ako „Poka“, čo znamená chybu a „Yoke“, čo znamená zabrániť, tj. Predchádzať chybám alebo techniky odolnosti proti chybám.
Účelom Poka-Yoke je vyvinúť procesy na zníženie defektov predchádzaním alebo opravou chýb (dizajn, ktorý používateľovi zobrazí výstrahy alebo varovné správy) v počiatočných fázach návrhu a vývoja. Táto technika sa väčšinou používa vo výrobných odvetviach, ale teraz sa táto efektívna technika prispôsobuje aj procesom vývoja softvéru.
Príklad Poka-Yoke z výrobného priemyslu
Dobrým príkladom dizajnu Poka-Yoke z výrobného priemyslu - slot pre SIM kartu v mobilných telefónoch je navrhnutý tak, aby používateľ mohol vkladať SIM kartu iba správnym spôsobom. Pri vkladaní SIM karty na mobilný telefón nie je možné, aby užívateľ urobil chybu. Takto je dizajnová chyba odolná.
Príklad Poka-Yoke zo softvérovej aplikácie
Perfektným príkladom procesu Poka-yoke v softvérovej aplikácii je - funkcia e-mailových príloh služby Gmail - keď pri písaní nového e-mailu napíšete slovo „nájsť v prílohe“ a pokúsite sa ho odoslať bez priloženia súboru, Google vám zobrazí upomienku na vyskakovacie okno s tým, že ste vo svojom e-maile použili slová „nájsť priložené“, ale nepriložili ste žiadne súbory, stále chcete pokračovať v odosielaní?
Ako funguje technika Poka-Yoke?
Kroky na implementáciu procesu Poka-Yoke:
Ďalej uvádzame niekoľko krokov na navrhnutie a implementáciu procesu, ktorý zabráni chybám softvéru:
- Uveďte zoznam všetkých používateľských scenárov alebo komplexných testovacích prípadov aplikácie.
- Analyzujte všetky tieto scenáre používateľa dotazom 5-prečo otázky na pochopenie spôsobov, ako môžu tieto scenáre zlyhať.
- Po identifikácii spôsobov, ako sa môžu tieto scenáre používateľov mýliť, navrhnite a použite techniku Poka-Yoke, aby ste sa vyhli možným problémom ( Napríklad, tento návrh by mohol byť jednoduchým testom jednotky na kontrolu, či bola napísaná nejaká funkcia funkčná alebo nie).
- Uistite sa, že technika navrhnutá na zabránenie vzniku chyby funguje správne tak, že dáte chyby alebo varovnú správu o nesprávnom zadaní alebo riešení používateľského scenára.
- Po absolvovaní skúšky pridajte túto techniku do zoznamu procesov Poka-Yoke, ktoré sa majú vykonať zakaždým pri novom vydaní / zostavení. (Vo vyššie uvedenom príklade testovania jednotky, akonáhle je test jednotky napísaný na kontrolu funkčného kódu, skontrolujte, či pracuje pre kladné a záporné hodnoty. Keď tento test prejde, pridajte ho do úložiska „Testy jednotiek“, ktoré sa majú vykonať pri každej zmene. sa vyrába v príslušných moduloch)
- Zmerajte úspešnosť tohto procesu Poka-Yoke. Skontrolujte, či táto technika skutočne zabránila alebo nezachytila chyby, keď k nim dôjde.
Kategórie Poka-Yoke
- Prevencia defektov
- Detekcia defektu
Prevencia defektov je najdôležitejšou aktivitou v SDLC. Táto metóda sa používa na identifikáciu všetkých možných problémov a krokov potrebných na ich odstránenie. Mnohým chybám softvéru je možné zabrániť už vo fáze návrhu.
Tím zaistenia kvality môže pomôcť zabrániť týmto chybám preskúmaním Dokumenty so špecifikáciami softvérových požiadaviek . Všetky problémy identifikované v tejto fáze sú riešené vo fáze kódovania softvéru a je zabránené ich prenosu do ďalších fáz.
Vyššie uvedené príklady výrobného a softvérového priemyslu sú dobrými príkladmi techník prevencie defektov.
Detekcia defektu je najbežnejšou úlohou tímov zabezpečujúcich kvalitu. Tímy QA využívajú rôzne prístupy a stratégie na efektívne vykonávanie testovacích prípadov. Poruchy sú detekované mnohými ďalšími testovacími metódami, ako je Dym a prieskumné testovanie.
Aké sú kvality dobrého procesu Poka-Yoke?
- Vytváranie a údržba Poka-Yoke by mala byť jednoduchá. Malo by to byť ľahko ovládateľné a nákladovo efektívne. Údržba komplexného Poka-Yoke je časovo náročná a často vedie k problémom, pokiaľ nie je udržiavaná správne.
- Poka-Yoke by mal byť navrhnutý na začiatku SDLC, aby mohol rýchlo zistiť problémy.
- Dobrý Poka-Yoke by mal byť dostatočne presný, aby našiel problémy, keď sa vyskytnú.
- Dobrý Poka-Yoke by mal byť navrhnutý tak, aby zastavil najbežnejšie problémy vyskytujúce sa v softvéri.
- Malo by to byť súčasťou procesu návrhu a kódovania softvéru.
Potreba Poka-Yoke vo fáze návrhu softvéru
Pri vývoji kvalitného softvéru je dôležité navrhnúť ho podľa očakávaní používateľa. Užívateľ by mal byť schopný ľahko používať / zaobchádzať so softvérom bez toho, aby robil nejaké nákladné chyby.
Príklady dizajnu a kvality Poka-Yoke
# 1) Príklad chýbajúcich súborov príloh pri vytváraní e-mailu pomocou služby Gmail.
# 2) Niektoré webové stránky zobrazujú indikátor sily hesla, ktorý zobrazuje silu hesla. Tiež vedie používateľov k používaniu silného hesla s kombináciou znakov a čísel.
# 3) Funkcia vyhľadávacieho nástroja Google na automatické navrhovanie opráv pravopisu pre vyhľadávací dopyt používateľa. To pomáha používateľom vyhnúť sa neúmyselným chybám.
# 4) Bankové weby používajú funkciu dvojitého textového poľa na prijímanie citlivých informácií, ako sú heslá alebo čísla účtov. Druhé textové pole je zvyčajne šifrované, aby sa pri zadávaní vstupnej hodnoty nedopustila chyba a aby sa skontrolovalo, či sa obidve hodnoty textového poľa zhodujú.
Potreba Poka-Yoke pri vývoji softvéru
Z nespočetných príkladov z odvetvia je teraz dobre známe, že náklady na odstránenie chyby po vydaní produktu sú mnohonásobne vyššie ako jeho odstránenie vo vývojovom cykle.
Ďalšie čítanie = >> Aká je cena za kvalitu (COQ)?
Najlepšie riešenie, ako sa vyhnúť problémom po vydaní, je zavedenie techník Poka-Yoke, ktoré by mohli zachytiť chyby v počiatočných fázach vývoja, čo zlacní ich opravu. Implementácia procesu Poka-Yoke do značnej miery závisí od Schopnosť testera zachytiť a eliminovať problémy.
Príklady Poka-Yoke vo vývoji softvéru
- Testovanie jednotky je jedným z najúčinnejších prostriedkov na vývoj softvéru na zabezpečenie proti chybám.
- Overenie Poka-Yoke v súprave je pre vývojárov vždy dobrým návrhom. Chyby overenia by sa mali spracovávať vo vašom kóde. Tieto problémy s validáciou by sa mali pravidelne navštevovať a aktualizovať.
- Bežným a najefektívnejším Poka-Yoke je najímanie správnych kandidátov na zabezpečenie chybného softvéru.
Záver
Robiť chyby je v poriadku; len nerob opakovane tú istú chybu . A aby sa zabránilo opakovaniu tých istých chýb, mali by byť zavedené určité kontroly alebo procesy. Na vyriešenie tohto problému sú vyvinuté techniky Poka-Yoke.
Odkazy na články:- Shigeo Shingo, nulová kontrola kvality
- Wikipedia odkaz
- Boris Beizer, Software Testing Techniques, 2. vyd. Van Nostrand Reinhold
O autorovi: Toto je príspevok od používateľa Nataraj Kanchyani. Pracuje ako senior softvérový inžinier pre testovanie v spoločnosti Centurylink Technologies India Pvt Ltd, Bangalore.
Máte nejaké skúsenosti s prácou na tejto technike? Alebo ste niekedy pracovali na vývoji takýchto procesov prevencie a detekcie chýb? Dajte nám vedieť v komentároch nižšie.
java vývojár rozhovor otázky a odpovede
Odporúčané čítanie
- Čo sú atribúty kvality?
- Falošný Boh kvality verzus skutoční ľudia - Kto je zodpovedný za kvalitu softvéru?
- Čo je zabezpečenie kvality softvéru (SQA): Sprievodca pre začiatočníkov
- Vzájomné porozumenie v testovaní: Kľúč pre dodávku kvalitného softvéru
- Testovanie softvéru a certifikácia zabezpečenia kvality - 2. časť