T4 Statischer Test. Siemens AG Österreich 2005 All Rights Reserved. Statischer Test - Allgemein. Kennzeichen: Testen, ohne das Testobjekt auszuführen

Größe: px
Ab Seite anzeigen:

Download "T4 Statischer Test. Siemens AG Österreich 2005 All Rights Reserved. Statischer Test - Allgemein. Kennzeichen: Testen, ohne das Testobjekt auszuführen"

Transkript

1 T4 Statischer Test Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test Statischer Test - Allgemein Kennzeichen: Testen, ohne das Testobjekt auszuführen Ziele: Kostenreduktion durch frühe Fehlerfindung Testaufwand, Einsatz, Kundenzufriedenheit Beschleunigung des Gesamtprojektes Entwicklungsprozess optimieren Teilziele Fehler gegenüber Spezifikationen erkennen Abweichungen gegenüber Standards erkennen Messgrössen und ermitteln Fehler pro Seite,

2 Grundlagen Benutzung der menschlichen Analysefähigkeit Intensives Lesen und Nachvollziehen Verschiedene n, je nach: Intensität Benötigte Ressourcen Personen Zeit Ziele zusätzlich zu den allgemeinen Zielen: Wissensaustausch zwischen Projektmitgliedern Präzisierung der Spezifikationen Verstösse gegen Projektplanung erkennen 3 Begriff "Review": Synonym zu strukturierte Gruppenprüfungen Bezeichnung für ein bestimmtes Vorgehen Kosten und Nutzen Folgende Angaben aus der Literatur Kosten: 10%-15% des Entwicklungsbudgets Einsparung: 14%-25% (obige Kosten eingerechnet) Fehlerfindung: 70% in Dokumenten ==> Reduktion der Fehlerkosten in der Entwicklung 4 2

3 Planung Welche Dokumente Status der Dokumente (ready_for_review) Welches Review-Verfahren Walkthrough Inspektion (bekannt: nach Fagan) Technisches Review Informelles Review Welche Personen Ort, Zeit 5 Initialisierung und Vorbereitung Initialisierung: Zweck des Vorstellung der zu prüfenden Dokumente Dokumente, gegen die geprüft wird zb. Richtlinien, Standards Prüfkriterien zb. Checklisten Vorbereitung der Sitzung: Intensive Auseinandersetzung mit zu prüfenden Dokumenten Auf Basis der Richtlinien, Standards,... Notierung aller Mängel Fragen 6

4 Sitzung und Nachbereitung 7 Wichtige Aspekte der Review-Sitzung: Fester Zeitrahmen Führung durch die Moderator/in Das Dokument und nicht die Autor/in werden reviewt Keine Diskussion von Lösungen Konsens aller Beteiligten ist anzustreben Protokoll anfertigen Gemeinsame Bewertung des Reviewobjektes: akzeptieren, weiteres Review nötig,... Nachbereitung Bezogen auf das Review Autor/in behebt Mängel Eventuell neuerliches Review, sonst Freigabe des Dokumentes Generell Immer wieder kehrende Fehlerarten? ==> grundsätzliche Verbesserungen im SW- Entwicklungsprozess Moderator/in Leitung der Sitzung Vermittelt zwischen Teilnehmer/innen Darf eigenen Standpunkt nicht einbringen Autor/in Sollte Kritik nie persönlich nehmen "Normale" Review-Teilnehmer/innen Projektmitarbeiter/innen Expert/innen (Gutachter/innen) Für schwierige Fragen Protokollant/in Schreibt alle Ergebnisse präzise mit Sollte nicht gleichzeitig Moderator/in sein 8

5 Walkthrough Vorbereitung minimal oder entfällt ganz In der Sitzung wird das Review-Objekt durchgegangen Inspektion Formales Sitzungsreview Mit allen oben genannten Technisches Review, "Peer Review" Technische Aspekte im Vordergrund Hoher Vorbereitungs-Aufwand Informelles Review Keine formalen Kriterien Aufwand je nach Anlass 9 - Allgemein Ziele gleich wie bei Unterschiede zu : Dokument muss eine formale Struktur haben ist Werkzeug-gestützt Beispiel: Statische Programmanalyse Erkennbare Fehler Abweichungen von Kontrollfluss-Anomalien Datenfluss-Anomalien Nicht immer erkennbar: Wert einer Variablen = 0? (bei Divisionen) Konkurrierender Zugriff auf gemeinsame Speicherbereiche 10

6 Compiler und Code-Analysatoren Compiler Typischerweise ein schwaches Analysewerkzeug Prüft nur auf Syntaktische Korrektheit Wenige darüber hinaus gehende Aspekte Informationsverlust bei Datentyp- Konvertierungen, unbenutzte lokale Variablen,... Statische Code-Analysewerkzeuge Prüfen auf Einhaltung von Standards Problem: Konfiguration des Werkzeuges Kaum alle im Analyse- Werkzeug erfassbar Analyse-Werkzeug prüft an anderen Stellen wieder zu streng 11 Datenfluss-Analyse Untersuchung der Verwendung von Daten Verwendungsarten u undefined: der Wert einer Variablen ist undefiniert d define: die Variable wird mit einem Wert belegt r read: der Wert einer Variablen wird verwendet Datenfluss-Anomalien ur ein undefinierter Wert wird verwendet du ein Wert wird definiert, nicht verwendet, und dann ungültig dd ein zweiter Wert wird def., ohne dass der erste verwendet wurde Beispiel: void vertausche (integer a, integer b) { integer hilf; if (a!= b) { b:= hilf; b:= a; hilf:= b; } } 12

7 Kontrollfluss-Analyse Untersuchung des Kontrollflusses Kontrollfluss-Graf: Knoten: Anweisungen oder Folgen von Anweisungen Kanten: Verzweigungen des Kontrollflusses, zb: if, while,.. Kontrollfluss-Anomalien Sprünge aus Schleifen heraus Mehrere Ausgänge 1... Beispiel: Es existieren über 100 SW- Programmcode (Lines of Code) Kommentaranteil Komplexität (McCabe, Halstead) McCabe's zyklomatische Komplexität Grundlage: Kontrollfluss-Graf Misst die strukturelle Komplexität eines Programmes Entspricht der Anzahl linear unabhängiger vollständiger Pfade identifiziert SW, die schwierig zu verstehen/ändern ist hilft, die SW zu beherrschen (zb Indikator für Auftrennen in Module) Korreliert mit Anzahl der Fehler laut Praxis-Studien nützlich für Prioritätsplanung der Testfälle Schwäche: Komplexität der Bedingungen nicht bewertet 14

8 Zyklomatische Komplexität z(p)= e - n + 2p P Programm e (edges) Anzahl der Kanten des Kontrollfluss- Grafen n (nodes) Anzahl der Knoten des Kontrollfluss-Grafen p Anzahl verbundener Kontrollfluss-Grafen Beispiel (Folie 13, ohne Anomalien) e = 9 n = 8 (inkl. Start- und End- Knoten) p = 1 Ergebnis: z(p) = 3 Empfohlen: <= Nutzen statischer Analysemethoden Entdeckung von Fehlern in den Anforderungen und im Design Fehlererkennung ohne das Programm auszuführen Aufdecken von Anomalien Ableitung von Maßnahmen zur Verbesserung des Entwicklungsprozesses Priorisierung der Tests möglich Nachteil Laufzeitfehler werden nicht erkannt 16

Hauptseminar Automotive Software Engineering Testen, Rapid Prototyping und x in the loop

Hauptseminar Automotive Software Engineering Testen, Rapid Prototyping und x in the loop Hauptseminar Automotive Software Engineering Testen, Rapid Prototyping und x in the loop Christoph Niedermayr 20.01.2005 Überblick 1 2 X in the loop Rapid Prototyping Begriffe Was versteht man unter statischem

Mehr

Statischer Test. Strukturierte Gruppenprüfungen. Review. Review (2)

Statischer Test. Strukturierte Gruppenprüfungen. Review. Review (2) Strukturierte Gruppenprüfungen nutze menschliche Analyse-/Denkfähigkeit, um komplexe Sachverhalte zu prüfen/bewerten Statischer Test prüfen erfolgt durch intensives Lesen und Nachvollziehen der untersuchten

Mehr

Kapitel 5: Statische Analyse

Kapitel 5: Statische Analyse Kapitel 5: Statische Analyse Inhalt 5.1 Grundlagen 5.2 Analyse von Programmen 5.3 Analyse von Algorithmen 5.4 Analyse von Spezifikationen, Entwürfen und Prüfvorschriften Schlüsselbegriffe Statische Prüfung

Mehr

T2 Fundamentaler Testprozess

T2 Fundamentaler Testprozess T2 Fundamentaler Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test Overview der Software- Entwicklung 2 1 Wasserfall-Modell Analyse

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Adersberger, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 26 Software-Metriken Josef Adersberger Marc Spisländer Lehrstuhl für Software Engineering

Mehr

T7 Einführung von Tools

T7 Einführung von Tools T7 Einführung von Tools Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test 2 1 Vielzahl von Tools (Werkzeugen) zur Unterstützung

Mehr

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken Software-Metriken Matthias Meitner Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Meitner, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 24

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Inhalt Nachlese mit Together Findbugs Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese mit Together Findbugs Dirk Wischermann Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

Mehr

Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren

Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren Hendrik Seffler HU Berlin Abschlussvortrag p. 1/25 Was? Entwicklung eines Werkzeugs zur Überdeckungsmessung für kontrollflussbezogene

Mehr

T3 Testen im Software- Lebenszyklus

T3 Testen im Software- Lebenszyklus T3 Testen im Siemens AG Österreich 2005 All Rights Reserved Institut f. Software Technology, TU-Graz Armin Beer, PSE Support-Center Test AK- 2 1 AK- Definition Test der einzelnen implementierten Komponenten

Mehr

4.Grundsätzliche Programmentwicklungsmethoden

4.Grundsätzliche Programmentwicklungsmethoden 4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden

Mehr

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken Software-Metriken Marc Spisländer Loui Al Sardy Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Al Sardy, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 16

Mehr

Qualitätssicherung. Was ist Qualität?

Qualitätssicherung. Was ist Qualität? Ein Überblick Methoden und Werkzeuge zur Softwareproduktion Was ist Qualität? "Als Qualität eines Gegenstandes bezeichnen wir die Gesamtheit seiner charakteristischen Eigenschaften" Hesse et al. 2 Was

Mehr

Software-Praktikum. Überblick und Zeitplan

Software-Praktikum. Überblick und Zeitplan Standort Hagen Fachbereich Technische Betriebswirtschaft Software-Praktikum Überblick und Zeitplan Andreas de Vries und Volker Weiß Version: 26. September 2016 Inhaltsverzeichnis 1 Einführung und Überblick

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen

Mehr

8. Metriken. Idee von Maßsystemen Halstead live Variables Variablenspanne McCabe-Zahl LCOM*

8. Metriken. Idee von Maßsystemen Halstead live Variables Variablenspanne McCabe-Zahl LCOM* 8. Metriken Idee von Maßsystemen Halstead live Variables Variablenspanne McCabe-Zahl LCOM* Stephan Kleuker 371 Nutzung von Maßsystemen bisherigen Prüfverfahren sind aufwändig, besteht Wunsch, schneller

Mehr

Willkommen zur Vorlesung Methodische Grundlagen des Software- Engineering im Sommersemester 2011 Prof. Dr. Jan Jürjens

Willkommen zur Vorlesung Methodische Grundlagen des Software- Engineering im Sommersemester 2011 Prof. Dr. Jan Jürjens Willkommen zur Vorlesung des Software- Engineering im Sommersemester 2011 Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl XIV 1 12. Testen, Grundlagen und Begriffe [inkl. Beiträge von

Mehr

Softwaremetriken. 15. Mai 2013

Softwaremetriken. 15. Mai 2013 Softwaremetriken 15. Mai 2013 Was sind Softwaremetriken? Softwaremetriken messen Qualität. besser: Softwaremetriken definieren, wie Kenngrößen der Software oder des Softwareentwicklungsprozesses gemessen

Mehr

T1 - Fundamentaler Testprozess

T1 - Fundamentaler Testprozess AK 2 am Armin Beer, Support Center Test der Software- Entwicklung 1 für einen erfolgreichen Test? Projektteam strebt nach Qualität Aufwände sind eingeplant (Richtwerte) 20 bis 30% des Gesamtaufwandes In

Mehr

Software Engineering & Architecture. Technische Reviews. Das Ziel eines Reviews ist es, Fehler aufzudecken, nicht sie zu beheben!

Software Engineering & Architecture. Technische Reviews. Das Ziel eines Reviews ist es, Fehler aufzudecken, nicht sie zu beheben! Technische 1 Einführung 1.1 Was ist ein Review? Ein Review ist eine kritische Überprüfung eines Artefakts durch eine Runde von Sachverständigen. Ein Review wird in Form eines mehr oder weniger formellen

Mehr

Karol Frühauf, Jochen Ludewig, Helmut Sandmayr. Software-Prüfung Eine Anleitung zum Test und zur Inspektion

Karol Frühauf, Jochen Ludewig, Helmut Sandmayr. Software-Prüfung Eine Anleitung zum Test und zur Inspektion Karol Frühauf, Jochen Ludewig, Helmut Sandmayr Software-Prüfung Eine Anleitung zum Test und zur Inspektion (f Hochschulverlag AG an der ETH Zürich B.G. Teubner Stuttgart Inhalt Vorwort 3 Inhalt 5 Verzeichnis

Mehr

Reviews,, Inspektionen und Walkthroughs. Nils von Delft

Reviews,, Inspektionen und Walkthroughs. Nils von Delft Reviews,, Inspektionen und Walkthroughs Nils von Delft 05.07.2006 Gliederung Motivation Begriffsklärung und Erläuterung Review Walkthrough Inspektion Inspektionsmodelle nach Humphrey und Gilb Weitere Aspekte

Mehr

Software Engineering Informatik. Grundlagen der Statischen Analyse und ihre Werkzeuge

Software Engineering Informatik. Grundlagen der Statischen Analyse und ihre Werkzeuge Grundlagen der Statischen Analyse und ihre Werkzeuge Übersicht 1. Statische Analyse Allgemein 2. Grundlagen 3. Abstrakte Interpretation 4. Werkzeuge der Statischen Analyse 5. Zusammenfassung 2 Sichere

Mehr

IT-Kennzahlen und Softwaremetriken - Proseminar - im Sommersemester 2010

IT-Kennzahlen und Softwaremetriken - Proseminar - im Sommersemester 2010 IT-Kennzahlen und Softwaremetriken - Proseminar - im Sommersemester 2010 - Die Zyklomatische Komplexität - Ein Komplexitätsmaß Gliederung Teil 1 1) Wichtigkeit eines Komplexitätsmaßes 2) Die Zyklomatische

Mehr

Qualitätssicherung von Software (SWQS)

Qualitätssicherung von Software (SWQS) Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS 6.6.2013: Statische Analyse Folie 2 Fragen zur Wiederholung Was ist der Unterschied

Mehr

Speicherklassen (1) Lokale Variablen

Speicherklassen (1) Lokale Variablen Speicherklassen (1) Lokale Variablen Lokale Variablen beschränken sich auf die Funktionen, in denen sie definiert werden Sind in der Funktion gekapselt können also nur in der Funktion verändert werden

Mehr

SE2-6. Übung Johannes Bürdek

SE2-6. Übung Johannes Bürdek SE2-6. Übung 11.12.2014 Johannes Bürdek johannes.buerdek@es.tu-darmstadt.de Fragen und Support: se2@es.tu-darmstadt.de oder ins Forum: https://moodle.tu-darmstadt.de/mod/forum/view.php?id=56674 ES Real-Time

Mehr

5.3 Korrektheit und Verifikation

5.3 Korrektheit und Verifikation 5.3 Korrektheit und Verifikation Korrektheit bedeutet, dass ein Algorithmus oder ein Programm das in der Spezifikation beschriebene Problem für beliebige Eingabedaten korrekt löst. Die Korrektheit kann

Mehr

Softwaretechnikpraktikum SS 2004. Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal

Softwaretechnikpraktikum SS 2004. Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal Softwaretechnikpraktikum SS 2004 Qualitätsmanagement I 5. Vorlesung 1. Überblick Planungsphase Definitionsphase Entwurfsphase Implem.- phase Fragen Was ist Qualität? Wie kann man Qualität messen? Wie kann

Mehr

5.3 Korrektheit und Verifikation

5.3 Korrektheit und Verifikation 5.3 Korrektheit und Verifikation Korrektheit bedeutet, dass ein Algorithmus oder ein Programm das in der Spezifikation beschriebene Problem für beliebige Eingabedaten korrekt löst. Die Korrektheit kann

Mehr

Die zyklomatische Komplexität

Die zyklomatische Komplexität Die zyklomatische Komplexität Tobias Konsek Technische Universität München Fakultät für Informatik Boltzmannstraße 3 85748 Garching tobias.konsek@mytum.de Abstract: In der folgenden Arbeit wird die zyklomatische

Mehr

Informatik I - Programmierung Globalübung Hoare-Kalkül. Thomas Weiler. Fachgruppe Informatik RWTH Aachen. T. Weiler, RWTH Aachen - 1 -

Informatik I - Programmierung Globalübung Hoare-Kalkül. Thomas Weiler. Fachgruppe Informatik RWTH Aachen. T. Weiler, RWTH Aachen - 1 - Informatik I - Programmierung Globalübung 11.11.2003 Hoare-Kalkül Thomas Weiler Fachgruppe Informatik RWTH Aachen T. Weiler, RWTH Aachen - 1 - Ariane 5 Die Ariane 5 ist das jüngste Modell der Trägerrakete

Mehr

3.2 Datentypen und Methoden

3.2 Datentypen und Methoden Kap03.fm Seite 217 Dienstag, 7. September 2010 1:48 13 3.2 Datentypen und Methoden 217 3.2 Datentypen und Methoden Wie bei vielen höheren Programmiersprachen gibt es auch in Java einfache und strukturierte

Mehr

Software Engineering. Statische Analyse! Kapitel 11

Software Engineering. Statische Analyse! Kapitel 11 Martin Glinz Thomas Fritz Software Engineering Kapitel 11 Statische Analyse 2005, 2013 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

Basiswissen Softwaretest

Basiswissen Softwaretest isqi-reihe Basiswissen Softwaretest Aus- und Weiterbildung zum Certified Tester Foundation Level nach ISTQB-Standard von Andreas Spillner, Tilo Linz 5., überarbeitete und aktualisierte Auflage Basiswissen

Mehr

Prof. Dr. Jan Jürjens

Prof. Dr. Jan Jürjens Vorlesung () Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl XIV Teil 2.2: Softwaremetriken v. 08.12.2014 1 Einordnung Softwaremetriken Modellgetriebene SW-Entwicklung Qualitätsmanagement

Mehr

Peter Liggesmeyer. Software-Qualität. Testen, Analysieren und Verifizieren von Software

Peter Liggesmeyer. Software-Qualität. Testen, Analysieren und Verifizieren von Software Peter Liggesmeyer Software-Qualität Testen, Analysieren und Verifizieren von Software Spektrum Akademischer Verlag Heidelberg» Berlin ( 1 Einführung 1 1.1 Motivation 2 1.2 Terminologie und Begriffsdefinitionen

Mehr

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving)

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving) Universität Paderborn Die Universität der Informationsgesellschaft Analyse, Entwurf und Implementierung zuverlässiger Software und (inkl., Model-Checking, Theorem Proving) Torsten Bresser torbre@uni-paderborn.de

Mehr

SPARK95. Ingmar Wirths. 12. Juli 2007

SPARK95. Ingmar Wirths. 12. Juli 2007 SPARK95 Ingmar Wirths 12. Juli 2007 Motivation Ada wurde zur Programmierung von Mikroprozessoren entwickelt. Motivation Ada wurde zur Programmierung von Mikroprozessoren entwickelt. Ein Systemversagen

Mehr

Analysierende Testverfahren

Analysierende Testverfahren Software-Metriken Kontrolle der Software-Entwicklung: Pläne und Standards einrichten messen der Ausführung gegen Pläne und Standards Analysierende Testverfahren korrigieren der Abweichungen Eine Software-Metrik

Mehr

Vortrag zum Hauptseminar Hardware/Software Co-Design

Vortrag zum Hauptseminar Hardware/Software Co-Design Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vortrag zum Hauptseminar Hardware/Software Co-Design Robert Mißbach Dresden, 02.07.2008

Mehr

Überblick. Typanpassungen Iteration mit Schleifen Bedingte Anweisungen. Agile Softwareentwicklung Einfaches Ratespiel.

Überblick. Typanpassungen Iteration mit Schleifen Bedingte Anweisungen. Agile Softwareentwicklung Einfaches Ratespiel. Globalübung 2 Überblick Typanpassungen Iteration mit Schleifen Bedingte Anweisungen Agile Softwareentwicklung Einfaches Ratespiel Softwarefehler Überblick Typanpassungen Iteration mit Schleifen Bedingte

Mehr

5 Produktqualität Komponenten: Testende Verfahren 1 [stark gekürzt]

5 Produktqualität Komponenten: Testende Verfahren 1 [stark gekürzt] 1 Software-Qualitätssicherung 2 Einführung und Überblick LE 1 V Unternehmensmodellierung 5 Produktqualität Komponenten: Testende Verfahren 1 [stark gekürzt] Prof. Dr. Helmut Balzert Lehrstuhl für Software-Technik

Mehr

Software- Qualitätsmanagement

Software- Qualitätsmanagement Software- Qualitätsmanagement Kernfach Angewandte Informatik Sommersemester 2006 Prof. Dr. Hans-Gert Gräbe 2. Kontrollfluss-or. Strukturtestverfahren Überblick Basieren auf der Kontrollstruktur des zu

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 -

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation Spezifikation: Angabe, was ein Programm tun

Mehr

Nachts ist s kälter als draußen Warum qualifizieren und nicht zertifizieren?

Nachts ist s kälter als draußen Warum qualifizieren und nicht zertifizieren? Nachts ist s kälter als draußen Warum qualifizieren und nicht zertifizieren? Der Vortragende Sebastian Götzinger ISTQB Certified Tester Foundation Level Seit 2013 bei Verifysoft Technology GmbH Seminarleiter

Mehr

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken. Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken. Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer Lill, Meitner, Föhrweiser, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 24 Software-Metriken Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

Mehr

Basiswissen Softwaretest

Basiswissen Softwaretest Basiswissen Softwaretest Aus- und Weiterbildung zum Certified Tester - Foundation Level nach ISTQB-Standard Bearbeitet von Andreas Spillner, Tilo Linz überarbeitet 2005. Buch. XX, 284 S. Hardcover ISBN

Mehr

Software Engineering. Statische Analyse! Kapitel 11

Software Engineering. Statische Analyse! Kapitel 11 Martin Glinz Harald Gall Software Engineering Kapitel 11 Statische Analyse! 2009-2011 Harald Gall. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

Theorie zu Übung 8 Implementierung in Java

Theorie zu Übung 8 Implementierung in Java Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept

Mehr

Software-Test: Strukturtest

Software-Test: Strukturtest Software-est: Strukturtest Andreas Zeller Lehrstuhl für Softwaretechnik Universität des Saarlandes, Saarbrücken 2006-02-02 Welche estfälle auswählen? Ich kann nur eine beschränkte Zahl von Läufen testen

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 -

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation Spezifikation: Angabe, was ein Programm tun

Mehr

Softwaremetriken. 29. April 2015

Softwaremetriken. 29. April 2015 Softwaremetriken 29. April 2015 Was sind Softwaremetriken? [FP] Softwaremetriken messen Qualität. besser: Softwaremetriken definieren, wie Kenngrößen der Software oder des Softwareentwicklungsprozesses

Mehr

Kapitel 8: Fehlervermeidung

Kapitel 8: Fehlervermeidung Kapitel 8: Fehlervermeidung Inhalt 8.1 Prozesse mit kontinuierlicher Prüfung 8.2 Systematisches Entwerfen und Programmieren 8.3 Dokumentier- und Codierrichtlinien Schlüsselbegriffe Cleanroom, Fehlervermeidung,

Mehr

3. Wahrheitswerte. Boolesche Funktionen; der Typ bool; logische und relationale Operatoren; Kurzschlussauswertung; Assertions und Konstanten

3. Wahrheitswerte. Boolesche Funktionen; der Typ bool; logische und relationale Operatoren; Kurzschlussauswertung; Assertions und Konstanten 114 3. Wahrheitswerte Boolesche Funktionen; der Typ bool; logische und relationale Operatoren; Kurzschlussauswertung; Assertions und Konstanten Wo wollen wir hin? 115 int a; std::cin >> a; if (a % 2 ==

Mehr

C++ Programmieren mit einfachen Beispielen DIRK LOUIS

C++ Programmieren mit einfachen Beispielen DIRK LOUIS C++ Programmieren mit einfachen Beispielen DIRK LOUIS C++ - PDF Inhaltsverzeichnis C++ Programmieren mit einfachen Beispielen Impressum Inhaltsverzeichnis Liebe Leserin, lieber Leser Schnelleinstieg Was

Mehr

Testen. SEPR Referat: Testen - Oliver Herbst

Testen. SEPR Referat: Testen - Oliver Herbst Testen Inhalt 1. Grundlagen des Testens 2. Testen im Softwarelebenszyklus 3. Statischer Test 4. Dynamischer Test 5. Besondere Tests 2 1. Grundlagen des Testens 3 Grundlagen des Testens Motivation erfüllt

Mehr

Redokumentation. COBOL-Programm HPROG1. Reichenhainer Straße 29a Chemnitz. Erreichbar unter: 0371/

Redokumentation. COBOL-Programm HPROG1. Reichenhainer Straße 29a Chemnitz. Erreichbar unter: 0371/ COBOL-Programm HPROG1 Redokumentation Erstellt von: pro et con Innovative Informatikanwendungen GmbH Reichenhainer Straße 29a 09126 Chemnitz Erreichbar unter: 0371/270951-0 Stand: 04.09.2018 pro et con

Mehr

2. Operationen und Schleifen Programmieren / Algorithmen und Datenstrukturen 1

2. Operationen und Schleifen Programmieren / Algorithmen und Datenstrukturen 1 2. Operationen und Schleifen Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Sommersemester 2010 1 Agenda Organisation Schleifen Prozeduren

Mehr

Vorlesung Software Engineering

Vorlesung Software Engineering Vorlesung Software Engineering Kapitel 4 Qualitätsmanagement und Software-Metriken Software-Metriken mittels Werkzeug Understand - 1 - Neues Projekt anlegen New Project... - 2 - Neues Projekt anlegen Auswahl

Mehr

int i=1; //Integerzahl i anlegen und mit 1 initialisieren float wert; //Floatzahl deklarieren scanf( %f,&wert); //Wert über Tastatur eingeben

int i=1; //Integerzahl i anlegen und mit 1 initialisieren float wert; //Floatzahl deklarieren scanf( %f,&wert); //Wert über Tastatur eingeben Datenfelder (Array) Seite 1 von 7 Bei den bisherigen Programmen wurde für jede verwendete Variable (oder für jedes Objekt) ein eigener Typ und Name vergeben. Die Initialisierung, d.h. die Belegung mit

Mehr

DIN EN (VDE ): EN 62304: A1:2015

DIN EN (VDE ): EN 62304: A1:2015 Inhalt Vorwort...2 Europäisches Vorwort zu A1...3 Einleitung...10 1 Anwendungsbereich...14 1.1 *Zweck...14 1.2 *Anwendungsgebiet...14 1.3 Beziehung zu anderen Normen...14 1.4 Einhaltung...14 2 *Normative

Mehr

SE2-3. Übung. Hinweise zum 3. Aufgabenblatt Johannes Bürdek

SE2-3. Übung. Hinweise zum 3. Aufgabenblatt Johannes Bürdek SE2-3. Übung Hinweise zum 3. Aufgabenblatt 20.11.2014 Johannes Bürdek johannes.buerdek@es.tu-darmstadt.de Karsten Saller Karsten.saller@es.tu-darmstadt.de Fragen und Support: se2@es.tu-darmstadt.de oder

Mehr

examen.press Software-Qualität Bearbeitet von Dirk W Hoffmann

examen.press Software-Qualität Bearbeitet von Dirk W Hoffmann examen.press Software-Qualität Bearbeitet von Dirk W Hoffmann 1. Auflage 2008. Buch. XIV, 568 S. Hardcover ISBN 978 3 540 76322 2 Format (B x L): 15,5 x 23,5 cm Weitere Fachgebiete > EDV, Informatik >

Mehr

Prüfung und Unterstützung 26 Prüfung und Abnahme 26.1 Prüfen von Anforderungen. Worum geht es?

Prüfung und Unterstützung 26 Prüfung und Abnahme 26.1 Prüfen von Anforderungen. Worum geht es? Teil IV: Prüfung und Unterstützung 26 Prüfung und Abnahme 26.1 Prüfen von Anforderungen Worum geht es? Abweichungen von der geforderten Qualität der Spezifikation feststellen Möglichst viele Fehler, Lücken,

Mehr

Informatik I Debugging

Informatik I Debugging Informatik I Debugging G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Der erste Computer-Bug Grace Hopper Admiral, US Navy Prof. Dr. G. Zachmann Informatik 1 - WS 05/06 Debugging 2 1

Mehr

SOFTWARE QUALITÄTSSICHERUNG UND PRÜFUNG TEIL 2

SOFTWARE QUALITÄTSSICHERUNG UND PRÜFUNG TEIL 2 Kapitel 6 SOFTWARE QUALITÄTSSICHERUNG UND PRÜFUNG TEIL 2 Software Engineering Prof. Dr. Wolfgang Schramm Übersicht 1 1. Einführung in das Software Engineering 2. Softwareprozesse 3. Anforderungsanalyse

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Inhalt. Einführung in die Strukturierte Programmierung 15

Inhalt. Einführung in die Strukturierte Programmierung 15 Inhalt Einführung in die Strukturierte Programmierung 15 1.1 Was bedeutet Programmieren? 17 1.2 Was bedeutet Strukturierte Programmierung? 18 1.3 Was ist Pascal? 19 1.4 Was ist PS/k? 20 1.5 Warum wird

Mehr

n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays)

n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays) n 1. Erste Schritte n 2. Einfache Datentypen n 3. Anweisungen und Kontrollstrukturen n 4. Verifikation n 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation n Spezifikation: Angabe, was ein

Mehr

Softwaretechnik II. Sommersemester 2014. Grundlagen des Softwaretestens. Stefan Berlik

Softwaretechnik II. Sommersemester 2014. Grundlagen des Softwaretestens. Stefan Berlik 1 / 49 Softwaretechnik II Sommersemester 2014 Grundlagen des Softwaretestens Stefan Berlik Fachgruppe Praktische Informatik Fakultät IV, Department Elektrotechnik und Informatik Universität Siegen 16.

Mehr

Last Def Analyse (Reaching Definitions)

Last Def Analyse (Reaching Definitions) Last Def Analyse (Reaching Definitions) Idee: Jedes Vorkommen einer Variablen v wird mit Zeigern auf die Programmstellen annotiert, an denen der letzte Wert entstanden sein kann. Kriterien: Die Programmstelle

Mehr

Programmierung mit C Zeiger

Programmierung mit C Zeiger Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch

Mehr

SE II - Statische Programmanalyse & Metriken

SE II - Statische Programmanalyse & Metriken 3. Statische Programmanalyse & Metriken Statische Codeanalyse verlangt ein stures, monotones Anwenden von relativ einfachen Regeln auf oft umfangreichen Code. Diese Aufgabe erfordert keinerlei Kreativität

Mehr

C.3 Funktionen und Prozeduren

C.3 Funktionen und Prozeduren C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens

Mehr

Statische Codeanalyse

Statische Codeanalyse Statische Codeanalyse SQMT WS 17/18 Pierre Kurzer, Serkan Topaloglu, Sebastian Voigt Gliederung Einführung: Was ist Statische Codeanalyse? Was kann alles überprüft werden und wofür? Was konnte Lint? Welche

Mehr

5 Grundkonzepte. <Datum> <Organisation> <Veranstaltungsort> <Vortragender> <Organisation>

5 Grundkonzepte. <Datum> <Organisation> <Veranstaltungsort> <Vortragender> <Organisation> Bundesamt für Informationsmanagement und Informationstechnik der Bundeswehr 5 Grundkonzepte Copyright V-Modell XT Copyright Reserved,

Mehr

Praxiswissen Softwaretest Test Analyst und Technical Test Analyst

Praxiswissen Softwaretest Test Analyst und Technical Test Analyst isql-reihe Praxiswissen Softwaretest Test Analyst und Technical Test Analyst Aus- und Weiterbildung zum Certified Tester Advanced Level nach ISTQB-Standard von Graham Bath, Judy McKay 2., durchgesehene

Mehr

2. Das single-source-shortest-path-problem

2. Das single-source-shortest-path-problem . Das single-source-shortest-path-problem Zunächst nehmen wir an, dass d 0 ist. Alle kürzesten Pfade von a nach b sind o.b.d.a. einfache Pfade.. Dijkstra s Algorithmus Gegeben: G = (V, A), (A = V V ),

Mehr

SWP Übersetzerbau im SS 13 Einführung und Organisatorisches. Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin

SWP Übersetzerbau im SS 13 Einführung und Organisatorisches. Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin SWP Übersetzerbau im SS 13 Einführung und Organisatorisches Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin Auftaktveranstaltung am 13. April 2013 Übersicht Projektidee Einteilung in

Mehr

Software Engineering. Statische Analyse. Martin Glinz Harald Gall. Wintersemester 2006/07. Kapitel 11. Universität Zürich Institut für Informatik

Software Engineering. Statische Analyse. Martin Glinz Harald Gall. Wintersemester 2006/07. Kapitel 11. Universität Zürich Institut für Informatik Martin Glinz Harald Gall Software Engineering Wintersemester 2006/07 Kapitel 11 Statische Analyse Universität Zürich Institut für Informatik 2006 by Harald Gall. Alle Rechte vorbehalten. Reproduktion,

Mehr

Typische Speicherfehler in C

Typische Speicherfehler in C Typische Speicherfehler in C Thorsten Ploß Informatik Universität Hamburg Proseminar: C-Grundlagen und Konzepte 17.05.2013 1 / 13 Inhaltsverzeichnis Einleitung Klassische Speicherverwaltung - Fehlerquellen

Mehr

Einleitung Typsystem Typisierung Zusammenfassung Literatur. Typisierung. Effiziente Programmierung. Thomas Schnieders

Einleitung Typsystem Typisierung Zusammenfassung Literatur. Typisierung. Effiziente Programmierung. Thomas Schnieders Typisierung Effiziente Programmierung Thomas Schnieders Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg 2018-04-26 Thomas Schnieders Typisierung 1

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

Software Maintenance. Anmerkung zu Program Slicing UNIV.-PROF. DIPL.-ING. DR. FRANZ WOTAWA

Software Maintenance. Anmerkung zu Program Slicing UNIV.-PROF. DIPL.-ING. DR. FRANZ WOTAWA Software Maintenance UNIV.-PROF. DIPL.-ING. DR. FRANZ WOTAWA Technische Universität Graz, Institut für Softwaretechnologie wotawa@ist.tugraz.at Anmerkung zu Program Slicing Infolge werden wir uns den Static

Mehr

! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 -

! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - ! 1. Erste Schritte! 2. Einfache Datentypen! 3. Anweisungen und Kontrollstrukturen! 4. Verifikation! 5. Reihungen (Arrays) II.1.4. Verifikation - 1 - 4. Verifikation! Spezifikation: Angabe, was ein Programm

Mehr

Benchmark Führung. Führung. Situation Beim Coaching von Vorgesetzten. In Seminaren zum Thema Führung.

Benchmark Führung. Führung. Situation Beim Coaching von Vorgesetzten. In Seminaren zum Thema Führung. Situation Beim Coaching von Vorgesetzten. In Seminaren zum Thema Führung. Ziel Zusatzmaterial Dauer Vorgehensweise Auswertung Als Individualübung zum Abgleich der eigenen Führungspraxis mit Führungsvorbildern

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 Excel VBA Teil 11.8 Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 1 von 17 Inhaltsverzeichnis Seite 3... Modul einfügen Seite 4... Prozeduren oder Funktionen Seite 5... Ein/Ausgaben Seite 6...

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

ASIL-relevante SW-Module identifiziert! Was nun?

ASIL-relevante SW-Module identifiziert! Was nun? ASIL-relevante SW-Module identifiziert! Was nun? ASIL-relevante SW-Module testen Blick in die EN 26262 Häufige Irrtümer in der Praxis Funktionale Tests in die Tiefe Funktionale Tests weiter optimieren

Mehr

StuPro Visualisierung der Ergebnisse von Programmanalysen

StuPro Visualisierung der Ergebnisse von Programmanalysen StuPro Visualisierung der Ergebnisse von Programmanalysen Abteilung Programmiersprachen und Compilerbau Daniel Gerlach, Mikhail Prokharau Universität Stuttgart 15. November 2010 Übersicht Vorstellungsrunde

Mehr

Debugging und Speicherfehler. Seminar Effiziente Programmierung Kadir Duman

Debugging und Speicherfehler. Seminar Effiziente Programmierung Kadir Duman Debugging und Speicherfehler Seminar Effiziente Programmierung Kadir Duman 01.12.2016 Inhalt Debugging Allgemein Was ist ein Bug? Was ist Debugging? Speicherfehler Allgemein Unterschiedliche Typen von

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

Mehr

2 Programmieren in Java I noch ohne Nachbearbeitung

2 Programmieren in Java I noch ohne Nachbearbeitung 1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe

Mehr

Testen mit Use Cases. Chris Rupp Dr. Stefan Queins

Testen mit Use Cases. Chris Rupp Dr. Stefan Queins Testen mit Use Cases Chris Rupp Dr. Stefan Queins Das Problem Requirements- Engineering Was kann passieren? Was ist das gewünschte Verhalten? Was soll ich testen? Welche Eingaben benötigt mein Testpfad?

Mehr