Systemen - Testen im Softwarelebenszyklus



Ähnliche Dokumente

Praktikum Grundlagen der Programmierung. Diverse Grundlagen. Dr. Karsten Tolle

T1 - Fundamentaler Testprozess

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Prozess-Modelle für die Softwareentwicklung

Wirtschaftsinformatik I Teil 2. Sommersemester Übung

IT-Projekt-Management

Lösungen zum Test objektorientierter Software

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

Projektmanagement. Dokument V 1.1. Oliver Lietz - Projektmanagement. Wie kommt es zu einem Projektauftrag? Ausführung

Agile Softwareprozess-Modelle

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Übungen zur Softwaretechnik

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

PROJEKTMANAGEMENT GRUNDLAGEN_2

Klausur mit Lösungshinweisen zur Vorlesung Planung und Entwicklung von IuK-Systemen Sommersemester August 2005 Deckblatt Hinweise

T2 Fundamentaler Testprozess

Der Projektmanager (nach GPM / IPMA) Fragen zur Selbsteinschätzung und für die Prüfungsvorbereitung. Kapitel B Vorgehensmodelle

Grundlagen Software Engineering

SSI WHITE PAPER Design einer mobilen App in wenigen Stunden

Erstellen einer digitalen Signatur für Adobe-Formulare

Was versteht man unter einem Softwareentwicklungsmodell?

Fragebogen: Abschlussbefragung

WARENWIRT- SCHAFT UND ERP BERATUNG Mehr Sicherheit für Ihre Entscheidung

Testen im Software- Entwicklungsprozess

Erfolgreiche Realisierung von grossen Softwareprojekten

Software-Lebenszyklus

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Referent: Mathias Notheis Kontakt:

Qualitätssicherung im Lebenszyklus des itcs. Anspruch und Wirklichkeit.

VEDA Managed Services VEDA-SOFTWARE

conuno - WIR GESTALTEN FÜR SIE Development Services

Microsoft SharePoint 2013 Designer

Requirements Engineering für IT Systeme

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

IKP Uni Bonn Medienpraxis EDV II Internet Projekt

Rillsoft Project - Installation der Software

T3 Testen im Software- Lebenszyklus

Änderungsmanagement bei iterativer SW-Entwicklung

Ideation-Day Fit für Innovation

Internet Explorer Version 6

Übungsklausur vom 7. Dez. 2007

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

Projekt Management Plan

Die Makler System Club FlowFact Edition

Regulatorische Anforderungen an die Entwicklung von Medizinprodukten

Testen Prinzipien und Methoden

Datenübernahme easyjob 3.0 zu easyjob 4.0

Tester als Coach ein Erfolgsmodell

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Was ist Application Lifecycle Management?

Ganzheitliches IT-Projektmanagement

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Informationssystemanalyse Lebenszyklusmodelle 3 1. Lebenszyklusmodelle sollen hauptsächlich drei Aufgaben erfüllen:

Leitfaden zum Erstellen der Projektarbeit

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

Projektsteuerung Projekte effizient steuern. Welche Steuerungsinstrumente werden eingesetzt?

Standard Inhaltsverzeichnis für Testvorschrift

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern

Gruppe 2: Rui Gu, Wei Zhu, Veysel Imamoglu, Dimitar Dimitrov, Karl Oppermann, Nathalie Hrycej, Markus Schnalke, Christoph Galler

Abschnitt 16: Objektorientiertes Design

Machbar? Machbar!

Was ist neu in Sage CRM 6.1

Fragebogen zur Anforderungsanalyse

Erfahrungen über den Einsatz einer agilen Entwicklungsmethode fürdie Produktentwicklung unterstützt durch Polarion ALM forsubversion

Was versteht man unter Softwaredokumentation?

Content Management System mit INTREXX 2002.

Probeklausur. Lenz Belzner. January 26, Lenz Belzner Probeklausur January 26, / 16

BUILDNOTES TOPAL FINANZBUCHHALTUNG

Kundenbefragung als Vehikel zur Optimierung des Customer Service Feedback des Kunden nutzen zur Verbesserung der eigenen Prozesse

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

robotron*e count robotron*e sales robotron*e collect Anmeldung Webkomponente Anwenderdokumentation Version: 2.0 Stand:

Functional Safety. Systems Engineering als Schlüsseldisziplin in Projekten mit funktionaler Sicherheit

Installation OMNIKEY 3121 USB

ZuuL - Entwicklung eines Adventures

Häufig wiederkehrende Fragen zur mündlichen Ergänzungsprüfung im Einzelnen:

Software Engineering. Dokumentation! Kapitel 21

Installationsanleitung Maschinenkonfiguration und PP s. Release: VISI 21 Autor: Anja Gerlach Datum: 18. Dezember 2012 Update: 18.

ZENITY - Die Software für Ihre Unternehmens-Releaseplanung

GS-Programme 2015 Allgemeines Zentralupdate

2 Vorgehensmodelle in der Softwareentwicklung

SysInventor. Jakobstr. 64 D Konstanz. Kontakt: Phone +49 (0) Fax +49 (0)

6. Programmentwicklung

Software entwickeln mit extreme Programming

Modul 3: Service Transition

Prozessoptimierung. und. Prozessmanagement

Tevalo Handbuch v 1.1 vom

Softwaretechnik. Fomuso Ekellem WS 2011/12

4.1 Download der App über den Play Store

Unsere These: Meilensteindefinitionen sind wichtig für die Projektplanung und die Bewertung des Projektstatus.

EIDAMO Webshop-Lösung - White Paper

FACHARTIKEL 2013 Software Programmierung, Testing und Implementierung zum Stichtag mithilfe von PERM-Domänen

<thema> Projektdokumentation zum Softwareentwicklungsprojekt. (Entwicklerdokumentation) 28. Mai 2015

m.e.d. concept methode erfolg datenverarbeitung V-Modell XT im Überblick 2 V-Modell XT Einführung - Analyse und Roadmap 3

SPI-Seminar : Interview mit einem Softwaremanager

Transkript:

P r a k t I s c h e Entwicklung und Test Testen von Software-Systemen Systemen - Testen im Softwarelebenszyklus Entwickler erstellen ihr System bzw. ihre Software und testen es/sie zur Entwicklungszeit Tester testen das System/den Code, das/den die Entwickler erstellen, also ist das Testen abhängig von der Entwicklung Testen muss schon während der Anforderungsphase beginnen, und nicht erst, wenn der Code erstellt und zum Test freigegeben wird Dokumente müssen gereviewed werden, sobald sie zur Verfügung stehen. Tester beim Review einbinden! Test und Entwicklung sollten zeitlich parallele Prozesse sein. Die Analyse und der Entwurf der Tests für eine Teststufe sollten während der zugehörigen Entwicklungsaktivität beginnen! 2007 Dr. Klaudia Dussa-Zieger Testen von Software-Systemen SS 2007 (1) Testen von Software-Systemen SS 2006 (2) Wozu? Damit das Rad nicht in jedem Projekt neu erfunden werden muss Erfahrungen sammeln und nutzen Sicherheit, das Richtige zur richtigen Zeit zu tun Vorlage für die tägliche Arbeit müssen angepasst werden: Anpassung abhängig von Produkteigenschaften Anpassung abhängig vom Projektkontext Anpassung wird auch als Tailoring bezeichnet Wozu? Zur Positionsbestimmung Frühzeitige Erkennung von Problemen Transparenz im Projekt (Zeit, Kosten, Qualität) Als Basis für: Projektplanung ( Wie komme ich erfahrungsgemäß am besten von X nach Y? ) Assessment ( Bin ich vom Weg abgekommen? ) Performance-Analyse ( Wie gut laufe ich den Weg? ) Verbesserungen ( Wie könnte ich den Verkehrsfluss optimieren? ) Testen von Software-Systemen SS 2006 (3) Testen von Software-Systemen SS 2006 (4)

Welche gibt es? Wasserfallmodell Wasserfallmodell Spiralmodell RUP Extreme Programming Prototyping Rapid Application Development (RAD) V-Modell u.v.m. Hier wird in starker Vereinfachung von einer linearen Folge der Phasen ausgegangen. Eine überarbeitete, etwas realitätsnähere Version des Wasserfallmodells sieht Rücksprünge von einer Phase in die jeweilige Vorgängerphase vor. Anforderungsanalyse System- und Komponentendesign und Integration und Installation und Wartung Testen von Software-Systemen SS 2006 (5) Testen von Software-Systemen SS 2006 (6) Iterativ-Inkrementelle Modelle Iterativ-inkrementelle Modelle wie das unten abgebildete Spiralmodell berücksichtigen, dass die Phasen der Systementwicklung i.a. nicht nur einmal sondern mehrfach durchlaufen werden. Analyse Validierung Risikoanalysen Prototypen, Modelle, Simulationen Die jeweilige Vorgehensweise hängt vom zu erstellenden System und vom Projektumfang ab Charakteristika iterativ-inkrementeller Anforderungen, Entwurf, Entwicklung und Test werden in einer Reihe kleiner Entwicklungsschritte, sog. Iterationen, durchlaufen. Die Erweiterung einer Iteration kann auf verschiedenen Stufen als Teil der Entwicklung getestet werden. Die Erweiterungen (Inkremente) ergeben ein wachsendes unvollständiges System, das ebenso getestet werden sollte. Regressionstests haben daher bei allen Iterationen nach dem ersten Zyklus eine zunehmende Bedeutung. Verifikation und Validierung können für jede Erweiterung durchgeführt werden. Testen von Software-Systemen SS 2006 (7) Testen von Software-Systemen SS 2006 (8)

Rational Unified Process (RUP, nach P. Kruchten) Acceptance Testing On-site Customer Coding Standards Inhalt Process Workflows Business Modeling Requirements Analysis and Implementation Test Deployment Supporting Workflows Configuration Mgmt Project Management Environment Extreme Programming (nach K. Beck, 2003) XP ist eine schlanke Softwareentwicklungsmethodik...... für kleine Projektteams...... für Projekte mit sich ändernden Anforderungen. Planning Game Unit Testing Simple Die Methodik besteht aus Praktiken (Best Practises)...... welche nicht neu und bereits etabliert sind... 40 Hour Week... basierend auf Grundprinzipien...... welche mit den Instinkten des Programmierers und nicht dagegen arbeiten...... welche auch für das Projektmanagement von Vorteil sind. Refactoring Metaphor Short Releases Testen von Software-Systemen SS 2006 (9) Pair Programming Collective Ownership Continuous Integration Testen von Software-Systemen SS 2006 (10) Prototyping typische Probleme beim Wasserfall- und V-Modell... Vollständige Spezifizierung von Anforderungen zu Projektbeginn Mangelnde Koordination zwischen Entwicklern und Anwendern Präsentation des Projektergebnisses erst nach Fertigstellung Theoretische Überprüfung der Machbarkeit ist problematisch... können durch den Einsatz von Prototypen vermieden werden: Frühzeitige Klärung relevanter Anforderungen Unterstützung bei Diskussion und Entscheidungsfindung Überprüfung der Machbarkeit Prototyp = Ausschnitt des zu entwickelnden Systems horizontaler Prototyp vertikaler Prototyp einer kompletten Systemebene, z.b. Benutzerschnittstelle ausgewählter Teile des Systems durch alle Systemebenen Rapid Application Development (RAD) (Martin, 1991) Wie das Prototyping ein Entwicklungsmodell zur Umgehung der typischen Probleme beim Wasserfall- bzw. V-Modell Prototypisches Vorgehen, bei dem Anforderungen an eine Software gesammelt und möglichst schnell in ausführbaren Code umgesetzt werden Früher Abgleich der Software mit dem Kunden Änderungen werden in einer weiteren Version implementiert und erneut vorgelegt Diese Zyklen werden so oft durchlaufen, bis der Auftraggeber mit der Software zufrieden ist und diese abnimmt Testen von Software-Systemen SS 2006 (11) Testen von Software-Systemen SS 2006 (12)

V-Modell V-Modell (auch genannt Allgemeines V-Modell nach B. Boehm ): Analyse Codierung Testen Betrieb Funktionales Technisches Komponenten- (logische) Reihenfolge der Aktivitäten Anmerkung: Das hier vorgestellte Allgemeine V-Modell ist verschieden vom V-Modell XT (= Vorgehens- Modell des Bundes für die Systementwicklung ) Testen von Software-Systemen SS 2006 (13) Verifikation vs. Validierung Verifikation Bestätigung durch Bereitstellung eines objektiven Nachweises darüber, dass festgelegte Anforderungen erfüllt sind (ISO 9000). Entwickeln wir das System richtig?... Schritt für Schritt eine richtige Umsetzung! Validierung Bestätigung durch Bereitstellung eines objektiven Nachweises, dass die Anforderungen für einen spezifischen beabsichtigten Gebrauch oder eine spezifische beabsichtigte Anwendung erfüllt worden sind (ISO 9000). Entwickeln wir das richtige System?... eine gültige Lösung für die Problemstellung! Prüfung, ob ein Entwicklungsergebnis die individuellen Anforderungen bezüglich einer speziellen beabsichtigten Nutzung erfüllt (Spillner/Linz 2005). Testen von Software-Systemen SS 2006 (14) V-Modell: Analyse Codierung Testen Betrieb Funktionales Synonyme Begriffe für Stufen im V-Modell Begriff Funktionales Synonym Lastenheft (des Kunden), Customer Requirements Funktionaler Systementwurf, (System-)Pflichtenheft, System Requirements Technisches Komponenten- Technisches Komponenten- Technischer Systementwurf, Systemarchitektur Komponenten-/Modulspezifikation Programmierung Modul-Codierung Test basiert auf Spezifikation (Teil der Testbasis) Testen von Software-Systemen SS 2006 (15) Komponenten-/Modultest, Klassentest, Unit-Test Testen von Software-Systemen SS 2006 (16)

Komponenten-/Modultest Komponenten-/Modulspezifikation Testen des Zusammenspiels integrierter Komponenten/Module Schnittstellen Funktionalität Systemanforderungen Einsatztauglichkeit (Kundensicht) Nichtfunktionale Anforderungen (Performanz,...) Testen von Software-Systemen SS 2006 (17) Testphasen und Phasenergebnisse (IEEE 829) Testplanung und -steuerung Testanalyse und Testdesign Testfälle realisieren Testdurchführung Tests auswerten & berichten Testkonzept [TK] Testfallspezifikation [TF] Testskripte [TS] (Testimplementierung) Testprotokoll [TP] Testbericht [TB] Testen von Software-Systemen SS 2006 (18) Testen im V-Modell Testaktivitäten im Entwicklungszyklus (Übersicht) Erwartetes Ergebnis durch Verwendung des V-Modells Analyse Codierung Testen Betrieb Testen von Software-Systemen SS 2006 (19) t Bessere Qualität des Pflichtenhefts durch frühzeitiges Erstellen von Testfällen... Dadurch besseres (und gemeinsames) Verständnis von Anforderungen Bessere Kommunikation mit Kunden und im Team Besseres Verständnis des s, besseres ( for Testability ) Systeme von höherer Qualität Testen von Software-Systemen SS 2006 (20)