Spezifikationsmethode zur Generierung von Modellen und Tests. Qualifizierung von Codegeneratoren.

Größe: px
Ab Seite anzeigen:

Download "Spezifikationsmethode zur Generierung von Modellen und Tests. Qualifizierung von Codegeneratoren."

Transkript

1 Page 1 Spezifikationsmethode zur Generierung von Modellen und Tests. Qualifizierung von Codegeneratoren. Dr. Stefan-Alexander Schneider, Prozessentwicklung

2 Page 2 Agenda. Motivation Vorgehen Spezifikationssprache mit Beispiel Modelle Parameter Tests Fazit

3 Page 3 Ziele. Qualifizierung von Entwicklungswerkzeugen (Erhöhung des Vertrauens im Entwicklungsprojekt) Systematisches Testen von Codegeneratoren Generieren von Modellen Generieren von Testdaten Messen der Qualität

4 Page 4 Validierungssuite. Quelle: Computer-Lexicon Validierungssuite Subst. (validation suite): Eine Menge von Tests, mit denen die Einhaltung eines Standards geprüft wird, insbesondere die Standarddefinition einer Programmiersprache Im Entwicklungsprojekt: Programmiersprache = Modelle (gemäß Richtlinien) Standard: korrekte Codegenerierung (gemäß Modell)

5 Page 5 Korrektheit von Codegenerator. Grundlage für Tests: Verhalten der Modelle Modell Ausgaben Eingaben Codegenerator Vergleich Code Ausgaben Herausforderungen: beliebig viele verschiedene Modelle (trotz Modellierungsrichtlinien) Gute Auswahl aus den zu testenden Modellen sinnvolle Eingaben zu Modellen Chancen: Spezifikation (Sollverhalten) ist durch Matlab präzise spezifiziert Qualitätsmaße: Betriebstreue, Test-Abdeckungen (Code und Generator)

6 Page 6 Datenfluss Testdurchführung. Modell Eingabe-Sequenz Entwicklungsumgebung CG Code Protokoll CG Protokoll Code Istwerte (Sequenz) Sollwerte (Sequenz) Vergleich OK/NOK Wichtig: viele gute Testfälle (Eingaben) für den Test

7 Page 7 Ziele Testspezifikationssprache. Anforderungen Beliebige Modell-Mengen spezifizierbar Zugehörige Eingaben spezifizierbar Relevanten Attribute (Parameter) spezifizierbar Präzision (Syntax-Prüfung) Modellgenerierung Lesbarkeit und Verständlichkeit Ablauf 1. Spezifikation erstellen für Modell, Parameter, Test 2. Spezifikation validieren (Syntax, Typen, Semantik) 3. Modelle und Testeingaben generieren 4. Sollwerte bestimmen (Matlab / Referenzinterpreter) 5. Qualität des Generats bestimmen (Codeabdeckung/Fehler) 6. Generat (=Testfälle) in Testsuite ablegen

8 Page 8 Konzepte Testspezifikationssprache. Grundlagen Spezifikation allg. Datenlisten, Tupel Modellmengen Testvektoren Voraussetzungen Meta-Modell zur Modellbeschreibung Funktionen zur Konstruktion von Modellen (auch hierarchisch) Viel Wiederverwendung Konzepten (Listen, Tupel) Modellen (API) Sprachen (funktionale)

9 Page 9 Beispiel Limiter. Anforderungen Werte begrenzen Obere/untere Schranken Grenzwerte frei wählbar Viele Szenarien Ein Beispiel

10 Page 10 Testspezifikation Limiter-Modelle. selectors:: model list selectors = [mkmin('selector'), mkmax('selector')] lim bounds:: model list bounds = [x:[1..10] -> mkconstant('bound',x)] mklim:: compid => model => model => model mklim lim sel bnd = let selector = compid sel; bound = compid bnd in mksubsystem(lim,1,1, [(lim,in1) >> (selector,in1), (bound,out1) >> (selector,in2), (selector,out1) >> (lim,out1)], [sel, bnd] []) limiters:: model list limiters = [s:selectors, b:bounds -> mklim ('lim',s,b)]

11 Page 11 Sprachelemente. Konstruktorfunktionen für erlaubte Blöcke und Subsysteme mksubsystem(lim,1,1,channels,blocks,properties) erzeugt ein Subsystem mit Namen lim, einem Ein- und Ausgang, das die angegebene Kanäle und Blöcke beinhaltet und properties hat. Kanäle (Verbindung von Ports) channels = [(lim,in1) >> (selector,in1),...] Parametrierung über Argumente der Konstruktoren blocks = [mkconstant('bound',<2>),...] erzeugt einen Constant Block mit dem Value Parameter <2> Nachträgliche Parametrierung über Setzen von Properties b = mkconstant('bound'); setprop b ('Value',<2>);

12 Page 12 Testspezifikation Limiter-Eingaben. times:: int list times = [1...5] [1,2,3,4,5] sine:: float list sine = [t:times -> sin(pi * <t> / <5>)] [0.59, 0.95, 0.95, 0.59, 0.00] noise:: float list noise = [t:times -> <rand [-5...5]> / <5>] sn:: (float * float) list sn = sine ~~ noise [-0.6, 0.2, -1.0, 0.4, -0.4] [(0.59,-0.6),(0.95,0.2),(0.95,-1.0),(0.59,0.4),(0.00,-0.4)] noisysine:: float list noisysine = [(s,n):sn -> s + n] [-0.01, 1.15, -0.05, 0.99, -0.4] psin:: float list psin = [x:noisysine. x > 0] [1.15, 0.99]

13 Page 13 Sprachelemente. Primitive Werte und Typen 10::int <10>::float 'hallo'::string Listen und Tupel [1,2,3]::int list (1,2,3)::int * int * int Funktionen und Zufallsoperatoren sin(pi) = <0> rand([1,2,3]) Listenkomprehension (Filtern aus Listen über Prädikate) [x:[1,-2,3]. x > 0] = [1,3] [x:[1,2,3],y:[1,2,3]. x = y] = [(1,1),(2,2),(3,3)] Listenfunktionale (Map, Zip, Pairs) [x:[1,2,3],y:[1,2] -> x + y] = [2,3,4,3,4,5] [1,2,3] ~~ [a,b,c] = [(1,a),(2,b),(3,c)] Pairs([1,2],[a,b],[+,-]) = [(1,a,+),(1,b,-),(2,a,-),(2,b,+)] alle 2er Kombinationen treten einmal auf.

14 Page 14 Beispiel-Ergebnisse. limiters:: model list limiters =[s:selectors, b:bounds -> mklim ('lim',s,b)] generiert 20 Modelle sine:: float list sine = [t:[ ]. sin(<2> * pi * <t> / <100>)] pulse:: float list pulse = [t:[1...50] -> -> <1>] generiert 2 Testvektoren der Länge 100 demo:: test list demo = [l:limiters -> (l,[[sine >> In1],[pulse >> In1]])] generiert 20 Tests mit jew. 2 Testserien der Länge 100 (ohne Ausgaben)

15 Page 15 Realisierung. Testdurchführung: ex. Tools, z. B. EXACT von Extessy Modellgenerierung: Validas API (mit Metamodell) für MATLAB/Simulink Testdaten *.mat-dateien als Schnittstelle (XML-Format) Referenzwerte unabhängiger Interpreter Testspezifiktion => Isabelle-System Nachbildung der API im Typsystem Verwendung von Tupel und Listen Verwendung von Funktionen Realisierung von Validierungschecks als Prüf-Funktionen Erstellung einer Standard-Bibliothek (Modellierungsrichtlinien) Generierung der Modelle über Isabelle-Generator

16 Page 16 Fazit. Modelle spezifizierbar und generierbar Keine Laufzeitprobleme bei der Generierung 10 5 Generate in 10 Sek. (Intel 2GHz) Spezifikationen Exakt Kompakt Modular Ansatz bewährt sich Arbeitsersparnis (1 Testspez. liefert 100te Tests) Wartbarkeit (Spez. redundanzfreier, übersichtlicher) Wiederverwendbarkeit durch Modularität

WhiteStarUML Tutorial

WhiteStarUML Tutorial WhiteStarUML Tutorial Autor: Simon Balázs, BME IIT, 2015. Übersetzung: Kovács Márton, 2015. Installation Herunterladen und installieren Sie das WhiteStarUML: http://sourceforge.net/projects/whitestaruml/

Mehr

Konzeption. und prototypische Implementierung. eines Werkzeuges. für den funktionalen Klassentest

Konzeption. 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

Mehr

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Jens Kohlmeyer 05. März 2007 Institut für Programmiermethodik und Compilerbau ActiveCharts Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Seite 2 Übersicht

Mehr

Echtzeit- und Regelungstechnische Aspekte bei der automatischen Transformation von Matlab/Simulink in SPS-basierten Steuerungscode

Echtzeit- und Regelungstechnische Aspekte bei der automatischen Transformation von Matlab/Simulink in SPS-basierten Steuerungscode PEARL Workshop 2007 06.12.2007 Echtzeit- und Regelungstechnische Aspekte bei der automatischen Transformation von Matlab/Simulink in SPS-basierten Steuerungscode, Dipl.-Ing. Andreas Wannagat, Prof. Dr.-Ing.

Mehr

Comparing Software Factories and Software Product Lines

Comparing 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

Mehr

EasyLab: Modell-basierte Software-Entwicklung für mechatronische Systeme

EasyLab: Modell-basierte Software-Entwicklung für mechatronische Systeme EasyLab: Modell-basierte Software-Entwicklung für mechatronische Systeme Prof. Dr.-Ing. habil. Alois Knoll (k@tum.de) Lehrstuhl für Echtzeitsysteme und Robotik Institut für Informatik Technische Universität

Mehr

Code Generator Certification: A Test Suite-oriented Approach

Code Generator Certification: A Test Suite-oriented Approach Code Generator Certification: A Test Suite-oriented Approach DaimlerChrysler AG, Research E/E and Information Techlogy {Mirko.Conrad Ingo.Stuermer@DaimlerChrysler.com Überblick Motivation Ziele der Arbeiten

Mehr

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme Michael Felderer Workshop Requirements Engineering meets Testing Bad Honnef, 5. Juni 2008 1 Überblick Grundbegriffe Motivation

Mehr

Testen mit JUnit. Apcon Workplace Solutions Member of itelligence. Testen von Java-Code mit JUnit. ÿstruktur eines Testfalls

Testen mit JUnit. Apcon Workplace Solutions Member of itelligence. Testen von Java-Code mit JUnit. ÿstruktur eines Testfalls Testen von Java-Code mit JUnit ÿmotivation ÿjunit-testklassen ÿjunit-testfälle ÿstruktur eines Testfalls Henning Wolf APCON Workplace Solutions GmbH wolf@jwam.de Motivation: Werkzeugunterstützung für Tests

Mehr

Einführung in Generatives Programmieren. Bastian Molkenthin

Einführung in Generatives Programmieren. Bastian Molkenthin Einführung in Generatives Programmieren Bastian Molkenthin Motivation Industrielle Entwicklung *!!*,(% % - #$% #!" + '( & )!* Softwareentwicklung Rückblick auf Objektorientierung Objektorientierte Softwareentwicklung

Mehr

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren Mirko Seifert, DevBoost GmbH 12. November 2013, ASQF Modeling Day 2013, Nürnberg Agenda 1. Der

Mehr

Validierungssuite. SICHERHEIT 2008, Saarbrücken, 2. April 2008.

Validierungssuite. SICHERHEIT 2008, Saarbrücken, 2. April 2008. Seite 1 SICHERHEIT 2008,, 2. April 2008. BMW AG, Dr. Stefan-Alexander Schneider PMFS IT Consulting, Pierre R. Mai TÜV-Nord, Dr. Tomislav Lovric Seite 2 Agenda. Einführung in die Qualifizierung von Entwicklungswerkzeugen

Mehr

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de Beispielhaft MDSD in der Praxis Dr. Shota Okujava shota.okujava@isento.de www.isento.de Agenda Einführung Softwareentwicklungsprozess und MDSD Technologien und Werkzeuge Demo Entwicklung der Metamodelle

Mehr

Einsatz automatischer Testdatengenerierung im modellbasierten Test

Einsatz automatischer Testdatengenerierung im modellbasierten Test Einsatz automatischer Testdatengenerierung im modellbasierten Test Sadegh Sadeghipour sadegh.sadeghipour@itpower.de Gustav-Meyer-Allee 25 / Gebäude 12 13355 Berlin www.itpower.de Modellbasierte Software-Entwicklung

Mehr

Java Reflection. Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff

Java Reflection. Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff Java Reflection Meta-Programmierung mit der java.lang.reflection API. Prof. Dr. Nikolaus Wulff Java Reflection Die Java Reflection API liefert per Introspection Informationen über Klassen => Meta-Daten.

Mehr

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014

Definition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014 Definition von domänenspezifischen Sprachen mit Xtext: Einführung 19. November 2014 Überblick Was ist zu tun, wenn wir selbst einen Ansatz für modellgetriebenen Entwicklung definieren wollen? Anforderungserfassung

Mehr

Automatisiertes Testen von Prüfplätzen

Automatisiertes Testen von Prüfplätzen EXCO. The Quality Company Solutions for Industry and R&D Automatisiertes Testen von Prüfplätzen Am Beispiel einer Prüfplatz-Software stellen wir einen toolgestützten Prozess zur Erstellung der erforderlichen

Mehr

Modultest im Embedded Bereich

Modultest im Embedded Bereich Modultest im Embedded Bereich Konzept für einen Testrahmen für Rose Realtime Software Norbert Fleischmann Norbert.Fleischmann@methodpark.de Projektumfeld Rational Rose Realtime Entwicklung n Capsules n

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

Systematisches Testen von Software

Systematisches Testen von Software Programmierung Systematisches Testen von Software Markus Eckstein Systematika Information Systems GmbH Kurfürsten-Anlage 36 69115 Heidelberg markus.eckstein@systematika.com Zusammenfassung Die wichtigsten

Mehr

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

Copyright 2014 Delta Software Technology GmbH. All Rights reserved. Karlsruhe, 21. Mai 2014 Softwareentwicklung - Modellgetrieben und trotzdem agil Daniela Schilling Delta Software Technology GmbH The Perfect Way to Better Software Modellgetriebene Entwicklung Garant für

Mehr

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN

PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN PLATTFORMÜBERGREIFENDE ENTWICKLUNG MITHILFE MODELLGETRIEBENER METHODEN UND TECHNOLOGIEN Mathias Slawik, WI (M), 3. FS Aktuelle Themen der Wirtschaftsinformatik, HTW Berlin, WS 10/11 Gliederung 2 Methode

Mehr

Modellbasierte Softwareentwicklung

Modellbasierte Softwareentwicklung CD OCL OD Statechart SD Modellbasierte Softwareentwicklung 7. Evolutionäre Methodik 7.1. Vorgehensmodell Vorlesungsnavigator: Prof. Dr. Bernhard Rumpe Sprache Codegen. http://www.se-rwth.de/ Testen Evolution

Mehr

Skriptsprachen am Beispiel Python

Skriptsprachen am Beispiel Python Seminar Programmiersprachen Skriptsprachen am Beispiel Python Norman Thomas 8. Juni 2004 Überblick Was sind Skriptsprachen? Was ist Python? Python und Syntax Datentypen Kontrollstrukturen Module Ausführung

Mehr

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo)

Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Gert Bikker, Kevin Barwich, Arne Noyer Domänenspezifisch entwickeln mit UML (Vortrag mit Demo) Die Modellierung mit UML bietet auch für eingebettete Systeme viele Vorteile. Um die Vorteile effizient nutzen

Mehr

Modellgetriebene Softwareentwicklung bei der IBYKUS AG

Modellgetriebene Softwareentwicklung bei der IBYKUS AG Modellgetriebene Softwareentwicklung bei der IBYKUS AG Theorie Teil 4: Domänenspezifische Sprachen Dr. Steffen Skatulla IBYKUS AG 1 Inhalt Teil 4: Domänenspezifische Sprachen Nutzung vorhandener Sprachen

Mehr

Testfallerstellung mit wiederverwendbaren Testblöcken

Testfallerstellung mit wiederverwendbaren Testblöcken Testfallerstellung mit wiederverwendbaren Testblöcken Tricentis Accelerate 2014 Simon Müller / AMOS IT Suisse AG 1 1 Vorstellung 2 Ausgangslage Testumfeld 2012 3 Anforderungen 4 Strukturierung in Tosca

Mehr

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr.

Language Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr. Language Workbench Vortrag von:! Aktuelle Themen der Softwaretechnologie Arthur Rehm Steven Cardoso Betreut von: Prof. Dr. Reichenbach [1] !2 Index Kontext Domain Specific Language (DSL) Language Workbench

Mehr

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4. SEW Übung EMFText 1 Aufgabe Erstellen Sie eine textuelle Domänenspezifische Sprache Domain-specific Language (DSL) mit dem Werkzeug EMFText. Die Sprache soll dazu dienen Formulare (Fragen, Antworttypen

Mehr

Grenzwertanalyse. Domain-Testing. Ronny Schwierzinski, Bernd Rabe, Anna Bartwicki

Grenzwertanalyse. Domain-Testing. Ronny Schwierzinski, Bernd Rabe, Anna Bartwicki Grenzwertanalyse und Domain-Testing Ronny Schwierzinski, Bernd Rabe, Anna Bartwicki Überblick Einleitung Äquivalenzklassen Grenzwertanalyse Domain-Testing (Bereichstest) Invariant Boundaries Pfadbereichstest

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

Dr. Klaus Lamberg, Michael Beine

Dr. Klaus Lamberg, Michael Beine $6,0)DFKWDJXQJ 6LPXODWLRQV XQG7HVWPHWKRGHQI U6RIWZDUH LQ)DKU]HXJV\VWHPHQ 7HVWPHWKRGHQXQG±WRROV WRROV LQ GHUPRGHOOEDVLHUWHQ )XQNWLRQVHQWZLFNOXQJ Dr. Klaus Lamberg, Michael Beine $JHQGD Modellbasierte Funktionsentwicklung

Mehr

Qualitätsmanagement im Projekt

Qualitätsmanagement im Projekt Software-Engineering Qualitätsmanagement im Projekt Vorlesung im Wintersemester 2008/2009 Fakultät Wirtschaftsinformatik Klaus Mairon, M.Sc. Inhalte Messen und Bewerten: Metriken in der Qualitätssicherung

Mehr

Pragmatik von Programmiersprachen

Pragmatik von Programmiersprachen Pragmatik von Programmiersprachen Im Kontext der Notation von Quelltexten Mike Becker, 11. Dezember 2014 Szenario: IT Dienstleister Unternehmen: Produkte: Kunden: IT Dienstleistung Beratung und Software

Mehr

Abacus Formula Compiler (AFC)

Abacus Formula Compiler (AFC) Abacus Formula Compiler (AFC) Alle kennen Excel - jetzt sogar Ihre Java- Applikation! Bringt Tabellenkalkulationen auf die JVM http://formulacompiler.org/ Peter Arrenbrecht für Abacus Research AG http://abacus.ch/

Mehr

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell Haskell, Typen, und Typberechnung Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Ziele: Haskells Typisierung Typisierungs-Regeln Typ-Berechnung Milners

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

,$ -. "+0 *+*+ ! / -#$%$. #$%'' $ () 1 2$ #$%$! 1 2$3 )!

,$ -. +0 *+*+ ! / -#$%$. #$%'' $ () 1 2$ #$%$! 1 2$3 )! *+*+ *,$ -.! / -#$%$. #$%'' $ () "+0 *+*+ 4 *+*+ 1 2$ #$%$! 1 2$3 )! 1 *+*+ $& #$%'!' '!' 5 1! 1 4$5%! 1 63$ 1 $7$! 1 3! 1 77 8'7 1 /!$' 1 83% *+*+ 0 #$%'' '' #$%'' ''$' )%! $' #$% 5 87 $ 8$! 7$+ 1 #$%9$

Mehr

CGI Programmierung mit Ha. Markus Schwarz

CGI Programmierung mit Ha. Markus Schwarz CGI Programmierung mit Ha Markus Schwarz Überblick Was ist funktionale Programmierung Einführung in Haskell CGI-Programmierung mit Haskell Ein etwas größeres Beispiel Was ist funktionale Programm Ein Programm

Mehr

Java Generics & Collections

Java Generics & Collections Java Praktikum Effizientes Programmieren (Sommersemester 2015) Dennis Reuling Agenda 1 2 3 1 / 30 Praktikum Effizientes Programmieren (Sommersemester 2015) Java Subtyping Teil 1 2 / 30 Praktikum Effizientes

Mehr

Rapid Prototyping mit CANape Version 1.0 2010-11-22

Rapid Prototyping mit CANape Version 1.0 2010-11-22 Version 1.0 2010-11-22 Inhaltsverzeichnis 1.0 Übersicht...3 2.0 Funktionsentwicklung mit MATLAB...4 3.0 Simulink als Ablaufumgebung CANape als komfortable Bedienoberfläche...4 4.0 CANape als Ablaufumgebung...5

Mehr

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

Testplan. 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

Mehr

SOFTWARE ENGINEERING 3 TESTVORBEREITUNGEN UND UNIT-TEST

SOFTWARE ENGINEERING 3 TESTVORBEREITUNGEN UND UNIT-TEST SOFTWARE ENGINEERING 3 TESTVORBEREITUNGEN UND UNIT-TEST Gliederung 2 0. 1. 2. 3. Vorstellung Testvorbereitungen Planungsphase Definitionsphase Implementierungs-, Abnahme-und Einführungsphase Testphasen

Mehr

Vector Software. Test Automation mit VectorCAST während der gesamten Softwareentwicklung W H I T E P A P E R

Vector Software. Test Automation mit VectorCAST während der gesamten Softwareentwicklung W H I T E P A P E R Vector Software W H I T E P A P E R Test Automation mit VectorCAST während der gesamten Softwareentwicklung VectorCAST Produktfamilie Die VectorCAST Produktfamilie automatisiert Testaktivitäten über den

Mehr

Beispiele: (Funktionen auf Listen) (3) Bemerkungen: Die Datenstrukturen der Paare (2) Die Datenstrukturen der Paare

Beispiele: (Funktionen auf Listen) (3) Bemerkungen: Die Datenstrukturen der Paare (2) Die Datenstrukturen der Paare Beispiele: (Funktionen auf Listen) (3) Bemerkungen: 5. Zusammenhängen der Elemente einer Liste von Listen: concat :: [[a]] -> [a] concat xl = if null xl then [] else append (head xl) ( concat (tail xl))

Mehr

Naked-FHIR. Code-Generierung auf Basis von HL7 FHIR Andreas Schuler, MSc. Textmasterformate durch Klicken bearbeiten

Naked-FHIR. Code-Generierung auf Basis von HL7 FHIR Andreas Schuler, MSc. Textmasterformate durch Klicken bearbeiten Naked-FHIR Code-Generierung auf Basis von HL7 FHIR Andreas Schuler, MSc. HL7 Jahrestagung 2015 18. März 2015 Einführung HL7 FHIR stellt eine Reihe an Basis-Ressourcen zur Verfügung Über Zweite Conformance

Mehr

Programmiertechnik II

Programmiertechnik 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

Mehr

Softwarequalitätssicherung

Softwarequalitätssicherung Softwarequalitätssicherung Seminarvortrag Peter Winkelhane 1 Agenda Motivation Taxonomie zur Einordnung von Verfahren im Bereich kontraktbasiertem Testen Drei kontraktbasierte Verfahren Vergleich der drei

Mehr

Thomas Freitag achelos GmbH SmartCard-Workshop. 1 2012 achelos GmbH

Thomas Freitag achelos GmbH SmartCard-Workshop. 1 2012 achelos GmbH Thomas Freitag achelos GmbH SmartCard-Workshop 2012 1 2012 achelos GmbH Übersicht 1. 2. 3. 4. 5. 6. 7. Einführung / Motivation Historie des Testens Schnittstellen im Testbereich Eclipse Plugins Automatisierung,

Mehr

Modellbasiertes Testen mit Message Sequence Charts

Modellbasiertes Testen mit Message Sequence Charts 10. August 2007 Modellbasiertes Testen mit Message Sequence Charts Dr. Oscar Slotosch Inhalt Validas AG Modellbasiertes Testen Message Sequence Charts Testcodegenerierung mit MSC2C Evtl. Testen Variantenreicher

Mehr

Testen mit JUnit. Motivation

Testen mit JUnit. Motivation Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen

Mehr

Generatives Programmieren

Generatives Programmieren Generatives Programmieren Seminar Produktlinien WS03/04 Tammo van Lessen 08.01.2004 Outline Einleitung Generatoren Generatives Programmieren Fazit Einleitung Industrielle Entwicklung 1826 Austauschbare

Mehr

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008 Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen

Mehr

7HVWHQYRQ6$3$QZHQGXQJHQPLWGHP([WHQGHG &RPSXWHU$LGHG7HVW7RROH&$77

7HVWHQYRQ6$3$QZHQGXQJHQPLWGHP([WHQGHG &RPSXWHU$LGHG7HVW7RROH&$77 7HVWHQYRQ6$3$QZHQGXQJHQPLWGHP([WHQGHG &RPSXWHU$LGHG7HVW7RROH&$77 (LQOHLWXQJ Mit der SAP Testworkbench und dem Testtool ecatt können Anwender von SAP Software auf Basis des SAP Web Application Servers ab

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen. 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Testfälle und Anderes aus Modellen generieren. Dr. Martin Beißer, sepp.med gmbh

Testfälle und Anderes aus Modellen generieren. Dr. Martin Beißer, sepp.med gmbh Testfälle und Anderes aus Modellen generieren Dr. Martin Beißer, sepp.med gmbh Wozu werden UML/BPMN-Tools verwendet Graphische Darstellung von Zusammenhängen, Abläufen, Prozessen, Daten Beispiele: Prozesse

Mehr

AUTOMATISCHE TESTS GRAFISCHER BENUTZUNGSOBERFLÄCHEN

AUTOMATISCHE TESTS GRAFISCHER BENUTZUNGSOBERFLÄCHEN mehr zum thema: www.bredex.de von michael beier AUTOMATISCHE TESTS GRAFISCHER BENUTZUNGSOBERFLÄCHEN Wie können funktionale Tests von Anwendungen mit grafischer Benutzungsoberfläche automatisiert werden?

Mehr

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon Ringvorlesung Softwareentwicklung in der industriellen Praxis TU Dresden 14. Dezember 2011 Die i.s.x. Software GmbH & Co. KG Junges,

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Die freie Programmiersprache Python mit Beispielen für ihren praktischen Einsatz. Python User Group Köln www.pycologne.de

Die freie Programmiersprache Python mit Beispielen für ihren praktischen Einsatz. Python User Group Köln www.pycologne.de Die freie Programmiersprache Python mit Beispielen für ihren praktischen Einsatz Python User Group Köln www.pycologne.de Übersicht Python pycologne Anwendungsbeispiele Python Klar strukturierte Allzweck-

Mehr

Spezifikation der zulässigen Parameter. Bemerkungen: Bemerkungen: (2) Design by Contract:

Spezifikation der zulässigen Parameter. Bemerkungen: Bemerkungen: (2) Design by Contract: Spezifikation der zulässigen Parameter Bemerkungen: Bei jeder (partiellen) Funktion muss man sich überlegen und dokumentieren, welche aktuellen Parameter bei einer Anwendung zulässig sein sollen. Der Anwender

Mehr

EMF-GMF-Tutorial: Petrinet

EMF-GMF-Tutorial: Petrinet EMF-GMF-Tutorial: Petrinet Petrinet-Metamodell anlegen 1. File/New/Other: Empty EMF Project Project Name: de.upb.agengels.se.petrinet 2. Rechtsklick auf model-verzeichnis => New/Other: Ecore Diagram Domain

Mehr

Testmanagement. Q-Day. Frank Böhr Fraunhofer IESE frank.boehr@iese.fraunhofer.de

Testmanagement. Q-Day. Frank Böhr Fraunhofer IESE frank.boehr@iese.fraunhofer.de Frank Böhr Fraunhofer IESE frank.boehr@iese.fraunhofer.de Agenda Warum Testmanagement? Was sind die wichtigsten Schritte beim Testmanagement? Wie funktioniert Testmanagement Toolunterstützung Page 1/15

Mehr

Model Driven Architecture

Model Driven Architecture Model Driven Architecture Wilhelm Stephan Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Seminar Softwareentwicklung in der Wissenschaft Betreuer: Julian Kunkel SommerSemester

Mehr

Validation und Quick Fixing mit Xtend. 3. Dezember 2014

Validation und Quick Fixing mit Xtend. 3. Dezember 2014 Validation und Quick Fixing mit Xtend 3. Dezember 2014 175 Überblick Tuning der Xtext-generierten Editoren Validierung mit OCL auf der abstrakten Syntax mit Xtend auf der konkreten Syntax Quick Fixes mit

Mehr

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind

Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung. R. Gitzel, M. Schwind Ein hierarchischer, modellgetriebener Ansatz zur Codegenerierung R. Gitzel, M. Schwind Agenda! Überblick/Motivation! Hintergrund! Technische Umsetzung! Zentrale Ergebnisse 2 Überblick Ziele! Know-how-Aufbau/Stand

Mehr

Code-Erzeugung aus UML-Klassendiagrammen

Code-Erzeugung aus UML-Klassendiagrammen Dominik 09.03.2009 Universität Ulm Gessenharter Inst. f. Programmiermethodik und Compilerbau Code-Erzeugung aus UML-Klassendiagrammen Theorie und Praxis Seite 2 REConf 2009 München Dominik Gessenharter

Mehr

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Gliederung 1. Generative Programmierung 2. Möglichkeiten und Einsatzgebiet 3. Prozess / Tools 4. Zusammenfassung 19.03.2009 GENERATIVE PROGRAMMIERUNG

Mehr

Entwicklungswerkzeuge

Entwicklungswerkzeuge Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner

Mehr

Modellaustausch zwischen Steuergeräte-Entwicklungstools auf Basis einheitlicher grafischer Blockbibliotheken

Modellaustausch zwischen Steuergeräte-Entwicklungstools auf Basis einheitlicher grafischer Blockbibliotheken Modellaustausch zwischen Steuergeräte-Entwicklungstools auf Basis einheitlicher grafischer Blockbibliotheken Achim Wohnhaas, debis Systemhaus Rainer Moser, FKFS Ein Bericht aus dem MSR-Projekt MEGMA Dr.

Mehr

Testautomatisierung: Ein akademisches Thema?

Testautomatisierung: Ein akademisches Thema? Testautomatisierung: Ein akademisches Thema? Sadegh Sadeghipour sadegh.sadeghipour@itpower.de Agenda Hintergrund Testautomatisierung aus der Sicht der Industrie Testautomatisierung in der akademischen

Mehr

Unit-Test Theorie und Praxis. Stephan Seefeld, INGTES AG

Unit-Test Theorie und Praxis. Stephan Seefeld, INGTES AG Unit-Test Theorie und Praxis Stephan Seefeld, INGTES AG Inhalt Was sind Unit-Test? NUnit für.net Demo Seite 2 Quellen Für diesen Vortrag verwendete Quellen: dotnet User Group Berlin Brandenburg http://www.dotnet-berlinbrandenburg.de/

Mehr

Optimierungsstrategien beim Systemtest

Optimierungsstrategien beim Systemtest Optimierungsstrategien beim Systemtest Ein Vortrag für das 1 Das bin ich... Dipl.-Ing. (FH) Paul Huber, MBA seit 2006 Ingenieurbüro Paul Huber Requirements-Engineering Test-Engineering Geschäftsprozesse

Mehr

Ist Qualität nachrüstbar? Testen, Dokumentation und Code Qualität von Anfang an

Ist Qualität nachrüstbar? Testen, Dokumentation und Code Qualität von Anfang an Ist Qualität nachrüstbar? Testen, Dokumentation und Code Qualität von Anfang an Was ist Qualität? Definition laut EN ISO 9000:2005 Qualität wird definiert als "Grad, in dem ein Satz inhärenter Merkmale

Mehr

25. Meta-CASE-Werkzeuge

25. Meta-CASE-Werkzeuge 25. Meta-CASE-Werkzeuge Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de Version 11-1.0, 08.12.11 1) Meta-CASE-Werkzeuge 2) MetaEdit+

Mehr

Qualitätssicherung (Testen) im Application Life Cycle

Qualitätssicherung (Testen) im Application Life Cycle Qualitätssicherung (Testen) im Application Life Cycle Metriken im Test Michael Wagner Triton Unternehmensberatung GmbH www.triton.at www.tritonqs.at Copyright by Triton Technologie Consulting GmbH, all

Mehr

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 1 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell

Mehr

Programmieren I. Übersicht. Vorlesung 12. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Programmieren I. Übersicht. Vorlesung 12. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011 Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 2 Übersicht Testen ist eine der wichtigsten, aber auch eine der Zeitaufwändigsten Arbeitsschritte der Softwareentwicklung.

Mehr

SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen

SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen SL PROVISOR Automation in der Qualitätssicherung sinnvoll erhöhen Christian Langmann langmann@softwareloft.de Stefan Kohrs kohrs@softwareloft.de Oktober 2013 SoftwareLoft IT-Solutions GmbH gegründet 2004

Mehr

Entwicklungsprozesse und -werkzeuge

Entwicklungsprozesse und -werkzeuge Entwicklungsprozesse und -werkzeuge Boris Nikolai Konrad boris.konrad@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Entwicklungsprozesse Unterstützungsprozesse Kernprozess Entwicklungswerkzeuge

Mehr

Model Driven Development einige wichtige Grundprinzipien

Model Driven Development einige wichtige Grundprinzipien Model Driven Development einige wichtige Grundprinzipien Johannes Scheier j@scheier software.ch Copyright by Scheier Software Engineering Seite 1 Inhalt Was ist Model Driven Development (MDD)? Was verspricht

Mehr

Funktionales Programmieren in Python

Funktionales Programmieren in Python Wintersemester 2008/2009 1 Funktionen sind Objekte 2 lambda Funktionen 3 apply 4 map 5 zip 6 filter 7 reduce 8 List Comprehension Funktionales Programmieren Wer nicht funktional programmiert, programmiert

Mehr

Entwurf und Realisierung eines Adapters für UniLoG zur Lastgenerierung an IP-basierten Schnittstellen

Entwurf und Realisierung eines Adapters für UniLoG zur Lastgenerierung an IP-basierten Schnittstellen Entwurf und Realisierung eines Adapters für UniLoG zur Lastgenerierung an IP-basierten Schnittstellen Diplomarbeit Martin Kulas Universität Hamburg, Department Informatik Arbeitsgruppe Telekommunikation

Mehr

Codegenerierung für Mikrocontroller aus einem SimulinkModell (Schritt-für-Schritt-Anleitung)

Codegenerierung für Mikrocontroller aus einem SimulinkModell (Schritt-für-Schritt-Anleitung) Codegenerierung für Mikrocontroller aus einem SimulinkModell (Schritt-für-Schritt-Anleitung) Folgende Schritt-für-Schritt-Anleitung zeigt exemplarisch den Arbeitsablauf der CCodegenerierung für den Mikrocontroller

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

Qualität von Software und Softwaremodellen Seminar der AG Softwaretechnik im Sommer-Semester 2013

Qualität von Software und Softwaremodellen Seminar der AG Softwaretechnik im Sommer-Semester 2013 Qualität von Software Seminar der AG Softwaretechnik im Sommer-Semester 2013 Gabriele Taentzer, Thorsten Arendt Marburg, 16. April 2013 ORGANISATION (TEIL 1) 2 Thorsten Arendt: Seminar Qualität von Software

Mehr

Lars Ebrecht. Echtzeit 2011, GI VDI/VDE, Boppard 04. November 2011

Lars Ebrecht. Echtzeit 2011, GI VDI/VDE, Boppard 04. November 2011 Entwurfsverfahren Das atomare Element als Meta-Modell zur tabellarischen Verhaltensbeschreibung von Echtzeitsystemen Lars Ebrecht Echtzeit 2011, GI VDI/VDE, Boppard 04. November 2011 Echtzeitbetrieb im

Mehr

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff Die Java Stream API Funktionale Programmierung mit der Stream API des JDK 1.8 Prof. Dr. Nikolaus Wulff Funktionale Programmierung Neben der Collection API mit default Methoden ist als weitere Neuerung

Mehr

Werkzeugunterstützte Verknüpfung von Anforderungen und Tests Voraussetzung für eine systematische Qualitätssicherung

Werkzeugunterstützte Verknüpfung von Anforderungen und Tests Voraussetzung für eine systematische Qualitätssicherung Werkzeugunterstützte Verknüpfung von Anforderungen und Tests Voraussetzung für eine systematische Qualitätssicherung Dr. Sadegh Sadeghipour sadegh.sadeghipour@itpower.de Meike Lim meike.lim@itpower.de

Mehr

Andreas Lux 16.03.2010. Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse

Andreas Lux 16.03.2010. Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse Andreas Lux 16.03.2010 Verknüpfung unterschiedlicher Modellsprachen (BPMN, UML, DSL) zur Anforderungsanalyse Warum unterschiedliche Sprachen? Nicht alle Probleme eignen sich, um mit Standardsprachen beschrieben

Mehr

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis Einfach generieren Susanne Klar, Michael Klar Generative Programmierung verständlich und praxisnah ISBN 3-446-40448-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40448-1

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

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012 Einführung in modellgetriebene Softwareentwicklung 24. Oktober 2012 Überblick Was sind die Grundprinzipien der modellgetriebenen Softwareentwicklung? Entwicklung einer MDD-Infrastruktur Modellgetriebene

Mehr

DBUS Interprozess-Kommunikation für Embedded-Plattformen

DBUS Interprozess-Kommunikation für Embedded-Plattformen DBUS Interprozess-Kommunikation für Embedded-Plattformen Andreas Schwarz Neratec Solutions AG Firmenprofil Neratec Solutions AG Produkt-Entwicklungen für kundenspezifische elektronische Produkte Produkte

Mehr

Software - Testung ETIS SS05

Software - Testung ETIS SS05 Software - Testung ETIS SS05 Gliederung Motivation Was ist gute Software? Vorurteile gegenüber Testen Testen (Guidelines + Prinzipien) Testarten Unit Tests Automatisierte Tests Anforderungen an Testframeworks

Mehr

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Metamodellbasierte Codegenerierung in Java

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Metamodellbasierte Codegenerierung in Java Metamodellbasierte Codegenerierung in Java Codegenerierung Markus Völter, voelter@acm.org, www.voelter.de Codegenerierung bezeichnet die automatische Erstellung von Quelltext aus üblicherweise abstraktereren,

Mehr

O/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010

O/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010 O/R Mapper O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010 Agenda Object-relational impedance mismatch Mapping Session Abfragen No. 2 Object-relational impedance mismatch Object-relational

Mehr

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Kapitel 4 Einführung in den Scannergenerator Flex Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Generatoren für die lexikalische Analyse Scannergeneratoren werden eingesetzt um die

Mehr

SIMULINK. Grundlagen

SIMULINK. Grundlagen SIMULINK Grundlagen Dipl.-Ing. U. Wohlfarth Inhalt Was ist SIMULINK? SIMULINK Bibliotheken Sources, Sinks und Math Simulationsparameter Algorithmen zur numerischen Integration SIMULINK Bibliotheken Signals&Systems,

Mehr

Existierende Systeme I Bibliotheken & Frameworks

Existierende Systeme I Bibliotheken & Frameworks Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004 Übersicht Motivation Dynamische

Mehr