Qualität und Sicherheit

Wir haben uns im Jahr 2014 entscheiden, die Qualität unserer Arbeit nach dem internationalen Qualitätsmanagement-Standard DIN EN ISO 9001:2015 zu zertifizieren, denn Qualität ist der Schlüssel zum Erfolg.
Der zertifizierte Standard bestätigt uns, dass wir bei sämtlichen unserer Prozesse qualitätsorientiert denken und handeln. Darüber hinaus bescheinigt der Standard, dass sich das Qualitätsmanagement in einer stetigen Steigerung der Leistungsfähigkeit widerspiegelt.
Um die Qualität ihrer Arbeit stetig zu verbessern, verfolgen wir ein kontinuierliches Qualitätsmanagement. Dadurch sind wir als IT-Dienstleister in der Lage, Prozesse so effizient wie möglich zu gestalten und die Fehlerquote auf ein absolutes Minimum zu senken. Bei uns gehört es zum Arbeitsalltag, jedes Vorgehen und alle Prozesse genauesten zu planen und zu dokumentieren. Sämtliche Geschäftsprozesse sind standardisiert und für jeden Mitarbeiter transparent. Außerdem tragen alle Teammitglieder zu einer sorgfältigen, detaillierten Versionsverwaltung und zu einem effizienten Fehlermanagement bei. Damit verfügen wir über eine solide Grundlage für eine systematische, kontinuierliche Verbesserung ihrer Qualität.

Sicherheit im Vordergrund

Wir beachten bei der Entwicklung unserer (Web-)Softwareprojekte selbstverständlich den Leitfaden zur Entwicklung sicherer Webanwendungen vom Bundesamt für Sicherheit in der Informationstechnologie (BSI). Dies beinhaltet beispielsweise die Vermeidung und das frühzeitige Beseitigen von Sicherheitslücken, Planbarkeit von Sicherheitsmaßnahmen, Erhöhung des Sicherheitsniveaus und daraus resultierend eine allgemeine Verbesserung der Softwarequalität. Wir konzentrieren uns dabei nicht nur auf die funktionale Sicherheit (Passwort, 2-Factor-Auth etc.), sondern vor allem auch auf die nicht-funktionalen Sicherheitsaspekte, die nicht direkt durch Anwendungsfälle abgeleitet werden können (Cross-Site-Scripting, SQL-Injection etc.).

Risiken unsicherer Software

Die Risiken können sowohl für Organisationen als auch für Anwender auftreten. Dabei geht es z. B. um den Ausfall oder Missbrauch wichtiger geschäftskritischer Anwendungen oder auch um die Entwendung sensitiver und persönlicher Daten.

Ursachen unsicherer Software

Die Ursachen unsicherer Software sind vielfältig. Auf jeden Fall trägt ein hohes Maß an Komplexität zu einer Erhöhung des Risikos bei. Typisch hierfür sind sog. 3rd-Party-Komponenten, die nicht in vollem Umfang in der aktuellen Anwendung genutzt werden, aber dennoch vollumfänglich zur Verfügung stehen und somit Angriffspotential außerhalb der eigentlichen Kernanwendung bieten. Daher ist das Prinzip KISS keep it small and simple für uns von großer Bedeutung.

Zudem können aber auch unzureichende oder fehlende Sicherheitsanforderungen zu Beginn der Entwicklung zu Risiken führen. Nicht selten sind sie Ursache für spätere Sicherheitslücken. Mangelndes Sicherheitsbewusstsein oder schlechte Testbarkeit haben ebenfalls einen großen Einfluss auf spätere Sicherheitsrisiken. Daher muss im gesamten Projektteam ein hohes Maß an Sicherheitsdenken erarbeitet werden und das kontinuierliche Testen von Komponenten integraler Bestandteil des Softwareprozesses sein.

Maßnahmen zur Risikominimierung

Eine Möglichkeit ist der Einsatz von Scorecards zur Unterstützung der sicheren Softwareentwicklung. In jeder Phase der Entwicklung wird der aktuelle Reifegrad einer Anforderung oder Komponente bewertet und eingetragen.
Eine weitere Möglichkeit ist der obligatorische Einsatz von sog. low hanging fruits, wie es der BSI-Leitfaden nennt. Hier werden leicht umzusetzende Sicherheitsmaßnahmen angesprochen, die mit wenig Ressourceneinsatz Sicherheit erhöhen können (z. B. der Einsatz von TLS Verschlüsselung).

Wir erstellen auf Wunsch darüber hinaus eine komplette Sicherheitsrichtlinie, in der zum Beispiel festgehalten ist, in welchem Anwendungsbereich diese gültig ist oder die Ergebnisse einer Gefährdungsanalyse.

Des Weiteren ist eine Verpflichtungserklärung eines jeden Mitarbeiters Bestandteil, in der versichert wird, geltende Sicherheitsrichtlinien zu kennen und zu berücksichtigen.
Abuse-Cases sind ebenfalls ein gutes Hilfsmittel, beabsichtigtes missbräuchliches Verhalten darzustellen und diesem somit entgegenzuwirken. Im Gegensatz zu den bekannten Use-Cases ist ein Abuse-Case somit ein  Anwendungsfall, den die Anwendung nicht erlauben darf.

  • Software Assurance (SwA)

    Sie ermittelt einen notwendigen Grad an Vertrauen in die Sicherheit von Software in Abhängigkeit der Umsetzbarkeit.

  • Keep it small and simple (KISS)

    Ansatz zur Reduktion der Komplexität. Das System soll nur so aufgebaut sein, wie es die Anforderungen verlangen.

  • Business Impact Analyse

    Analyse des maximalen Schadens bei Ausfall, Fehlnutzung, Missbrauch oder z. B. Manipulation der Software.

  • Abuse Case

    Methode zur Identifikation von Anwendungsfällen, die absichtlich missbräuchlich verwendet werden könnten und dies somit verhindert.

  • Bedrohungsmodellierung

    Dieses Modell bildet die Realwelt so ab, dass es Bedrohungen frühzeitig erkennen kann, um Schwachstellen möglichst früh im Entwicklungsprozess zu erkennen.

  • Security Push

    Dies ist ein Vorgehen, das von Microsoft eingeführt wurde, um das Thema Sicherheit in bestimmten Phasen der
    Entwicklung in den Vordergrund zu stellen.

  • Penetrationstest

    Dieses Tests versuchen, aus der Sicht des Anwenders Sicherheitslücken zu erkennen und auszunutzen. Dies kann sowohl auf technischer Ebene (Port-Scan etc.) als auch auf organisatorischer Ebene (physischer Zugang etc.) durchgeführt werden.

  • Plattformhärtung

    Hierunter versteht man das Entfernen nicht genutzter Softwarekomponenten auf den entsprechenden Systemen, um dem Minimal-Prinzip zu entsprechen.

  • Security Change Management

    Ziel ist es hier, Änderungen an der Software kontrolliert durchzuführen und zu kategorisieren in triviale, reguläre und wesentliche Änderungen.

Unser Anspruch – unser Versprechen

Qualität ist unsere treibende Kraft. Durch die kontinuierliche Zertifizierung (DIN EN ISO 9001:2015) ist jeder Prozess wohldokumentiert. In der Softwareentwicklung wird dies beispielsweise durch folgende Aspekte unterstrichen:

  • Es gibt einen dedizierten, integralen Review Prozess. Jede abgeschlossene Aufgabe von einem anderen Teammitglied begutachtet und freigegeben (Vier-Augen-Prinzip). Dies erhöht die Qualität der Ergebnisse und senkt die Entwicklungsfehler auf ein absolutes Minimum.
  • 85% unserer Mitarbeiter besitzen eine akademische Ausbildung. Dies sorgt für fundierte und fachlich ausgereifte Lösungsszenarien.
  • Jedes Projekt besitzt einen dedizierten Verantwortlichen, der gleichzeitig Softwarearchitekt ist und wird durch einen weiteren gleichqualifizierten Mitarbeiter vertreten (Stellvertreter). Zertifizierungslevel dieser Personen sind beispielsweise:
    • o CPRE FL – Certified Professional of Requirements Engineering
    • o PSPO – Professional Scrum Product Owner
    • o CSM – Professional Scrum Master
    • o PRINCE 2 Foundation
  • Jedes Projekt besitzt einen dedizierten Testmanager, zumeist ebenfalls zertifiziert:
    • o ISTQB® Certified Tester Foundation Level
  • Der Betrieb von Softwaresystemen und der zudem erforderliche Support (zum Teil sogar mit einer Verfügbarkeit von 24×7) wird mit Mitarbeitern durchgeführt, die die folgende Zertifizierung haben.
    • o ITIL-V3 (2011) Foundation

Damit gewährleisten wir von der ersten Sekunde an ein professionelles Vorgehen bei bestens ausgebildeten Mitarbeitern – von der Idee über die Entwicklung bis zum Betrieb.

Zusatzqualifikationen unserer Mitarbeiter

  • CPRE FL – Certified Professional of Requirements Engineering

  • PSPO – Professional Scrum Product Owner

  • CSM – Professional Scrum Master

  • PRINCE 2 Foundation

  • ISTQB® Certified Tester Foundation Level

  • ITIL-V3 (2011) Foundation

  • MCTS Microsoft SharePoint

  • u.v.m.

  • PSD – Professional Scrum Developer

  • Sun Certified Enterprise Architect

  • Vaadin 7 Certified Developer

  • Oracle Certified Professional

  • Oracle Certified Expert Java EE6 Enterprise JavaBeans Developer

  • Oracle Certified Java EE 6 Java Persistence API Developer

  • MCPD SharePoint Developer

  • MCSD: Web Applications