Ihre Quellwerke Service-Hotline
Erreichbarkeit:
Mo. - Fr. 9:00 - 18:00 Uhr
Bei einem Test-Driven-Development (kurz TDD) oder ins Deutsche übersetzt: testgetriebene Entwicklung, werden Software-Tests vor der eigentlichen Programmierung der späteren Lösung entwickelt. Der Ablauf dieser Methode ist zyklisch und inkrementell. D.h. die Anwendung wird Schritt für Schritt entwickelt und immer wieder gegen zuvor erstelle Testfälle geprüft. Nach Bestehen eines Testfalls wird die Anwendung um weitere Funktionalitäten erweitert und durchläuft danach erneut einen Test.
TDD wird häufig bei der agilen Entwicklung angewendet und verfolgt das Ziel der Qualitätsoptimierung von Software - in unserem Fall webbasierter Software.
Vorteile von TDD
Qualitativ hochwertige Anwendungen
Weniger wartungsintensiv & fehlerunanfälliger
Vereinfachte, schnellere Fehleranalyse & Wartung
Vermeidung von Redundanzen & nicht benötigten Quellcodes
Testautomatisierung (Automated Unit Test) ist ebenfalls ein fester Bestandteil agiler Qualitätssicherung und kann Entwicklungsprozesse erheblich optimieren. Obwohl der initiale Aufwand zunächst höher ausfällt, hat sich dieser Kostenfaktor aufgrund der daraus resultierenden Zeitersparnis für Tests schnell amortisiert. Im Gegenzug zur TDD Methode werden bei Automated Unit Tests begleitend zur Softwareentwicklung (in unserem Fall Webentwicklung), stetig weitere Tests generiert und dem Testzyklus hinzugefügt.
Vorteile von Automated Unit Tests (Testautomation)
Wiederholbarkeit & Genauigkeit im Vgl. zu manuellen Tests
Testausführung ohne manuelles Eingreifen
Langfristige Kosten- & Zeitersparnis
Verkürzung von Entwicklungszeiten
Zur Qualitätssicherung innerhalb der Webentwicklung gehört auch die Planung und Umsetzung von Backup- sowie Fallback Strategien. Unsere Webanwendungen sind von ihrer Architektur her so aufgebaut, dass sie auf mehrere Systeme (Server) verteilt werden können. Dies ermöglicht es einerseits mit steigenden Anforderungen zu skalieren (Performance Optimierung) und andererseits einen Ausfall eines Servers abzufangen. Ein Heart-Beat-System oder Cluster könnten hier als Beispiele angeführt werden. Darüber hinaus planen und realisieren wir automatische, cronjob-gesteuerte Backups von Datenbanken und Anwendungsdaten. Auch eine Versionierung Ihrer Webanwendung stellt eine Form des Backups dar. Wie Sie Ihre Daten und Anwendungen am Besten absichern und für ein Höchstmaß an Verfügbarkeit sorgen, erörtern wir Ihnen gerne in einem persönlichen Gespräch.
Entwicklung von Backup- & Verfügbarkeitsstrategien
Automatische Backups von Datenbanken
Automatische Backups von Anwendungsdaten
Einrichtung von Fail-Over Systemen
Versionierung von Webanwendungen
Nach erfolgreich verlaufenen Einzel- bzw. Modultests steht der Test des Gesamtsystems an. Bei diesen sogenannten Integrationstests wird das System erstmals mit allen Komponenten und deren Interaktion bzw. Abhängigkeiten geprüft. Integrationstests müssen jedoch nicht zwangsläufig erst am Ende eines Projekts erfolgen. Sobald ein weiteres Modul einer Webanwendung fertig implementiert wurde, kann ein anschließender Integrationstest bereits das Zusammenspiel mit anderen Modulen überprüfen.
Vorteile von Integartionstests
Fehler bei der Interaktion aller Module identifizieren
Vorhandene Unit Tests können weiterhin verwendet werden
Sicherstellung der Gesamtfunktionalität
Kompatibilität von Schnittstellen sind prüfbar