Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS 21.5.2013: Modellprüfung.

Ähnliche Präsentationen


Präsentation zum Thema: "Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS 21.5.2013: Modellprüfung."—  Präsentation transkript:

1 Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS 21.5.2013: Modellprüfung

2 Folie 2 H. Schlingloff, Software-Qualitätssicherung Fragen zur Wiederholung Was ist ein Modell, ein Transitionssystem, ein endlicher Automat? Unterschied Systemmodell – Testmodell? Testgenerierung aus UML State Machines: Testziele und Überdeckungskriterien? Was versteht man unter einer Transition Tour? Wie kann man die Effektivität einer Testsuite nachweisen?

3 Folie 3 H. Schlingloff, Software-Qualitätssicherung Wo stehen wir? 1.Einleitung, Begriffe, Software-Qualitätskriterien 2.Softwaretest 3.Verifikation und Validierung, Modellprüfung 4.statische und dynamische Analysetechniken 5.Softwarebewertung, Softwaremetriken 6.Codereview- und andere Inspektionsverfahren 7.Zuverlässigkeitstheorie, Fehlerbaumanalyse 8.Qualitätsstandards, Qualitätsmanagement, organisatorische Maßnahmen

4 Folie 4 H. Schlingloff, Software-Qualitätssicherung Sprachgebrauch im V-Modell Verifikation: Vergleich des Ergebnisses eines Entwicklungsschritts mit dem vorherigen Validierung: Vergleich des analytischen Artefaktes mit dem entsprechenden synthetischen Artefakt alternativer Sprachgebrauch Verifikation = formaler Beweis (entspricht der Code der Spezifikation?) Validierung = informelle Überprüfung (entspricht die Spezifikation den Anforderungen?) Verifikation und Validierung Validierung Verifikation

5 Folie 5 H. Schlingloff, Software-Qualitätssicherung Techniken für V&V Validierung Requirements Engineering, strukturierte Analyse Konsistenz- und Vollständigkeitsprüfung Schablonentechnik, systematische Fragebögen … Verifikation Hoare-Kalkül, mathematische Programmbeweise Modellprüfung, Erreichbarkeitsgraphen interaktive Abstraktions/Verfeinerungsbeweise …

6 Folie 6 H. Schlingloff, Software-Qualitätssicherung Modellprüfung Überprüfung eines formalen Modells des Systems gegenüber einer formalen Spezifikation der Anforderungen vollautomatisch für zustandsendliche Systeme Modellierung: Automaten, Petrinetze, StateCharts, SDL, … Spezifikation: temporale Logik, Erreichbarkeit, Verklemmungsfreiheit, …

7 Folie 7 H. Schlingloff, Software-Qualitätssicherung Beispiel (nuSMV)

8 Folie 8 H. Schlingloff, Software-Qualitätssicherung Ein Spielbeispiel Wie viele erreichbare Zustände gibt es? Wie kann man feststellen, ob ein Zustand erreichbar ist?

9 Folie 9 H. Schlingloff, Software-Qualitätssicherung Coding in SMV

10 Folie 10 H. Schlingloff, Software-Qualitätssicherung Coding in SMV (cont.) SMV findet sofort eine Lösung (rrddlluurrddlluurrddlluurrdd) Lola (Humboldt Univ.) ist sogar noch schneller für 3*4 gut machbar, 4*4 machbar, 5*5 nicht machbar (10 25 )

11 Folie 11 H. Schlingloff, Software-Qualitätssicherung Ein Hardware-Beispiel gibts vielleicht noch besser (color)

12 Folie 12 H. Schlingloff, Software-Qualitätssicherung Verifikationsmodell des Schieberegisters

13 Folie 13 H. Schlingloff, Software-Qualitätssicherung Reale Beispiele Hardware-Verifikation: Stand der Technik ALUs, PLAs, Memory Controller, Chip Design,... Software-Verifikation: Stand der Forschung Luftfahrtcomputer, Zugsteuerungen, Automobil- Steuergeräte, nichttriviale Suchprobleme,... http://www-2.cs.cmu.edu/~modelcheck/tour.htm

14 Folie 14 H. Schlingloff, Software-Qualitätssicherung Another Example: Ivor Spences Sudoku http://www.cs.qub.ac.uk/~I.Spence/SuDoku/sudoku.jar

15 Folie 15 H. Schlingloff, Software-Qualitätssicherung How Does He Do It? Propositional modelling 9 propositions per cell: proposition ijk indicates that row i, column j contains value k individual cell clauses - each cell contains exactly one value (ij1 v ij2 v … v ij9) ^ ~(ij1 ^ ij2) ^ … ^ ~(ij8 ^ ij9) row and column clauses - each row i contains each number, exactly once (i11 v … v i91) ^ (i12 v … v i92) ^ … (i19 v … v i99) j 1 j 2, k=1..9: ~(ij 1 k ^ ij 2 k) - same for columns block clauses – similar pre-filled cells – easy SAT solving 729 propositions, ca. 3200 clauses few seconds

16 Folie 16 H. Schlingloff, Software-Qualitätssicherung Propositional verification In order to validate a system, we need to represent the transition relation. The representation is of utmost importance for the success of a verification attempt Algorithms and data structures are heavily dependent onto each other Needed: representation of sets, relations, boolean formulas,...

17 Folie 17 H. Schlingloff, Software-Qualitätssicherung Binary Encoding of Domains Any variable on a finite domain D can be replaced by log(D) binary variables similar to encoding of data types by compilers e.g. var v: {0..15} can be replaced by var v1,v2,v3,v4: boolean (0=0000, 1= 0001, 2=0010, 3=0011,..., 15=1111) State space still in the order of original domain! e.g. three int8-variables can have 2 24 =10 8 states e.g. buffer of length 10 with 10-bit values 10 30 states Representation of large sets of states?

18 Folie 18 H. Schlingloff, Software-Qualitätssicherung Representation of Sets

19 Folie 19 H. Schlingloff, Software-Qualitätssicherung Ordered Tree Form Normal form for propositional formulas Uses only the connective Ite Linear ordering on the set of propositions e.g., most significant bit first Shannon expansion

20 Folie 20 H. Schlingloff, Software-Qualitätssicherung Truth table and tree form formula Reduction: Replace Ite (v,ψ,ψ) by ψ

21 Folie 21 H. Schlingloff, Software-Qualitätssicherung Abbreviations Introduce abbreviations maximally abbreviated

22 Folie 22 H. Schlingloff, Software-Qualitätssicherung Binary Decision Trees (BDTs) Binary decision tree Elimination of isomorphic subtrees (abbreviations)

23 Folie 23 H. Schlingloff, Software-Qualitätssicherung Binary Decision Diagrams (BDDs) Elimination of redundant nodes (redundant subformulas) Ite (v,ψ,ψ) by ψ


Herunterladen ppt "Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS 21.5.2013: Modellprüfung."

Ähnliche Präsentationen


Google-Anzeigen