mk-prg-net \mk-prg-net \quality-managment

Qualitätsmanagment

Im Folgenden dokumentiere ich mein Qualitätsmanagment. Es ist in meine drei Geschäftsbereiche IT-Beratung, Softwareentwicklung und Administration gegliedert.

IT-Beratung

Mit Beratung sind folgende Produkte gemeint:

Studie
Die Potenziale einer neuen Softwaretechnologie werden für einen Kunden ergründet.
Systementwurf/ Lösungsansatz
Für eine Aufgabenstellung des Kunden wird eine Lösung auf Basis moderner IT-Technologien entworfen.
Workshop
In einem zeitlich begrenzten Rahmen (1-5 Tage), findet eine persönliche Beratung des Kunden statt, bei dem alltägliche Probleme mit Hard- und Softwaresystemen besprochen, analysiert und Lösungsansätze implementiert werden.
Helpdesk
Der Kunde nimmt im vertraglich vereinbarten Rahmen bei Problemen Kontakt mit mir auf. Im Dialog erfolgt eine Analyse, und wenn möglich eine Lösung oder ein Workaround.

Die Qualität wird durch klar definierte Geschäftsprozesse und damit verbundener Dokumentation gesichert. Allgemein haben diese folgende Struktur

  1. Anfrage vom Kunden
  2. Zuordnung zu einem der vier Beratungsprodukte
  3. Angebot
  4. Auftragsannahme und Bestätigung
  5. Durchführung und Dokumentation (wenn möglich, automatisiert)
  6. Erstellen einer abschließenden Dokumentation
  7. Bewertung des Erfolges zusammen mit dem Kunden (Kundenfeedback)
  8. Abrechnung der Leistungen

Softwareentwicklung

Kundennahe Softwareentwicklung

Die Softwareentwicklung erfolgt nach agilen Methoden (Scrum). Der Kunde hat während der Geschäftsbeziehung permanent die Möglichkeit, den Entwicklungsprozess nach seinen Wünschen zu steuern.

Modularität und Testbarkeit

Um in agilen Prozessen zu bestehen, wird die Software hochmodular auf Basis von Schnittstellen und allgemein annerkannter Prinzipien wie SOLID Code entwickelt. Die Qualität aller Module wird durch einzelne Modul Tests laufend durch Regressionstests sichergestellt.

Die Vermeidung und schnelle Detektion von Laufzeitfehlern ist integraler Bestandteil der Softwareentwicklung. Bei der Implementierung werden systematisch Überwachungsausdrücke für Laufzeitbedingungen (Assertions) eingesetzt. Für die Generierung und Auswertung von Trace- Protokollen werden hochentwickelte Werkzeuge eingesetzt.

Werkzeuge

Vorrangig wird mit streng typisierten Sprachen wie C# entwickelt. Diese minimieren die Menge möglicher Laufzeitfehlern, indem bestimmte Laufzeitfehlerklassen durch Überwachung strikter Typisierungsregeln zur Entwurfs als auch Laufzeit von vornherein ausgeschlossen werden.

Die Entwicklung erfolgt mittels modernster IDE's wie Microsoft Visual Studio, die dem Programmierer bei der Implementierung effektiv assistieren. Dadurch werden:

Dies führt zu kürzeren Entwicklungszeiten und damit massiven Kostensenkungen.

Administration

Bei der Verwaltung eigener IT-Systeme und die der Kunden steht Datenschutz und Verfügbarkeit an erster Stelle. Hierzu werden:

  1. systematisch Backups erstellt, Verantwortliche für Backups benannt
  2. regelmäßig die eingesetzte Software erfasst und die Lizensierung geprüft
  3. ungenutzte Software deinstalliert
  4. regelmäßig die Software aktualisiert
  5. regelmäßig Virenscanner und Firewalls gewartet
  6. für jedes System eine Dokumentation nach einheitlichen Richtlinien durchgeführt