Qualitätssicherung

Qualität bei open4business
Um für unsere Kunden Software von höchster Qualität gewährleisten zu können, setzen wir auf vielfach verwendete und standardisierte Test- und Qualitätssicherungsmaßnahmen, die durch eine geeignete Dokumentation jederzeit belegt werden können.
 
Continuous Integration
Die kontinuierliche Integration, also das ständige Neubilden und Testen einer Anwendung, gehört bei uns zum alltäglichen Prozess. Dadurch wird gewährleistet, dass der Softwarestand im zentralen Versionsverwaltungssystem immer ausführbar ist.
 
Dies wird einerseits durch „Nightly Builds“ inkl. vollautomatischem Deployment auf eine Zielumgebung erreicht, wie auch durch das ständige Neubilden der Anwendung, nachdem ein Entwickler seine Codefragmente in unser Versionsverwaltungssystem eingestellt hat.
 
Die Vorteile dieses Verfahrens liegen auf der Hand:
Neben dem sofortigen Feststellen von Integrationsproblemen und nicht zueinander passenden Softwarekomponenten, werden auch wichtige Unit-Tests ausgeführt, welche negative Auswirkungen von Änderungen sofort erkennen und melden. Erwünschter Nebeneffekt dieses Verfahrens ist ein Demosystem mit dem jeweils aktuellsten Stand, welches ständig für Demo- und Testzwecke zur Verfügung steht.
 
Continuous Integration
Continuous Integration
Testverfahren
Testen beginnt bei uns nicht erst kurz vor dem Release, sondern bereits während der Erfassung und Aufbereitung der Anforderungen. Denn bereits zu diesem Zeitpunkt konstruieren wir Test-Aspekte, aus denen dann im späteren Entwicklungsverlauf Testfälle generiert werden.
 
Durch die Erstellung von automatisierten Tests optimieren wir das Testen, so dass am Ende mehr Testfälle in derselben Zeit ausgeführt werden können und diese ein nachvollziehbares Ergebnis liefern.
 
Eine Dokumentation über die ausgeführten Testfälle und deren Ergebnisse ist für uns selbstverständlich, genauso wie die Übergabe des Testprotokolls bei der Installation.
 
Isolierte Features
Im Sinne der agilen Softwareentwicklung werden bei uns nur dann Features ins zentrale Versionsverwaltungssystem wie z.B. SVN eingestellt, wenn diese abgeschlossen sind. Denn nur ein zu 100% abgeschlossenes Feature kann Ihnen den erwarteten Mehrwert am System liefern und gleichzeitig unseren hohen Qualitätsansprüchen genügen. 
 
Dadurch gewährleisten wir, dass unsere Software praktisch ständig auf einem auslieferbaren Stand ist.
 
Konsolidierung/Installation

Unabhängig davon, ob Sie sich mit uns für eine agile Entwicklung oder aber das traditionelle Modell entscheiden, wird von uns eine Installation auf Ihrem Konsolidierungssystem vorgenommen, damit Sie die Software in aller Ruhe und in Ihrer Systemumgebung testen können.

International Software Testing Board
imageTop

Das ISTQB hat das Ziel, eine einheitliche Aus- und Weiterbildung für Softwaretester und Software-Testmanager auszuarbeiten und diese durch geeignete Zertifizierungslevel auszubilden.

Mehr Informationen zum ISTQB finden Sie unter: http://istqb.org

Apache Continuum
imageTop

Apache Continuum ist ein "continuous integration" Server welcher Features wie z.B. automatische Builds, Release Management und ein rollenabhängiges Sicherheitsprinzip besitzt. Außerdem kann Apache Continuum direkt an Versionsverwaltungssysteme wie z.B. SVN angebunden werden, und so völlig automatisch die aktuellsten Softwarestände builden.

Mehr Informationen zu Apache Continuum erfahren Sie unter: continuum.apache.org

Apache Subversion (SVN)
imageTop

Apache Subversion ist eine Software zur zentralen Versionsverwaltung.

Ziel ist es, Softwareentwicklungsstände regelmäßig zu sichern und für andere Entwickler verfügbar zu machen. Ohne eine geeignete Versionsverwaltung ist die Entwicklung in Teams mit sehr viel Aufwand verbunden und bietet eine Vielzahl von Fehlerpotentialen.

Mehr Informationen zu SVN erfahren Sie unter: subversion.apache.org

Mercurial
imageTop

Mercurial ist eine Software zur verteilten Versionsverwaltung.

Im Gegensatz zu SVN, bei dem ein zentraler Versionsverwaltungsserver sowie eine Verbindung zu diesem benötigt wird, werden in Mercurial lokale Kopien der Repositories erstellt, welche unter den Teammitgliedern abgeglichen werden.

Hauptaugenmerk liegt dabei in der vereinfachten Art und Weise Branches (Entwicklungszweige) zu erstellen und wieder zusammenzuführen, um z.B. parallel zur Überarbeitung und dem Bugfixing aktueller Releases bereits an Neuerungen zu arbeiten.

Mehr Informationen über Mercurial erfahren Sie unter: mercurial.selenic.com