Software Engineering. Sommersemester 2012, Dr. Andreas Metzger
|
|
- Sara Marielies Maurer
- vor 7 Jahren
- Abrufe
Transkript
1 Software Engineering (Übungsblatt 5) Sommersemester 2012, Dr. Andreas Metzger Übungsblatt-Themen: Rollenverteilung in der Softwareentwicklung; Rolle des Testers; Prinzip der Strukturierung; Softwarearchitektur; Entwurfsmuster 1
2 Aufgabe 5.1 Bei der Softwareentwicklung werden einzelne Rollen unterschieden. a) Nennen Sie die wesentlichen Merkmale einer Rolle. Nennen Sie mindestens 4 Merkmale. Rolle = Menge von zusammengehörigen Aufgaben und Befugnissen (oft auch notwendige Qualitfikationen) z.b. Projektleiter Eine Rolle wird von Personen wahrgenommen ( Instanzierung einer Rolle mit Personen) Eine Person kann mehrere Rollen einnehmen (z.b. eine Person ist gleichzeitig Projektleiter und Anforderungsanalytiker) Eine Rolle kann von mehreren Personen eingenommen werden (Person X und Y sind Systemarchitekten im Projekt A) Nicht in jeder Softwareentwicklung treten alle Rollen auf (z.b. besitzt die Software-Entwicklung eines Mail- Clients in einem 3-Personen-Team nicht zwingend einen Prozessingenieur. b) Unterschiedliche Rollen in einem Projekt müssen nicht zwingend von unterschiedlichen Personen wahrgenommen werden. Erläutern Sie anhand eines Beispiels, welche Probleme auftreten können, wenn eine Person mehrere Rollen einnimmt. Komplettes Scheitern: Die Projektleitung könnte beispielsweise überfordert sein, Organisationsstrukturen nicht richtig funktionieren und das gesamte Projekt und Team letztendlich komplett scheitern Termin-/Kostenprobleme: Der Arbeitsaufwand könnte zu groß sein um von einer Person bewältigt zu werden Termin- und Budgetüberschreitung c) Erklären Sie die Ziele und die Aktivitäten folgender Rollen: 1) Projektmanager 2) Qualitätsmanager 3) Spezifizierer 4) Anforderungsanalytiker 1) Projektmanager:!! Übergreifend über alle Phasen des Projekts!!!!! Trifft wesentliche Entscheidungen!!!!! Verantwortlich für erfolgreiche Projektdurchführung!!!!! Projektorganisation- und -koordination!!!!! (Team und Infrastruktur)!!!!! Kostenschätzung und Planung!!!!! Erstellung eines Projektplans!!!!! Kontrolle des Projektes (Produktverfolgung,!!!!! Planüberprüfung, Produktaktivitätsüberwachung)!!!!! 2
3 2) Qualitätsmanager:!! Alle Tätigkeiten, zur Sicherstellung der Qualität von!!!!! Prozessen und Produkten (Qualitätsplanung: quality!!!! planning, Qualitätslenkung/-steuerung: quality!!!!! control, Qualitätssicherung: quality assurance),!!!!! Qualitätsprüfung: quality inspection )!!!!!!! Qualitätsanforderungen an das Produkt festlegen und!!!!! gegebenenfalls nicht zufriedenstellende Ergebnisse!!!!! beseitigen!!!!! Alle QM-Tätigkeiten stehen in enger!!!!! Wechselbeziehung zueinander 3) Spezifizierer:!!! Strikte Beschreibung des Verhaltens, der Daten und der!!!!! Funktionen des Systems (D.h. implementierungsnahe!!!!! Spezifikationen der Anforderungen an das!!!!! Softwaresystem technische Anforderungen )!!!!! Modellierung/Beschreibung der Anforderungen aus!!!!! Implementierungssicht (Kommunikation mit!!!!! Designer und Programmierer)!!!!! Definition der Qualitätsanforderungen an das!!!!! Softwaresystem!!!!! Vorbereitung der Qualitätssicherung: Dokumentation!!!!! von Abnahmekriterien und Anwendungsfällen,!!!!! Definition von Testdesigns 4) Anforderungsanalytiker:! Erhebung, Dokumentation und Überprüfung von!!!!! Anforderungen an das System ( Frühe Phase der!!!!! Produktentwicklung)!!!!! Ermitteln und Erkennen von ( Benutzer-)!!!!! Anforderungen: Ist-,Soll-Analyse; Modellierung des!!!!! Soll-Systems unter verschiedenen Sichten!!!!! Machbarkeitsstudie: Bewertung der Ist- und Soll-!!!!! Analyseergebnisse!!!!! Aufgabe 5.2 Das Ziel des Testers ist die Ausführung des Systems zum Auffinden von Hinweisen auf Fehler. a) Erklären Sie ob die folgende Aussage korrekt ist: Testen kann die Abwesenheit von Fehlern garantieren. Abwesenheit von Fehlern kann durch Testen NICHT garantiert werden! Es können immer wieder Fälle auftreten, die von einem Testfall nicht berücksichtigt wurden und zu Fehlern führen. Zudem ist ein komplettes Softwaresystem zu komplex. 3
4 b) Erklären Sie die Aktivitäten der Rolle Tester. Testen bezeichnet jede einzelne (im Allgemeinen stichprobenartige) Ausführung des Testobjekts 1) Unter spezifizierten Bedingungen (Eingaben, Vorbedingungen etc.) 2) Zum Zweck des Überprüfens der (beobachteten) Ergebnisse (Ausgaben, Nachbedingungen etc.) oder im Hinblick auf gewisse gewünschte (erwartete) Eigenschaften Testen ist eine Kontrollfunktion im Software-Entwicklungsprozess (sie umfasst NICHT die Fehlersuche und Fehlerkorrektur) c) Nennen Sie drei Arten von Software-Tests. Modultest: Isoliertes Testen einzelner Module (Komponenten) benötigt oft zusätzliche Software (Testumgebung) kann schon früh (parallel zur Entwicklung) durchgeführt werden Gewährleistet, dass bei bspw. Integrationstests die einzelnen Module korrekt sind Integrationstest: Testen des Zusammenspiels von Komponenten (die von unterschiedlichen Personen/ Abteilungen/Firmen entwickelt wurden) Sicherstellen, dass die Komponenten zusammenpassen und die gewünschte Funktionalität bzw. Qualität erfüllen Wird in der Regel stufenweise durchgeführt werden Systemtest: Testen der Systemfunktionalität, -benutzbarkeit und -qualität, d.h. tut das System das was es tun soll Integration mit externen Systemen Akzeptanztest (alpha test): Testet, ob der Kunde das System akzeptiert Dabei werden oft Missverständnisse bzw. in der Spezifikation fehlende Anforderungen aufgedeckt Installationtest/ Feldtest: Testet das System in der Umgebung des Kunden Prüft bspw. korrekte Interaktion mit anderen Systemen Abnahmetest (beta test): Dient meist zur Endabnahme des Systems vom Kunden Nach erfolgreichem Abnahmetest gilt das Projekt als abgeschlossen 4
5 Aufgabe 5.3 Das Prinzip der Strukturierung führt zu verschiedenen Sichten auf die Architektur eines Software-Systems. Eine Sicht beschreibt die Komponenten und die Beziehungen zwischen diesen Komponenten. a) Erklären Sie kurz diese Komponenten und Beziehungen - Sicht. Komponente: Abgeschlossene Einheit; Explizite Definition von Leistungen: Ex- und Import Beziehung: Leistungen geliefert (Export)...Leistungen bezogen (Import); Häufig: Grafische Notation (Bsp. UML) b) Nennen Sie zwei Typen von Beziehungen zwischen Komponenten. Erklären Sie den Unterschied zwischen diesen beiden Beziehungstypen. Relation benutzt : Ein Objekt M1 benutzt ein Objekt M2, wenn M2 benötigt wird, damit M1 seine Dienste erbringen kann. Die benutzt -Relation enspricht dem Aufruf einer Operation, die vom aufgerufenen Objekt/Modul angeboten wird Relation ist_bestandteil_von : Beschreibt Verfeinerungen zwischen Komponenten, also beispielsweise eine Komponente 1, welche die Komponenten 1.1, 1.2,1.3 und 1.4 beinhaltet. In diesem Fall ist Komponente 1.1 ist ein Bestandteil der Gesamtkomponente 1. c) Nennen Sie die drei Bestandteile einer Kontraktspezifikation ( Design by Contract ). Geben Sie für jeden Bestandteil an, ob sich dieser auf die Beziehungen zu anderen Komponenten oder die Komponente selbst bezieht. Kontrakte = Verträge basierend auf Diensten, die zwischen zwei Akteuren vereinbart werden Spezifikation eines Kontrakts besteht aus der Definition von exportierten Diensten, den Erwartungen an importierte Dienste und den inneren Werten, die diese Dienste implementieren exportierte Dienste:bezieht sich auf die Komponente selbst Erwartungen an importierte Dienste: Bezieht sich auf andere Komponenten innere Werte, die implementiert werden: Bezieht sich auf die Komponente selbst 5
6 Aufgabe 5.4 In einer typischen Softwarearchitektur wird eine Anforderung oft durch viele Komponenten realisiert, wobei eine Komponente meistens mehrere Anforderungen realisiert. Die Beziehungen zwischen Anforderungen und Komponenten ist also typischerweise eine m:n Beziehung. Erläutern Sie welche Probleme aus dem in der Aufgabenstellung beschriebenen Sachverhalt resultieren können, falls sich Änderungen (zum Beispiel in einer Anforderung) ergeben? Erläutern Sie, welche Beziehungen zwischen Anforderungen und Komponenten für die Integration von Änderungen optimal wäre? Bei Veränderung der Anforderungen könnten neue Einsatzbereiche für die Softwarekomponenten verlangt werden. Es kann passieren, dass in diesem Fall die Beziehungen (benutzt und ist_bestandteil_von) nicht mehr korrekt sind Erweiterung der Anforderungen benötigt beispielsweise neue Komponenten, die zusätzlich ins Gesamtsystem implementiert werden müssten Die optimale Integration bietet eine Komponente, welches Schnittstellen für ergänzende Anforderungen bietet um Teilbereiche bzw. zusätzliche Leistungen zu Im- oder Exportieren und somit Anforderungen wie gefordert bewältigen kann Aufgabe 5.5 In der Vorlesung wurden Entwurfsmuster erläutert. a) Erklären Sie was man unter Entwurfsmuster versteht. Dient dazu, bewährte Erfahrungen im objektorientierten Entwurf zu dokumentieren und anderen Entwerfern zur Verfügung zu stellen (Analogie zur Wiederverwendung von Algorithmen) Entwurfsmuster bieten einen relativen abstrakten Ansatzpunkt für Wiederverwendung, denn sie konzentrieren sich nicht auf die Wiederverwendung einzelner Klassen, sondern die Wiederverwendung von Mengen von Klassen und deren Beziehungen b) Erklären Sie die drei Klassen von Entwurfsmustern. Nennen Sie drei Beispiele von Entwurfsmustern für jede der drei Klassen. Erzeugende ( creational ) Entwurfsmuster betreffen den Prozess der Erzeugung von Objekten B E I S P I E L (E): Abstract Factory: Stellt eine Schnittstelle zur Verfügung, mit der Familien abhängiger Objekte erzeugt werden können, ohne dass deren konkrete Klassen spezifiziert werden müssen. 6
7 Builder: Trennt den Konstruktionsprozess (Ablauf) eines komplexen Objektes von seiner Repräsentation, so dass ein Konstruktionsprozess für verschiedene Repräsentationen verwendet werden kann. Factory Method: Definiert eine Schnittstelle für die Konstruktion eines Objektes und delegiert an Unterklassen, welches Objekt konkret erzeugt werden soll. Unterklassen können sich somit ändern, ohne dass Code angepasst werden muss. Singleton: Stellt sicher, dass es zu einer Klasse nur ein Objekt gibt und liefert einen Zugriff auf dieses Objekt. Strukturelle (,structural ) Entwurfsmuster betreffen die Komposition von Klassen oder Objekten B E I S P I E L (E): Adapter: Konvertiert die Schnittstelle einer Klasse, so dass sie den Erwartungen des Klienten entspricht. Bridge: Entkoppelt eine Abstraktion von der zugehörigen Implementierung, so dass beide unabhängig voneinander geändert werden können. Composite: Komponiert einzelne Objekte zu Baumstrukturen, um ist_bestandteil_von Beziehungen darzustellen. Klienten können einzelne Teile und Bäume in gleicher Weise behandeln. Decorator: Ergänzt Objekte dynamisch um zusätzliche Funktionalität (alternativ zur Definition von Unterklassen). Facade: Schafft eine einheitliche Schnittstelle für eine Menge von einzelnen Schnittstellen. Die abstraktere, einheitliche Schnittstelle erleichtert die Verwendung der einzelnen Schnittstellen. Flyweight: Unterstützt große Mengen fein granularer Objekte, um Ressourcen zu sparen (durch Auslagerung von Zuständen). Proxy: Liefert ein Surrogat / Platzhalter eines Objektes, um die Kontrolle durch ein anderes Objekt zu ermöglichen Verhaltensentwurfsmuster betreffen die Art und Weise, in der Klassen oder Objekte miteinander kommunizieren und Aufgaben aufteilen B E I S P I E L (E): Command: Verkapselt eine Anfrage als Objekt. Damit können Klienten mit verschiedenen Anfragen parametriert werden und es werden undo Operationen ermöglicht. Interpreter: Zu einer gegebenen Sprache wird eine Grammatik angegeben, die benutzt wird, um Wörter der Grammatik zu interpretieren. Iterator: Liefert einen Weg die Bestandteile eines aggregierten Objektes zuzugreifen, ohne dass deren interne Repräsentation bekannt sein muss. Mediator: Definiert ein Objekt, das festlegt, wie eine Menge von Objekten interagiert. Damit wird eine lose Kopplung zwischen Objekten realisiert. außerdem: Memento, Observer, State, Strategy, Template Method, Visitor 7
8 c) Erklären Sie das Model-View-Controller (MVC) Entwurfsmuster unter Bezugnahme auf das im MVC verwendete Entwurfsmuster. Ist das bekannteste Entwurfsmuster Es unterteilt Anwendungen in drei Komponenten: (i) Das Modell enthält die Kernfunktionalität und die Daten (ii) Die Views stellen eine Sicht auf diese Daten dar (iii) Der Controller kümmert sich um die Eingaben 8
Entwurfsprinzip. Entwurfsprinzip
Die Komposition (hat ein Beziehung) ist der Vererbung (ist ein Beziehung) vorzuziehen. Es können Familien von Algorithmen in eigenen Klassensätzen gekapselt werden. Das Verhalten lässt sich zu Laufzeit
MehrTutorium Softwaretechnik I
Tutorium Softwaretechnik I Moritz Klammler 27. Juni 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 27. Juni 2017 Moritz Klammler - Tutorium Softwaretechnik
MehrÜberblick FBC SNW Zusammenfassung. Entwurfsmuster. Eine Einführung. Botond Draskoczy. Marcus Vitruvius Pollio
Entwurfsmuster Eine Einführung Botond Draskoczy Marcus Vitruvius Pollio Überblick Historie, Literatur Das Flugapparat-Bildschirmschoner-Projekt (FBP) Das internetbasierte Solar-Netzwerk (SNW) Zusammenfassung
MehrCreational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.
Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational
MehrEntwurfsmuster (Design Patterns)
Entwurfsmuster (Design Patterns) SEP 303 Entwurfsmuster (Design Patterns) In der alltäglichen Programmierarbeit tauchen viele Probleme auf, die man schon einmal gelöst hat und die man in der Zukunft wieder
MehrObjektorientierte 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
MehrDesign Patterns. 3. Juni 2015
Design Patterns 3. Juni 2015 Überblick Was sind Design Patterns? Welche Design Patterns gibt es? Wann sollte man Design Patterns einsetzen? Taentzer Softwarequalität 2015 138 Was sind Design Patterns?
MehrTutorium Softwaretechnik I
Tutorium Softwaretechnik I Moritz Klammler 11. Juli 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik
MehrBehavioral Patterns. Seminar Software-Entwurf WS 04/05. Przemyslaw Dul
Behavioral Patterns Seminar Software-Entwurf WS 04/05 Przemyslaw Dul Gliederung Design Pattern (Wiederholung) Einordnung Übersicht über die Kategorien: Creational,Structural,Behavioral Übersicht über die
MehrInhaltsverzeichnis. Vorwort Geleitwort von Grady Booch Einleitung... 23
Vorwort.................................................. 17 Geleitwort von Grady Booch................................. 21 Einleitung................................................ 23 1 Einführung...............................................
MehrAuf einen Blick. 1 Einleitung Die Basis der Objektorientierung Die Prinzipien des objektorientierten Entwurfs...
Auf einen Blick Auf einen Blick 1 Einleitung... 15 2 Die Basis der Objektorientierung... 29 3 Die Prinzipien des objektorientierten Entwurfs... 41 4 Die Struktur objektorientierter Software... 67 5 Vererbung
Mehr3. Entwurfsmuster zur Entkopplung von Modulen
3. Entwurfsmuster zur Entkopplung von Modulen OOP-3.1 Entwurfsmuster (Design Patterns): Software-Entwicklungsaufgaben, die in vielen Ausprägungen häufig auftreten. Objektorientierte Schemata, die als Lösungen
MehrModel-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
MehrPraxisbuch Objektorientierung
Bernhard Lahres, Gregor Rayman Praxisbuch Objektorientierung Von den Grundlagen zur Umsetzung Galileo Press 1.1 Was ist Objektorientierung? 11 1.2 Hallo liebe Zielgruppe 12 1.3 Was bietet dieses Buch (und
MehrSE Besprechung. Übung 4 Architektur, Modulentwurf
SE Besprechung Übung 4 Architektur, Modulentwurf SE, 22.11.11 Mengia Zollinger 2.1 Architekturstile (6 Punkte) 2.1.A Ausgabe eines Monatsabos an Angestellte Lösung: Pipe-and-Filter Beispiel Lösung [Benz,
MehrDesign Patterns II. Der Design Muster Katalog. Prof. Dr. Nikolaus Wulff
Design Patterns II Der Design Muster Katalog Prof. Dr. Nikolaus Wulff Wiederverwendung Wiederverwendung ist das Schlagwort von OOP zur Erhöhung der Produktivität. Es gibt im Prinzip drei Methoden hierzu:
MehrObjektorientierte Analyse (OOA) OOA-Pattern
OOA-Muster (Architektur Pattern) Ein Pattern (Entwurfsmuster) ist ein Problem mit seiner Lösung in einem Kontext. Der Kontext enthält in der Regel Zielkonflikte, die der Designer lösen muss, z.b. Performance
MehrVerträge und objektorientierter Entwurf
Verträge und objektorientierter Entwurf Überblick Was dieses Video behandelt: Design by Contract (etwa: Entwurf gemäß Vertrag) als Richtlinie beim objektorientierten Entwurf Verträge Vererbung Invarianten
MehrTeil II Objektorientierte Programmierung (OOP) 20. Objektnetze
Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Teil II Objektorientierte Programmierung (OOP) 20. Objektnetze Prof. Dr. rer. nat. Uwe Aßmann Institut für Software-
MehrTeil II Objektorientierte Programmierung (OOP) 20. Objektnetze
Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Teil II Objektorientierte Programmierung (OOP) 20. Objektnetze Prof. Dr. rer. nat. Uwe Aßmann Institut für Software-
MehrSoftware 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
MehrEinfü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.
MehrSoftware-Architektur. Design Patterns. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München
Software-Architektur Design Patterns Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 11.07.2017 15:12 Inhaltsverzeichnis Standardwerk.................................... 2 Design
MehrObjektorientierte Programmierung
Bernhard Lahres, Gregor Rayman Objektorientierte Programmierung Das umfassende Handbuch Galileo Press 1.1 Was ist Objektorientierung? 13 1.2 Hallo liebe Zielgruppe 14 1.3 Was bietet dieses Buch (und was
Mehr7. Zusammenfassung (1)
Typisierung in OO-Sprachen Subtyping vs. Subclassing Untertypen für Typkonstrukte Funktionsuntertypen und Überschreiben Generik Einsatz von Vererbung konzeptioneller Entwurf: Abstraktion Spezialisierung
MehrDesign Patterns. (Software-Architektur) Prof. Dr. Oliver Braun. Letzte Änderung: :12. Design Patterns 1/26
Design Patterns (Software-Architektur) Prof. Dr. Oliver Braun Letzte Änderung: 11.07.2017 15:12 Design Patterns 1/26 Standardwerk Gang of Four: Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides:
MehrSoftware- /Systemarchitektur
Software- /Systemarchitektur Agenda: Definition von Softwarearchitektur Voraussetzungen Was bedeutet Objektorientierung? Wie speichert man Daten persistent? Client-Server-Architektur Schichtenarchitektur
MehrEinführung in die Informatik II
Einführung in die Informatik II SS 2012 6 Objektorientierte Entwurfsmuster Wissensbassierte Systeme / Wissensmanagement Einführung in die Informatik II 1 Prüfungstermine EI II im Sommersemester 2012 Klausurtermine
MehrObjektorientierteund FunktionaleProgrammierung
Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten
MehrUniversität Bremen. Entwurfsmuster. Thomas Röfer. Wettbewerb Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster
Entwurfsmuster Thomas Röfer Wettbewerb Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster Mein Rückblick: RoboCup 2 Euer Rückblick: Textsuche Naive Suche abrakadabra Boyer-Moore abrakadabra
Mehr3. Entwurfsmuster zur Entkopplung von Modulen. Übersicht zu Entwurfsmustern
3. Entwurfsmuster zur Entkopplung von Modulen OOP-3.1 Vorlesung Objektorientierte Programmierung WS 2013/2014 / Folie 301 Entwurfsmuster (Design Patterns): Idee der Entwurfsmuster verstehen Software-Entwicklungsaufgaben,
MehrÜbungen Softwaretechnik I
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Übungen Softwaretechnik I Übung 5: Objektorientierte Analyse Einführung Objektorientierung in der
MehrApplication Engineering Grundlagen für die objektorientierte Softwareentwicklung mit zahlreichen Beispielen, Aufgaben und Lösungen
I " t3ildungsmedien Informatik Application Engineering Grundlagen für die objektorientierte Softwareentwicklung mit zahlreichen Beispielen, Aufgaben und Lösungen Hansruedi Tremp und Markus Ruggiero Application
MehrKernprozess zur System- und Softwareentwicklung. Logische Systemarchitektur f 1. f 2 f 3. f 4 Funktion. Technische Systemarchitektur SG 1 SG 2 SG 3
Systems Engineering Systems Engineering ist die gezielte Anwendung von wissenschaftlichen und technischen Ressourcen! zur Transformation eines operationellen Bedürfnisses in die Beschreibung einer Systemkonfiguration
MehrSoftware-Entwurfsmuster (weitere) A01 OOP. Software-Entwurfsmuster (weitere)
2014-01-08 Software-Entwurfsmuster (weitere) 1 185.A01 OOP Software-Entwurfsmuster (weitere) 2014-01-08 Software-Entwurfsmuster (weitere) 2 OOP Vererbung versus Delegation class A { public void x() { z();
MehrObjektorientierte Analyse (OOA) Inhaltsübersicht
Inhaltsübersicht Einführung Anforderungen an die UML-Diagramme Verhalten: Use-Case-Diagramm Verhalten: Aktivitätsdiagramm Verhalten: Zustandsautomat Struktur: Klassendiagramm Seite 1 Einführung In der
MehrUniversität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich WS 02/03 Warum muss ein Objekt wissen, zu welcher Klasse es gehört? Damit die Klassenzugehörigkeit
Mehr13 Abstrakte Datentypen
13 Abstrakte Datentypen Bisher: Konkrete Datentypen Menge von Elementen Operationen auf den Elementen (Konstruktoren, Selektoren, Typprädikate) Eigenschaften abgeleitet Jetzt: Abstrakte Datentypen (ADT)
MehrObjektorientierte und Funktionale Programmierung
Objektorientierte und Funktionale Programmierung SS 2013 6 Objektorientierte Entwurfsmuster Wissensbassierte Systeme / Wissensmanagement Objektorientierte und Funktionale Programmierung 1 PrüfungstermineOFP
MehrTechnologiepark 8 33100 Paderborn Telefon: 05251 / XX XX XX Mobil: 01XX / XX XX XX XX E-Mail: XXXXXXX@mail.upb.de
Technologiepark 8 33100 Paderborn Telefon: 05251 / XX XX XX Mobil: 01XX / XX XX XX XX E-Mail: XXXXXXX@mail.upb.de PIRAT Software Technologiepark 8 33100 Paderborn Universität Paderborn Institut für Informatik
MehrSoftware Engineering II (IB) Design Patterns
Software Engineering II (IB) Design Patterns Prof. Dr. Oliver Braun Letzte Änderung: 16.05.2017 20:56 Software Engineering II (IB), Design Patterns 1/43 Standardwerk Gang of Four: Erich Gamma, Richard
MehrDesign Patterns. OO-GetTogether. Volker Michels
1 Design Patterns OO-GetTogether Volker Michels 2 Muster (engl. Pattern) Züllighoven: Ein Muster ist eine Abstraktion von einer konkreten Form, die wiederholt in bestimmten nicht willkürlichen Kontexten
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
MehrEntwurfsmuster Martin Fesser 00IN
Entwurfsmuster Martin Fesser 00IN Inhalt Was sind Entwurfsmuster? Vorteile, Nachteile Entwurfsmusterkatalog (nach GoF) Variation von Entwurfsaspekten Wie Entwurfsmuster Entwurfsprobleme lösen Beispiele
MehrLukas Klich. Projektgruppe SHUTTLE. Seminar: Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1. Entwurfsmuster
Entwurfsmuster Lukas Klich Projektgruppe SHUTTLE Seminar: 28.11.2002 Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1 Motivation Die Menschheit löst Probleme, indem sie beobachtet, Beobachtungen
MehrWahlpflichtfach Design Pattern
Wahlpflichtfach Design Pattern Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik miwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338
MehrContinuous Integration mit VSTS Dieter Rüetschi
Continuous Integration mit VSTS Dieter Rüetschi (ruetschi@ability-solutions.ch) 1 2 Warum ist Continuous Delivery so wichtig? Geschwindigkeit schnell auf dem Markt Unterstützung und Teil des ALM 3 DevOps
MehrEntwurfsmuster 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
MehrDesign Pattern. Motivation, Beispiel Definition "Das" Buch der Gang of Four Ausführliches Beispiel: Facade Beispiele. Aufgabe
, Beispiel der Gang of Four Ausführliches Beispiel: Beispiele Wiederverwendung ist etwas Gutes...!!! Wiederverwendung (auch: Verständlichkeit, Änderbarkeit, Portierbarkeit etc.) wird auf Design-Ebene ermöglicht
MehrUnified Modelling Language
Unified Modelling Language SEP 72 Software-Entwicklung Software-Entwicklung ist Prozess von Anforderung über Modellierungen zu fertigen Programmen Anforderungen oft informell gegeben fertige Programme
Mehr2 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
MehrStructural Patterns. B. Sc. Andreas Meißner
Structural Patterns B. Sc. Andreas Meißner Seminar Software-Entwurf Fachgebiet Software Engineering, Institut für Angewandte Systeme, Universität Hannover 11/16/2004 Gliederung 1. Wiederholung Entwurfsmuster
MehrUML (Unified Modelling Language) von Christian Bartl
UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...
MehrMVC-Architektur am Beispiel von OLAT
MVC-Architektur am Beispiel von OLAT Marvin Frommhold 12. Januar 2009 Gliederung Begriffe Entwurfsmuster Umsetzung in OLAT Aufbau des Brasato-Frameworks Quellen Begriffe I MVC bezeichnet ein Architekturmuster
MehrSchulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe. Informatik Q2. Stand: 02/2016 Status: Gültig
Schulinterner Lehrplan zum Kernlehrplan für die gymnasiale Oberstufe Informatik Q2 Stand: 02/2016 Status: Gültig Unterrichtsvorhaben: Modellierung und Implementierung von Anwendungen mit dynamischen, nichtlinearen
Mehr13. Qualitätsmanagement Software Engineering
13. Qualitätsmanagement Software Engineering Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 19. Januar 2006 Einordnung in den Kontext der Vorlesung 1. Einführung
MehrSoftware Design basierend auf dem Plug-In Konzept
Software Design basierend auf dem Plug-In Konzept Michael Antes Seminar Simulation und Bildanalyse mit Java, WS2003 Universität Ulm Software-Design basierend auf dem Plug-In-Konzept Inhalt: Einführung:
MehrObjektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl 26.07.21 Themenübersicht Objektorientierte Software-Entwicklung Objektorientierte Analyse und Design OOA OOD Objektorientierte
Mehr4 Grundlagen von SQS-TEST/Professional New Line
4 Grundlagen von SQS-TEST/Professional New Line 4.1 Einführung SQS-TEST/Professional New Line (NL) ist ein umfassendes und flexibles Werkzeug für den Test von Softwareanwendungen. Eine Anwendung (z.b.
MehrTesten mit Use Cases. Chris Rupp Dr. Stefan Queins
Testen mit Use Cases Chris Rupp Dr. Stefan Queins Das Problem Requirements- Engineering Was kann passieren? Was ist das gewünschte Verhalten? Was soll ich testen? Welche Eingaben benötigt mein Testpfad?
MehrEinführung: Verteilte Systeme - Remote Method Invocation -
Einführung: Verteilte Systeme - - Prof. Dr. Michael Cebulla 11. Dezember 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 43 M. Cebulla Verteilte Systeme Gliederung 1 2 Architektur RMI Kommunikation
MehrIT-Projekt-Management
IT-Projekt-Management email: vuongtheanh@netscape.net http: www.dr-vuong.de 2005 by, Bielefeld Seite 1 Testen 2005 by, Bielefeld Seite 2 IT-Projekte: Entwicklungsprozesse -1 - Planen Projektsteuerung,
MehrInhaltsverzeichnis. 1 Einleitung 1. 2 Grundlagen von Softwarearchitekturen 11
D3kjd3Di38lk323nnm xi 1 Einleitung 1 1.1 Softwarearchitektur als Disziplin im Software Engineering........ 2 1.2 isaqb International Software Architecture Qualification Board.......... 4 1.3 Certified
MehrQualitätssicherung von Software
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST 2.2 Integrations- und Systemtest 17.11.2004 Folie 2 Hinweise Übungen: Teilnahme wird dringend
MehrObjektorientierte Programmierung (OOP)
orientierte Programmierung (OOP) 1. Motivation Die objektorientierte Sichtweise der Welt Als Motivation für die OOP sieht man sich am besten die reale Welt an: Die reale Welt besteht aus "en", z. B.: Gegenstände,
MehrSoftware Engineering II (IB) Design Patterns
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 16.05.2017 20:56 Inhaltsverzeichnis Standardwerk.................................... 2 Erzeugungsmuster.................................
MehrDesign Patterns. 5. Juni 2013
Design Patterns 5. Juni 2013 Überblick Was sind Design Patterns? Welche Design Patterns gibt es? Wann sollte man Design Patterns einsetzen? Refactoring und Design Patterns: Welchen Zusammenhang gibt es
MehrSoftware-Architektur Design Patterns
Design Patterns Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München SS 2015 Standardwerk Gang of Four: Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides: Design Patterns:
MehrSoftware Engineering. 10. Entwurfsmuster II. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering 10. Entwurfsmuster II Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: 10. Entwurfsmuster II 2 Die Entwurfsmuster der Gang of Four Die 23 GoF Pattern sind in 3 Gruppen
MehrSoftwaretechnik 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
MehrSoftware Engineering. 7. Entwurfsmuster
Software Engineering 7. Entwurfsmuster Gliederung Vorlesung Einführung V-Modell XT Analyse und Anforderungsmanagement Benutzungsoberflächen Architektur Entwurf Entwurfsmuster Persistenz Implementierung
MehrEntwurfsmuster in Java
Entwurfsmuster in Java Das Observer- und das Decorator-Pattern Friederike Löwe 13. März 2011 Inhaltsverzeichnis Einleitung Wozu eigentlich Entwurfsmuster? Die Grundlage: Design-Prinzipien Das Decorator-Pattern
MehrLogo in neuer Logosystematik einfügen: Bewertung der Softwarequalität eines bestehenden Softwaresystems an Hand von
Bewertung der Softwarequalität eines bestehenden Softwaresystems an Hand von Software Engineering Grundsätzen und Identifikation von Maßnahmen zur Verbesserung Axel Sommer Inhalt Motivation und Ziele Software
MehrObjektorientierte Modellierung (1)
Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist
MehrSoftwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler
Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 7 Lösungshilfe Aufgabe 1. Analysephase (12 Punkte) Eine Firma hat den Auftrag erhalten eine
MehrUniversität Bremen. Entwurfsmuster. Thomas Röfer. Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster
Entwurfsmuster Thomas Röfer Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster Rückblick UML Motivation Historie Spracheinheiten Strukturdiagramme Verhaltensdiagramme 2 Motivation Idee Einige
MehrProgrammiermethodik 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
MehrUnified. Copyright Adriano Gesué UML 2.0 UML 1.4 UML 1.3 UML 1.2 UML 1.1 UML 1.0 UML 0.9. Method 0.8
Literatur Martin Fowler and Kendall Scott: UML Distilled: Applying the Standard Object Modeling Language. Addison-Wesley 1997. James Rumbaugh, Ivar Jacobson, and Grady Booch: The Unified Language Reference
MehrPraktikum. SEP: Java-Programmierung WS 2018/19. Modularisierung. Thomas Lemberger und Martin Spießl
Praktikum SEP: Java-Programmierung WS 2018/19 Modularisierung Thomas Lemberger und Martin Spießl Basierend auf Folien von Matthias Dangl und Karlheinz Friedberger 1 / 10 Modularisierung Module gliedern
MehrDesign-Patterns-Katalog
Design-Patterns-Katalog Erzeugungsmuster (Creational Patterns) Abstract Factory (Abstrakte Fabrik, siehe Abschnitt 3.1) Bereitstellung einer Schnittstelle zum Erzeugen verwandter oder voneinander abhängiger
Mehr4. Mentorium. UML-Modellierung (Lösungshinweise)
Wirtschaftsinformatik (PWIN) 4. Mentorium Objektorientierung & UML-Modellierung (Lösungshinweise) Wirtschaftsinformatik 2 (PWIN), SS 2009, Professur für Mobile Business & Multilateral Security 1 Objektorientierung
MehrWas bisher geschah Modellierung von Daten durch Mengen Beziehungen (Zusammenhänge und Eigenschaften) durch Relationen, Graphen und Funktionen
Was bisher geschah Modellierung von Daten durch Mengen Beziehungen (Zusammenhänge und Eigenschaften) durch Relationen, Graphen und Funktionen Anforderungen durch Logiken Modellierung zusammenhängender
Mehr16 Architekturentwurf Einführung und Überblick
Teil III: Software-Architekturentwurf 16 Architekturentwurf Einführung und Überblick 16.1 Software entwerfen Warum? Beim Arbeiten im Kleinen nicht oder nur ansatzweise (Detailentwurf) Größere Software
MehrKapitel 4 - Die Implementierungsphase
Kapitel 4 - Die Implementierungsphase SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum Karlsruhe
MehrÜbung 11: Klausurvorbereitung. Übung 11. Prüfungsvorbereitung Software Engineering WS16/17 Philipp Seltmann
Übung 11 Prüfungsvorbereitung 1/32 0. Organisatorisches http://giphy.com/gifs/exam-gnjnnba5ieoou Klausur: 17.02.2016, 13-15 Uhr, B11, SR15 Keine Hilfsmittel!!! Papier wird bereitgestellt 2/32 01. Funktionale
MehrEntwurfsmuster - Iterator & Composite
Entwurfsmuster - Iterator & Composite Alexander Rausch Seminar Entwurfsmuster WS08/09 19. November 2008 Gliederung 1 Einführung 2 Das Iterator Entwurfsmuster 3 Das Composite Entwurfsmuster 4 Quellen 5
Mehr1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge
Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete
MehrZweck: sequentieller Zugriff auf Elemente eines Aggregats. mehrere Abarbeitungen des Aggregatinhalts
Iterator (Cursor) Zweck: sequentieller Zugriff auf Elemente eines Aggregats Anwendungsgebiete: Zugriff auf Aggregatinhalt innere Darstellung bleibt gekapselt mehrere Abarbeitungen des Aggregatinhalts einheitliche
MehrZweck: sequentieller Zugriff auf Elemente eines Aggregats
Iterator (Cursor) Zweck: sequentieller Zugriff auf Elemente eines Aggregats Anwendungsgebiete: Zugriff auf Aggregatinhalt innere Darstellung bleibt gekapselt mehrere Abarbeitungen des Aggregatinhalts einheitliche
MehrInhalt. TEIL I Grundlagen. Einleitung 15
Einleitung 15 TEIL I Grundlagen 1.1 Notwendigkeit einer verbesserten Abstraktion 23 1.2 Klassen und Objekte 25 1.3 Festlegung von Grenzen 27 1.4 Wiederverwendung 30 1.4.1 Komposition 30 1.4.2 Vererbung
MehrEntwurfsmuster. Die Entwurfsmuster Observer, State und Singleton am Beispiel einer Digital-Uhr
Entwurfsmuster Die Entwurfsmuster Observer, State und Singleton am Beispiel einer Digital-Uhr Was sind Entwurfsmuster (1) Muster (allg.) sind schematische Lösungen für eine Klasse verwandter Probleme Beschreibung:
MehrInhaltsverzeichnis. a. Standorte...3 1. Design Patterns...6. b. Impressum... 16. i. C#.NET...6. ii. Enterprise Integration Patterns...
2 Inhaltsverzeichnis a. Standorte...3 1. Design Patterns...6 i. C#.NET...6 ii. Enterprise Integration Patterns... 8 iii. Entwurfsmuster-Katalog Standard (GoF)...10 iv. Java...12 v. PHP... 14 b. Impressum...
MehrEin Entwurfsmuster der GoF. vorgestellt von. Sigrid Weil 16. Januar 2008
Ein Entwurfsmuster der GoF vorgestellt von Sigrid Weil 16. Januar 2008 Einleitung 2 Entwurfsmuster (Design Patterns) beschreiben Probleme, die wiederholt in unterschiedlichsten Zusammenhängen aufreten
Mehr11. Komponenten Grundlagen der Programmierung 1 (Java)
11. Komponenten Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 10. Januar 2006 Einordnung im Kontext der Vorlesung
MehrModellarbeit I: Entwurfsgerechte Klassenmodellierung
Modellarbeit I: Entwurfsgerechte Klassenmodellierung Vom Analysemodell zum Entwurfsmodell Nach der Etablierung der Techologien: Überarbeitung des Fachlichen Modells zu einem geeigneten Entwurfsmodell Navigationen
MehrEffektive Software-Architekturen Ein praktischer Leitfaden
Gernot Starke Effektive Software-Architekturen Ein praktischer Leitfaden ISBN-10: 3-446-41215-8 ISBN-13: 978-3-446-41215-6 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41215-6
MehrLehrplan: Architektur und Design. paluno
Lehrplan: Architektur und Design Gliederung 1 Grundlagen der industriellen So9ware Entwicklung 2 Ebenen von Architektur und Design 3 KernakAvitäten von So9ware- Architekten 4 Architekturtypologien von
Mehr