Michael Lukas, Beate Wallner

Slides:



Advertisements
Ähnliche Präsentationen
Transaction Synchronization for XML Data in Client Server Web Applications Stefan Böttcher & Adelhard Türling Universität Paderborn.
Advertisements

Einführung in die Programmierung Zusammenfassung
PARSE.Insight Insight into issues of Permanent Access to the Records of Science in Europe P ermanent A ccess R ecords S cience E urope InsIghtInsIght
Einführung Blue J.
Änderungen bewerten Change_Request.doc Änderungen bewerten Projekt-
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
Architektur von Renardus Göttingen State and University Library, Germany (SUB) Frank Klaproth The Academic Subject.
Objektorientierte Programmierung JDK-Klassenbibliothek
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 Model View Controller Pattern.
Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich
Modulare Programmierung
Identity für GSI Michael Dahlinger, GSI
FH-Hof Singleton Pattern Richard Göbel. FH-Hof Motivation Bestimmte Klassen sollen nur ein Objekt haben Nur ein Fabrikobjekt für eine Fabrikklasse Zentraler.
Verbs in the perfect tense The perfect tense is commonly used to talk about something which has already happened I played tennis I have played tennis.
Pervasive Games fürs Dorf Bachelor-Seminar SS07 M. Mehdi Moniri Betreuer: Michael Schmitz.
Seminar Softwaretechnik Dipl.-Inform. Susanne Jucknath-John
RelationentheorieObjektorientierte Datenbanken AIFB SS Die Anbindung an Programmiersprachen (1/2) Prinzip und Zielsetzung der Sprachanbindungen.
CRM Group Mail. 2 Wenn Sie einen Newsletter senden wollen, können sie dies mit CRM Group Mail ortsunabhängig mit einen Webbrowser via Internet erledigen.
Thin Client vs. Zero Client Key Account Government 04 / 2012 Tim Riedel Welche Vorteile bieten Thin Clients gegenüber Zero Clients?
Lernziele Learn to describe yourself and others. Practice vocabulary for the quiz tomorrow! Practice listening to people describe themselves auf Deutsch!
To become – future tense – subjunctive - passive.
Business Process Model and Notation
SK R Kata SKR – Karate Symposium Mürren 2004 Workshop Dojoleiter - Schiedsrichter.
Fehlervermeidung Seminar aus Rechtstheorie und Rechtsinformatik
Barthauer on tour 2007 Darmstadt Dr. Andreas Meyer Barthauer on tour Multiplattform – Multiuser - Netzinformation leicht gemacht ?
Computeria Horgen CompuTreff 27. April 2011 Referent Fritz Opel Generation Feierabend Warum dieses Buch? Vorstellung einiger Thesen Gemeinsame Diskussion.
Ergonomie Mensch & Computer
Die nachfolgende Geschichte hat sich auf einem Flug zwischen Johannesburg und London tatsächlich ereignet.
Die nachfolgende Geschichte hat sich auf einem British Airways Flug zwischen Johannesburg und London tatsächlich ereignet !
Second City: 3D Stadtmodelle 11. Workshop am 13
Hi, ich hab hier ein neues Programm, das würde ich gern auf meinem persönlichen System installieren. Es heißt LIEBE. Was soll ich denn da als erstes.
Wer den Mund hält, wenn er merkt, dass er unrecht hat ist weise
Problemen beim Managen von Projekten:
Java Performance Tuning Performance Tuning is similar to playing a strategy game but happily you usually get paid for it.
Test Driven Development - Romano Adler-
demo Kostenlos bis 5 Benutzer Entwickelt für kleine Teams Source Control Work Item Tracking Build Automation Mehr… Support für Visual Studio.
Smalltalk-Anbieter Helge K. Nowak
Gameplay Systems I Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung SS 2012 Prof. Dr. phil. Manfred Thaller Referent: Christian Weitz.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. M. Thaller AM1: Re-usable Content in 3D und Simulationssystemen.
IT-Zertifikat Allgemeine Informationstechnologien I Dozentin: Susanne Kurz, MA Referentin: Carolin Blefgen.
Datenbankframeworks in der Cloud
Refactoring (Refaktorisierung) Seminar Programmierstil Klemens Stelzmüller WS 2002.
Guten Tag! Dienstag, den Hausaufgabe für Mittwoch den Finish Unit 2 Vocab Review Prepare Unit 3 Vocab for class.
Guten Tag! Mittwoch den Hausaufgabe für Freitag den Finish Unit 3 Vocab Review Prepare Unit 4 Vocab for class.
Objective: By the end of this lesson you should be able to talk confidently about what you have done in the past tense. Quick Starter! How do you form.
11 Führungsstile für eine nachhaltige Organisations-entwicklung
Informations-Forum: SAP Interoperabilität
EPROG Tutorium #4 Philipp Effenberger
EPROG Tutorium #5 Philipp Effenberger
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Abhängigkeiten managen mit Degraph Jens T-Systems on site services GmbH.
DER BALL DER IMMER GRÖSSER WURDE !
Dr. Menno Baumann Pädagogik bei Verhaltensstörungen/ Erziehungshilfe Wenn es keine Zukunft gibt… Perspektiven entwickeln für Menschen mit veränderten Gedächtnis-
Oracle Portal think fast. think simple. think smart. Dieter Lorenz, Christian Witt.
Funktionale Unifikations-Grammatik (FUG)  Hauptmerkmale der FUG.
Seminar Softwareproduktlinien Domänenspezifische Sprachen Sascha Draffehn von.
© Todsünden der Softwareentwicklung Die 7 Todsünden der Softwareentwicklung.
Programmierparadigmen
Spezifikation und Extraktion von Semantischen Mustern in Deutschen Gesetzen auf Basis von Linguistischen Eigenschaften unter der Verwendung von Apache.
Vorlesung Datenbankprogrammierung
11 Führungsstile für eine nachhaltige Organisationsentwicklung
Raphael Fischer Informatik II - Übung 06 Raphael Fischer
Arten von Kontrollstrukturen
Programmierung und Vererbung in Java
Es gibt Klassen, die mit der Entwicklungsumgebung ausgeliefert werden
Objects first mit BlueJ und Greenfoot
* SWD-EC-Jugendarbeiten Jugendarbeiten mit Unterstützung des
10 Führungsstile für eine nachhaltige Organisationsentwicklung
Objektorientierte Programmierung
11 Führungsstile für eine nachhaltige Organisationsentwicklung
 Präsentation transkript:

Michael Lukas, Beate Wallner Anti Pattern Michael Lukas, Beate Wallner

Inhalt Allgemeines Anti-Pattern im Projektmanagement Anti-Pattern in der Programmierung Anti-Pattern im Entwurf Sonstige Anti-Pattern

Allgemeines Negativbeispiele GoF Beschreibung + Lösungsvorschlag vor Fehlern bewahren

Anti-Pattern im Projektmanagement Smoke and mirrors Brookssches Gesetz Smoke and mirrors: eine funktion, die nicht fertig ist, wird als fertig vorgetäuscht Brookssches Gesetz: wenn die fertigstellung eines Projekts bereits schon verspätet ist, sollte man nicht noch einen Mitarbeiter hinzufügen. neuer Mitarbeiter -> mehr Zeit einzuarbeiten -> weitere Verzögerung neuer Mitarbeiter + Zeit zum einarbeiten = weitere Verzögerung

Anti-Pattern im Projektmanagement God object Objekt weiß zu viel Lösung -> Aufteilen Aufteilung nach Verantwortlichkeiten, Kapselung und Einhaltung von DesignPattern

Anti-Pattern in der Programmierung Double-Checked Locking "Der JIT-Compiler kann den Assemblercode so umsortieren, dass der Verweis auf das Helper-Objekt gesetzt wird, bevor der Konstruktor vomHelper-Objekt vollständig durchlaufen wurde."

Anti-Pattern in der Programmierung Copy and Paste Programming Fehler mitkopieren Keine Weiterentwicklung Führt oft zum Onion Pattern

Anti-Pattern in der Programmierung Onion Verständnis fehlt Angst etwas kaputt zu machen Führt wieder zum Onion Pattern!

Anti-Pattern in der Programmierung Lava Flow Folge des Onion Patterns Toter Quelltext Angst etwas kaputt zu machen

Anti-Pattern in der Programmierung Switch Statements Statt State Pattern Verhalten wird über Switch gesteuert

Anti-Pattern in der Programmierung Reservierte Wörter Datenbanken (MySQL -> Oracle)

Anti-Pattern im Entwurf Big Ball of Mud keine erkennbare Softwarearchitektur Gas factory unnötig komplex Big Ball of Mud: eine Software, die keine erkennbare Softwarearchitektur besitzt. Gas factory: Unnötige komplexe Lösungen für relative simple Probleme werden als Gas factory bezeichnet.

Anti-Pattern im Entwurf Sumo-Hochzeit stark abhängig unflexibel PL/SQL Sumo-Hochzeit: Ein Client, der unnatürlich stark abhängig von der Datenbank ist. Meiste Logik in der Datenbank in Form der datenbankeigenen Programmiersprache. ganze Architektur sehr unflexibel

Sonstige Anti-Pattern Reinventing the square wheel gute Lösungen existieren bereits Warm body Reinventing the wheel: es gibt bereits eine Lösung Warm body: eine person, die einen kleine oder gar keinen beitrag zu einem Projekt leistet

Sonstige Anti-Pattern Single head of knowledge mangelnder Austausch zwischen Kollegen wird verhindert durch Teambildung Crocodile Management auftauchen, Maul aufreißen, abtauchen single head of knowledge: eine Person besitzt als einziger das gesamte Wissen über eine Software oder ähnlichem. Das kann durch mangelnden Austausch zwischen Kollegen entstehen oder aber diese Person hat das beabsichtigt. Teambuilding-Event: die Phasen und Strukturen der Zusammensetzung von kleinen Gruppen, die unmittelbar miteinander in Kontakt treten Crocodile Management: Projektleiter nur teilweise im Projekt anwesend und kümmert sich nur um Details die der Mitarbeiter nicht erledigt hat

Vielen Dank für Ihre Aufmerksamkeit!