how use poka yoke technique improve software quality
Software Engineering ist eine Disziplin, die darauf abzielt, qualitativ hochwertige Software durch einen systematischen, gut geplanten Ansatz für die Softwareentwicklung zu produzieren.
Es enthält viele bewährte Verfahren, die den Standards zur Erreichung des Qualitätsprodukts entsprechen. Die drei Hauptphasen der Softwareentwicklung sind Analyse - Design - Implementierung. Um ein fehlerfreies Produkt herzustellen, ist es unerlässlich, qualitativ hochwertige Software zu erstellen.
Was du lernen wirst:
Software Process Engineering
Fehlermanagement
Der Fehler ist das unerwartete oder unerwünschte Verhalten, das im Produkt auftritt. Alles, was mit einem Defekt zu tun hat, ist ein kontinuierlicher Prozess, kein bestimmter Zustand.
Das Auffinden und Beheben des Fehlers in der frühen Phase der Softwareentwicklung reduziert Zeit, Nacharbeit und Geld. Das Auffinden des Defekts in späteren Stadien kostet immer ein Mehrfaches als in den frühen Stadien. Es verbessert die Qualität durch Hinzufügen von Zuverlässigkeit, Portabilität, Wartbarkeit usw.
Daher ist es ratsam, dass jedes Unternehmen mit einem Fehlermanagement System- und Fehlermanagementteam in jeder Phase der Entwicklung, um eine gute Produktqualität zu erzielen und das Vertrauen der Kunden zu gewinnen.
Eine solche Fehlerschutztechnik ist POKA-YOKE,
Was ist Poka-Joch?
Es ist ein Qualitätssicherungsprozess, der vom japanischen Ingenieur Shigeo Shingo eingeführt wurde. Dieser Begriff wird in der japanischen Sprache als 'Poka' verwendet, was 'Fehler' bedeutet, und 'Joch', was 'Verhindern' bedeutet, d. H. Fehlerverhindernde oder fehlerfreie Technik.
Der Zweck von Poka-Yoke besteht darin, Prozesse zu entwickeln, um Fehler zu reduzieren, indem Fehler in frühen Entwurfs- und Entwicklungsphasen vermieden oder korrigiert werden (Entwurf, um dem Benutzer Warnungen oder Warnmeldungen anzuzeigen). Diese Technik wird hauptsächlich in der Fertigungsindustrie verwendet, aber jetzt ist diese effektive Technik auch an Softwareentwicklungsprozesse angepasst.
Lebenszyklus der Wasserfallmodellsystementwicklung
Poka-Yoke-Beispiel aus einer Fertigungsindustrie
Ein gutes Beispiel für das Poka-Yoke-Design aus der Fertigungsindustrie: Der SIM-Kartensteckplatz in Mobiltelefonen ist so konzipiert, dass der Benutzer die SIM-Karte nur korrekt einlegen darf. Der Benutzer kann beim Einlegen der SIM-Karte in ein Mobiltelefon keinen Fehler machen. Dies macht das Design fehlerfrei.
Poka-Yoke-Beispiel aus einer Softwareanwendung
Youtube zu MP3 Konverter mit Bearbeitung
Das perfekte Beispiel für den Poka-Yoke-Prozess in der Softwareanwendung ist die Funktion 'Google Mail-E-Mail-Anhänge'. Wenn Sie beim Erstellen einer neuen E-Mail das Wort 'Anhang suchen' eingeben und versuchen, es zu senden, ohne eine Datei anzuhängen, zeigt Google eine Popup-Erinnerung an, die Sie anzeigt Sie haben in Ihrer E-Mail die Wörter 'Find Attached' verwendet, aber keine Dateien angehängt. Möchten Sie trotzdem weiter senden?
Wie funktioniert die Poka-Yoke-Technik?
Schritte zur Implementierung eines Poka-Yoke-Prozesses:
Im Folgenden finden Sie einige Schritte zum Entwerfen und Implementieren eines Prozesses zur Vermeidung von Softwarefehlern:
- Listen Sie alle Benutzerszenarien oder End-to-End-Testfälle für die Anwendung auf.
- Analysieren Sie alle diese Benutzerszenarien, indem Sie fragen 5-warum Fragen, um zu verstehen, wie diese Szenarien fehlschlagen können.
- Sobald Sie herausgefunden haben, wie diese Benutzerszenarien falsch sein können, entwerfen und wenden Sie eine Poka-Yoke-Technik an, um mögliche Probleme zu vermeiden ( Zum Beispiel, Dieses Design könnte ein einfacher Unit-Test sein, um zu überprüfen, ob eine geschriebene Funktion ordnungsgemäß funktioniert oder nicht.
- Stellen Sie sicher, dass die Technik zur Vermeidung des Fehlers ordnungsgemäß funktioniert, indem Sie Fehler oder die Warnmeldung für eine falsche Eingabe oder Behandlung des Benutzerszenarios ausgeben.
- Sobald die Testversion bestanden ist, fügen Sie diese Technik der Liste der Poka-Yoke-Prozesse hinzu, die jedes Mal bei einer neuen Version / einem neuen Build ausgeführt werden sollen. (Im obigen Beispiel für Komponententests prüfen Sie nach dem Schreiben des Komponententests zur Überprüfung des Funktionscodes, ob er für positive und negative Werte funktioniert. Wenn dieser Test erfolgreich ist, fügen Sie ihn dem Repository 'Komponententests' hinzu, das bei jeder Änderung ausgeführt werden soll wird in relevanten Modulen erstellt)
- Messen Sie den Erfolg dieses Poka-Yoke-Prozesses. Überprüfen Sie, ob diese Technik Fehler tatsächlich verhindert oder aufgefangen hat.
Kategorien von Poka-Joch
- Fehlervermeidung
- Fehlererkennung
Fehlervermeidung ist die wichtigste Aktivität in SDLC. Diese Methode wird verwendet, um alle möglichen Probleme und Maßnahmen zu identifizieren, die zur Beseitigung dieser Probleme erforderlich sind. Viele Softwarefehler können bereits in der Entwurfsphase selbst verhindert werden.
Das Qualitätssicherungsteam kann helfen, diese Mängel zu vermeiden, indem es die überprüft Dokumente zur Spezifikation der Softwareanforderungen . Alle in dieser Phase identifizierten Probleme werden in der Software-Codierungsphase behoben und daran gehindert, in spätere Phasen überzugehen.
Die oben angegebenen Beispiele für die Fertigungs- und Softwareindustrie sind gute Beispiele für Techniken zur Fehlervermeidung.
Fehlererkennung ist die häufigste Aufgabe für Qualitätssicherungsteams. QA-Teams verwenden verschiedene Ansätze und Strategien, um Testfälle effektiv auszuführen. Fehler werden durch viele andere Testmethoden wie erkannt Rauch und Erkundungstests.
Was sind die Eigenschaften eines guten Poka-Yoke-Prozesses?
- Poka-Yoke sollte einfach zu erstellen und zu warten sein. Es sollte einfach zu handhaben und kostengünstig sein. Die Wartung eines komplexen Poka-Yoke ist zeitaufwändig und führt häufig zu Problemen, wenn sie nicht ordnungsgemäß gewartet wird.
- Poka-Yoke sollte früh in SDLC entwickelt werden, damit Probleme schnell erkannt werden können.
- Ein gutes Poka-Joch sollte genau genug sein, um Probleme zu finden, wenn sie auftreten.
- Ein gutes Poka-Yoke sollte so konzipiert sein, dass die häufigsten Probleme in der Software vermieden werden.
- Es sollte Teil des Software-Design- und Codierungsprozesses sein.
Bedarf an Poka-Yoke in der Software-Design-Phase
Um qualitativ hochwertige Software zu entwickeln, ist es wichtig, sie gemäß den Erwartungen des Benutzers zu entwerfen. Der Benutzer sollte in der Lage sein, die Software problemlos zu verwenden / zu handhaben, ohne kostspielige Fehler zu machen.
Poka-Yoke-Beispiele in Design und Qualität
# 1) Ein Beispiel für fehlende Anhangsdateien beim Erstellen einer E-Mail mit Google Mail.
# 2) Einige Websites zeigen die Kennwortstärkeanzeige an, um die Kennwortstärke anzuzeigen. Außerdem werden Benutzer dazu geführt, ein sicheres Kennwort mit Kombinationen aus Zeichen und Zahlen zu verwenden.
Was ist ein guter kostenloser PC-Reiniger?
# 3) Google-Suchmaschinenfunktion zum automatischen Vorschlagen von Rechtschreibkorrekturen für die Benutzersuchabfrage. Dies hilft Benutzern, versehentliche Fehler zu vermeiden.
# 4) Bank-Websites verwenden die Funktion 'Doppelte Textfelder', um vertrauliche Informationen wie Passwörter oder Kontonummern zu akzeptieren. Das zweite Textfeld wird normalerweise verschlüsselt, um Fehler bei der Eingabe des Eingabewerts zu vermeiden und um zu überprüfen, ob beide Textfeldwerte übereinstimmen.
Die Notwendigkeit für Poka-Yoke in der Softwareentwicklung
Aus unzähligen Branchenbeispielen ist mittlerweile bekannt, dass die Kosten für die Behebung eines Fehlers nach der Produktfreigabe um ein Vielfaches höher sind als für die Behebung im Entwicklungszyklus.
Weiterführende Literatur = >> Was kostet die Qualität (COQ)?
Die beste Lösung, um Probleme nach der Veröffentlichung zu vermeiden, ist die Einführung der Poka-Yoke-Techniken, die Fehler in frühen Entwicklungsphasen erkennen und die Behebung billiger machen können. Die Implementierung des Poka-Yoke-Prozesses hängt weitgehend von der Fähigkeit des Testers um die Probleme zu erfassen und zu beseitigen.
Poka-Yoke-Beispiele in der Softwareentwicklung
- Unit Testing ist eines der effektivsten Mittel zur fehlerfreien Softwareentwicklung.
- Die Validierung von Poka-Yoke im Kit ist für Entwickler immer ein guter Vorschlag. Validierungsfehler sollten in Ihrem Code behandelt werden. Diese Validierungsprobleme sollten regelmäßig überprüft und aktualisiert werden.
- Ein gängiges und effektivstes Poka-Yoke besteht darin, die richtigen Kandidaten einzustellen, um Ihre Software fehlerfrei zu machen.
Fazit
Fehler zu machen ist in Ordnung; mache einfach nicht immer wieder den gleichen Fehler . Und um zu vermeiden, dass dieselben Fehler erneut gemacht werden, sollten einige Überprüfungen oder Prozesse vorhanden sein. Poka-Yoke-Techniken werden entwickelt, um dieses Problem zu lösen.
Artikelreferenzen:- Shigeo Shingo, Null Qualitätskontrolle
- Wikipedia Referenz
- Boris Beizer, Software Testing Techniques, 2. Aufl. Van Nostrand Reinhold
Über den Autor: Dies ist ein Gastbeitrag von Nataraj Kanchyani. Er arbeitet als Senior Software Engineer-Testing bei Centurylink Technologies India Pvt Ltd, Bangalore.
Haben Sie Erfahrung mit dieser Technik? Oder haben Sie jemals an der Entwicklung solcher Verfahren zur Fehlervermeidung und -erkennung gearbeitet? Lass es uns in den Kommentaren unten wissen.
Literatur-Empfehlungen
- Was sind die Qualitätsmerkmale?
- Gefälschter Gott der Qualität gegen wahre Menschen - Wer ist für die Softwarequalität verantwortlich?
- Was ist Software Quality Assurance (SQA): Ein Leitfaden für Anfänger
- Gegenseitiges Verständnis beim Testen: Ein Schlüssel für die Bereitstellung einer Qualitätssoftware
- Zertifizierungen für Softwaretests und Qualitätssicherung - Teil 2