Anti-Patterns. Zuverlässige Software SS2009 Friedrich Gensicke

Größe: px
Ab Seite anzeigen:

Download "Anti-Patterns. Zuverlässige Software SS2009 Friedrich Gensicke"

Transkript

1 Anti-Patterns Zuverlässige Software SS2009 Friedrich Gensicke

2 Gliederung 1. Einführung Was sind Anti Patterns? Unterschiede Design Pattern Anti Pattern Grundursachen Klassifizierung 2. Anti Patterns in der Software-Entwicklung 3. In der Software-Architektur 4. Im Projektmanagement 5. Zusammenfassung Anti-Pattern Friedrich Gensicke 2

3 Was sind Anti-Patterns? Einführung und Motivation Wie sollte man es nicht machen? Beschreibt eine Lösung zu einem Problem, die negative Folgen hat Gründe: zu wenig Wissen, geringe Erfahrung, falsches Muster, Besteht aus: Symptome, Konsequenzen, Lösungsvorschlag Anti-Pattern Friedrich Gensicke 3

4 Unterschiede zu Design-Pattern Einführung und Motivation Design Patterns geben Lösung zu Problem an Anti Patterns geben bessere Lösung zu geg. Lösung an Anti-Pattern Friedrich Gensicke 4

5 Grundursachen Einführung und Motivation Liegen in der Natur des Menschen Eile Teilnahmslosigkeit Engstirnigkeit Faulheit Geiz Ignoranz Hochmut Anti-Pattern Friedrich Gensicke 5

6 Klassifikation Einführung und Motivation Grundlage sind unterschiedliche Sichtweisen Entwickler: Programmierung Architekt: Struktur des Systems Manager: Organisation der Entwicklung Anti-Pattern Friedrich Gensicke 6

7 Anti-Patterns in der Software-Entwicklung Anti-Pattern Friedrich Gensicke 7

8 Cut-And-Paste Programming Starke Verbreitung Ähnlicher Code überall in Software zu finden Wenig erfahrene Programmierer Effiziente Code-Produktion Schlechte Dokumentation wieder verwendbarer Komponenten Neue Technologien Anti-Pattern Friedrich Gensicke 8

9 Cut-And-Paste Programming Konsequenzen Fehlerverteilung durch Cut-And-Paste Aufblähung von Reviews Keine Standardlösung zur Fehlerbehebung extreme Steigerung der Wartungskosten Anti-Pattern Friedrich Gensicke 9

10 Cut-And-Paste Programming Lösungsvorschlag Organisation des Codes in Bibliotheken Schritte des Refactoring: 1. Aufsuchen der ähnlichen Code-Segmente 2. Erstellen einer Standardversion 3. Einführung Konfigurationsmanagement Vorbeugende Maßnahmen Anti-Pattern Friedrich Gensicke 10

11 TheBlob Die Gott-Klasse Funktionalität liegt bei EINER Klasse Klassendiagramm: Eher bei prozeduralem Design auftretend Häufig Konsequenz iterativer Entwicklung Ungenutzter Code Lava-Flow AP Hauptgrund: fehlende OO-Architektur Anti-Pattern Friedrich Gensicke 11

12 TheBlob Die Gott-Klasse Konsequenzen Klasse ist Ansammlung verschiedenartiger Funktionen und Attribute geringe Kohäsion Fehlendes OO-Design: Klasse enthält main- Loop und sämtliche Funktionalität Zu komplex für Wiederverwendung und Testen Speicherplatzverschwendung Anti-Pattern Friedrich Gensicke 12

13 TheBlob Die Gott-Klasse Lösungsvorschlag Funktionalität auslagern kleine Klassen einbeziehen 1. Identifizieren und Katalogisieren der Funktionen 2. Ermitteln der richtigen Position und Klasse 3. Indirekte Assoziationen zwischen Klassen entfernen Anti-Pattern Friedrich Gensicke 13

14 Lava Flow Code Leichen Lava-ähnliche Entwicklungsstränge, die im System verbleiben Hauptsächlich in Forschungsprojekten Oft keine Erinnerung bei Entwicklern Teuer zu analysieren, Ressourcen verschwendend Anti-Pattern Friedrich Gensicke 14

15 Lava Flow Code Leichen Gründe Code aus F&E ohne Konfigurationsmanagement übernommen Einzelne Entwickler schreiben den Code Keine Architektur-getriebene Entwicklung Unkontrollierte Verteilung von unfertigem Code Anti-Pattern Friedrich Gensicke 15

16 Lava Flow Code Leichen Konsequenzen Undokumentierte, komplexe, wichtig aussehende Funktionen und Klassen Auskommentierter Code, to be replaced Ungenutzter Code Nicht möglich zu dokumentieren oder zu verstehen Anti-Pattern Friedrich Gensicke 16

17 Lava Flow Code Leichen Lösungsvorschlag Erstellung einer Architektur vor Implementierung (keine Änderungen) Überwachung der Umsetzung Versionskontrollsysteme Reengineering der Systemarchitektur Grundlage für Analyse Anti-Pattern Friedrich Gensicke 17

18 Anti-Patterns in der Software-Architektur Anti-Pattern Friedrich Gensicke 18

19 Architecture-By-Implication Fehlende Architektur bei Systemen unter Entwicklung Verzicht auf Grund von erfahrenen Architekten Architekturdefinitionen fehlen häufig in allen Bereichen Refactoring nach der Entwicklung Anti-Pattern Friedrich Gensicke 19

20 Architecture-By-Implication Konsequenzen Versteckte Risiken in Größe, Technologie und Komplexität Probleme erst spät im Projekt Mögliches Scheitern durch Schlechte Performanz Ausschweifende Komplexität Missverstandene Anforderungen Unkenntnis von neuen Technologien Anti-Pattern Friedrich Gensicke 20

21 Architecture-By-Implication Lösungsvorschlag Erstelle eine Architekturdefinition! Autor empfiehlt Methode nach GQM iterativer Prozess Vor allem bei neuen Technologien und Anforderungen Ständige Verfeinerung auch während der Entwicklung Anti-Pattern Friedrich Gensicke 21

22 Anti-Patterns im Software-Projektmanagement Anti-Pattern Friedrich Gensicke 22

23 Corncob - Quertreiber Corncob nach OMG allgemein schwierige Menschen Destruktives Verhalten Machtspielchen, Mobbing Nicht an der eigentlichen Arbeit interessiert Management unterstützt Corncobs unbewusst Verhärtete Fronten Anti-Pattern Friedrich Gensicke 23

24 Corncob Quertreiber Symptome und Konsequenzen Keine Entwicklungsfortschritte Corncob oftmals im Projektteam niemandem direkt untergeordnet Fehlender Entscheidungsfindungsprozess Anti-Pattern Friedrich Gensicke 24

25 Corncob Quertreiber Lösungsvorschlag Taktische Lösungen: Verantwortlichkeit verteilen Operative Lösungen: Individuelles Interview Freundliche Versetzung Strategische Lösungen: Die Corncob-Gruppe Leere Abteilung Rauswurf Anti-Pattern Friedrich Gensicke 25

26 Zusammenfassung und Bewertung Möglichkeit Probleme anhand der geg. Symptome zu entdecken Ursache der Probleme meist unbekannt Liefern dazu passende Lösungen durch Refactoring Können Scheitern von Software-Projekten verhindern Kenntnisse über Anti Patterns können Probleme vorbeugen Sensibilisierung Anti-Pattern Friedrich Gensicke 26

27 Literatur AntiPatterns Refactoring Software, Architectures and Projects in Crisis William J. Brown et al., 1998 Entwurfsmuster Elemente wiederverwendbarer objektorientierter Software Erich Gamma et al., 2004 Anti-Pattern Friedrich Gensicke 27

28 Vielen Dank für die Aufmerksamkeit! Anti-Pattern Friedrich Gensicke 28

How To Design Software

How To Design Software Bad Designs und ihre Konsequenzen Seminar Software-Entwurf B.Sc. Sebastian Intas WS 2004/05 Gliederung Motivation Einordnung Hauptursachen AntiPatterns AntiPatterns vs. Patterns AntiPattern-Schablone Perspektiven

Mehr

- Antipatterns - der Softwareentwicklung. Tanja Brockmeier

- Antipatterns - der Softwareentwicklung. Tanja Brockmeier - Antipatterns - der Softwareentwicklung Tanja Brockmeier Antipatterns Definition Antipatterns: sind eine häufige wiederkehrende Lösungen, die fehlerhaft sind und Merkmale mit sich bringen, die unerwünscht

Mehr

Die 7 Todsünden der Softwareentwicklung Sascha Kohlmann 7 Todsünden der Softwareentwicklung

Die 7 Todsünden der Softwareentwicklung Sascha Kohlmann 7 Todsünden der Softwareentwicklung Die 7 Todsünden der Softwareentwicklung Die christlichen Todsünden Die christlichen 7 Todsünden gehen auf Evagrius Ponticus zurück Mönch im 4. Jahrhundert n. Chr. Ursprung 8 Dämonen: Völlerei, Unkeuschheit,

Mehr

Softwaretechnik 2015/2016

Softwaretechnik 2015/2016 Softwaretechnik 2015/2016 PST Lehrstuhl Prof. Dr. Matthias Hölzl HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME PST Joschka PROF. DR. Rinke WIRSING 14. JUNI 2009 VORNAME NAME AGENDA Übung 11: 14.01.2016 Schon

Mehr

Verhaltensmuster. Entwurfsmuster - Design Patterns. HAW Hamburg Fakultät Technik und Informatik Department Informations- und Elektrotechnik

Verhaltensmuster. Entwurfsmuster - Design Patterns. HAW Hamburg Fakultät Technik und Informatik Department Informations- und Elektrotechnik Entwurfsmuster - Design Patterns HAW Hamburg Fakultät Technik und Informatik Department Informations- und Elektrotechnik 27. November 2009 Gliederung 1 Einführung 2 Strategie-Muster 3 Beobachter-Muster

Mehr

Software Engineering

Software Engineering Literatur Gliederung Software Engineering Herbert Kuchen Universität Münster Di+Fr 14:15-15:45, M2 Wintersemester 2009/2010 1 Literatur Gliederung Basis-Literatur H. Balzert: Lehrbuch der Software-Technik,

Mehr

Methoden der agilen Softwareentwicklung für eingebettete Systeme

Methoden der agilen Softwareentwicklung für eingebettete Systeme Seminarvortrag Methoden der agilen Softwareentwicklung für eingebettete Systeme Lisa Krause Aachen, 27.01.2010 Inhaltsübersicht Motivation Einführung in die Softwaretechnik - Ziele - Traditionelle Prozessmodelle

Mehr

2 Softwarearchitektur in der Organisationsstruktur 25

2 Softwarearchitektur in der Organisationsstruktur 25 xiii Teil I Grundlagen und Organisation 1 1 Grundlagen 3 1.1 Warum Softwarearchitektur?.............................. 4 1.2 Was ist Softwarearchitektur?.............................. 6 1.2.1 Definition

Mehr

7. Zusammenfassung (1)

7. Zusammenfassung (1) Typisierung in OO-Sprachen Subtyping vs. Subclassing Untertypen für Typkonstrukte Funktionsuntertypen und Überschreiben Generik Einsatz von Vererbung konzeptioneller Entwurf: Abstraktion Spezialisierung

Mehr

Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase)

Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase) Software-Engineering Grundlagen des Software-Engineering 7 Implementierungsphase (Programming Phase) Prof. Dr. Rolf Dornberger Software-Engineering: 7 Implementierungsphase 27.04.2006 1 7 Implementierungsphase

Mehr

Notationen zur Prozessmodellierung

Notationen zur Prozessmodellierung Notationen zur Prozessmodellierung August 2014 Inhalt (erweiterte) ereignisgesteuerte Prozesskette (eepk) 3 Wertschöpfungskettendiagramm (WKD) 5 Business Process Model and Notation (BPMN) 7 Unified Modeling

Mehr

Entwurfsmuster Design Patterns by Erich Gamma et al.

Entwurfsmuster Design Patterns by Erich Gamma et al. Entwurfsmuster Design Patterns by Erich Gamma et al. Detlef Streitferdt Technische Universität Ilmenau TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Entwurfsmuster 1 Frühe Muster Christopher Alexander

Mehr

Kleine Refactoring-Muster

Kleine Refactoring-Muster Diplomarbeitsvortrag Kleine Refactoring-Muster Marko Schulz ms@datenreisender.de http://datenreisender.de/da/ Überblick 0 Wieso? (davor) Fragen Muster Was sind Muster? Muster in der Softwaretechnik Refactorings

Mehr

Jochen Ludewig Horst Lichter. Software Engineering. Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag

Jochen Ludewig Horst Lichter. Software Engineering. Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag Jochen Ludewig Horst Lichter Software Engineering Grundlagen, Menschen, Prozesse, Techniken dpunkt.verlag Inhaltsverzeichnis 1 Modelle und Modellierung 1.1 Modelle, die uns umgeben 1.2 Modelltheorie 1.3

Mehr

m a r k u s r a a b d a p r ä s e n t a t i o n

m a r k u s r a a b d a p r ä s e n t a t i o n d i p l o m p r ä s e n t a t i o n z u m t h e m a Der Produktionsprozess in der Spieleentwicklung und eine mögliche Optimierung durch den Einsatz von Design Pattern t h e m e n w a h l - Projekt im Berufspraktikum

Mehr

Software Engineering

Software Engineering Software Engineering Grundlagen, Menschen, Prozesse, Techniken von Jochen Ludewig, Horst Lichter 1. Auflage Software Engineering Ludewig / Lichter schnell und portofrei erhältlich bei beck-shop.de DIE

Mehr

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung Reisebeschreibung Zielpublikum Fallbeispiel...

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung Reisebeschreibung Zielpublikum Fallbeispiel... Vorwort..................................................... 13 Kapitel 1 Einleitung......................................... 15 1.1 Reisebeschreibung............................ 18 1.2 Zielpublikum.................................

Mehr

Architekturrefactorings

Architekturrefactorings Architekturrefactorings Henrik Holle Universität Bremen holle@tzi.de Abstract Architekturrefactorings sind semantikerhaltende Transformationen, welche die Architektur der Software verbessern. Im Gegensatz

Mehr

Corporate Governance

Corporate Governance Corporate Governance Corporate Governance bezeichnet die Umsetzung aller Strukturen und Regeln, die sich ein Unternehmen selbst auferlegt hat oder die ihm vom Gesetzgeber vorgegeben werden. Zudem umfasst

Mehr

Design Patterns (dt. Entwurfsmuster)

Design Patterns (dt. Entwurfsmuster) Design Patterns (dt. Entwurfsmuster) Michael Svoboda 25. Mai 2007 Ein fortgeschrittener bzw. erfahrener Softwareentwickler hat oftmals während der Analyse eines Problems bei der Erstellung eines Entwurfs

Mehr

ISO 9001:2015 Prozessorientierte IT-Lösungen als Schlüsselfaktor. [[ Projekt GESINE ]] AristaFlow GmbH. Jürgen Huhle, 02.12.2015

ISO 9001:2015 Prozessorientierte IT-Lösungen als Schlüsselfaktor. [[ Projekt GESINE ]] AristaFlow GmbH. Jürgen Huhle, 02.12.2015 ISO 9001:2015 Prozessorientierte IT-Lösungen als Schlüsselfaktor Jürgen Huhle, 02.12.2015 AristaFlow GmbH Inhalt Fokus ISO 9001:2015 Prozessmanagement Risikomanagement Wissensmanagement GESINE Jürgen Huhle,

Mehr

Reengineering und Refactoring von Softwarearchitekturen

Reengineering und Refactoring von Softwarearchitekturen Methodische und Praktische Grundlagen der Informatik 3 Reengineering und Refactoring von Softwarearchitekturen Steffen Helke Technische Universität Berlin Fachgebiet Softwaretechnik WS 2008/2009 Lernziele?

Mehr

Der Rational Unified Process

Der Rational Unified Process Philippe Kruchten Der Rational Unified Process Eine Einführung Deutsche Übersetzung von Cornelia Versteegen An imprint of Pearson Education München Reading, Massachusetts Menlo Park, California New York

Mehr

Entwurfsmuster. Tao Zhang Technische Universität München Lehrstuhl für Angewandete Softwaretechnik

Entwurfsmuster. Tao Zhang Technische Universität München Lehrstuhl für Angewandete Softwaretechnik Entwurfsmuster Tao Zhang Technische Universität München Lehrstuhl für Angewandete Softwaretechnik Information über Entwurfsmuster Die heutige Vorlesung: Einführung in die Thematik Die Vorlesung am 12.01:

Mehr

22. Januar Gruppe 2: TOPCASED

22. Januar Gruppe 2: TOPCASED 22. Januar 2008 Aufgabenstellung Modellgetriebene Softwareentwicklung auf Basis von am Beispiel eines Seminarverwaltungssystems Ziel Entwicklungsprozess Anforderungen & Codegenerierung Modellierung & Templates

Mehr

Inhaltsverzeichnis. Teil I Grundlagen 1

Inhaltsverzeichnis. Teil I Grundlagen 1 xv Teil I Grundlagen 1 1 Modelle und Modellierung 3 1.1 Modelle, die uns umgeben.................................. 3 1.2 Modelltheorie........................................... 5 1.3 Ziele beim Einsatz

Mehr

Realität zu modellieren eine

Realität zu modellieren eine Objektorientierung Objektorientierung ist zunächst einmal eine Möglichkeit, Realität zu modellieren dem menschlichen Denken ähnliche Art, an Probleme heran zu gehen Objektorientierung ist eine Vorgehensweise

Mehr

- Agile Programmierung -

- Agile Programmierung - Fachhochschule Dortmund Fachbereich Informatik SS 2004 Seminar: Komponentenbasierte Softwareentwicklung und Hypermedia Thema: - - Vortrag von Michael Pols Betreut durch: Prof. Dr. Frank Thiesing Übersicht

Mehr

Specifying Patterns for Dynamic Pattern Instance Recognition with UML 2.0 Sequence Diagrams. Lothar Wendehals. Universität Paderborn

Specifying Patterns for Dynamic Pattern Instance Recognition with UML 2.0 Sequence Diagrams. Lothar Wendehals. Universität Paderborn Specifying Patterns for Dynamic Pattern Instance Recognition with UML 2.0 Sequence Diagrams Lothar Wendehals 6. Workshop Software-Reengineering Bad Honnef, 3. - 5. Mai 2004 Motivation Unterstützung des

Mehr

WEBCAMPUS FÜR IHR UNTERNEHMEN

WEBCAMPUS FÜR IHR UNTERNEHMEN WEBCAMPUS FÜR IHR UNTERNEHMEN Das E-Learning-System, das den Mittelstand versteht Speziell auf die Belange mittelständischer Unternehmen zugeschnitten bietet WebCampus die ideale Plattform für Ihre Lerninhalte.

Mehr

Software Engineering

Software Engineering Jochen Ludewig Horst Lichter Software Engineering Grundlagen, Menschen, Prozesse, Techniken 3., korrigierte Auflage dpunkt.verlag Teil i Grundlagen 1 1 Modelle und Modellierung 3 1.1 Modelle, die uns umgeben

Mehr

Model Driven Development im Überblick

Model Driven Development im Überblick Model Driven Development im Überblick Arif Chughtai Diplom-Informatiker (FH) www.digicomp-academy, Seite 1 September 05 Inhalt Motivation Überblick MDA Kleines Beispiel Werkzeuge www.digicomp-academy,

Mehr

Überarbeitung der auf www.zoll.de zur. Verfügung gestellten Informationen zum. BWZ Münster

Überarbeitung der auf www.zoll.de zur. Verfügung gestellten Informationen zum. BWZ Münster Überarbeitung der auf www.zoll.de zur Verfügung gestellten Informationen zum BWZ Münster - Projektmanagement - Gliederung 1. Initialisierung 1.1 Projektidee 1.2 Konzeptplanung 2. Definitionsphase 2.1 Projektteam

Mehr

Reduzierung der Komplexität gewachsener Unternehmensarchitekturen (EAs)

Reduzierung der Komplexität gewachsener Unternehmensarchitekturen (EAs) Reduzierung der Komplexität gewachsener Unternehmensarchitekturen (EAs), Martin Pluchator (Volkswagen AG) David Wille, Ina Schaefer (TU Braunschweig) Inhaltsverzeichnis 1. Was? 2. Warum? 3. Wie? 2 Inhaltsverzeichnis

Mehr

Agile Softwareentwicklung

Agile Softwareentwicklung Agile Softwareentwicklung Werte, Konzepte und Methoden von Wolf G Bleek, Hennig Wolf 1. Auflage Agile Softwareentwicklung Bleek / Wolf schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG

Mehr

Der agile Software Architekt

Der agile Software Architekt Der agile Software Architekt Ingmar Kellner 2013-09-25 Agil == Beweglich == Zur Handlung Fähig Source: http://de.wiktionary.org/wiki/agil Gegebene Versprechen schränken meine Agilität ein! 2013, hello2morrow

Mehr

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des

Mehr

IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten Kaiserslautern, WS 2008/2009 Dr. Gerhard Pews

IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten Kaiserslautern, WS 2008/2009 Dr. Gerhard Pews IT-Projektmanagement Teil 2: Der Gegenstand von SW-Projekten Kaiserslautern, WS 2008/2009 Dr. Gerhard Pews Der Fahrplan durch die Vorlesung Inhalte Einführung Das Was : Der Gegenstand von Softwareprojekten

Mehr

Remote Methode Invocation (RMI) ETIS SS05

Remote Methode Invocation (RMI) ETIS SS05 Remote Methode Invocation (RMI) ETIS SS05 Motivation Ablauf der Kommunikation Erstellung Remote-Service Zusammenfassung Gliederung 2 Motivation I RMI: Remote Method Invokation Möglichkeit verteilte Java-Anwendungen

Mehr

Data Warehousing. DWH Projekte. Ulf Leser Wissensmanagement in der Bioinformatik

Data Warehousing. DWH Projekte. Ulf Leser Wissensmanagement in der Bioinformatik Data Warehousing DWH Projekte Ulf Leser Wissensmanagement in der Bioinformatik Inhalt DWH Projekte Spezifika Die kritischen Punkte Warum scheitern DWH Projekte? Ulf Leser: Data Warehousing, Vorlesung,

Mehr

Komponentenbasierter

Komponentenbasierter Komponentenbasierter Taschenrechner mit CORBA Silke Kugelstadt Torsten Steinert Inhalt Motivation Demonstration des Taschenrechners Grobarchitektur Implementierung des Clients Implementierung der Komponenten

Mehr

11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / 2009 1. Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung

11/2009 Bernhard Gangl. Steuerungen mit OOP entwickeln 11 / 2009 1. Themenübersicht. Übersicht und Begriffsklärung: Objektorientierte Programmierung Reduzierung der Engineeringzeiten und kosten durch objektorientierte Steuerungsprogrammierung 11/2009 Bernhard Gangl www.sigmatek-automation.com Steuerungen mit OOP entwickeln 11 / 2009 1 Themenübersicht

Mehr

Orchestrator. IT-Paradigmenwechsel im Zeitalter des Cloud Computing. Mohammad Esad-Djou, Solution Architect OPITZ CONSULTING Deutschland GmbH

Orchestrator. IT-Paradigmenwechsel im Zeitalter des Cloud Computing. Mohammad Esad-Djou, Solution Architect OPITZ CONSULTING Deutschland GmbH Orchestrator IT-Paradigmenwechsel im Zeitalter des Cloud Computing Mohammad Esad-Djou, Solution Architect OPITZ CONSULTING Deutschland GmbH Mainz, 06. Juni 2013, DOAG 2013 IM Community Summit Agenda Problemstellung

Mehr

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter Prof. Dr. Dr. h.c. Manfred Broy Sommersemester Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter Einführung in die Softwaretechnik Übung 6: Feinentwurf Aufgabe 17: Entwurfsmuster

Mehr

Programmiermethodik Vorlesung und Praktikum SS 2001

Programmiermethodik Vorlesung und Praktikum SS 2001 Vorlesung und Praktikum SS 2001 Prof. Dr. W. Effelsberg, G. Kühne, Ch. Kuhmünch Universität Mannheim 1. Einführung 1-1 Inhalt 1. Einführung, Vorstellung der Programmieraufgabe 2. Der Software-Entwicklungszyklus

Mehr

Software Engineering. Fakultät Elektrotechnik Bachelor-Studiengänge, 4. Semester Prof. Dr.-Ing. Dagmar Meyer

Software Engineering. Fakultät Elektrotechnik Bachelor-Studiengänge, 4. Semester Prof. Dr.-Ing. Dagmar Meyer Fakultät Elektrotechnik Bachelor-Studiengänge, 4. Semester Vorausgesetzte Kenntnisse Allgemeine Kenntnisse aus dem Bereich der Softwareentwicklung - Programmierkenntnisse (Java, C) - Beherrschung der notwendigen

Mehr

a. Was tut das Tier, welches beobachtbare und messbare Verhalten führt es aus?

a. Was tut das Tier, welches beobachtbare und messbare Verhalten führt es aus? 1. Beobachten Sie das Zielverhalten und definieren Sie es operational. a. Was tut das Tier, welches beobachtbare und messbare Verhalten führt es aus? 2. Identifizieren Sie die entfernten und die unmittelbaren

Mehr

BACnet - Compare Intrinsic and Algorithmic Reporting DE 2006-12-06.doc Page 1 / 17. BACnet

BACnet - Compare Intrinsic and Algorithmic Reporting DE 2006-12-06.doc Page 1 / 17. BACnet BACnet - Compare Intrinsic and Algorithmic Reporting DE 2006-12-06.doc Page 1 / 17 BACnet Vergleich Intrinsic und Algorithmic Reporting - Die Sicht des Projektingenieurs - Version: DE 1.00 Autor: Uwe Haeseler

Mehr

Wettbewerb. Computer creative Wettbewerb...

Wettbewerb. Computer creative Wettbewerb... Wettbewerb Computer creative Wettbewerb... Version 2.0 Projektleiter/in: Lamies Abbas Datum: 18.03.2018 Inhalt 1 Projektpläne... 3 1.1 Kurzbeschreibung des Projekts... 3 1.2 Projektauftrag... 4 1.3 Projektzieleplan...

Mehr

Ziele und Tätigkeiten von Architekten

Ziele und Tätigkeiten von Architekten Ziele und Tätigkeiten von Architekten Definition Software Architektur o A software architecture provides a model of a whole software system that is composed of internal behavioral units (i.e. components)

Mehr

Agile Development vs. Security Requirements

Agile Development vs. Security Requirements Agile Development vs. Security Requirements Mirco Stickan Agenda Motivation Agile Softwareentwicklung extreme Programming Scrum Sicherheit in agiler Softwareentwicklung Sicherheit in extreme Programming

Mehr

Zustandsdiagrammeditor Pflichtenheft, Version 3.0

Zustandsdiagrammeditor Pflichtenheft, Version 3.0 Zustandsdiagrammeditor Pflichtenheft, 3.0 14.04.2011 Autor: Dennis Kotzold, Henry Trobisch Status: vor Bestätigung Inhaltsverzeichnis Zielbestimmung... 2 Musskriterien... 2 Wunschkriterien... 2 Abgrenzungskriterien...

Mehr

LASTENHEFT. Copyright Michael Rattun 1

LASTENHEFT. Copyright Michael Rattun 1 LASTENHEFT v Projekt: Syntax Tool Autor: Michael Rattun Home: www.mrattun.de Letzte Änderung: 27.10.2011 Copyright Michael Rattun 1 Lastenheft: Syntax Tool Inhaltsverzeichnis Inhaltsverzeichnis 1. Einführung

Mehr

Model-View-Controller

Model-View-Controller Software Design Pattern Model-View-Controller Michael Lühr Gliederung Einführung und Problemstellung Ansatz durch MVC Detaillierte Darstellung der Komponenten Model View Controller Vor- und Nachteile Zusammenfassung

Mehr

Prozesse Last oder Lust?

Prozesse Last oder Lust? Prozesse Last oder Lust? Definitionen, Vorteile, Ansätze Hugo Beerli, Lead QA-Engineer www.bbv.ch bbv Software Services Corp. 1 Agenda Prozessarten Erwartungen an Prozesse Zeitlicher Ablauf Einige Prozesse

Mehr

Web 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) 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

Mehr

1.3.3 Der naive Optimismus der Jugend oder»wir können es übers Wochenende schaffen!« Die»Start-Up-c-Mentalität von Gründungsuiiternehmen

1.3.3 Der naive Optimismus der Jugend oder»wir können es übers Wochenende schaffen!« Die»Start-Up-c-Mentalität von Gründungsuiiternehmen Inhaltsverzeichnis Vorwort 13 1 Einführung 21 1.1 Die Definition des»himmelfahrtskommandos«... 22 1.2 Kategorien von Himmelfahrtskommandos 25 ].3 Wie kommt es zu Himmelfahrtskommandos?... 28 1.3.1 Politik,

Mehr

Objektorientierte Systementwicklung

Objektorientierte Systementwicklung Karl-Heinz Rau Objektorientierte Systementwicklung Vom Geschäftsprozess zum Java-Programm Mit 162 Abbildungen vieweg Überblick und Vorbemerkungen 1 1 Objektorientierte Software-Entwicklung 5 1.1 Überblick

Mehr

Einführung in das Google Web Toolkit am Beispiel eines Projektes aus der Verkehrstelematik

Einführung in das Google Web Toolkit am Beispiel eines Projektes aus der Verkehrstelematik Einführung in das Google Web Toolkit am Beispiel eines Projektes aus der Verkehrstelematik Fachhochschule Aachen - WS 11/12 Seminararbeit im Bachelorstudiengang Scientific Programming Sebastian Schilling

Mehr

Ein Blick auf die Grid-Architektur

Ein Blick auf die Grid-Architektur Ein Blick auf die Grid-Architektur Christian Grimme (TU Dortmund) Workshop: Virtuelle Forschungsumgebungen aufbauen mit D-Grid 1 Einführung - Grid Das Grid ist ein übergreifender oder globaler Zusammenschluss

Mehr

Vortrag Iterative Prozessmodelle/SCRUM

Vortrag Iterative Prozessmodelle/SCRUM Vortrag Iterative Prozessmodelle/SCRUM von Marcus Hörger 1 Übersicht Einleitung Prozess Der Software-Entwicklungsprozess Prozessmodelle Lineare Prozessmodelle Das Phasenmodell Iterative Prozessmodelle

Mehr

Entwurfsmustern in der industriellen Praxis. Erfahrungen mit. Bayave Software GmbH. Dirk Riehle

Entwurfsmustern in der industriellen Praxis. Erfahrungen mit. Bayave Software GmbH. Dirk Riehle Erfahrungen mit Entwurfsmustern in der industriellen Praxis Dirk Riehle Bayave Software GmbH Entwurfsmuster Definition: Abstraktion von wiederkehrenden Problemlösungen in bestimmtem Kontexten Rechte vorbehalten.

Mehr

Objektorientierte und Funktionale Programmierung SS 2014

Objektorientierte und Funktionale Programmierung SS 2014 Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten

Mehr

Re-Engineering: Test-First-Ansatz. Dr. Thorsten Arendt Marburg, 17. Dezember 2015

Re-Engineering: Test-First-Ansatz. Dr. Thorsten Arendt Marburg, 17. Dezember 2015 Re-Engineering: Test-First-Ansatz Dr. Thorsten Arendt Marburg, 17. Dezember 2015 Re-Engineering Patterns [Demeyer et al.] 2 Software-Evolution WS 2015/2016 Überblick Probleme Wie ändert man Teile eines

Mehr

MBT RAT Risk Assessment Tool Maschinenrichtlinie 2006/42/EG kostenlose Risi

MBT RAT Risk Assessment Tool Maschinenrichtlinie 2006/42/EG kostenlose Risi MBT RAT Risk Assessment Tool Maschinenrichtlinie 2006/42/EG kostenlose Risikobeurteilungsvorlage frei verfügbar im Internet als MS Excel 2010 Datei / 26 Warum? Maschinenhersteller müssen eine Risikobeurteilung

Mehr

Potentiale modellgetriebener Softwareentwicklung

Potentiale modellgetriebener Softwareentwicklung Model Driven Software Development Potentiale modellgetriebener Softwareentwicklung Referent: Hartwig Tödter Seite 2 / 23 Inhaltsverzeichnis 1. Grundideen modellgetriebener Softwareentwicklung 2. Vorteile

Mehr

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering mit Übungen. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering mit Übungen Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering 2 Organisation Ort: Seminarraum 05.002, Spiegelgasse 5 Ablauf: 15:15 Vorlesung Prüfung: Schriftlich,

Mehr

Lehrbuch der Objektmodellierung

Lehrbuch der Objektmodellierung Heide Balzert Lehrbuch der Objektmodellierung Analyse und Entwurf mit CD-ROM Technische Universität Darmstadt FACHBEREICH INFORMATIK BIBLIOTHEK Inventar-Nr.: Sachgebiete: Standort: Tt Spektrum Akademischer

Mehr

Refactoring Transformationen. Martin Freund Januar 2003 Seminar Refactoring in extreme Programming AG Kastens Universität Paderborn

Refactoring Transformationen. Martin Freund Januar 2003 Seminar Refactoring in extreme Programming AG Kastens Universität Paderborn Refactoring Transformationen Martin Freund bbl@upb.de Januar 2003 Seminar Refactoring in extreme Programming AG Kastens Universität Paderborn Gliederung 1. Transformationen-Übersicht 2. Beispiel: Methode

Mehr

Vorstellung. Wie entsteht Architektur in Scrum

Vorstellung. Wie entsteht Architektur in Scrum Vorstellung Thema Architektur - Begriffsdefinition Eine Architektur (vοn griechisch αρχή = Anfang, Ursprung und lateinisch tectum = Haus, Dach) beschreibt in der Informatik im Allgemeinen das Zusammenspiel

Mehr

Die Wissensgebiete der Simulationstechnik Durak, U., Gerlach, T.

Die Wissensgebiete der Simulationstechnik Durak, U., Gerlach, T. Die Wissensgebiete der Simulationstechnik Durak, U., Gerlach, T. Dr.Umut Durak DLR Institute of Flight Systems Workshop der ASIM/GI-Fachgruppen STS und GMMS Ulm, 9. Und 10. März 2017 DLR.de Chart 2 Body

Mehr

Programmieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)

Mehr

Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software (Programmer's Choice) Click here if your download doesn"t start automatically

Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software (Programmer's Choice) Click here if your download doesnt start automatically Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software (Programmer's Choice) Click here if your download doesn"t start automatically Entwurfsmuster: Elemente wiederverwendbarer objektorientierter

Mehr

SIRIUSsap Instandhaltung und IT mit Weitblick

SIRIUSsap Instandhaltung und IT mit Weitblick SIRIUS Consulting & Training AG D-65795 Hattersheim am Main Tel. +49 (0) 6190 936810 Fax: +49 (0) 1805 5224346 www.sirius-consult.com SIRIUSsap Instandhaltung und IT mit Weitblick Workshop zur Instandhaltung

Mehr

Softwareentwicklung: Variablen, Risiken, wirtschaftliche Gesichtspunkte. Jens Müller TU-Dresden

Softwareentwicklung: Variablen, Risiken, wirtschaftliche Gesichtspunkte. Jens Müller TU-Dresden Softwareentwicklung: Variablen, Risiken, wirtschaftliche Gesichtspunkte TU-Dresden Variablen: Überblick Kosten (Personal, Material) Zeit (Projektdauer) Qualität (z.b. Funktionalität, Zuverlässigkeit) Leistungsumfang

Mehr

Modellgetriebene Softwareentwicklung. Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg

Modellgetriebene Softwareentwicklung. Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg Modellgetriebene Softwareentwicklung Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg Organisation der LV Umfang: 6 SWS, 9 ECTS Punkte Veranstalter: Gabriele Taentzer, Daniel Strüber Kontakt:

Mehr

Refactoring von Legacy Systemen. Jochen Winzen jochen.winzen@andrena.de andrena objects ag

Refactoring von Legacy Systemen. Jochen Winzen jochen.winzen@andrena.de andrena objects ag Refactoring von Legacy Systemen Jochen Winzen jochen.winzen@andrena.de andrena objects ag Was ist ein Legacy System Ein Legacy System hat folgenden Eigenschaften: + Besitzt die geforderte Funktionalität

Mehr

15.02.2012. Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware

15.02.2012. Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware Unterschiede in der Implementierung einer Software mit Datenbankanbindung in Java bzw. PHP am Beispiel einer Zeiterfassungssoftware 15.02.2012 einer Zeiterfassungssoftware Kurz zu mir Jana Bittner Auszubildende

Mehr

Strukturierte Entwicklung von APEX- Anwendungen

Strukturierte Entwicklung von APEX- Anwendungen Strukturierte Entwicklung von APEX- Anwendungen Dr. Gudrun Pabst Trivadis GmbH BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN Vorgehen Strukturiertes

Mehr

Software Engineering. Produktivitätsfaktoren! Kapitel 18

Software Engineering. Produktivitätsfaktoren! Kapitel 18 Martin Glinz Thomas Fritz Software Engineering Kapitel 18 Produktivitätsfaktoren 2007-2013 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

Virtuelle und physische Welt kombinieren

Virtuelle und physische Welt kombinieren Virtuelle und physische Welt kombinieren Innovationen bei Siemens Presse- und Analysten-Event 8. Dezember 2015 Norbert Gaus, Corporate Technology siemens.com/innovationen Siemens-Lösungen verbinden Digitalisierung

Mehr

Nicolai Josuttis. SOA in der Praxis. System-Design für verteilte Geschäftsprozesse. dpunkt.verlag

Nicolai Josuttis. SOA in der Praxis. System-Design für verteilte Geschäftsprozesse. dpunkt.verlag Nicolai Josuttis SOA in der Praxis System-Design für verteilte Geschäftsprozesse dpunkt.verlag Vorwort ix 1 Motivation 1 1.1 Kennzeichen großer Systeme 3 1.2 Das Märchen vom»magischen Bus«5 1.3 Was man

Mehr

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Softwareentwicklungsprozess im Praktikum. 23. April 2015 Softwareentwicklungsprozess im Praktikum 23. April 2015 Agile Softwareentwicklung Eine agile Methodik stellt die beteiligten Menschen in den Mittelpunkt und versucht die Kommunikation und Zusammenarbeit

Mehr

Lösungen zum Test objektorientierter Software

Lösungen zum Test objektorientierter Software Lösungen zum Test objektorientierter Software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14. März 2013 HOM/FHTeL Lösungen zum Test objektorientierter Software

Mehr

IT-Projektmanagement

IT-Projektmanagement IT-Projektmanagement Prof. Dr. Walter Ruf FH Sigmaringen 1 2 Vorgehensmodelle in IT-Projekten 2.1 Grundlagen für Vorgehensmodelle 2.2 Sequentielle Vorgehensmodelle 2.3 Inkrementelles Vorgehensmodell 2.4

Mehr

Software Engineering. 5. Architektur

Software Engineering. 5. Architektur Software Engineering 5. Architektur Gliederung Vorlesung Einführung V-Modell XT Analyse und Anforderungsmanagement Benutzungsoberflächen Architektur Entwurf Entwurfsmuster Persistenz Implementierung Konfigurationsmanagement

Mehr

modellzentrierter Test

modellzentrierter Test modellzentrierter Test Systematisierung und Effizienzsteigerung durch den Einsatz von Modellen E. Herzog, G. Klebes, F. Prester sepp.med GmbH MDSD Today 2008, Über uns Metamethoden für innovative Software-

Mehr

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Überblick 1.Einfürung in die Multi-Tier Architektur 2.Ausgangspunkt und Probleme 3.Rundgang durch die Architektur 4.Architektur

Mehr

Einführung in die objektorientierte Programmierung

Einführung in die objektorientierte Programmierung Einführung in die objektorientierte Programmierung Seminarunterlage Version: 4.04 Copyright Version 4.04 vom 17. Juni 2016 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten.

Mehr

Entwurfsmuster. Marc Monecke

Entwurfsmuster. Marc Monecke Entwurfsmuster Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 20. Mai 2003 Inhaltsverzeichnis 1 Grundlagen

Mehr

DOORS Schema IBM Rational DOORS Start-Up Training - Teil 3

DOORS Schema IBM Rational DOORS Start-Up Training - Teil 3 DOORS Schema IBM Rational DOORS Start-Up Training - Teil 3 Inhalt: Anforderungen an ein Schema Design eines Schemas Schrittweises Vorgehen Strukturierung und Design der Daten in DOORS Voraussetzung für

Mehr

Agile Methoden. David Tanzer. Oliver Szymanski

Agile Methoden. David Tanzer. Oliver Szymanski Agile Methoden David Tanzer Oliver Szymanski Ziel von Softwareentwicklung Anforderungen zuverlässig und effizient in lauffähige Software verwandeln. Ziel von Softwareentwicklung Bedürfnisse des Kunden

Mehr

Softwareprozessmodelle

Softwareprozessmodelle Softwareprozessmodelle jung@cncgmbh.eu Definition Software Engineering The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that

Mehr

6. PRINCE2-Tag Deutschland 2011. Erfolgsfaktoren für Projekt Audits

6. PRINCE2-Tag Deutschland 2011. Erfolgsfaktoren für Projekt Audits 6. PRINCE2-Tag Deutschland 2011 Erfolgsfaktoren für Projekt Audits Robert Düsterwald, Deutsche Post DHL Leiter des DIIR-Arbeitskreises Projekt Management Revision 12. Mai 2011 1 Referent ROBERT DÜSTERWALD,

Mehr

Komponentenbasierter Taschenrechner mit CORBA

Komponentenbasierter Taschenrechner mit CORBA Komponentenbasierter Taschenrechner mit CORBA Silke Kugelstadt Torsten Steinert Inhalt Motivation Demonstration des Taschenrechners Grobarchitektur Implementierung des Clients Implementierung der Komponenten

Mehr

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II Rational Unified Process (RUP) Informationswirtschaft II Rational Unified Process (RUP) Wolfgang H. Janko, Michael Hahsler und Stefan Koch Inhalt Historische Entwicklung Kennzeichen von RUP Lebenszyklus und Phasen Arbeitsabläufe Das

Mehr