Case Tools Unterstützung für Design Pattern von Vladislav Krasnyanskiy.

Slides:



Advertisements
Ähnliche Präsentationen
Submodell Softwareentwicklung (SE)
Advertisements

Strategie (Strategy / Policy) Ein objektbasiertes Verhaltensmuster Stephan Munkelt, Stefan Salzmann - 03IN.
Kick-off: Projekt-Praktikum Model-Driven Engineering von eingebetteten Systemen Christian Fuß und Christof Mosler Lehrstuhl Informatik III,
Design-Pattern.
Harald Köbler Software Design Patterns Prototype.
Rollenbasierter Entwurf am Beispiel eines benutzeradaptierbaren Hyperbooks Institut für Informatik Rechnergestützte Wissensverarbeitung Universität Hannover.
Fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik 12 Graphics: © Alexandra Nolte,
Design Patterns- Entwurfsmuster
Zwischenbericht Projektgruppe
Bastian Cramer, Universität Paderborn Entwurfsmuster für Webanwendungen Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen.
Content-Entwicklung mit Design Patterns
Komponentenbasierter Taschenrechner mit CORBA
Cassey - Common Answer Set Evaluation sYstem Jean Gressmann Benjamin Kaufmann Robert Lenk.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 7 User Interfaces in Java Sommersemester 2003 Lars Bernard.
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
Entwicklung von Benutzerschnittstellen
Explizite und editierbare Metainformationen für Software Muster.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Test Summary: m ein Fehler pro Tag m Test First m Funktionstests.
Remote Methode Invocation (RMI)
-LABORPRAKTIKUM- SOMMERSEMESTER 2005
Folie 1 Christian Pfeffer Carsten Walther Fernstudium Informatik Matrikel LABORPRAKTIKUM- SOMMERSEMESTER 2005 Umsetzung von Pattern Muster: DECORATOR.
Software Design Patterns Extreme Programming (XP).
Software Design Patterns Creational Patterns Structural Patterns Behavioral Patterns –Behavioral Class Patterns Interpreter Template Method Pattern –Behavioral.
Dependents, Publish-Subscribe, Listener
DVG Interfaces. DVG mehrfache Vererbung 4 Mehrfache Vererbung ist die Ableitung einer Klassen von mehreren anderen Klassen. –farbigerPunkt.
Wizards & Builders GmbH Klassenbibliotheken Arbeiten mit Klassenbibliotheken in Microsoft Visual FoxPro.
UML Begleitdokumentation des Projekts
FH-Hof Adapter & Facade Pattern Richard Göbel. FH-Hof Motivation Gegeben ist eine Klasse mit vorhandenen Methoden Gefordert ist eine Klasse, die ein bestimmtes.
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 7 Sitzung 7: User Interfaces in Java.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University Client Architecture Data Model GUI KI Socket Connection.
Spieldesign Allgemein Design Patterns Kommunikation zw. Objekten
Seminar Softwaretechnik Dipl.-Inform. Susanne Jucknath-John
Eignung von Grammatik-basiertem Layout für grafische Programmiersprachen Seminar Layout-Algorithmen für Graphen Institut für Informatik Christian-Albrechts.
Zusammenfassung der Vorlesung
PPS-Design einer eigenen WWW-Homepage SS 2003 Applets.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. M. Thaller AM1: Re-usable Content in 3D und Simulationssystemen.
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
HPI Bachelorprojekt Scalable EMF Vorstellung der Designdokumente Strukturen und Abläufe 1. März 2010.
Entwurfsmuster (Software Design Patterns) Verhaltens-Entwurfsmuster
Innovator Die Komponenten.
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Enterprise Achitect (Sparx Systems) Marius Rudolf
Clean Code Software-Entwicklung als Handwerkskunst Thomas Nagel, November 2011.
22. Oktober 2007Martin Feldmann, 1 Bachelor-Thesis Entwicklung einer automatisierten Dokumentation von LabVIEW Quellcode für das Rahmenwerk.
Implementierung eines RDF Stores
Application Lifecycle Management Day 25. August 2008 Erfolgreiche Software- Entwicklung in Offshore-Projekten mit Microsoft Team Foundation Server Thomas.
© ARC Solutions GmbH All rights reserved 10. Informatik-Tag, HTWM Dipl.-Inf. Chris Hübsch, ARC Solutions GmbH EINSATZ VON DESIGN PATTERNS BEI DER.
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Software Design Patterns
Seite 1 © 2007 Dr. Schwaiger Roland VP SW-Technologien WS 2007/2008 VP Softwaretechnologien WS2007/2008 SAP GUI Pattern und Componentry Dr.
WebComposition & WCML Ein Vortrag von Michael Capper & Lars Völker.
OO Analyse und Entwurf für Anwender XII. Entwurfsmuster Dr. Michael Löwe.
Design Pattern SS 15 Prof. Albert Zündorf
XML Seminar: XP und XML 1 XP and XML Gregor Zeitlinger.
Laborpraktikum Umsetzung von Pattern SS 05 Prof. Paul, Dipl.-Inf. Fröhlich, Dipl.-Inf. Linke {paul | iti.cs.uni-magdeburg.de
MDA – Model Driven Architecture
Software Product Line Adoption
Microsoft Silverlight Autor: Christian Pirker. Inhalt Einführung Silverlight Einführung XAML Silverlight 1.0 und 1.1 Silverlight 2.0 Silverlight 3.0 Ausblick.
GAME PROGRAMMING PATTERNS – FLYWEIGHT & OBSERVER Robert Nystrom Softwaretechnologie II Teil 2 Anike Schulz.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
Patterns Entwurfsmuster - Wie spart man sich Arbeit ?
Vergleich verschiedener Kommunikationsinfrastrukturen in Enterprise Information Systems Ben Mainz Seminar am Lehrstuhl für Software Engineering RWTH Aachen.
UML und Modellierung mit ArgoUML
Dokumentenproduktion im Medienzentrum
Weasel Words Stefan Hock.
 Präsentation transkript:

Case Tools Unterstützung für Design Pattern von Vladislav Krasnyanskiy

Übersicht Einleitung Design Pattern Programmiersprachen für Design Pattern Automatische Codegenerierung für Design Pattern Fujaba

Einleitung Verbesserung der Softwarequalität durch: Entwicklungsmodelle (Wasserfallmodell) Design Pattern

Wasserfallmodell Anforderungsanalyse/V alidation Entwurf/Validation/V erifikation Implementierung/ Verifikation Test und Integration InstallationWartung Pflichtenheft Systemarchitektur Programme Beweise Testpläne Testergebnisse technische Handbücher Benutzerhandbuch

Design Pattern historischer Überblick 1977 Christopher Alexander 1987 W. Cunningham, K. Beck “Constracting Abstractions for Object- Oriented Applications” 1994 E. Gamma, R. Helm, R. Johnson and J. Vlissides, “Design Pattern: Elements of Reusable Object-Oriented Sofware”

Purpose CreationalStructuralBehavioral Scope ClassFactory MethodAdapterInterpreter Template Method ObjectAbstract Factory Builder Prototype Singleton Adapter Bridge Composite Decorator Facade Proxy Chain of Responsibility Command Iterator Mediator Memento Flyweight Observer State Strategy Visitor Design Pattern nach Gamma

Design Pattern Was ist das ? Aufbau Entwicklung

Aufbau eines Design Patterns

Entwicklung eines Design Patterns 1.Reflektion des Problems 2.Welche Struktur ist die Richtige ? 3.Motivation mit konkretem Beispiel 4.Was unterscheidet das neue Pattern von anderen und wie ergänzt es sich ? 5.Publikation des Patterns 6.Verbesserungen 7.Sammeln und Einbauen von Kommentaren

Design Pattern im Quellcode Syntaktische Variationen Variationen in der Implementierung Delokalisierung Nicht verwertbare Bauteile Variation in der Organisation der Komponenten Redundanz

Programmiersprachen für Design Pattern textorientierte Programming Language for Design Patterns (PaL) visuelle Visual Language for Design Pattern (DPML )

Beispiel für PaL 1 (Abstract Factory) GUIFactory make GUIFactory +createScrollBar(): ScrollBar +createMenu(): Menu +createButton(): Button MetalFactorySpaceFactory +createScrollBar(): MetalScrollBar +createMenu(): MetalMenu +createButton(): MetalButton +createScrollBar(): SpaceScrollBar +createMenu(): SpaceMenu +createButton(): SpaceButton structure GUIFactory class SpaceFactory inherit GUIFactory creation make creation make class GUIFactory feature createScrollBar() is … creation make feature createMenu() is … feature createScrollBar() is … feature createButton() is … feature createMenu() is … end feature createButton() is … end end class MetalFactory inherit GUIFactory creation make feature createScrollBar() is… feature createMenu() is … feature createButton() is end

Beispiel für PaL 2 (Abstract Factory) ScrollBar make ScrollBar SpaceScrollBarMetalSrollBar structure ScrollBar creation make class ScrollBar creation make... end class Metal ScrollBar inherit ScrollBar creation make... end class Space ScrollBar inherit ScrollBar creation make … end

Beispiel für PaL 3 (Abstract Factory) Menu make Menu MetalMenuSpaceMenu structure Menu creation make class Menu creation make... end class MetalMenu inherit Menu creation make... end class SpaceMenu inherit Menu creation make … end

Beispiel für PaL 4 (Abstract Factory) Button make Button SpaceButtonMetalButton structure Button creation make class Button creation make... end class MetalButton inherit Button creation make... end class SpaceButton inherit Button creation make … end

Beispiel für DPML 1 (Abstract Factory) Absrac tFactor y createOps concreteCreateOps concreteFactories concreteProducts Products Declared_In Implements RealisesDefined_In Return Type Creates Implements

Beispiel für DPML 2 (Abstract Factory) Absract Factory GUIFactory CreateOps CreateMenu createScrollBar createButton CreateOps CreateMenu createScrollBar createButton ConcreteCreateOps 6 bound elements ConcreteCreateOps 6 bound elements ConcreteFactories MetallFactory SpaceFactory ConcreteFactories MetallFactory SpaceFactory ConcreteProducts 6 bound elements ConcreteProducts 6 bound elements Products Menu ScrollBar Button Products Menu ScrollBar Button Declared_In Implements RealisesDefined_In Return Type Creates Implements

PaL vs DPML Unterschiede

PaL vs DPML Gemeinsamkeiten benutzen Design Pattern zum Modellieren. haben Patterninstanzeierung haben visuelle Elemente unterstützen Vererbung

Automatische Codegenerierung für Design Pattern 1 Entwicklerziele 1. schnelle Modifikation von Komponenten 2. hohe Flexibilität 3einfache Spezifikation Benutzerziele 1. das Tool soll als Entwicklerhilfe dienen 2. integrierte Design Pattern Eigenschaften 3. Benutzerrückkopplung

Automatische Codegenerierung für Design Pattern 2 Architektur Presenter implementiert Benutzeroberfläche (Browser) Code Generator implementiert die Pattern Mapper spezifiziert wie der Presenter und der Code Generator miteinander kooperieren

Fujaba Java-Codegenerierung aus UML -Diagrammen Generierung der Designdiagrammen aus bestehendem Java-Quellcode Forward-(4 Pattern) und Reengineering (7 Pattern)