Entwicklung des Softwareengineerings im Bereich der IT-TK-Technologie Stefan Bläsius und Gregorio Roper Berlin, 05.05.2004 1
ServiceForce Die ServiceForce GmbH hat engagierte Mitarbeiter in den Bereichen Consulting Entwicklung Prüfen und Testen mit Schwerpunkt auf die Branchen!Automotive!Gebäudeautomation!Informationstechnologie!Medizintechnik!Sicherheitstechnik!Telekommunikation Zertifiziert nach DIN EN ISO 9001:2000 2
ServiceForce Die ServiceForce Standorte Technische Stützpunkte in Düsseldorf und Köln Zweigniederlassung: Düsseldorf Köln Frankfurt Kapellenstraße 13 82008 Unterhaching Zentrale: München Kleyerstraße 92 60326 Frankfurt am Main 3
SW-Engineering TK/IT-Branche Agenda Einleitung Requirementsengineering & Produktionsprozess Testprozess Zusammenfassung & Ausblick 4
SW-Engineering TK/IT-Branche Agenda Einleitung Requirementsengineering & Produktionsprozess Testprozess Zusammenfassung & Ausblick 5
Entwicklung der Anforderungen Einführung neuer Technologien VoIP UMTS Komplexität ISDN GSM DECT WLAN Bluetooth analog 1900 1970 1980 1990 2000 2010 Markteinführung 6
Entwicklung der Anforderungen Anforderungen an Funktionalität & Qualität Wartbarkeit Leistungsfähigkeit Portabilität funktionales Verhalten Zuverlässigkeit Effizienz Einsetzbarkeit 7
Entwicklung der Anforderungen Verkürzung des Time-to-Market Anforderungen 100% 50% Analyse Entwurf Implementierung Test Wartung 8
Entwicklung der Prozessmodelle Softwareengineering in den 80/90er Jahren Analyse Design Impl. Test Produktentstehung Testen Unter Testen versteht man die Aufgabe, experimentell nachzuweisen, dass ein reales System die vorgegebenen Anforderungen erfüllt. Der Prozess der Produktentstehung erfolgte sequentiell zum Testen des Produkts! kostspielig & termingefährdend 9
Entwicklung der Prozessmodelle Parallelisierung der Aktivitäten im SE Produktentstehung Design Impl. Analyse Test Die Zwischenprodukte der Produktentstehung werden parallel getestet und die Testdurchführung vorbereitet. Testengineering Ergebnis: Requirementsengineering wird frühzeitig entwickelt, nicht hart Qualität erprüft! 10
Entwicklung der Prozessmodelle SE-Prozessmodell heute RE Anforderungsanalyse Anforderungsverfolgung Analyse Entwurf Implementierung PP Verifikation /Validation Testplanung Testvorbereitung Testspezifikation TP Testdurchführung (Modul-/Integrations-/System-/Abnahmetest) 11
SW-Engineering TK/IT-Branche Agenda Einleitung Requirementsengineering & Produktionsprozess Testprozess Zusammenfassung & Ausblick 12
Requirementsengineering & Produktionsprozess Spezifikationsbasiertes Vorgehen!Analyse/Design spezifikationsbasiert (OSP, ISP, FSP, DSP, TSP) auf der Grundlage des OSI-Modells!Implementierung Maschinensprache/Hochsprache (C, Pascal,...) 1980 13
Requirementsengineering & Produktionsprozess SDL-Methode (1)! Analyse/Design spezifikationsbasiert! Implementierung modellbasiert (SDL-Methode)! Einsatz eines Codegenerators 1990 14
Requirementsengineering & Produktionsprozess SDL-Methode (2)! Analyse spezifikationsbasiert! Design und Implementierung modellbasiert (SDL-Methode)! Einsatz eines Codegenerators 1995 15
Requirementsengineering & Produktionsprozess UML-basiertes Vorgehen!Analyse/Entwurf modellbasiert (UML-Notation)!Implementierung teilweise modellbasiert mit Codegenerierung!Hochsprache (zunehmend objektorientiert) Heute 16
SW-Engineering TK/IT-Branche Agenda Einleitung Requirementsengineering & Produktionsprozess Testprozess Zusammenfassung & Ausblick 17
Strukturiertes Testen - Bausteine des Testprozesses Testen im Bereich IT-TK Abnahme Teststufe Testprozess System Integration Modul Funktionalität Leistungsfähigkeit Robustheit Interoperabilität Nutzbarkeit Zuverlässigkeit White Box Grey Box Black Box Testtechnik Testart 18
Testen im Bereich IT-TK Debugging basiertes Testen!Tests durch den Programmierer!Debugger als Testwerkzeug!Testfallauswahl nach ad hoc Kriterien / Erfahrung 1985 19
Testen im Bereich IT-TK Debugging basiertes Testen!Zufälliges Testen!Geringe Sicherheit!Hoher Aufwand im Systemtest!Keine zuverlässige Qualitätsaussagen 1985 20
Testen im Bereich IT-TK Nachweis der Anforderungen! Debugging und Testen werden als getrennte Aktivitäten ausgeführt! Testen als Nachweis der Erfüllung der Anforderungen! Dedizierte Werkzeuge für Testautomatisierung!Modultests!SDL-basiert Host-Integrationstest!Capture & Playback!Protokollkonformität 1990 21
Testen im Bereich IT-TK Nachweis der Anforderungen! Einsatz einfacher Metriken! Qualitätsziel: Maximierung der C1-Code-Abdeckung! Testorganisation! Training 1990 22
Testen im Bereich IT-TK Evaluation und Testen!Einführung statischer Testtechniken!Code-Inspektion!Walkthrough!Review-Techniken!Strukturiertes Testen!Testfallprogrammierung 1998 23
Testen im Bereich IT-TK Evaluation und Testen!Testen wird als Prozess eingerichtet!prozessmetriken!produktqualitätsmetriken 1998 24
Testen im Bereich IT-TK Testen Heute!Data-driven Testcase Design!Risikobasiertes Testen!Modellbasiertes Testen!Automatischer Testfallgenerierung Heute 25
Testen im Bereich IT-TK Testen Heute!Testautomatisierung Entwicklungsprozess!Definierte Testrollen!Test-Architekt!Test-Designer!Test-Entwickler!Tester Heute 26
SW-Engineering TK/IT-Branche Agenda Einleitung Requirementsengineering & Produktionsprozess Testprozess Zusammenfassung & Ausblick 27
Zusammenfassung & Ausblick Der Trend geht in Richtung UML... Heute gibt es noch keine durchgängiges Tool, das den kompletten SW- Engineeringprozess unterstützt. Aber: UML 2.0 definiert u.a. Profile zu MSC, SDL, TTCN, QoS und zum Testen! UML ist der Weg zu einem integrierten SW-Engineering! 28
Zusammenfassung & Ausblick Optimiertes SW-Engineering Anforderungen 100% 50% Analyse Entwurf Implementierung Test Wartung 29
SW-Engineering TK/IT-Branche Vielen Dank für Ihre Aufmerksamkeit! RE PE TE 30