Qualität von Entwicklerfirmen Dr. Frank Simon Head of SQS Research & Innovation Software Quality Systems AG Stollwerkstrasse 11, 51149 Köln frank.simon@sqs.de Fix +49 (0) 2203 9154-476 Mobile +49 (0) 178 4 65 80 57 SQS Software Quality Systems (Schweiz) AG
Agenda Wodurch zeichnen sich gute Software-Entwicklungsunternehmen aus und wie erkenne ich diese? Die Auswahl des richtigen Partners für ein Software-Entwicklungsprojekt ist ein maßgeblicher Erfolgsfaktor. Drei ausgewählte Beispiele Der Qualitäts-Setup Eine abschließende Bewertung SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 2
Drei ausgewählte Beispiele Untertitel SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 3
Drei ausgewählte Beispiele Zusammenarbeit mit Entwicklerfirmen am Beispiel Raiffeisen Bausparkasse Wien Proceedings des Workshop Reengineerings 2008, GI Bad Honnef SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 4
Drei ausgewählte Beispiele Zusammenarbeit mit Entwicklerfirmen am Beispiel T-Mobile Proceedings der SQC- Konferenz, 2007, Düsseldorf SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 5
Drei ausgewählte Beispiele Zusammenarbeit mit Entwicklerfirmen am Beispiel T-Systems Proceedings der SQM- Konferenz, 2005, Bonn SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 6
Der Qualitäts-Setup Untertitel SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 7
Transzendenter Ansatz Qualität ist universell erkennbar, absolut und kompromißlos Der Qualitäts-Setup Qualitätssichten nach Garvin Benutzerbezogener Ansatz Qualität ist durch Benutzer festgelegt (fitness for use) Entwicklerfirmen SQS Software Quality Systems: Qualität von Entwicklerfirmen Seite 8
Der Qualitäts-Setup Qualität von Entwicklerfirmen IT-Projekte Die Anforderungen richtig spezifizieren! Die richtigen Anforderungen spezifizieren! Prüfen, ob die Anforderungen richtig implementiert sind! SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 9
Der Qualitäts-Setup Qualität als Modell Norm IEC 2371: Qualität ist die Übereinstimmung zwischen den festgestellten Eigenschaften und den vorher festgelegten Forderungen einer Betrachtungseinheit. Betrachtungseinheit Qualität Eigenschaften M 1 Eig. 1 M 4 M 3 M 2 Eig. 2... M n... M 5 Eig. n Anforderungen für den Umgang mit Entwicklerfirmen Die richtigen Anforderungen spezifizieren Die Anforderungen richtig spezifizieren Prüfen, ob die Anforderungen richtig implementiert sind SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 11
Der Qualitäts-Setup Die richtigen Anforderungen spezifizieren! am Beispiel von Architekturen/Modellen (1) Häufig fehlen Architekturen ganz oder sind nur bunte Bildchen SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 12
Der Qualitäts-Setup Die richtigen Anforderungen spezifizieren! am Beispiel von Architekturen/Modellen (2) Modelle können Projektrisiken senken Operation am offenen Herzen fehleranfällig kaum planbar skaliert nicht beliebig Law of increasing entropy : Es wird immer chaotischer Durchführung auf Basis von Modellen Ein Modell stellt ein Abbild eines Systems dar, welches Analogien zum System aufweist und durch einen oder mehrere Aspekte eine Abstraktionsbeziehung zum System besitzt. Das Ziel von Modellen ist die Reduktion der Komplexität durch Weglassen von Eigenschaften und Berücksichtigung nur eines oder einiger weniger Aspekte. SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 13
Der Qualitäts-Setup Die Anforderungen richtig spezifizieren! am Beispiel der Lizenzkonformität (1) Ein System mag funktionieren, es mag sogar wartbar sein, und dennoch: Ein von SMC für Skype entwickeltes VoIP-Schnurlostelefon enthält Open Source Komponenten (Linux). Der Hersteller liefert weder den Quellcode noch den Lizenztext. Hierzu ist er nach den Bedingungen der Lizenz von Linux aber verpflichtet. gpl-violations.org klagt im Juli 2007 vor dem Landgericht München Konsequenz: Das Produkt darf nicht weiter vertrieben werden! SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 14
Der Qualitäts-Setup Die Anforderungen richtig spezifizieren! am Beispiel der Lizenzkonformität (2) Open Source Gruppen suchen aktiv nach Verwendung ihres Code gpl-violations.org Fokus auf Deutschland/ Österreich/Schweiz FSF Compliance Lab Fokus auf Nordamerika Software Freedom Law Center (www.softwarefreedom.org) [ ] mission [is] to provide pro bono legal services to Free and Open Source Software projects. [ ] produce useful technology that allows non-profit organizations and law centers to operate in software freedom. SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 15
Die richtigen Anforderungen: existent aktuell plausibel existent aktuell plausibel existent aktuell plausibel existent aktuell plausibel angemessen richtig interoperabel sicher konform reif wiederherstellbar fehlertolerant erlernbar verstehbar attraktiv bedienbar zeiteffizient verbrauchseffizient stabil analysierbar änderbar traceable testbar installierbar austauschbar ko-existent anpassbar IST-Transparenz SOLL-Transparenz eingehalten feingranular IST-Transparenz SOLL-Transparenz eingehalten feingranular Der Qualitäts-Setup Matrix zur Prüfung der richtigen Anforderungen. Die Anforderungen richtig: Y-Modell E-Finanz SZ Kontroll-Eigenschaften Inhalt/Qualität Termin Budget Version 0.9 Datum 2008/02/11 Funktionalität Zuverlässigkeit Usability Effizienz Wartbarkeit Portabilität Transparenz Plankonformität Transparenz Plankonformität Qualität Zeit Budget Kontroll-Objekte Ergebnisse IT-Software-System (Technologie) Fach-Architektur Technik-Architektur Schnittstellen Code Produkt IT-Software-System-Peripherie Laufzeitinfrastruktur RDBMS Betriebssysteme Zugriffsverwaltung Authorisierung Archivierung Entwicklungsinfrastruktur Testinfrastruktur Konfigurationsmanagement Test Entwicklertest Integrationstest Systemtest IT-Hardware-System Server Clients Middleware Dokumentation Betriebshandbuch Installationshandbuch Benutzerdokumentation Schulung Requirements Produkt Ressourcen Prozesse PM-Prozess Planung Änderungssteuerung Kommunikationsplanung Risikomanagement Issuemanagement Vetragsmanagement QM-Prozess Prozessmanagement Problemmanagement Suppliermanagement System Testing Entwicklungsprozess Design Coding Pre-System-Test Deployment Betrieb Wartung Konfiguration Änderungsmanagement Prozesse Ressourcen Externe Ressourcen GU-Ressourcen BMF-Ressourcen BRZ-G Ressourcen Umfeld Organisationsstruktur BMF BRZ-G Prüfen, ob die Anforderungen richtig werden Planung Fragebögen Wie prüfen? Indikatoren basieren erfasst auf durch Zeit erfassung KPIs SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 16 Reviews
Der Qualitäts-Setup Prüfen, ob die Anforderungen richtig implementiert werden. Die richtigen Anforderungen Fachliche Requirements Technische Architekturen Entwicklertest richtig spezifizieren Wartbar (gemäß IEEE830) Analysierbar (gemäß ISO9126) Angemessen (gemäß ISO9126) und auf Richtigkeit prüfen Alle Requirements sind in einem Req.-Tool abgelegt. Alle Req. haben eine ID + Prio Alle Req. haben einen Status Verwenden eine Standard-Notation Erlauben Mapping zwischen System und Architektur Sind vollständig bzgl. System (sowohl bzgl. Artefakte als auch bzgl. Abhängigkeiten) Für alle hochpriorisierten Teile gemessene Coverage > 70% Lauffähigkeit der Tests Verwendung einer Standard- Entwicklertestumgebung SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 17
Eine abschließende Bewertung Untertitel SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 18
Eine Abschließende Bewertung Es gibt nur ein Produkt! An diesem müssen der Auftraggeber wie auch der Auftragnehmer gemeinsam arbeiten. Eine gute Entwicklerfirma sieht den Nutzen in einer ausführlichen Ergebnisbeschreibung und unterstützt sie! sieht den Nutzen in einer präzisen Anforderungsbeschreibung und unterstützt sie! sieht den Nutzen in einer maximalen gegenseitigen Transparenz und unterstützt sie! Denn: wer nichts richtig spezifiziert, kann auch nichts richtig erfüllen! SQS Software Quality Systems (Schweiz) AG 11.06.2010 Seite 19
SQS Software Quality Systems (Schweiz) AG Siewerdtstrasse 95 CH-8050 Zürich, Schweiz Tel.: +41 (0) 43 210 93 00 Fax: +41 (0) 43 210 93 93 E-Mail: info@sqs-group.ch Internet: www.sqs-group.ch Vielen Dank für Ihre Aufmerksamkeit