34. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering)
|
|
- Alexandra Günther
- vor 8 Jahren
- Abrufe
Transkript
1 34. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering) Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik Version , ) Codegenerierung 1) Beispielwerkzeuge 2) Codegenerierungstechniken 1) Schablonenbasierte Codegenerierung 3) Round-Trip Engineering SEW, Prof. Uwe Aßmann 1 Literatur Optional Völter, Stahl: Modell-Driven Software Development, AWL Prof. U. Aßmann, SEW 2
2 34.1 Codegenerierung Überführung von Modellen in Programme (Programmüberführung) CASE-Code-Generatoren SEW, Prof. Uwe Aßmann 3 Quelldiagramm Zielprogramm Graph. Modellspezifi kation UML-Diagramme SD-Modulchart (ERD, DFD,...) Textuelle Spezifi kation (OCL, UOL, UXF, PML) Stream based Model Interchange Format (SMIF) Übersetzer/Generator Zielsprache Codegerüst Spezifi kation der Zielsprache Spezifi kation des Übersetzungsvorganges, z.b. Auswahl Wurzeldiagramm, Modelltiefe, Startvariable u. a. vollständig/ lauffähig Prof. U. Aßmann, SEW 4
3 Phasen eines Code-Generators typische Werkzeuge Scanner lex, fl ex Front- Parser yacc, bison End AG-Werkzeug ELI, MAX, MUG, JastAdd, Silver Back-End (Codegenerator) Optimierergener. (Ziel- PAG, Optimix, sprachen- abhängig) Codegeneratorgenert. grgen BEG, cggg Quelldiagramm lexikalische Analyse syntaktische Analyse semantische Analyse Zwischencode Codeoptimierung Codegenerierung der kleinsten syntakt. Einheiten des Quelldiagramms (reguläre Ausdrücke) der Modellsyntax (kontextfreie Grammatiken) Prüfg. auf semantische Fehler (attributierte Grammatiken) interne Darstellg. im aktuellen Zustand (Bäume, Listen, Tabellen) Codeverbesserung (Effi zienz, Laufzeit, Speicher) Endgültige Zuordnung des Codes der Zielsprache Syntax der Eingabesprachen von Diagrammen ist meist einfacher als die höherer Programmiersprachen [20, S.153] Zielprogramm Prof. U. Aßmann, SEW 5 Schritte der Programmüberführung Dokumentation Dokumentengenerierung CASE-Tool Spezifi kation (z. B. Quelldiagramme) Single Source Quellcode- Umsetzung (Generierung) Code- Rückführung Generierter Quellcode manuelle optimierter und korrigierter Quellcode Handgeschriebener Quellcode Bearbeitung e.g., Fehlerkorrektur, Optimierung auf der Zielmaschine Prof. U. Aßmann, SEW 6
4 Single Source Prinzip Eine Single-Source-Technologie gewährleistet zu jeder Zeit an jedem Ort absolute Konsistenz zwischen Modell, Code und Dokumentation (Peter Coad, Together-CASE-Werkzeug, jetzt Borland): Vorhandensein nur einer defnierten Quelle für alle Softwareentwicklungsarbeiten einheitlicher Ausgangspunkt für Spezifkation, Quellcode und Dokumentation (einschließlich Handbücher) durch Bezeichner, Kommentare, Attribute, Markup oder ähnliches vorgegebene Struktur der Single Source Ausgangspunkt für das Round-Trip Engineering (Coderückführung) Prof. U. Aßmann, SEW 7 Arten der Programmüberführung 1. Quellcode-Umsetzung a) manuell: graphische Spezifi kation Dokumentation manuell Programmfi le b) Codeumwandlung: automatisierte Codegenerierung in eine oder auch mehrere Programmiersprachen Erzeugung von: Progr.-struktur, Bedingungen, Steuerfl uss und Datendeklarationen terminale Codeteile c) Templatebasierte Codeumwandlung: Einsetzen von Code-Fragmenten in Code-Schablonen 2. Programmvorschlag CASE-Spezifi kation zusammenhängender { Pseudocode 3. Rückführung (round-trip) des geänderten Source-Codes des Quellprogramms in die Code-Teile der CASE- Spezifi kation Prof. U. Aßmann, SEW 8
5 Beispiele SEW, Prof. Uwe Aßmann 9 Programmüberführung in SelectEnterprise Prinzip: Programmcode wird aus Objektmodell (Menge der UML-Diagramme, dominant Klassendiagramm) erzeugt Zielsprachen: C++, Java, Visual Basic, Forté, SQL, IDL Umsetzung: aus Klassendiagrammobjekten werden Codegerüste in der jeweiligen Zielsprache erzeugt bei Vollständigkeit des Modells ist lediglich Implementation der Methodenrümpfe erforderlich Returntypen, Defaultwerte, Datentypen und Kommentare werden dem Entwurfsmodell entnommen Bedienung: mit Data Type Converter unbekannte Datentypen festlegen Zielsprachenspezifi schen Generator aufrufen ( z. B. Java Synchronizer) eventuell zielsprachenspezifi sche Datentypen festlegen Codegenerierung durchführen Prof. U. Aßmann, SEW 10
6 Programmüberführung in Together Prinzip: Single-Source-Technologie durch vollautomatische Synchronisation und vollständige Konsistenz zwischen Modell, Code und Dokumentation. Zielsprachen: Java, Visual Basic, VisualBasic.Net, CORBA IDL, C++, C# Umsetzung: Multi-Language-Support durch Auswahl einer Programmiersprache(6) zu Beginn der Initialisierung eines neuen Projektes UML-Modelling Editor ist nicht nur Werkzeug für den Entwurf von UML-Spezifi kationen, sondern gleichzeitig werden diese inkrementell in die Syntax einer objektorientierten Programmiersprache überführt Synchronisation erfolgt über Parser, nicht über Repository. Bedienung: Simultanes Round-trip Engineering: Änderungen im Klassendiagramm werden unmittelbar im relevanten Source- Code angezeigt und umgekehrt Reverse Engineering existierender Projekte zeigt die darin enthaltenen Programmstrukturen auch als UML-Diagramm Programmiersprachenauswahl Prof. U. Aßmann, SEW 11 Basierend auf den Rollen: Business Modeler, Designer, Developer und Programmierer werden Sichten auf Arbeitsbereich automatisch konfi guriert(view-management). Das Einbinden von Patterns, Templates und vorgefertigten source-basierten Frameworks (Komponenten incl. EJBs) wird unterstützt. Zur Qualitätssicherung werden Metriken und Audits angeboten. Prof. U. Aßmann, SEW 12
7 Together-Arbeitsbereiche Prof. U. Aßmann, SEW Codegenerierungs-Technologien SEW, Prof. Uwe Aßmann 14
8 Trennung von handgeschriebenem und generiertem Code Kopplung mit Entwurfsmuster [Völter/Stahl] (separate Dateien, Klassenverknüpfungen wie Delegation, Vererbung, Composite, Decorator, etc) Kopplung mit Trennmarkierung /*** Grenzmarkierung ***/ Handgeschriebener Code... /*** Grenzmarkierung ***/ Weitere Prinzipien der Codeselektion Prof. U. Aßmann, SEW 15 Ein Codeselektor ist ein Transformationssystem aus Term- oder Graphersetzungsregeln, der das Ausgangsprogramm oder -modell abdeckt, also jeden Knoten und Kante aus dem Ausgangsprogramm genau einmal transformiert Einsatz Innerhalb der Zwischen- oder Assembler-Codegenerierung des Übersetzers Als Back-End von CASE-Werkzeugen Ein Codeanordner (code scheduler) ordnet Befehle für den Chip in optimierter Reihenfolge an Codeanordnung erfolgt meist nach der Codeselektion Ein Schablonen-Expandierer (template expander) generiert Code, in dem er Schablonen (templates) mit Werten aus der Programmrepräsentation oder dem Modell füllt Ein Invasiver Fragmentkompositor (invasive software composition) komponiert Schablonen unter der Berücksichtigung von Fragmenttypen (s. CBSE) Prof. U. Aßmann, SEW 16
9 Schablonenbasierte Programmüberführung (Templatebased code generation) SEW, Prof. Uwe Aßmann 17 Trennung von handgeschriebenem und generiertem Code Kopplung durch Stringexpansion Kopplung mit Kompositionsprogramm Kompositionsprogramm String-Templateexpandierer Prof. U. Aßmann, SEW 18
10 Tools für Schablonenexpansion Untypisierte Schablonen-Expansion: Frame processing (Bassett). C Holmes, A Evans. A review of frame technology. University of York, Dept. of Computer Science, String template engines. Apache Velocity. Parr's template engine StrngTemplate. Jenerator for Java Metamodel-controlled template engines Open Architecture Ware's Scripting language Invasive Softwarekomposition (siehe CBSE) Getypte Schablonen-Expansion und -erweiterung Prof. U. Aßmann, SEW 19 Xdoclet (xdoclet.sf.net) Xdoclet wandet Attribute (Metadaten) in Code um Schablonen-gesteuerte Codegenerierung Attribut- Code-Regeln Plugin Code- Schablonen Code- Attribute QDox Parser XDoclet Schablonen- Expandierer Hilfs-Code Prof. U. Aßmann, SEW 20
11 34.3 Codemodifkation und -rückführung Vorgehen der Coderückführung SEW, Prof. Uwe Aßmann 21 Aufgabe: Erkennen geänderter Code -Teile und Rückführung in die zugehörige Entwurfsspezifkation Prinzip: Die modifzierte Quellcodedatei stammt in jedem Fall aus der Single-Source- Spezifkation eines CASE-Tools, in die der geänderte Programmcode zurückgeführt werden soll Kennzeichnungen der Single Source-Spezifkation sind noch vorhanden. Strukturierung der Quellcodefles ist so, dass Abschnitte erkennbar sind und ihnen eindeutig die Objekte der Entwurfsspezifkation zugeordnet werden können, beispielsweise durch: Trennmarkierungen (-kommentare oder -attribute) zwischen den Abschnitten (Markup) wird zum Erkennen der Grenzen benutzt Vorhandensein von Code -Teilen als zielsprachenspezifsche Freiräume (hooks) Weitere Rückführinformationen gegebenenfalls aus dem Quellflekopf oder -kommentaren Bedienung: Automatisch Bei Rückführungsabweichungen erscheinen ausführliche Meldungen und Handlungshinweise für den Nutzer. Quelle: Lempp, P., Torick R. J.. Software Reverse Engineering: An Approach to Recapturing Reliable Software; 4th Ann. Joint Conf. on Softw. Quality and Productivity, Crystal City, VA, March 1-3, 1988 Prof. U. Aßmann, SEW 22
12 Beispiel-Folien Beispiel aus der Codegenerierung und -Rückführung von Fujaba: cs/rs01_t03_manuelbork_emcda2008_slides.pdf Paralleles Parsen von Template und Generat, mit Vergleich zum Aufösen der Indeterminismen der Rückführung Prof. U. Aßmann, SEW 23 The End Prof. U. Aßmann, SEW 24
31. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering)
31. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering) Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de
Mehr45. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering) 45.1 Codegenerierung. Literatur. CASE-Code-Generatoren
45. Werkzeuge zur Programmüberführung (Codegenerierung und Round-Trip Engineering) Prof. Dr. Uwe Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik http://st.inf.tu-dresden.de
Mehr30. Parser-Generatoren
30. Parser-Generatoren Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de Version 11-0.1,
MehrInstitut für Informatik Betriebliche Informationssysteme Graph-basiertes Reengineering
Graph-basiertes Reengineering Seminar Model-Driven Software Development (MDSD) Stefan Sosnicki Agenda 1. Einleitung 2. Begriffsklärung 3. Vorstellung der Werkzeuge 1. Jumli 2. Umodel 3. Fujaba 4. Vergleich
MehrPoseidon for UML. Einführung. Andreas Blunk
Poseidon for UML Einführung Andreas Blunk Gliederung 1) Editionen/Lizenzen 2) Die Programmoberfläche 3) Modelle speichern 4) Einführung am lebenden Objekt 5) Generierung (Doc & Code) 6) Funktionsumfang
Mehr43. Dokumentationswerkzeuge
43. Dokumentationswerkzeuge Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de Version
MehrOracle JDeveloper 10 g
Oracle JDeveloper 10 g Modellierung Evgenia Rosa Business Unit Application Server ORACLE Deutschland GmbH Agenda Warum Modellierung? UML Modellierung Anwendungsfall (Use Case)-Modellierung Aktivitätenmodellierung
Mehr22. Januar Gruppe 2: TOPCASED
22. Januar 2008 Aufgabenstellung Modellgetriebene Softwareentwicklung auf Basis von am Beispiel eines Seminarverwaltungssystems Ziel Entwicklungsprozess Anforderungen & Codegenerierung Modellierung & Templates
MehrDefinition Compiler. Bekannte Compiler
Compiler Inhalt: Definition Compiler / bekannte Compiler Klassifikationen von Compilern Analyse-Synthese-Modell der Kompilierung Analyse des Quellprogramms Synthesephase Die Phasen eines Compilers Symboltabellenverwaltung
MehrGrundlagen der Programmierung 3 A
Grundlagen der Programmierung 3 A Compiler A: Phasen Lexikalische Analyse; Scanner Prof. Dr. Manfred Schmidt-Schauß Sommersemester 2018 Compiler; Übersetzungsprogramme Ein Übersetzer (Compiler) ist ein
MehrEinführung. (Compiler) Prof. Dr. Oliver Braun. Letzte Änderung: :49. Einführung 1/26
Einführung (Compiler) Prof. Dr. Oliver Braun Letzte Änderung: 10.05.2017 15:49 Einführung 1/26 Ein Compiler ist ein Computerprogramm das ein Programm geschrieben in einer Sprache in ein Programm übersetzt
MehrWeb Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H)
Web Engineering-Seminar Methoden zur Web Modellierung: Object-oriented Hypermedia Method (OO-H) Dominik Kirsten Daniel Schäferbarthold Trier, 21.01.2008 1 Gliederung 1. Einführung 1.1 Anforderungen an
MehrCompiler. Einführung. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München. Letzte Änderung:
Compiler Einführung Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 10.05.2017 15:49 Inhaltsverzeichnis Ein Compiler................................... 2 Ein Compiler...................................
MehrCompiler: Einführung
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 10.05.2017 15:49 Inhaltsverzeichnis Ein Compiler................................... 2 Ein Compiler...................................
MehrEclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt
Eclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt Sören Bühler buso1011 36811 Julia Haßlinger haju1013 37141 Anja Heinzberger hean1017 36622 Agenda Allgemeines Historie
MehrInhalt. " DiaGen Historie und Beschreibung. " Architektur eines DiaGen-Editors. " Hypergraphen. " DiaGen-Editoren Komponenten
DIAGEN Sven Goeckels Seminar : Visuelle Sprachen Universität Bremen FB Informatik WS 2001/2002 Inhalt " DiaGen Historie und Beschreibung " " Hypergraphen " DiaGen-Editoren Komponenten? Modeler? Reducer?
MehrDaniela Reiner. Stuttgart,
Data driven documentation für PL/SQL Daniela Reiner Consultant daniela.reiner@trivadis.com Stuttgart, 14.05.2009 Basel Baden Bern Brugg Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg München
MehrCompilerbau für die Common Language Run-Time
Compilerbau für die Common Language Run-Time Syntax und Semantik von Programmiersprachen 2 Compilerbau Sprachbeschreibung vs. Implementierung Beschreibung: formale oder informale (engl.) Lexik, Syntax,
Mehr72. Dokumentationswerkzeuge
72. Dokumentationswerkzeuge 1 Prof. Dr. rer. nat. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden http://st.inf.tu-dresden.de Version
MehrCodegenerierung mit Xtend. 21. Januar 2015
Codegenerierung mit Xtend 21. Januar 2015 Überblick Xtend bietet einen Template-basierten Ansatz zur Codegenerierung Xtend enthält eine spezielle Template-Sprache. Das Modell kann beliebig benutzt werden,
MehrGenerischer Modellvergleich mit EMF Compare
Fakultät Informatik Hauptseminar Technische Informationssysteme SS2010 Generischer Modellvergleich mit EMF Betreuer: Dipl.-Inf. Uwe Ryssel Dresden, 16.07.2010 Gliederung 1. Motivation 2. Eclipse Modeling
MehrProgrammiersprachen und Übersetzer
Programmiersprachen und Übersetzer Sommersemester 2009 5. April 2009 Vorteile bei der Verwendung höherer Programmiersprachen Vorteile bei der Verwendung höherer Programmiersprachen 1. Einfache Notation
MehrStratego/XT und ASF+SDF Meta-Environment. Paul Weder Seminar Transformationen Datum:
Stratego/XT und ASF+SDF Meta-Environment Paul Weder Seminar Transformationen Datum: 20.01.2006 Gliederung Allgemeines ASF+SDF Meta-Environment Stratego/XT Zusammenfassung/Vergleich SDF (Syntax Definition
MehrChangelog objectif 7.0 Service Pack 3
Changelog objectif 7.0 Service Pack 3 Mit dem Service Pack 3 zu objectif haben wir wieder zahlreiche Neuerungen in objectif integriert und eine ganze Reihe von Fehlern behoben. Lesen Sie hier im Detail,
MehrWerkzeugunterstützung für UML Profiles. Verteidigung des Großen Belegs Andreas Pleuß
Werkzeugunterstützung für UML Profiles Verteidigung des Großen Belegs Andreas Pleuß Aufgabenstellung Sammlung der Anforderungen an UML Profiles Untersuchung bestehender UML-CASE-Tool Unterstützung Untersuchung
MehrModel Driven Architecture (MDA)
Model Driven Architecture (MDA) Vortrag im Fach Software Engineering II BA Mannheim / Fachrichtung Angewandte Informatik Torsten Hopp Gliederung Einleitung Motivation Grundzüge der MDA Ziele & Potenziale
MehrEs gibt keinen Algorithmus zum Schreiben eines Programms bzw. Algorithmus.
1 Einführung Programmiersprachen: Ermöglichen formale Beschreibung von Problemlösungsverfahren, die auf einem Computer oder Computersystemen ausführbar sind. Bilden die Basis zur Entwicklung von Software
MehrGenerierung von Steuerungsprogrammcode für SPS und μc aus Petri-Netz-Modellen
Fachhochschule Köln Cologne University of Applied Sciences Fakultät für Informations-, Medien- und Elektrotechnik Institut für Automatisierungstechnik Labor für Informations- und Automatisierungstechnik
MehrGrundlagen der Programmierung 3 A
Grundlagen der Programmierung 3 A Compiler A: Phasen; Scanner Prof. Dr. Manfred Schmidt-Schauß Sommersemester 2017 Compiler; Übersetzungsprogramme Ein Übersetzer (Compiler) ist ein Programm, das ein Wort
MehrÜbersetzergenerierung mit lex und yacc
Übersetzergenerierung mit lex und yacc 0. Überblick und Organisatorisches Jan Bredereke WiSe 2006/07, Universität Bremen otivation Übersetzer: Grundlegende Werkzeuge welche Fehler kann er finden? Konstrukt
MehrMDRE die nächste Generation des Requirements Engineerings
MDRE die nächste Generation des Requirements Engineerings Tom Krauß, GEBIT Solutions GmbH Copyright 2007 GEBIT Solutions Agenda Requirements Engineering heute eine Bestandsaufnahme Modell-Driven Requirements
MehrSoftware-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.
Software-Engineering 2 Entwicklungsumgebungen (IDE) IT works. Klaus Mairon www.mairon-online.de 22.03.2009 1 Entwicklungsumgebungen, CASE-Tools, CASE-Werkzeuge unterstützen den Software-Entwicklungsprozess
MehrSoftware Engineering
Software Engineering Gustav Pomberger, Wolfgang Pree Architektur-Design und Prozessorientierung ISBN 3-446-22429-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22429-7 sowie
MehrDefinitionen/Vorarbeit zum Thema Java
Definitionen/Vorarbeit zum Thema Java Programmiersprachen: System von Wörtern und Symbolen, die zur Formulierung von Programmen für die elektronische Datenverarbeitung verwendet werden. Arten: z.b. Javascript
MehrParsing SystemVerilog 2012
Parsing Julian Nagel Lehrstuhl für Rechnerarchitektur Universität Heidelberg 06.07.2016 1 2 3 Inhaltsverzeichnis 4 5 6 Viele Ideen dazu wie effektiv Hardware entwickelt werden kann, aber keine IDE welche
MehrEntwicklung eines Klassengraphen
Vortrag zur Diplomarbeit von Carsten Stocklöw Fachbereich Biologie und Informatik Johann Wolfgang Goethe - Universität 1/39 Überblick Einleitung UML Stand der Technik Konzept Implementierung Demonstration
MehrModellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion
MehrErzeugung von UML-Diagrammen
Erzeugung von UML-Diagrammen Seminar zur Softwarevisualisierung Prof. K.-P. Löhr FU-Berlin Autor: Philipp Ottlinger 2002-04-24 Zeitplan UML kurzgefasst Herangehensweisen bei der Erzeugung von Diagrammen
MehrGrundlagen der Programmierung 2 (Comp-A)
Grundlagen der Programmierung 2 (Comp-A) Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 23. Mai 2007 Compiler; Übersetzungprogramme Ein Übersetzer (Compiler) ist ein Programm,
MehrEinführung in die Modelltransformation mit Xtend
Einführung in die Modelltransformation mit Xtend 12. Dezember 2012 Taentzer Modellgetriebene Softwareentwicklung 297 Überblick Xtend: Eine statisch getypte Sprache, die zur Modellzu-Text-Transformation
MehrObjectBridge EJB Edition
ObjectBridge EJB Edition Enterprise JavaBeans (EJB) ein Begriff der im Bereich unternehmenskritischer Anwendungen mehr und mehr auf Resonanz stößt. Als serverseitige Komponentenarchitektur für den unternehmensweiten
MehrEvaluation of Database Design and Reverse Engineering Tools for a Large Software System
Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Anne Thomas TU Dresden Dr. B. Demuth Pre Press GmbH (Dresden) T. Reuter Gliederung Einleitung Vorgehensweise Kontext
MehrEinführung in das Graphical Modeling Framework. 13. November 2012
Einführung in das Graphical Modeling Framework 13. November 2012 100 Überblick Was ist der Unterschied zwischen abstrakter Syntax und konkreter Syntax? Welche Arten von graphischen Editoren gibt es? Freihandeditoren
MehrObjectBridge Java Edition
ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente
MehrMOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools
MOF Meta Object Facility Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools Überblick Object Management Group (OMG) Model Driven Architecture (MDA) Exkurs: Modelle, Metamodelle MOF Architektur
MehrGrundlagen der Programmierung 2 (Comp-A)
Grundlagen der Programmierung 2 (Comp-A) Prof. Dr. Manfred Schmidt-Schauß Künstliche Intelligenz und Softwaretechnologie 16. Juni 2011 Compiler; Übersetzungsprogramme Ein Übersetzer (Compiler) ist ein
MehrLanguages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008
Languages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008 27. Februar 2008 Institut für Softwaresysteme, TUHH Regeln: 1. Zu dieser Klausur sind keinerlei Hilfsmittel zugelassen.
MehrRapid Java wie mit Forms
DOAG Konferenz 2011 Rapid Java wie mit Forms Java aktuell: XDEV 3 ist die erste professionelle Java IDE für Rapid Application Development. Viele RAD-Funktionen und die Arbeitsweise damit erinnern sehr
MehrUML Modellierung und Model Driven Architecture (MDA) für Java mittels Rational Software Architect (RSA)
UML Modellierung und Model Driven Architecture (MDA) für Java mittels Rational Software Architect (RSA) IBM Software Group, Rational Austria 2011 IBM Corporation Agenda Was ist MDA und welche Probleme
MehrAnhang WEITERE HINWEISE ZU BORLAND TOGETHER CONTROLCENTER
Anhang WEITERE HINWEISE ZU BORLAND TOGETHER CONTROLCENTER 7.7 Einführung 7.8 Sequenzdiagramm Akteur Objekt Botschaft und Operation 7.9 Sequenzdiagramm und Kollaborationsdiagramm 7.10 Codegenerierung aus
MehrVisualDependencies Fachhochschule Köln
Campus Gummersbach Institut für Informatik Prof. Dr. Heide Faeskorn-Woyke Informatik, insbesondere Multimediadatenbanken VisualDependencies Fachhochschule Köln Institut für Informatik Prof. Dr. Heide Faeskorn-Woyke
MehrEinfach 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
MehrGrammatiken und ANTLR
Grammatiken und ANTLR Zusatzfolien zu Algo Blatt 6 Author: Henry Schaefer http://www.majeeks.de/folien_blatt6.pdf Grammatik Definition: syntaktische Beschreibung einer Sprache (H.S.) Definiton Grammatik
MehrProblemseminar ModelDrivenSoftwareDevelopment
Problemseminar ModelDrivenSoftwareDevelopment Metamodellierungswerkzeuge Björn Dassow Aufbau Definition Beschreibung Metamodellierung Kurzer Überblick über EMF, GME, MetaEdit+ Interoperabilitätsbetrachtung
MehrDirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER
Dirk Ammelburger XML Grundlagen der Sprache und Anwendungen in der Praxis HANSER r 1 Einleitung 2 1.1 Über dieses Buch 3 1.2 Für wen ist das Buch gedacht? 4 1.3 Wie ist das Buch aufgebaut? 5 1.4 Konventionen
MehrEin Design Tool für objektorientierte portable Programmierschnittstellen
Diplomarbeit Ein Design Tool für objektorientierte portable Programmierschnittstellen Vortragender: Elias Volanakis Inhalt 1. Entwurfsmuster 2. Wrapper Facade (WF) Aufgaben & Struktur Implementierung Nutzen
MehrGrundlagen von MOF. Alexander Gepting 1
Grundlagen von MOF Alexander Gepting 1 Kurzfassung Meta-Object Facility (MOF) ist ein Standard der OMG der im Rahmen der Standardisierung von Modellierungstechniken für verteilte Architekturen und Softwaresysteme
MehrEntwicklungsmethoden
Slide 5.1 Entwicklungsmethoden Prof. Dr. Josef M. Joller jjoller@hsr.ch Development Methodologies Prof. Dr. Josef M. Joller 1 Session 5 Slide 5.2 TOOLS Development Methodologies Prof. Dr. Josef M. Joller
MehrModellgetriebene 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
MehrDesign mit CASE-Tools
Geodatabase Objekt Modell Teil 2: Design mit CASE-Tools Andreas Greithanner Team Entwicklung Kranzberg 2002 ESRI Geoinformatik GmbH Agenda Was ist CASE? Entwicklung eines Datenmodells Anlegen verschiedener
MehrKompendium der Web-Programmierung
. Thomas Walter Kompendium der Web-Programmierung Dynamische Web-Sites Mit 510 Abbildungen und 22 Tabellen 4ü Springer OOM- Hinweise zum Gebrauch des Buches XIII Teil I Grundlagen der Web-Programmierung
MehrJava.NET Web-Technologien Mobile
2017 Java.NET Web-Technologien Mobile MATHEMA Training Seit mehr als 20 Jahren unterstützen wir unsere Kunden nicht nur mit hochqualifizierter Beratung sowie Entwicklungsleistung, sondern geben unser in
MehrSoftware- und Systementwicklung
Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm
MehrEinfü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
Mehrab EUR >TimeLine Developer//
ab 1.800 EUR >TimeLine Developer// www.timeline.info >Überblick// TimeLine Developer ist eines der produktivsten Rapid- Application-Development- Tools für Datenbankanwender. Gegenüber Visual Studio steigert
MehrArtem Eger. Build-Systeme in java Maven & ANT
Artem Eger Build-Systeme in java Maven & ANT Gliederung (1) Motivation und Überblick (2) Bauen mit Ant (3) Praxisbeispiel Ant (4) Bauen mit Maven (5) Praxisbeispiel Maven (6) Ausblick 2/31 (1) Motivation
MehrSoftware-Engineering im Sommersemester 2014
Methodische Grundlagen des Software-Engineering SS 2014 Vorlesung Methodische Grundlagen des Software-Engineering im Sommersemester 2014 Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl
MehrDiagen. Vortrag im Seminar Visuelle Sprachen. Wolfgang Machert. Betreuer: Dr. Berthold Hoffmann. Universität Bremen
Vortrag im Seminar Visuelle Sprachen Wolfgang Machert Universität Bremen - 01.07.2004 Betreuer: Dr. Berthold Hoffmann Diagram Generator...... enthält einen Generator der aus einer formalen Sprachspezifikation
MehrCompiler; Übersetzungsprogramme. Grundlagen der Programmierung 3 A. Compiler für Programmiersprachen. Phasen eines Compilers
ompiler; Übersetzungsprogramme Grundlagen der Programmierung 3 A ompiler A: Phasen; Scanner Prof. Dr. Manfred Schmidt-Schauß Sommersemester 2017 Ein Übersetzer (ompiler) ist ein Programm, das ein Wort
MehrDesktop-Wikis am Beispiel von TiddlyWiki
am Beispiel von TiddlyWiki Edgar Fast Edi Hoffmann Community FreieSoftwareOG kontakt@freiesoftwareog.org 6. September 2017 Was ist ein Wiki? 2 / 14 Was ist ein Wiki? Ein Wiki, auch WikiWiki und WikiWeb
MehrOracle SQL Developer Data Modeling
Oracle SQL Developer Data Modeling DOAG Regio Rhein-Neckar Oracle Deutschland GmbH The following is intended to outline our general product direction. It is intended for information
MehrEINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.
EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG
MehrEinführung Compilergenerierung Bewertung Referenzen. SableCC. Benjamin Daeumlich
06.07.2006 Gliederung 1 2 3 4 . Autor und Name Features Autor Autor und Name Features Autor: Étienne Gagnon : Teil seiner Masterarbeit an der McGill-Universität Montreal vom März 1998 Name Autor und Name
MehrMDA-Praktikum, Einführung
MDA-Praktikum, Einführung Prof. Dr. Peter Thiemann Universität Freiburg 02.11.2005 Was ist MDA? MDA = Model-Driven Architecture Initiative der OMG Object Management Group: CORBA, UML,... offenes Firmenkonsortium
MehrADDISON-WESLEY PUBLISHING COMPANY
Jens-Peter Redlich CORBA 2.0 Praktische Einführung für C++ und Java Mit einem Geleitwort von Richard Mark Soley ADDISON-WESLEY PUBLISHING COMPANY Bonn Reading, Massachusetts Menlo Park, California New
MehrIntegration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess
Integration von Model-Driven Development und formaler Verfikation in den Softwareentwicklungsprozess Eine Fallstudie mit einem 3D-Tracking-System Dipl.-Inform. Christian Ammann Fachhochschule Osnabrück
MehrEclipse und EclipseLink
Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als
MehrInterpreter - Gliederung
Institut für Informatik Ludwig-Maximilian Universität Interpreter - Gliederung Programmiersprache Syntax Konkrete Syntax Abstrakter Syntax Baum (Abstrakte Syntax) Parser Syntaktische Struktur einer Sprache
MehrDirk Reinemann Working Student Sales Consulting
JDeveloper 12c in 30 Minutes Dirk Reinemann Working Student Sales Consulting Program Agenda 1. Integrated Development Environment 2. Java Development 3. Web Development 4. Team Development 5. Application
MehrTransformations. Die API des Oracle Datamodeler. Dr. Gudrun Pabst. Trivadis GmbH Lehrer-Wirth-Straße München.
Transformations Die API des Oracle Datamodeler Dr. Gudrun Pabst Trivadis GmbH Lehrer-Wirth-Straße 4 81829 München gudrun.pabst@trivadis.com BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG
MehrSoftware 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
MehrDer Parsergenerator BTRACC2
Der Parsergenerator BTRACC2 Uwe Erdmenger pro et con Innovative Informatikanwendungen GmbH 11. Workshop Software-Reengineering 04.-06. 06. Mai 2009, Bad Honnef Eigenschaften von Legacy-Quellcode Sprachen
MehrCompiler für f r Eingebettete Systeme (CfES)
Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick
MehrGrundlagen des Software Engineering
Gustav Pomberger und Günther Blaschek Grundlagen des Software Engineering Prototyping und objektorientierte Software-Entwicklung Mit 101 Abbildungen Technische Universität Darmstadt FACHBEREICH INFORMATIK
MehrDWH Automation - Steigerung von Qualität, Effektivität und Transparenz in der DWH Implementierung und dem Betrieb. Referent: Raphael Henneke
DWH Automation - Steigerung von Qualität, Effektivität und Transparenz in der DWH Implementierung und dem Betrieb Referent: Raphael Henneke Agenda 10.00 10.30 Begrüßung & aktuelle Entwicklungen bei QUNIS
MehrGATE General Architecture for Text Engineering. Alexander Hein & Erik Dießler (VL Text Analytics - 08.05.2008)
GATE General Architecture for Text Engineering Alexander Hein & Erik Dießler (VL Text Analytics - 08.05.2008) Überblick GATE Die Idee Die Architektur Was noch - JAPE / DIFF / GUK ANNIE Einige Beispiele
MehrMustersuche in Quellcode
Mustersuche in Quellcode Komponentenbasierte Softwareentwicklung 13.07.2005 Peter Schübel 1 Gliederung 1. Vorstellung des Projekts InPulse 2. Design Patterns 1. Idee 2. Beispiele 3. Referenzsystem World
MehrWhiteStarUML 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/
MehrImplementierung eines LR-Parser-Generators mit syntaktischen Prädikaten
Implementierung eines LR-Parser-Generators mit syntaktischen Prädikaten Aufgabenbeschreibung 29. Juli 2011 1 Einleitung und Motivation Der Parser-Generator Antlr [Par07] bietet die Möglichkeit, die Auswahl
MehrAnalyse und Entwurf von Softwaresystemen mit der UML
Analyse und Entwurf von Softwaresystemen mit der UML Bearbeitet von Horst A. Neumann 2. Auflage 2002. Buch. XVI, 480 S. Hardcover ISBN 978 3 446 22038 6 Format (B x L): 17,7 x 24,5 cm Gewicht: 1049 g Zu
MehrVerybench: grafisches Frontend für Testwell CMT++ Code Complexity Measures Tool
Verybench: grafisches Frontend für Testwell CMT++ Code Complexity Measures Tool Testwell CMT++ ist ein von der finnischen Firma Testwell Oy (www.testwell.fi) entwickeltes konsolenbasiertes Werkzeug zur
MehrNative Queries Datenbankabfragen in reinem Java. Carl Rosenberger Chief Software Architect, db4objects Inc. Java Forum Stuttgart 2006, 6.
Native Queries Datenbankabfragen in reinem Java Carl Rosenberger Chief Software Architect, db4objects Inc. Java Forum Stuttgart 2006, 6. Juli 2006 1 Herkömmliche Datenbankabfragen sind nicht objektorientiert
MehrModellbasierte Software- Entwicklung eingebetteter Systeme
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS Folie
MehrMotivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen
Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung
MehrLangzeitarchivierungsaspekte. im Dokumentenlebenszyklus
Document Engineering Langzeitarchivierungsaspekte im enlebenszyklus Motivation Disziplin der Computer Wissenschaft, welche Systeme für e aller Formen und Medien erforscht. enlebenszyklus en Management
MehrEin Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen
Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung
MehrContinuous Delivery mit Orcas
Deployment von Oracle- Datenbanken in agilen Projekten Dr. Olaf Jessensky Senior Consultant OPITZ CONSULTING Deutschland GmbH DOAG Regionaltreffen Südbayern, München, 03.12.2015 OPITZ CONSULTING Deutschland
Mehropenarchitectureware
openarchitectureware Enrico Schnepel EAS, FHTW-Berlin 07.06.2007 2007 (CC by-nc-sa 2.0 Germany) Enrico Schnepel ( EAS, FHTW-Berlin ) openarchitectureware 07.06.2007 1 / 26 Gliederung 1 Einleitung 2 Begriffsdefinitionen
Mehr