OOAD Test und Qualitätssicherung
Sobald ein Programmcode geschrieben wird, muss es getestet werden, zu erfassen und anschließend behandeln alle Fehler in ihm. Eine Reihe von Regelungen sind zu Testzwecken verwendet.
Ein weiterer wichtiger Aspekt ist die Fitness von Zweck eines Programms, das feststellt, ob das Programm dazu dient, die es zum Ziel hat für. Das Fitness definiert die Software-Qualität.
Testen Object-Oriented Systems
Testen ist eine kontinuierliche Aktivität während der Software-Entwicklung. In objektorientierten Systemen umfasst Tests drei Ebenen, nämlich Unit-Tests, Teilsystem Tests und Systemtests.
Unit Testen
In Unit-Tests, die einzelnen Klassen werden getestet. Es ist zu erkennen, ob die Klassenattribute sind implementiert nach Konstruktion und ob die Methoden und die Schnittstellen Fehlerfrei. Unit-Tests ist in der Verantwortung des Anwendungstechniker, die die Struktur implementiert
Subsystem Testen
Dies beinhaltet das Testen eines bestimmten Moduls oder eines Subsystems und liegt in der Verantwortung des Teilsystems führen. Es geht um die Prüfung der Verbände innerhalb des Subsystems sowie die Interaktion des Teilsystems mit der Außenseite. Subsystem-Tests können als Regressionstests für jeden neu veröffentlichten Version des Subsystems verwendet werden.
System Testen
Der Systemtest beinhaltet das Testen des Systems als Ganzes und liegt in der Verantwortung des Qualitätssicherungsteam. Das Team nutzt häufig Systemtests als Regressionstests beim Zusammenbau neue Releases.
Objektorientierte Testing Techniques
Grey Box Testen
Die verschiedenen Arten von Testfällen, die zum Testen objektorientierte Programme entwickelt werden können, werden graue Box Testfälle genannt. Einige der wichtigsten Arten von grauen Box-Tests sind:
State Model Based Testen :. Dies umfasst staatliche Deckung, Zustandsübergangsdeckung und Zustandsübergangspfadüberdeckung
Anwendungsfallbasiertes Testen :. Jedes Szenario in jedem Anwendungsfall geprüft
Klassendiagramm basiertes Testen :. Jede Klasse, abgeleitete Klasse, Assoziationen und Aggregationen getestet
Sequenzdiagramm basiertes Testen :. Die Methoden in den Nachrichten in den Sequenzdiagrammen werden geprüft
Techniken für Subsystem Testen
Die beiden Hauptansätze des Subsystems Tests sind:
Thread basiertes Testen :. Alle Klassen, die nötig sind, um einen einzigen Anwendungsfall in einem Subsystem zu realisieren sind integriert und getestet
Verwenden basiertes Testen : Die Schnittstellen und Dienste der Module auf jeder Ebene der Hierarchie werden getestet. Testing beginnt aus den einzelnen Klassen zu den kleinen Modulen, die von Klassen, allmählich zu größeren Modulen und schließlich alle wichtigen Subsystemen.
Kategorien der Systemprüfung
Alpha-Testen : Dies wird durch den Test-Team innerhalb der Organisation, die Software entwickelt geführt .
Beta Test : Dies erfolgt durch ausgewählte Gruppe von kooperierenden Kunden durchgeführt.
Abnahmeprüfung :. Dies erfolgt durch den Kunden vor Annahme der Leistungen durchgeführt
Software-Qualitätssicherung
Software Quality
Schulmeyer und McManus haben Software-Qualität als "die Gebrauchstauglichkeit des gesamten Software-Produkt" definiert. Eine gute Qualität Software tut genau, was es tun soll und ist in Bezug auf die Zufriedenheit der Anforderungsspezifikation, die von der Benutzer gelegt interpretiert.
Qualitätssicherung
Software Qualitätssicherung ist eine Methodik, die das Ausmaß, in dem ein Software-Produkt für den Einsatz bestimmt. Die Aktivitäten, die für die Bestimmung der Software-Qualität aufgenommen werden, sind:
- Wirtschaftsprüfung
- Entwicklung von Normen und Richtlinien
- Erstellung von Berichten
- Rezension des Qualitätssicherungssystems
Qualitätsfaktoren
Korrektheit :. Correctness bestimmt, ob die Software-Anforderungen in geeigneter Weise erfüllt
Usability :. Usability legt fest, ob die Software kann verwendet werden von verschiedenen Benutzerkategorien (Anfänger, nicht-technische und Experten)
Portabilität : Portabilität legt fest, ob die Software in verschiedenen Plattformen mit unterschiedlichen Hardware-Geräte arbeiten
Wartbarkeit : Wartbarkeit bestimmt die Leichtigkeit mit der Fehler korrigiert werden können und Module kann aktualisiert werden
Wiederverwendbarkeit : Wiederverwendbarkeit, ob die Module und Klassen können für die Entwicklung von anderen Software-Produkten wiederverwendet werden
Object-Oriented Metrics
Metriken können grob in drei Kategorien eingeteilt werden: Projektmetriken, Produkt Metriken und Prozessmetriken
Project Metrics
Projekt Metrics ermöglichen ein Software-Projekt-Manager, um den Status und die Leistung eines laufenden Projekts zu beurteilen. Die folgenden Kennzahlen sind angemessen für die objektorientierte Software-Projekte:
- Anzahl der Szenario Script
- Anzahl der Schlüsselklassen
- Anzahl der Unterstützungsklassen
- Anzahl der Teilsysteme
Product Metrics
Produkt Metriken messen die Eigenschaften des Software-Produkt, das entwickelt wurde. Die Produktmetriken für objektorientierte Systeme sind:
Methoden pro Klasse : Er bestimmt die Komplexität einer Klasse. Wenn alle Methoden einer Klasse sind davon ausgegangen, ebenso komplex zu sein, dann eine Klasse mit mehreren Verfahren ist komplexer und damit fehleranfällig.
Vererbungsstruktur : Systeme mit mehreren kleinen Erbschaft Gitter werden mehr gut strukturiert als Systeme mit einem einzigen großen Erbschaft Gitter. Als Faustregel gilt, sollte ein Vererbungsbaum nicht mehr als 7 (± 2) Anzahl der Ebenen und der Baum sollte ausgewogen sein.
Kopplung und Kohäsion : Module mit geringer Kopplung und hohe Kohäsion gelten als besser konzipiert werden, da sie größere Wiederverwendbarkeit und Wartbarkeit erlauben
Antwort für eine Klasse : Er misst die Effizienz der Methoden, die von den Instanzen der Klasse genannt werden
Prozessmetriken
Prozessmetriken helfen bei der Messung, wie ein Prozess durchführt. Sie sind über alle Projekte über lange Zeiträume gesammelt. Sie werden als Indikatoren für die langfristige Softwareprozessverbesserungen verwendet. Einige Prozessmetriken sind:
- Anzahl der KLOC (Kilo Lines of Code)
- Defect Entfernungseffizienz
- Durchschnittliche Anzahl der Ausfälle erfasst während der Prüfung
- Anzahl der versteckten Mängeln pro KLOC