how use poka yoke technique improve software quality
Ingineria software este o disciplină care urmărește producerea de software de înaltă calitate printr-o abordare sistematică, bine planificată a dezvoltării software-ului.
Conține multe bune practici, respectând standardele pentru a obține un produs de calitate. Cele trei faze principale ale dezvoltării software sunt Analiza - Proiectare - Implementare. Pentru a realiza un software de înaltă calitate este esențial pentru a produce un produs fără defecte.
Ce veți învăța:
Ingineria proceselor software
Gestionarea defectelor
Defectul este comportamentul neașteptat sau nedorit care apare în produs. Orice lucru legat de defect este un proces continuu, nu o stare anume.
Găsirea și remedierea defectului în stadiul incipient al dezvoltării software-ului reduce timpul, prelucrarea și banii. Găsirea defectului în etapele ulterioare costă întotdeauna de mai multe ori decât etapele timpurii. Îmbunătățește calitatea prin adăugarea fiabilității, portabilității, mentenabilității etc.
Prin urmare, este recomandabil ca fiecare companie să meargă cu un Gestionarea defectelor echipa de management a sistemului și a defectelor în fiecare etapă a dezvoltării pentru a obține o bună calitate a produselor și pentru a câștiga încrederea clienților.
Una dintre astfel de tehnici de protecție împotriva greșelilor este POKA-YOKE,
Ce este Poka-Yoke?
Este un proces de asigurare a calității introdus de inginerul japonez Shigeo Shingo. Acest termen este folosit în limba japoneză ca „Poka”, care înseamnă greșeală și „Jug”, care înseamnă prevenire, adică tehnică de prevenire a greșelilor sau de corectare a greșelilor.
Scopul Poka-Yoke este de a dezvolta procese pentru a reduce defectele prin evitarea sau corectarea (proiectarea pentru a afișa alerte sau mesaje de avertizare către utilizator) greșelile în fazele timpurii de proiectare și dezvoltare. Această tehnică este utilizată mai ales în industriile producătoare, dar acum această tehnică eficientă este adaptată și proceselor de dezvoltare software.
Exemplu Poka-Yoke dintr-o industrie prelucrătoare
Un bun exemplu de design Poka-Yoke din industria de fabricație - slotul pentru cartela SIM din telefoanele mobile este proiectat în așa fel încât utilizatorul să aibă posibilitatea să introducă cartela SIM numai într-un mod corect. Nu există nicio șansă ca utilizatorul să facă o greșeală în timp ce pune cartela SIM pe un telefon mobil. Acest lucru face dovada greșelii de proiectare.
Exemplu Poka-Yoke dintr-o aplicație software
Exemplul perfect de proces Poka-yoke în aplicația software este - caracteristica atașamentelor de e-mail Gmail - atunci când tastați cuvântul „găsiți atașat” în timp ce compuneți un e-mail nou și încercați să-l trimiteți fără a atașa un fișier Google vă va afișa un memento pop-up care spune că ați folosit cuvintele „găsiți atașat” în e-mail, dar nu ați atașat niciun fișier, doriți în continuare să trimiteți în continuare?
Cum funcționează tehnica Poka-Yoke?
Pași pentru implementarea unui proces Poka-Yoke:
Mai jos sunt câțiva pași pentru proiectarea și implementarea unui proces de prevenire a defectelor software:
- Enumerați toate scenariile utilizatorilor sau cazurile de testare end-to-end pentru aplicație.
- Analizați toate aceste scenarii de utilizator întrebând 5-de ce întrebări pentru a înțelege modurile în care aceste scenarii pot eșua.
- Odată ce identificați modul în care aceste scenarii de utilizator pot fi greșite, proiectați și aplicați o tehnică Poka-Yoke pentru a evita posibilele probleme ( De exemplu, acest design ar putea fi un simplu test de unitate pentru a verifica dacă a fost scrisă o funcție care funcționează corect sau nu).
- Asigurați-vă că tehnica concepută pentru a evita defectul funcționează corect, oferind erori sau un mesaj de avertizare pentru introducerea incorectă sau tratarea scenariului utilizatorului.
- Odată ce încercarea este trecută, adăugați această tehnică la lista proceselor Poka-Yoke care urmează să fie efectuate de fiecare dată la noua versiune / build. (În exemplul de testare a unității de mai sus, odată ce testul de unitate este scris pentru a verifica codul funcției, verificați dacă funcționează pentru valori pozitive și negative. Când trece acest test, adăugați-l la depozitul „Teste de unitate” pentru a fi executat de fiecare dată când se modifică este realizat în module relevante)
- Măsurați succesul acestui proces Poka-Yoke. Verificați dacă această tehnică a împiedicat sau a detectat cu adevărat defecte atunci când se întâmplă.
Categorii de Poka-Yoke
- Prevenirea defectelor
- Detectarea defectelor
Prevenirea defectelor este cea mai importantă activitate din SDLC. Această metodă este utilizată pentru a identifica toate problemele posibile și acțiunile necesare pentru a elimina aceste probleme. Multe defecte software pot fi prevenite chiar în faza de proiectare.
Echipa de asigurare a calității poate ajuta la prevenirea acestor defecte prin revizuirea Documente cu specificații privind cerințele software . Toate problemele identificate în această etapă sunt abordate în faza de codare a software-ului și sunt împiedicate să treacă la etapele ulterioare.
Exemplele din industria de producție și software furnizate mai sus sunt exemple bune de tehnici de prevenire a defectelor.
Detectarea defectelor este cea mai comună sarcină pentru echipele de asigurare a calității. Echipele de asigurare a calității utilizează diverse abordări și strategii pentru executarea eficientă a cazurilor de testare. Defectele sunt detectate de multe alte metode de testare, cum ar fi Fum și testarea exploratorie.
cel mai bun software de joc pentru începători
Care sunt calitățile unui proces bun Poka-Yoke?
- Poka-Yoke ar trebui să fie simplu de creat și întreținut. Ar trebui să fie ușor de manevrat și rentabil. Menținerea unui Poka-Yoke complex este consumatoare de timp și adesea duce la probleme, dacă nu este întreținut corect.
- Poka-Yoke ar trebui să fie proiectat devreme în SDLC, astfel încât să poată detecta rapid problemele.
- Un Poka-Yoke bun ar trebui să fie suficient de corect pentru a găsi probleme atunci când apar.
- Un bun Poka-Yoke ar trebui să fie conceput în așa fel încât să oprească cele mai frecvente probleme care apar în software.
- Ar trebui să facă parte din procesul de proiectare și codificare software.
Nevoia de Poka-Yoke în faza de proiectare software
Pentru a dezvolta software de calitate, este important să îl proiectați în conformitate cu așteptările utilizatorului. Utilizatorul ar trebui să poată utiliza / manipula software-ul cu ușurință, fără a face greșeli costisitoare.
Exemple Poka-Yoke în design și calitate
# 1) Un exemplu de fișiere atașate lipsă în timpul compunerii unui e-mail folosind Gmail.
# 2) Unele site-uri web arată indicatorul de intensitate a parolei pentru a afișa intensitatea parolei. De asemenea, îi ghidează pe utilizatori să folosească o parolă puternică cu combinații de caractere și numere.
# 3) Funcția motorului de căutare Google pentru a sugera automat corecții ortografice pentru interogarea de căutare a utilizatorului. Acest lucru îi ajută pe utilizatori să evite să facă greșeli accidentale.
# 4) Site-urile bancare utilizează funcția de câmp dublu text pentru a accepta informații sensibile precum parole sau numere de cont. Al doilea câmp de text este de obicei criptat pentru a evita orice greșeală în timp ce furnizați valoarea de intrare și pentru a verifica dacă ambele valori ale câmpului de text se potrivesc.
Nevoia de Poka-Yoke în dezvoltarea de software
Din nenumărate exemple din industrie, se știe acum că costul remedierii unui defect după lansarea produsului este de multe ori mai mare decât remedierea acestuia în ciclul de dezvoltare.
Lecturi suplimentare = >> Care este costul calității (COQ)?
Cea mai bună soluție pentru a evita problemele post-lansare este introducerea tehnicilor Poka-Yoke, care ar putea depista defecte în fazele timpurii de dezvoltare, făcându-l mai ieftin de remediat. Implementarea procesului Poka-Yoke depinde în mare măsură de Capacitatea testerului pentru a surprinde și a elimina problemele.
Exemple de Poka-Yoke în dezvoltarea de software
- Testarea unității este unul dintre cele mai eficiente mijloace de dezvoltare a software-ului împotriva erorilor.
- Având validarea Poka-Yoke în kit este întotdeauna o sugestie bună pentru dezvoltatori. Erorile de validare ar trebui tratate în codul dvs. Aceste probleme de validare ar trebui revizuite și actualizate periodic.
- Un Poka-Yoke obișnuit și cel mai eficient este acela de a angaja candidații potriviți pentru a vă proteja software-ul.
Concluzie
A face greșeli este OK; pur și simplu nu faceți aceeași greșeală din nou și din nou . Și pentru a evita să comiți din nou aceleași greșeli, ar trebui să existe unele verificări sau procese. Tehnici Poka-Yoke sunt dezvoltate pentru a rezolva această problemă.
Referințe articol:- Shigeo Shingo, control zero al calității
- Wikipedia referinţă
- Boris Beizer, Tehnici de testare a software-ului, ediția a II-a Van Nostrand Reinhold
Despre autor: Aceasta este o postare invitată de Nataraj Kanchyani. Lucrează ca inginer software-test la Centurylink Technologies India Pvt Ltd, Bangalore.
Aveți vreo experiență lucrând la această tehnică? Sau ați lucrat vreodată la dezvoltarea unor astfel de procese de prevenire și detectare a defectelor? Spuneți-ne în comentariile de mai jos.
Lectură recomandată
- Care sunt atributele de calitate?
- Fake God of Quality versus True Humans - Cine este responsabil pentru calitatea software-ului?
- Ce este asigurarea calității software-ului (SQA): un ghid pentru începători
- Înțelegerea reciprocă în testare: o cheie pentru furnizarea unui software de calitate
- Testări de software și certificări de asigurare a calității - Partea 2