Effiziente Überwachung von Laufzeiteigenschaften in Soft- und Hardware
|
|
- Annegret Meissner
- vor 6 Jahren
- Abrufe
Transkript
1 Effiziente Überwachung von Laufzeiteigenschaften in Soft- und Hardware Normann Decker 1 Philip Gottschling 2 1 Institut für Softwaretechnik und Programmiersprachen Universität zu Lübeck decker@isp.uni-luebeck.de 2 Institut für Rechnersysteme TU Darmstadt gottschling@rs.tu-darmstadt.de KoSSE-Workshop 214 Lübeck, 11. Dezember 214
2 Übersicht Laufzeitverifikation Spezifikation itorsynthese Beobachtung/Instrumentierung Implementierung In Software In Hardware Zusammenfassung N. Decker, P. Gottschling KoSSE-Workshop 214 1/22
3 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
4 Laufzeitverifikation Vollständige Verifikation nicht immer möglich Reaktive Systeme abhängig von Eingaben System bei Auslieferung unvollständig (Dynamische Bibliotheken, Komponenten) Physische Einflüsse (Hardware, Betriebsbedingungen) Überwachung existierender Systeme Testen, Analyse von Log-Daten N. Decker, P. Gottschling KoSSE-Workshop 214 3/22
5 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
6 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
7 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
8 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
9 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
10 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
11 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 4/22
12 Spezifikation Spezifikation System Synthese Beobachtung itor Bewertung Beobachtung: Sequenz von Ereignissen e 1 e 2 e 3... Spezifikation: Eigenschaften (Form) von Sequenzen N. Decker, P. Gottschling KoSSE-Workshop 214 5/22
13 Spezifikation Spezifikation System Synthese Beobachtung itor Bewertung Beobachtung: Sequenz von Ereignissen e 1 e 2 e 3... Spezifikation: Eigenschaften (Form) von Sequenzen N. Decker, P. Gottschling KoSSE-Workshop 214 5/22
14 Spezifikation - Beispiele Ereignisse definieren: a, b, c,..., z. B. a ˆ= Fehler aufgetreten b ˆ= Initialisierung abgeschlossen c ˆ= Funktion f() aufgerufen... Niemals a : Always(Not a) Kein Fehler in der Initialisierungsphase : (Not a) Until b (Always Not error) And Eventually job_done N. Decker, P. Gottschling KoSSE-Workshop 214 6/22
15 Spezifikation - Beispiele Ereignisse definieren: a, b, c,..., z. B. a ˆ= Fehler aufgetreten b ˆ= Initialisierung abgeschlossen c ˆ= Funktion f() aufgerufen... Niemals a : Always(Not a) Kein Fehler in der Initialisierungsphase : (Not a) Until b (Always Not error) And Eventually job_done N. Decker, P. Gottschling KoSSE-Workshop 214 6/22
16 Spezifikation - Beispiele Ereignisse definieren: a, b, c,..., z. B. a ˆ= Fehler aufgetreten b ˆ= Initialisierung abgeschlossen c ˆ= Funktion f() aufgerufen... Niemals a : Always(Not a) Kein Fehler in der Initialisierungsphase : (Not a) Until b (Always Not error) And Eventually job_done N. Decker, P. Gottschling KoSSE-Workshop 214 6/22
17 Spezifikation - Beispiele Ereignisse definieren: a, b, c,..., z. B. a ˆ= Fehler aufgetreten b ˆ= Initialisierung abgeschlossen c ˆ= Funktion f() aufgerufen... Niemals a : Always(Not a) Kein Fehler in der Initialisierungsphase : (Not a) Until b (Always Not error) And Eventually job_done N. Decker, P. Gottschling KoSSE-Workshop 214 6/22
18 Spezifikation Abstrakt, deklarativ (kein programmieren der Spezifikation) Eindeutige Bedeutung Automatische Verarbeitung (z. B. itorsynthese) Optimierung N. Decker, P. Gottschling KoSSE-Workshop 214 7/22
19 Spezifikation Abstrakt, deklarativ (kein programmieren der Spezifikation) Eindeutige Bedeutung Automatische Verarbeitung (z. B. itorsynthese) Optimierung N. Decker, P. Gottschling KoSSE-Workshop 214 7/22
20 Spezifikation Abstrakt, deklarativ (kein programmieren der Spezifikation) Eindeutige Bedeutung Automatische Verarbeitung (z. B. itorsynthese) Optimierung N. Decker, P. Gottschling KoSSE-Workshop 214 7/22
21 Spezifikation Abstrakt, deklarativ (kein programmieren der Spezifikation) Eindeutige Bedeutung Automatische Verarbeitung (z. B. itorsynthese) Optimierung N. Decker, P. Gottschling KoSSE-Workshop 214 7/22
22 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 8/22
23 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 8/22
24 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 8/22
25 itorsynthese Übersetzung, Analyse, Optimierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Synthese eines operationalen Modells (z. B. Zustandsmaschine) Optimierung (z. B. semantische Redundanz, spezifische Implementierung) Vollautomatisch N. Decker, P. Gottschling KoSSE-Workshop 214 9/22
26 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 1/22
27 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 1/22
28 Laufzeitverifikation Spezifikation System Synthese Beobachtung itor Bewertung N. Decker, P. Gottschling KoSSE-Workshop 214 1/22
29 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) N. Decker, P. Gottschling KoSSE-Workshop /22
30 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) N. Decker, P. Gottschling KoSSE-Workshop /22
31 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Beobachtung des Systems Ausgabe oder Kommunikation (interne) Systemereignisse, -zustände (z. B. Funktionsaufrufe, Speicherzugriffe) Trace-Schnittstellen Instrumentierung des Programmcodes N. Decker, P. Gottschling KoSSE-Workshop /22
32 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Beobachtung des Systems Ausgabe oder Kommunikation (interne) Systemereignisse, -zustände (z. B. Funktionsaufrufe, Speicherzugriffe) Trace-Schnittstellen Instrumentierung des Programmcodes N. Decker, P. Gottschling KoSSE-Workshop /22
33 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Beobachtung des Systems Ausgabe oder Kommunikation (interne) Systemereignisse, -zustände (z. B. Funktionsaufrufe, Speicherzugriffe) Trace-Schnittstellen Instrumentierung des Programmcodes N. Decker, P. Gottschling KoSSE-Workshop /22
34 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Ausführung des itors im gleichen Prozess (z. B. bei Code-Instrumentierung) als separate Komponente (z. B. als Dienst in einer SOA) auf dedizierter Hardware (z. B. FPGA) N. Decker, P. Gottschling KoSSE-Workshop /22
35 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Ausführung des itors im gleichen Prozess (z. B. bei Code-Instrumentierung) als separate Komponente (z. B. als Dienst in einer SOA) auf dedizierter Hardware (z. B. FPGA) N. Decker, P. Gottschling KoSSE-Workshop /22
36 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Ausführung des itors im gleichen Prozess (z. B. bei Code-Instrumentierung) als separate Komponente (z. B. als Dienst in einer SOA) auf dedizierter Hardware (z. B. FPGA) N. Decker, P. Gottschling KoSSE-Workshop /22
37 Beobachtung und Ausführung Übersetzung, Analyse, Optimierung Implementierung Spezifikation (deklarativ) itor (operational, mit Ausgabe) Programmcode (ausführbar) Ausführung des itors im gleichen Prozess (z. B. bei Code-Instrumentierung) als separate Komponente (z. B. als Dienst in einer SOA) auf dedizierter Hardware (z. B. FPGA) N. Decker, P. Gottschling KoSSE-Workshop /22
38 Anwendung: Software Überwachung der Kommunikation von Diensten Analyse von Logfiles Unit Testing: junit RV N. Decker, P. Gottschling KoSSE-Workshop /22
39 Anwendung: Software Überwachung der Kommunikation von Diensten Analyse von Logfiles Unit Testing: junit RV N. Decker, P. Gottschling KoSSE-Workshop /22
40 Anwendung: Testen mit junit RV Example (Instrumentierung: Definition von Ereignissen) String classundertest = "mypackage.classundertest"; private static Event start = called(classundertest, "starttask"); private static Event initok = returned(classundertest, "initialize"); private static Event end = called(classundertest, "endtask"); Definition der Ereignisse Beobachtung Weitere Beispiele Variable x > 1, Zugriff auf Variable x, Exception wurde geworfen N. Decker, P. Gottschling KoSSE-Workshop /22
41 Anwendung: Testen mit junit RV Example (Eigenschaft: Definition eines itors) private static itor myitor1 = new itor( Always(a) ); Komplexere Eigenschaften durch zeitliches und logisches Verknüpfen von Ereignissen Auf start folgt irgendwann end und Kein start vor initok Always (start Eventually end) And ((Not start) Until initok) N. Decker, P. Gottschling KoSSE-Workshop /22
42 Anwendung: Testen mit junit RV Example (Ausführung: Definition von public class MyTest { // Instrumentierung: Definition von Ereignissen... // Eigenschaften: Definition der "myitor2",...}) public void test1() {... } N. Decker, P. Gottschling KoSSE-Workshop /22
43 Laufzeitverifikation in Hardware FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration CONIRAS Kontinuierliche nicht-intrusive Laufzeitanalyse von SoCs AbsInt, Accemic, TU Darmstadt (RS), U zu Lübeck (ISP) Akquise von Trace-Daten, WCET-Analyse, Laufzeitverifikation N. Decker, P. Gottschling KoSSE-Workshop /22
44 Laufzeitverifikation in Hardware FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration CONIRAS Kontinuierliche nicht-intrusive Laufzeitanalyse von SoCs AbsInt, Accemic, TU Darmstadt (RS), U zu Lübeck (ISP) Akquise von Trace-Daten, WCET-Analyse, Laufzeitverifikation N. Decker, P. Gottschling KoSSE-Workshop /22
45 Laufzeitverifikation in Hardware FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration CONIRAS Kontinuierliche nicht-intrusive Laufzeitanalyse von SoCs AbsInt, Accemic, TU Darmstadt (RS), U zu Lübeck (ISP) Akquise von Trace-Daten, WCET-Analyse, Laufzeitverifikation N. Decker, P. Gottschling KoSSE-Workshop /22
46 Laufzeitverifikation in Hardware FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration CONIRAS Kontinuierliche nicht-intrusive Laufzeitanalyse von SoCs AbsInt, Accemic, TU Darmstadt (RS), U zu Lübeck (ISP) Akquise von Trace-Daten, WCET-Analyse, Laufzeitverifikation N. Decker, P. Gottschling KoSSE-Workshop /22
47 Laufzeitverifikation in Hardware FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration CONIRAS Kontinuierliche nicht-intrusive Laufzeitanalyse von SoCs AbsInt, Accemic, TU Darmstadt (RS), U zu Lübeck (ISP) Akquise von Trace-Daten, WCET-Analyse, Laufzeitverifikation N. Decker, P. Gottschling KoSSE-Workshop /22
48 Vorteile von FPGAs Schnelle und parallele Verarbeitung von Daten Extrem viele Freiheitsgrade Beliebig oft neu konfigurierbar N. Decker, P. Gottschling KoSSE-Workshop /22
49 Vorteile von FPGAs Schnelle und parallele Verarbeitung von Daten Extrem viele Freiheitsgrade Beliebig oft neu konfigurierbar N. Decker, P. Gottschling KoSSE-Workshop /22
50 Vorteile von FPGAs Schnelle und parallele Verarbeitung von Daten Extrem viele Freiheitsgrade Beliebig oft neu konfigurierbar N. Decker, P. Gottschling KoSSE-Workshop /22
51 Probleme bei der Verwendung von FPGAs Entwicklungstools sind schlecht zu integrieren Hardwarebeschreibung nicht intuitiv Synthese von itoren in Hardware dauert lange Beschreibung Synthese Programmierung N. Decker, P. Gottschling KoSSE-Workshop /22
52 Probleme bei der Verwendung von FPGAs Entwicklungstools sind schlecht zu integrieren Hardwarebeschreibung nicht intuitiv Synthese von itoren in Hardware dauert lange Beschreibung Synthese Programmierung N. Decker, P. Gottschling KoSSE-Workshop /22
53 Probleme bei der Verwendung von FPGAs Entwicklungstools sind schlecht zu integrieren Hardwarebeschreibung nicht intuitiv Synthese von itoren in Hardware dauert lange Beschreibung Synthese Programmierung N. Decker, P. Gottschling KoSSE-Workshop /22
54 Ansatz: Generische itore in Hardware Hardware (für itore) wird nur ein mal Synthetisiert Reduzierung der Freiheitsgrade durch Parameter Parameter lassen sich nachträglich ohne erneute Synthese ändern Einfache Beschreibung HDL (Verilog) Syntheseprozess N. Decker, P. Gottschling KoSSE-Workshop /22
55 Ansatz: Generische itore in Hardware Hardware (für itore) wird nur ein mal Synthetisiert Reduzierung der Freiheitsgrade durch Parameter Parameter lassen sich nachträglich ohne erneute Synthese ändern Einfache Beschreibung HDL (Verilog) Syntheseprozess N. Decker, P. Gottschling KoSSE-Workshop /22
56 Ansatz: Generische itore in Hardware Hardware (für itore) wird nur ein mal Synthetisiert Reduzierung der Freiheitsgrade durch Parameter Parameter lassen sich nachträglich ohne erneute Synthese ändern Einfache Beschreibung HDL (Verilog) Syntheseprozess N. Decker, P. Gottschling KoSSE-Workshop /22
57 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
58 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
59 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
60 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
61 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
62 itore in Hardware Einmalig (dauert lange): Beschreibung des itorsystems Syntheseprozess Beliebig oft (geht schnell): Anpassen von Parametern Anpassen des Verhaltens (Automaten) N. Decker, P. Gottschling KoSSE-Workshop 214 2/22
63 Vorteile des Prinzips Automatische Überwachung von Laufzeiteigenschaften Parallele Ausführung vieler Beobachtungsaufgaben N. Decker, P. Gottschling KoSSE-Workshop /22
64 Vorteile des Prinzips Automatische Überwachung von Laufzeiteigenschaften Parallele Ausführung vieler Beobachtungsaufgaben N. Decker, P. Gottschling KoSSE-Workshop /22
65 Zusammenfassung Spezifikation System Beobachtung Synthese private static itor myitor = new itor( Always(a) ); itor Bewertung FPGA itor System Target Platform (MP)SoC Trace Port monitor status configuration N. Decker, P. Gottschling KoSSE-Workshop /22
Web-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum
1 Web-Testen mit JUnit und HttpUnit Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 2 Inhalt Entwicklertests in der Praxis Unit-Testing JUnit HttpUnit Praktisches Beispiel Bewertung
MehrTesten von SOA-Anwendungen mit dem BPEL Testframework
Testen von SOA-Anwendungen mit dem BPEL Testframework Stefan Kühnlein IBM Deutschland Enterprise Application Solution GmbH Hollerithstr. 1 81829 München 0160/8848611 Stefan.Kuehnlein@de.ibm.com IBM Deutschland
MehrSystematisches Testen der Funktionalität von Softwaresystemen. 17. Juni 2015
Systematisches Testen der Funktionalität von Softwaresystemen 17. Juni 2015 Überblick Semantische Qualität von Software Teststrategien und prinzipien Testgetriebene Softwareentwicklung Welche Arten von
MehrJUnit - Test Driven Development. Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1
JUnit - Test Driven Development Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1 Gliederung 1.Einleitung 1.1 Geschichte 1.2 Was sind Unit-Tests? 1.3 Failures/Errors 1.4 Ziele und Nutzen
MehrSystematisches Testen
Systematisches Testen SEP 136 Unit Testing Objektorientierte Entwicklung Entwicklung von vielen unabhängigen Einheiten (Klassen, Methoden), aus denen das Gesamtprogramm zusammengesetzt wird. Ziel: Wenn
MehrModellprüfung von UML-Zustandsmaschinen und UML-Kollaborationen in SAL
Institut für Informatik, Lehr- und Forschungseinheit für Programmierung und Softwaretechnik der Ludwig-Maximilians-Universität München Diplomarbeit Modellprüfung von UML-Zustandsmaschinen und UML-Kollaborationen
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrInformatik. Studiengang Chemische Technologie. Michael Roth Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013.
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VIII Einstieg in Java II Michael Roth (h_da) Informatik
MehrDiplomarbeit. Entwurf eines TI-Coaching Systems. von. Christof Kuhn
Diplomarbeit Entwurf eines TI-Coaching Systems von Christof Kuhn Warum TI-Coaching System? Theoretische Informatik fällt vielen schwer Sie ist aber sehr wichtig für die Informatik Sie ist nicht wirklich
MehrZwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen
Zwischenbericht Diplomarbeit Entwicklung einer Laufzeitumgebung für Komponenten mit Ressourcenanforderungen Brit Engel Überblick Beschreibung Aufgabenstellung Entwurf der Komponenten Verwaltung Funktionsbereiche
MehrTesten von graphischen Benutzeroberflächen. 26. Juni 2013
Testen von graphischen Benutzeroberflächen 26. Juni 2013 Überblick Testarten Methoden-, Klassen-, Komponenten-, Systemtests Motivation für automatisches Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien
MehrJava für C++ Programmierer
Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?
MehrFortgeschrittenes Programmieren mit Java. Test Driven Development
Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test
MehrJava Vererbung. Inhalt
Java Vererbung Inhalt 1 Zielsetzung... 2 1.1 Bewertung... 2 2 Grundlagen der Vererbung... 2 2.1 Super und Subklassen... 2 3 Überladen von Methoden... 4 3.1 Unterschiedliche Parameter... 4 3.2 Gleiche Parameter
MehrModulare Grafische Programmierung (MGP) von FPGAs
Modulare Grafische Programmierung (MGP) von FPGAs Linna Lu Technische Universität Ilmenau Projektseminar KBSE Projektseminar KBSE Ilmenau 29.06.2005 Linna Lu Projektseminar Softwaresysteme/Prozessinformatik
MehrTheorie 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
Mehr5. Dokumentieren und Testen Advanced Programming Techniques. Wintersemester 2009 / 2010 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik
5. Dokumentieren und Testen Advanced Programming Techniques Wintersemester 2009 / 2010 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik:
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrKonzeption. und prototypische Implementierung. eines Werkzeuges. für den funktionalen Klassentest
Konzeption und prototypische Implementierung eines Werkzeuges für den funktionalen Klassentest Übersicht Motivation Zielsetzung Lösungsansatz und dessen Realisierung Anwendungs-Szenarien Präsentation von
MehrErster Bug: eine Motte
SOFTWAREFEHLER Der erste Bug Erster Bug: eine Motte Der Begriff Bug (deutsch: Motte) stammt aus dem Jahre 1945, als Ingenieure in einem Schaltrelais eines Computers (Harvard Mark II-System) eine Motte
MehrPersönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy
Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy 07.04.2011 Speaker Andreas Hartmann [hartmann@adesso.de] Principal Software Engineer
MehrJUnit. Unit testing unter Java
JUnit Unit testing unter Java Was ist Junit? einfaches Framework zum Schreiben von wiederholbaren Tests Besonders geeignet für unit testing Erlaubt Hierarchie von Testsuites Schreiben eines Test Case 1.
MehrTesten von graphischen Benutzeroberflächen. 24. Juni 2015
Testen von graphischen Benutzeroberflächen 24. Juni 2015 Überblick Motivation für das automatische Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien für GUIs Capture / Replay Testmethode
MehrEchtzeit-Multitasking
Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme
MehrSensorsimulation in Hardware in the Loop-Anwendungen
Sensorsimulation in Hardware in the Loop-Anwendungen Kristian Trenkel, Florian Spiteller Echtzeit 2014 20.11.2014 Gliederung I. Einführung II. Problemstellung III. Anforderungen an eine Sensorsimulation
MehrEinführung in die Informatik
Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester
MehrSchwerpunktprogramm 1148 Rekonfigurierbare Rechensysteme. Rekonfigurierbare Controller
Schwerpunktprogramm 1148 Rekonfigurierbare Rechensysteme Rekonfigurierbare Controller Roland Kasper Thomas Reinemann Institut für Mechatronik und Antriebstechnik Otto-von-Guericke-Universität Magdeburg
MehrVorlesung Programmieren
Vorlesung Programmieren Programmierparadigmen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Programmiersprachen-Paradigmen Eine Programmiersprache
MehrÜberblick über die Roblet -Technik
Überblick über die Roblet -Technik Hagen Stanek gefördert durch Agenda Teil 1: Motivation, Einführung Teil 2: Beispiel-Vorführung Teil 3: Anwendungen, Zusammenfassung 2 Teil 1 Motivation, Einführung 3
MehrJava-Programmierung mit NetBeans
Java-Programmierung mit NetBeans Klassen, Objekte, Alternativen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Grundlegende Definitionen - Objekt Ein Objekt ist allgemein ein Gegenstand
MehrVortrag 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
MehrVom Testkonzept zu JUnit
Testen und Testkonzept Dipl.-Inf. (FH) Christopher Olbertz 2. Dezember 2014 Testen und Testkonzept Warum testen? Wichtig, obwohl bei Programmierern unbeliebt Stellt weitgehend korrekte Funktionsweise eines
MehrInhaltsverzeichnis. Einführende Bemerkungen 11. Das Fach Informatik 11 Zielsetzung der Vorlesung Grundbegriffe
Inhaltsverzeichnis Einführende Bemerkungen 11 Das Fach Informatik 11 Zielsetzung der Vorlesung 12 1. Grundbegriffe 1 3 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Information und Nachricht 1.1.1 Information 1.1.2 Nachricht
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
Mehr7. Schnittstellen Grundlagen zu Schnittstellen. 7. Schnittstellen
7. Schnittstellen Grundlagen zu Schnittstellen 7. Schnittstellen Eine Schnittstelle (Interface) ist eine Spezifikation eines Typs in Form eines Typnamens und einer Menge von Methoden, die keine Implementierungen
MehrVererbung & Schnittstellen in C#
Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung
MehrCS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)
CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Einfache Programme: Programm-Argument, Bedingte Anweisungen, Switch, Enum Boolesche Werte und Ausdrücke Seite 1 Beispiel: Umrechnen
MehrProgrammierkurs C++ Abstrakte Klassen und Methoden
Programmierkurs C++ Abstrakte Klassen und Methoden Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Vererbungshierarchie Obst double
Mehr1 Organisatorisches. 2 Compilezeit- und Laufzeitfehler. 3 Exceptions. 4 Try-Catch-Finally
Themen der Übung CoMa-Übung VI 1 Organisatorisches Compilezeit- und Laufzeitfehler 3 Try-Catch-Finally TU Berlin 8.11.01 Bewertung der OA 5 fehlerhaft, Madeleine arbeitet dran CoMa-Übung VI (TU Berlin)
MehrInformationsverarbeitung im Bauwesen
1/21 Informationsverarbeitung im Bauwesen Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2010/2011 Vorlesung 8
MehrVorkurs Informatik WiSe 15/16
Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan
MehrUnit Tests. Programmiermethodik. Eva Zangerle Universität Innsbruck
Unit Tests Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle
MehrProgrammieren mit Java
Reinhard Schiedermeier Programmieren mit Java 2., aktualisierte Auflage ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam
MehrProgrammiertechnik II
Modultests Ziele Überprüfung der Korrektheit eines Moduls Korrektheit: Übereinstimmung mit (informaler) Spezifikation Modul: kleine testbare Einheit (Funktion, Klasse) Engl.: unit test White box testing
MehrHTTP-Server. Frank Wübbeling Universität Münster
HTTP-Server Frank Wübbeling Universität Münster Aufgaben des Servers Input/Output (Port eröffnen etc.) Aufnehmen der Anforderungen Bereitstellung des Inhalts Bereitstellung der Header Erzeugung von Hintergrundinfos
MehrModulare Programmierung und Bibliotheken
Modulare Programmierung und Bibliotheken Proseminar-Vortrag am 24.06.2011 von Ludwig Eisenblätter Ludwig Eisenblätter 1 von 25 Modulare Programmierung und Bibliotheken Inhaltsübersicht Motivation / Einleitung
MehrFunktionale Programmiersprachen
Funktionale Programmiersprachen An den Beispielen Haskell und Erlang Übersicht Programmiersprachen λ-kalkül Syntax, Definitionen Besonderheiten von funktionalen Programmiersprache, bzw. Haskell Objektorientierte
MehrC# im Vergleich zu Java
C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung
MehrSpeicher und Adressraum
Linearer Speicher (Adressraum) Technische Universität München Speicher und Adressraum Freie Speicherhalde (Heap) Freier Speicherstapel (Stack) Globale Variablen Bibliotheksfunktionen Laufzeitsystem Programmcode
MehrFlexibles E-Assessment auf Basis einer Service-orientierten Architektur
auf Basis einer Service-orientierten Architektur Konzepte, Implementierung und Praxiserfahrungen Mario Amelung Katrin Krieger Dietmar Rösner Otto-von-Guericke-Universität Magdeburg Wissensbasierte Systeme
MehrGrundzüge der Programmierung. Wiederverwendung VERERBUNG
Grundzüge der Programmierung Wiederverwendung VERERBUNG Inhalt dieser Einheit Syntax: Vererbung in Java Superklassen - Subklassen Konstruktorenaufruf in Subklassen super, abstract und final 2 Code-Reuse
MehrProblemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.
Universität Osnabrück 1 Problemstellung 3 - Objektorientierte Programmierung in Java Vorlesung 24: Reflection 1 SS 2006 Prof. Dr. Frank M. Thiesing, FH Osnabrück Um ein Objekt anzulegen, eine seiner Methoden
MehrIuK-Projekt am Institut für Mikroelektronik und Eingebettete Systeme. Prof. Dr.-Ing. Peter Schulz Sommersemester 2013
am Institut für Mikroelektronik und Eingebettete Systeme Sommersemester 2013 1 Das Institut imes bietet ein fortlaufendes Mechatronik-Projekt an. Der Einstieg ist semesterweise möglich. Die Laufzeit aus
MehrDIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer
Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur DIPLOMARBEIT Entwurf und Implementierung eines modularen USB-Stacks für eingebettete
MehrSimulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface. von Christian Schildwächter
Simulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface von Christian Schildwächter Simulink Simulink S-Functions Softwareprojekt ROS-Arduino-Interface Simulink 3 LIVE DEMO 4 External
MehrTestplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013
Software Komponenten FS13 Gruppe 03 Horw, 16.04.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Estermann Michael
MehrProgrammieren I. Überblick Objektorientierung Heusch 12 Ratz 7. Institut für Angewandte Informatik
Programmieren I Überblick Objektorientierung Heusch 12 Ratz 7 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Objektorientierte Softwarenentwicklung Was ist das grundlegende Konzept
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren
MehrEinführung in die Informatik I (autip)
Einführung in die Informatik I (autip) Dr. Stefan Lewandowski Fakultät 5: Informatik, Elektrotechnik und Informationstechnik Abteilung Formale Konzepte Universität Stuttgart 24. Oktober 2007 Was Sie bis
MehrTEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4
Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...
MehrComparing Software Factories and Software Product Lines
Comparing Software Factories and Software Product Lines Martin Kleine kleine.martin@gmx.de Betreuer: Andreas Wuebbeke Agenda Motivation Zentrale Konzepte Software Produktlinien Software Factories Vergleich
MehrObjektorientierte Programmierung mit Java. Grundlagen Übersicht. Programmiersprachen
Objektorientierte Programmierung mit Grundlagen 27.10.2008 1 Übersicht 27.10.2008 2 1 Übersicht Klassen und Objekte in - Klassen - Objekte - Klassen - Objekte 27.10.2008 3 Übersicht 27.10.2008 4 2 Einführung
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrBeobachtung 1: Beispiel: Intuitive Programme sind oft ineffizient.
Beobachtung 1: Intuitive Programme sind oft ineffizient. Beispiel: void swap (int i, int j) { int t; if (a[i] > a[j]) { t = a[j]; a[j] = a[i]; a[i] = t; } } 731 Ineffizienzen: Adressen a[i], a[j] werden
MehrAusführungszeiten. Worst-Case Execution-Time. Übung zur Vorlesung EZS. Zeitgeber Oszilloskop Diskussion
1 Überblick Ausführungszeiten Übung zur Vorlesung EZS Florian Franzmann Martin Hoffmann Tobias Klaus Peter Wägemann Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme
MehrEinführung in die STL
1/29 in die STL Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/29 Outline 1 3/29 Inhaltsverzeichnis 1 4/29 Typisierung
MehrOSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab
OSEK-OS Oliver Botschkowski oliver.botschkowski@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung Motivation Ziele Vorteile Einführung in OSEK-OS Architektur Task Management Interrupt
MehrAufgaben Objektentwurf
Aufgaben Objektentwurf (Einschub zum 5. Tutorium) Tutorium 6 13. März 2009 Svetlana Matiouk, Uni Bonn Ferientutorien zur Vorlesung Softwaretechnologie WS 2008 6. Treffen, Aufgabe 1 Vorwärtsmodellierung
MehrLaufzeitoptimierte VHDL Bibliothek zur Verifikation und Simulation kryptographischer Prozessoren
Laufzeitoptimierte VHDL Bibliothek zur Verifikation und Simulation kryptographischer Prozessoren Mathias Schmalisch Hagen Ploog Dirk Timmermann Universität Rostock Übersicht Motivation Arithmetik Implementierung
MehrDas Test-Framework JUnit ETIS SS04
Das Test-Framework JUnit ETIS SS04 Gliederung Motivation TestFirst Grundlagen Assert TestCase Lebenszyklus TestCase UML-Diagramm TestCase TestSuite Zusammenfassung 2 Motivation (I) Kostspielige Folgen
MehrC# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 4: Kombination OOP/.NET
C# Programmierung Eine Einführung in das.net Framework C# Programmierung - Tag 4: Kombination OOP/.NET 1/27/2012 1 Do Events Delegates Operatoren Exceptions Namespaces Bibliotheken.NET Klassen Serialisierung
MehrÜberblick. 1 Vorbemerkungen. 2 Algorithmen. 3 Eigenschaften von Algorithmen. 4 Historischer Überblick. Einführung
Teil I Einführung Überblick 1 Vorbemerkungen 2 Algorithmen 3 4 Historischer Überblick Prof. G. Stumme Algorithmen & Datenstrukturen Sommersemester 2009 1 1 Vorbemerkungen Was ist Informatik? Informatik
MehrOlaf Seng Thomas Genßler Benedikt Schulz. Forschungszentrum Informatik, Karlsruhe
Olaf Seng Thomas Genßler Benedikt Schulz Einführung Grundlagen Vorgehensweise Beispiel Zusammenfassung Übersicht 2 Einführung Szenario & Probleme Hinzufügen einer neuen Funktion zu einer Komponente Erfordert
MehrIO-Link Komponenten einfach, individuell, unkompliziert
IO-Link Komponenten einfach, individuell, unkompliziert www.iq2-development.de iqinterface Ihr einfacher Zugang zu IO-Link Geräten iqinterface ist ein vielseitiges Entwicklungs- und Produktionstool für
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrObjekte nutzen und testen. Dienstag, 8. Mai: keine Vorlesung! Konzepte (Wiederholung vom Freitag) Vgl. Kapitel 5-6 im BlueJ-Buch.
Vgl. Kapitel 5-6 im BlueJ-Buch. Objekte nutzen und testen Andreas Zeller 1 Dienstag, 8. Mai: keine Vorlesung! 2 Konzepte (Wiederholung vom Freitag) Sammlungen flexibler Größe: ArrayList fester Größe: Array
MehrÜbersicht. 4.1 Ausdrücke. 4.2 Funktionale Algorithmen. 4.3 Anweisungen. 4.4 Imperative Algorithmen Variablen und Konstanten. 4.4.
Übersicht 4.1 Ausdrücke 4.2 Funktionale Algorithmen 4.3 Anweisungen 4.4 Imperative Algorithmen 4.4.1 Variablen und Konstanten 4.4.2 Prozeduren 4.4.3 Verzweigung und Iteration 4.4.4 Globale Größen Einführung
MehrMarkus Wichmann. Testen von Java Code mit. JUnit
Markus Wichmann Testen von Java Code mit JUnit Demotivation... Am Anfang war der Zeitdruck... Hilfe, ich habe doch keine Zeit zum Testen! Ich schreibe einfach keine Tests, dadurch werde ich schneller fertig
Mehreasyweb400 die Verbindung zwischen iseries und Internet Ihr Partner M/S VisuCom
easyweb400 die Verbindung zwischen iseries und Internet von M/S VisuCom Inhalt Ihr Partner M/S VisuCom Anwendungsbeispiel Berufsgenossenschaft der Feinmechanik und Elektrotechnik, Köln M/S VisuCom Auf
MehrObjektorientierte Programmierung
Stefan Brass: OOP (Java), 15. Überladene Methoden 1/22 Objektorientierte Programmierung Kapitel 15: Überladene Methoden Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2013/14 http://www.informatik.uni-halle.de/
MehrMusterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9
Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung
Mehr1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge
Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete
MehrTwinCAT HMI Application
New Automation Technology TwinCAT HMI Application 08.05.2010 1 Überblick Einleitung Übersicht Möglichkeiten der Applikation Struktur und Komponenten Komponenten für das Microsoft Visual Studio Anleger
MehrObjektorientierte Programmierung Teil 1: Einführung
Objektorientierte Programmierung Teil 1: Einführung Prof. Dr. Schoop FHT Esslingen, Sommersemester 2005 Agenda Beispielszenario Eigenschaften des objektorientierten Ansatzes Konzepte des objektorientierten
MehrUnit Tests und Fehlersuche
Unit Tests und Fehlersuche SE 1 - Softwareentwicklungspraktikum Test Deadline! Sinnvolle Tests kompilierbar im CVS d.h. Schnittstellen zu Strategiemethoden etc. schon erstellen Kommentieren! Besser ein
MehrUnit Testing mit JUnit. Dr. Andreas Schroeder
Unit Testing mit JUnit Dr. Andreas Schroeder Überblick Was dieses Video behandelt Warum Testen? Was sind Unit Tests? Der Teufelskreis des Nicht-Testens JUnit Unit Test Vorteile Test-Inspiration Wann aufhören?
MehrWie ich lernte die API zu lieben. 19. März 2013. bernhard.groehling@sicsec.de 08142-4425 037 sic[!]sec GmbH Industriestraße 29-31 82194 Gröbenzell
Burp- Burp- Wie ich lernte die zu lieben 19. März 2013 bernhard.groehling@sicsec.de 08142-4425 037 sic[!]sec GmbH Industriestraße 29-31 82194 Gröbenzell Burp- Was erwartet uns? Das erwartet euch Theorie:
MehrInfo: Standard DO-178B. 5. Mocking. Zusammenspiel von Klassen testen. Allgemein: Klassen testbar machen
Info: Standard DO-178B Zertifizierung Federal AviationAdministration (FAA), Software für Luftverkehrssysteme durch Standard DO-178B für requirement-based Tests and Code Coverage Analyse DO-178B-Levels
MehrKapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik
Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen
MehrAufbau von Klassen. class punkt {...
Einführung in C++ Aufbau von Klassen Eine wird mit dem Schlüsselwort class eingeleitet, und endet mit einem Semikolon. Der Inhalt wird zwischen geschweiften Klammern geschrieben. class punkt {... ; Im
MehrVererbung. Was versteht man unter dem Begriff Vererbung?
Was versteht man unter dem Begriff Vererbung? Elternkonstrukt - Datenelemente - Methoden o Deklaration o Definition Kindkonstrukt... Main... Elternkonstrukt b = new Kindkonstrukt() b.fn() Komponenten &
Mehr! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.
! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.4 Exceptions - 1 - Ausnahmen (Exceptions( Exceptions) Treten auf, wenn zur
MehrWillkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java
Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen
MehrEntwicklungsbegleitende Verifikation von AUTOSAR Steuergerätefunktionen auf Basis einer Test-RTE und SiL-Simulation
Entwicklungsbegleitende Verifikation von AUTOSAR Steuergerätefunktionen auf Basis einer Test-RTE und SiL-Simulation GI-Fachgruppe Test, Analyse und Verification von Software (TAV) 30. Treffen: 17. und
Mehr5.5.8 Öffentliche und private Eigenschaften
5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung
MehrDevelopment Tools for 16/32 Bit Microcontroller
Praktika- und Diplomthemen bei Stand 01/2013 Die nachfolgend aufgeführten Themen sind Vorschläge und können in Absprache mit dem Praktikanten / Diplomanden sowie der Hochschule modifiziert werden. Die
MehrOOP und Angewandte Mathematik. Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik
Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik WS 2011/12 Inhalt Test-Besprechung! Ziele verdeutlichen Große Bild von OOP Wiederholung: Einbettung als Technik
MehrKapitel 8. Programmierkurs. Methoden. 8.1 Methoden
Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08
Mehr