Architekturstil (architectural style) Leitlinien für die Gestaltung der Architektur

Größe: px
Ab Seite anzeigen:

Download "Architekturstil (architectural style) Leitlinien für die Gestaltung der Architektur"

Transkript

1 18 Architekturstile und -metaphern 18.1 Architekturstile Architekturstil (architectural style) Leitlinien für die Gestaltung der Architektur Verwendete Modularten Verwendete Arten von Kooperation zwischen den Modulen Benutzung passender Architekturmuster Orientierung an einer Architekturmetapher Architekturstil Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite , 2003 by Martin Glinz. Alle Rechte vorbehalten. Reproduktion zum nicht kommerziellen Gebrauch mit Quellenangabe gestattet. Reproduktion - auch auszugsweise - zum kommerziellen Gebrauch nur mit schriftlicher Bewilligung des Verfassers gestattet.

2 Was fällt hier auf? Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-2

3 Modularten bestimmt durch die Art der Modularisierung zum Beispiel Funktionen, abstrakte Datentypen oder Prozesse als Einheiten der Modularisierung Kooperationsarten zum Beispiel: direkter Aufruf, indirekter Aufruf, Datenfluss müssen zur Art der Module passen Architekturmuster Kapitel 20 Architekturmetapher Gestaltungs-Leitbild, siehe 18.2 unten Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-3

4 18.2 Architekturmetaphern Metapher (metaphor) sprachlicher Ausdruck, bei dem ein Wort aus seinem Bedeutungszusammenhang in einen anderen übertragen, als Bild verwendet wird. Architekturmetaphern sind Leitbilder für die Gliederung und das Verstehen einer Architektur erschließen das Verständnis über analoge, vertraute Bilder Beispiele (siehe auch Vorlesung Informatik II, Systemmetaphern): Virtuelle Maschinen WAM (Werkzeug-Automat-Material) Steckersystem Organisationshierarchie Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-4

5 Die Virtuelle-Maschinen-Metapher Leitgedanke: Das System besteht aus aufeinander aufbauenden Schichten realer oder künstlicher Maschinen. Jede Schicht besteht aus einer oder mehreren virtuellen Maschinen erbringt Leistungen für die darüberliegende Schicht benutzt Leistungen der darunterliegenden Schicht Die unterste Schicht besteht aus realen Maschinen Die oberste Schicht erbringt die für Anwender zugänglichen Leistungen Typisches Beispiel: OSI-Referenzmodell für die Kommunikation von Rechnern Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-5

6 Die WAM (Werkzeug-Material-Automat) Metapher Leitgedanke: Ein System besteht aus Materialien, deren verschiedene Aspekte durch aspektspezifische Werkzeuge bearbeitet werden. Werkzeug: gegenüber Materialien aktiv: bearbeitet Materialien gegenüber Menschen assistierend: Mensch bedient Material: passiv, speichernd, wird bearbeitet ist Arbeitsgegenstand oder Arbeitsergebnis Automat: aktiv, arbeitet vollautomatisch Werkzeuge Editor Formulareditor Grafikeditor Texteditor Automat Sicherung Materialien Dokument Brief Publikation Formular Ordner Archiv Mappe sichert einmal täglich alle bearbeiteten Dokumente Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-6

7 Die Steckersystem-Metapher Leitgedanke: Komponenten werden flexibel in ein Grundsystem mit einer Reihe von Steckplätzen eingesteckt (analog zu Rechner-Hardware, Lichtschienen, etc.) Ein System besteht typisch aus dem Rahmen Datenverwaltungsdienste, Kommunikationsdienste, Benutzerschnittstelle Steckplätzen für Anwendungen in der Regel vorgefertigt Anwendungen in Steckplätze des Rahmens eingesteckt nutzen Dienste und Benutzerschnittstelle des Rahmens in der Regel problem- und kundenspezifisch angefertigt Anwendung Kommunikation Benutzungsschnittstelle Datenverwaltung Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-7

8 18.3 Ausgewählte Architekturstile Funktionsorientierte Architektur (Structured Design) Jeder Modul berechnet eine Funktion Zur Realisierung einer Funktion können andere, einfachere Funktionen aufgerufen werden Datenaustausch über Parameter oder gemeinsame Speicherbereiche Prozess beobachten Entwurf = Hierarchie aufeinander aufbauender Funktionen Prozesswert erfassen Trend berechnen Alarm auslösen Prozessabbild anzeigen Messwert lesen Grenzwertüberschreitung prüfen Sensor abfragen Sensorwert skalieren Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-8

9 Meist nach dem Prinzip Eingabe Verarbeitung Ausgabe strukturiert Typischer Vertreter: Structured Design Problem: Daten und funktionsübergreifende Probleme können nicht gekapselt werden Ungenügende Abstraktion Verständnis und Änderbarkeit erschwert Liefert in vielen Fällen keine gute Modularisierung Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-9

10 Datenorientierte Architektur (Datenabstraktionen) Modularisierung nach dem Geheimnisprinzip Datenstruktur und alle darauf möglichen Operationen sind zusammengefasst: Datenabstraktion notwendig zum Verbergen von Entwurfsentscheidungen Realisierung durch abstrakte Datentypen System besteht aus Menge aufeinander aufbauender Datenabstraktionen Jeder Modul bietet Leistungen an Module benutzen die Leistungen anderer Module zur Realisierung der eigenen Leistungen Benutzungshierarchie Regelung der Zusammenarbeit durch Verträge (Design by Contract) Zusätzlich häufig Gliederung in Schichten Gute Abstraktion Entwürfe sind leicht verstehbar und änderbar Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-10

11 Beispiel: Datenorientierte Architektur eines Geldautomaten Bancomat Steuerschicht Karte Auswahl Transaktion Tastatur Konto Quittung Anwendungsschicht Dienstleistungsschicht Anzeige Kartenleser Tastaturtreiber Terminal Window Telecom Printer Infrastrukturschicht Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-11

12 Objektorientierte Architektur ( Kapitel 19) Modul repräsentiert Objekt des Problembereichs oder Informatik-Element System besteht aus Menge kooperierender Objekte, gruppiert zu Klassen Geeignet gebildete Klassen beachten das Geheimnisprinzip gute Modularisierung Systematischer Zusammenhang zwischen allgemeinen und speziellen Objekten: Objekte von Spezialklassen erben alle Strukturen und Operationen der übergeordneten allgemeinen Klassen Spezialisierungs- (Generalisierungs-) Hierarchie ermöglicht problemnahe Modellierung schränkt jedoch Anwendbarkeit des Geheimnisprinzips ein Durch Vererbung massiv erhöhte Flexibilität + Software ist erweiterbar bei unsachgemäßer Verwendung starke Nebenwirkungen auf Verstehbarkeit und Änderbarkeit Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-12

13 Prozessorientierte Architektur ( Kapitel 21) System besteht aus Menge unabhängig arbeitender, untereinander kooperierender Akteure Akteure sind typisch als Prozesse realisiert Prozesse kooperieren durch Austausch von Nachrichten oder durch Zugriff auf gemeinsame Speicherbereiche Prozesse sind die Module der obersten Stufe Jeder Prozess ist typisch ein sequentiell ablaufender Systemteil Kurse Wechselkursrechner Kurse erfassen aktuelle Kurse und Trends Zeitreihen bilden Archivrechner Archiv Suchen Archivieren Anfragen Prozesse sind selbst wieder modularisiert, z.b. in objektorientiertem Stil Trends bilden Prozess gemeinsamer Speicherbereich Werte verteilen aktuellewerte Arbeitsplatzrechner Kommunikation über Speicher Kommunikation über Nachrichten Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-13

14 Komponentenorientierte Architektur ( Kapitel 23) Weiterentwicklung objektorientierter Architekturen Komponente (component) [im engeren Sinn] Stark gekapselte Menge zusammengehöriger Objekte / KIassen, die eine gemeinsame Aufgabe lösen System besteht aus einer Menge von (möglicherweise geographisch verteilten) Komponenten, die über einen Makler kommunizieren Komponenten kennen Schnittstellen ihrer Partnerkomponenten Komponenten kennen nicht Art der Realisierung der Kommunikation Geografische Lokalisierung Implementierung der Partnerkomponenten Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-14

15 Datenflussorientierte Architektur Die Software wird in Aktivitäten und Datenflüsse (sowie ggf. Speicher) gegliedert Aktivitäten arbeiten, wenn die von ihnen benötigten Daten vorliegen Systemsteuerung durch Datenfluss Typische Vertreter Leitung-Filter-Architekturen, z.b. UNIX pipes Regler Strukturierte Analyse Spezifikation und Entwurf von Software 18. Architekturstile und -metaphern Martin Glinz Seite 18-15

16 Architekturentwurf Einführung und Überblick

16 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

Mehr

17 Architekturentwurf Vorgehen und Dokumentation

17 Architekturentwurf Vorgehen und Dokumentation 17 Architekturentwurf Vorgehen und Dokumentation 17.1 Einbettung Aber Erster Schritt der Lösung Wenn Anforderungsspezifikation vorliegt Vorgabe für Codierung Hierarchische Verzahnung von Anforderungen

Mehr

Systemmetaphern! Informatik II: Modellierung Prof. Dr. Martin Glinz. Kapitel 11. Institut für Informatik!

Systemmetaphern! Informatik II: Modellierung Prof. Dr. Martin Glinz. Kapitel 11. Institut für Informatik! Institut für Informatik! Informatik II: Modellierung Prof. Dr. Martin Glinz Kapitel 11 Systemmetaphern! 2005, 2011 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen,

Mehr

Softwaretechnik (Allgemeine Informatik) Überblick

Softwaretechnik (Allgemeine Informatik) Überblick Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6

Mehr

Modellierung Zusammenfassung WS2000

Modellierung Zusammenfassung WS2000 Modellierung Zusammenfassung WS2000 Inhalt 1 Einführung in die Modellierung...2 2 Datenmodelle...3 3 Funktionsmodelle...3 4 Verhaltensmodelle...4 5 Objekt-/Klassenmodelle...6 6 Interaktionsmodelle...6

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Objektorientierte Modellierung (1)

Objektorientierte 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

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Von UML 1.x nach UML 2.0

Von UML 1.x nach UML 2.0 Zürich Soft Summer 2005 Fortgeschrittene Aspekte der Software Technologie Von UML 1.x nach UML 2.0 Prof. Dr. Martin Glinz www.ifi.unizh.ch/req Ergänzendes Material zur Vorlesung Spezifikation und Entwurf

Mehr

Requirements Engineering I

Requirements Engineering I Norbert Seyff Requirements Engineering I UML Unified Modeling Language! 2006-2012 Martin Glinz und Norbert Seyff. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen

Mehr

15 Verwaltung von Anforderungen (Requirements Management)

15 Verwaltung von Anforderungen (Requirements Management) 15 Verwaltung von Anforderungen (Requirements Management) Was ist Requirements Management? Planung und Lenkung des RE-Prozesses Konfigurationsmanagement für Anforderungen Identifikation Änderungs- und

Mehr

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken

wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken 1 Java ist... gut erlernbar wenige Konzepte, keine Adressen, Anlehnung an C++ -Syntax objektorientiert Vererbung, Polymorphie/dynamisches Binden, umfangreiche Klassenbibliotheken robust keine Adressen,

Mehr

Lernziele zur Vorlesung Software Engineering I

Lernziele zur Vorlesung Software Engineering I Lernziele 1 Lernziele zur Vorlesung Software Engineering I Version 1.5 vom 11.10.2004 1 Martin Glinz Prof. Dr. rer. nat. Universität Zürich Vorbemerkung Die Vorlesung Software Engineering I ist Bestandteil

Mehr

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design Softwaretechnik (Medieninformatik) Überblick: 6.1 Einleitung 6.2 Verfeinerung des Klassenmodells 6.3 Sequenzdiagramme 6.4 Umsetzung der Analysekonstrukte in das Design 6.5 Fallstudie 6.6 Software Kontrakte

Mehr

12 Nicht-funktionale Anforderungen

12 Nicht-funktionale Anforderungen 12 Nicht-funktionale Anforderungen Nicht-funktionale Anforderungen (non-functional requirements) Anforderungen an die Umstände, unter denen die geforderte Funktionalität zu erbringen ist. Gesamte Anforderungen

Mehr

Grundlagen des Software Engineering

Grundlagen des Software Engineering Gustav Pomberger und Günther Blaschek Grundlagen des Software Engineering Prototyping und objektorientierte Software-Entwicklung Mit 101 Abbildungen Technische Universität Darmstadt FACHBEREICH INFORMATIK

Mehr

Client/Server-Systeme

Client/Server-Systeme Frühjahrsemester 2011 CS104 Programmieren II / CS108 Programmier-Projekt Java-Projekt Kapitel 3: /Server-Architekturen H. Schuldt /Server-Systeme Ein zweischichtiges /Server-System ist die einfachste Variante

Mehr

Software-Engineering

Software-Engineering FH Wedel Prof. Dr. Sebastian Iwanowski SWE2 Folie 1 Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 2: Grundbegriffe und Prinzipien FH Wedel Prof. Dr. Sebastian Iwanowski SWE2 Folie 2 Grundbegriffe

Mehr

DIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer

DIPLOMARBEIT. Entwurf und Implementierung eines modularen USB-Stacks für eingebettete Controller ohne Betriebssystem. Uwe Pfeiffer Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur DIPLOMARBEIT Entwurf und Implementierung eines modularen USB-Stacks für eingebettete

Mehr

Kapitel 5: Das Design

Kapitel 5: Das Design Nach der Analyse kommt... Kapitel 5: Das Design SoPra 2008 Kap. 5: Das Design (1/20) Kapitel 5.1: Überblick Was ist Design? Ergebnis der Analyse: abstrakte Definitionen Objektmodell: Klassen, Assoziationen,

Mehr

Die OSGi Service Plattform

Die OSGi Service Plattform Die OSGi Service Plattform Seminarvortrag Bernhard Cleven Gliederung 1 Einleitung 2 Das Framework 3 Bundles 4 Services 5 Beispiel 6 Fazit Seite 1/ 17 Einleitung Warum OSGi? Durch Modularisierung flexible

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

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Software Engineering. Dokumentation! Kapitel 21

Software Engineering. Dokumentation! Kapitel 21 Martin Glinz Thomas Fritz Software Engineering Kapitel 21 Dokumentation 2005-2013 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch gestattet;

Mehr

Objektorientierte Analyse (OOA) Inhaltsübersicht

Objektorientierte 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

Mehr

Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11. vii. Inhaltsverzeichnis

Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11. vii. Inhaltsverzeichnis Knasmüller.book Seite vii Mittwoch, 28. März 2001 11:11 11 vii 1 Einführung 1 1.1 Motivation.................................... 1 1.2 Vorteile der neuen Techniken...................... 3 1.3 Aufbau des

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

Struktur und Architektur

Struktur und Architektur Struktur und Architektur Grundlagen der Software-Architektur: Vorarbeit für die Komponentenentwicklung (c)schmiedecke 07 SE1-10 - Struktur und Architektur 1 Vom Analysemodell zur Anwendungssoftware Analysemodell

Mehr

Objektbasierte Entwicklung

Objektbasierte Entwicklung Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit

Mehr

Installation des edu-sharing Plug-Ins für Moodle

Installation des edu-sharing Plug-Ins für Moodle Installation des edu-sharing Plug-Ins für Moodle [Matthias Hupfer, Steffen Hippeli] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu-sharing.com

Mehr

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP)

Enterprise Applikation Integration und Service-orientierte Architekturen. 09 Simple Object Access Protocol (SOAP) Enterprise Applikation Integration und Service-orientierte Architekturen 09 Simple Object Access Protocol (SOAP) Anwendungsintegration ein Beispiel Messages Warenwirtschaftssystem Auktionssystem thats

Mehr

Systemarchitektur des Innotrucks

Systemarchitektur des Innotrucks Systemarchitektur des Innotrucks Hauke Stähle (hauke.staehle@tum.de) Systemarchitektur Das große Bild Bremsen Lenken Komfort Sicherheit Beschleunigen Verhalten Was? Fahrerassistenz Systemarchitektur Werkzeuge

Mehr

Applikationsentwicklung Architekturübungen

Applikationsentwicklung Architekturübungen Applikationsentwicklung Architekturübungen Aufgabe : Systeme und Subsysteme Gegeben ist das umfangreiche Softwaresystem eines modernen Passagierflugzeuges von der Steuerung und Navigation bis zum Bordunterhaltungssysstem

Mehr

Inhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte

Inhaltsüberblick. I. Grundbegriffe - Objekte und Klassen. Organisatorisches. I. Grundbegriffe - Objektorientierte Konzepte Grundkonzepte Objektorientierter Programmierung Nicole Himmerlich FSU Jena mit Java, Oberon-2, Object-Pascal und Python Inhaltsüberblick I. Grundbegriffe 1) Kopplung 2) Datenkaspelung 3) Konstruktor 4)

Mehr

Requirements Engineering (Anforderungstechnik)

Requirements Engineering (Anforderungstechnik) 5 Requirements Engineering Einführung 5.1 Was ist Requirements Engineering? Erste Näherung: Requirements Engineering (Anforderungstechnik) ist das systematische, disziplinierte und quantitativ erfassbare

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Software-Qualität Ausgewählte Kapitel

Software-Qualität Ausgewählte Kapitel Institut für Informatik! Martin Glinz Software-Qualität Ausgewählte Kapitel Kapitel 10 Qualitätsnormen" 2009-2011 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen,

Mehr

Modellbasierte und komponentenorientierte Programmierung von Steuerungen

Modellbasierte und komponentenorientierte Programmierung von Steuerungen Labor für CIM & Robotik Prof. Dipl.-Ing. Georg Stark Modellbasierte und komponentenorientierte Programmierung von Steuerungen 1. Entwicklungsprozess Industriesteuerung 2. Programmierparadigmen - objektorientiert

Mehr

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1 Systeme 1 Kapitel 3 Dateisysteme WS 2009/10 1 Letzte Vorlesung Dateisysteme Hauptaufgaben Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien Kleinste logische Einheit eines Dateisystems Dateitypen

Mehr

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure 8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:

Mehr

Software-Design. Definition Der Prozess Prinzipien Strategien und Methoden Notationen. Aufgabe. HS Mannheim

Software-Design. Definition Der Prozess Prinzipien Strategien und Methoden Notationen. Aufgabe. HS Mannheim Software- Der Strategien und ist der zum Definieren der Architektur, der Komponenten, der Schnittstellen und anderer Charakteristika (Datenstrukturen, Algorithmen etc.) eines Systems oder einer Komponente

Mehr

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig. Inhalt Vorwort Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig Danksagungen Die Autoren XIII XV XV XVII XVIII XVIII XIX Teil I:

Mehr

Objektorientierte Programmierung Teil 1: Einführung

Objektorientierte Programmierung Teil 1: Einführung Objektorientierte Programmierung Teil 1: Einführung Prof. Dr. Schoop FHT Esslingen, Sommersemester 2005 Agenda Beispielszenario Eigenschaften des objektorientierten Ansatzes Konzepte des objektorientierten

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

EDV-Umstellung Sparkassen-Rechenzentrum

EDV-Umstellung Sparkassen-Rechenzentrum EDV-Umstellung Sparkassen-Rechenzentrum Ablauf der Umstellung für HBCI in SFirm32 Kundenleitfaden Ausgabe Juni 2009 Version: 9.06.00 vom 26.06.2009 SFirm32-Version: 2.2.2 Inhalt 1 Die SFirm32-Umstellungsassistenten...4

Mehr

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden:

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden: Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1 Vergleich der Zerlegungsmethoden Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden: Vergleich nach Ergebnissen

Mehr

Schulcurriculum Informationstechnische Grundkenntnisse und Informatik Stand: 18.09.2011

Schulcurriculum Informationstechnische Grundkenntnisse und Informatik Stand: 18.09.2011 Bezug zu den Leitideen der Bildungsstandards und den Kompetenzen, Inhalte Bemerkungen welche die Schülerinnen und Schüler erwerben Klasse 11 Informatik 4-stündig Einführung in die objektorientierte Modellierung

Mehr

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen 1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.3 Datenabstraktion - 1 - public class Rechteck { Selektoren

Mehr

Was ist Software-Architektur?

Was ist Software-Architektur? Was ist Software-Architektur? Stephan Schulze Martin Knobloch 28.04.2004 Seminar: Software-Architektur Humboldt Universität zu Berlin sschulze knobloch@informatik.hu-berlin.de Gliederung Begriffsbestimmung

Mehr

1. Java ist... 2. Stammbaum der Programmiersprachen 3. Die "Softwarekrise"

1. Java ist... 2. Stammbaum der Programmiersprachen 3. Die Softwarekrise im Überblick im Überblick Inhalt 1. Java ist... 2. Stammbaum der Programmiersprachen 3. Die Softwarekrise 1. Merkmale von Software 2. Fortlaufende Veränderungen 3. Erschwerte Rahmenbedingungen bei der

Mehr

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges

Agenda. Clients aus drei verschiedenen Perspektiven: Was ist ein Dialog? Komponentenarchitektur innerhalb eines Dialoges Komponentenbasierte Client-Architektur Hamburg, 16.11.2007 Bernd Olleck IT-Beratung Olleck Agenda Clients aus drei verschiedenen Perspektiven: Technische Infrastruktur Fachliche Sicht Aufgaben eines Clients

Mehr

Virtualisierter Terminalserver

Virtualisierter Terminalserver Virtualisierter Terminalserver 1. Virtualisierung Virtualisierung bezeichnet in der Informatik laut Wikipedia die Nachbildung eines Hard- oder Software- Objekts durch ein ähnliches Objekt vom selben Typ

Mehr

C1: Tabellenkalkulation Daten und Relationen (14)

C1: Tabellenkalkulation Daten und Relationen (14) C1: Tabellenkalkulation Daten und Relationen (14) Die Schüler lernen komplexere Aufgaben zu strukturieren und dafür passende Lösungsansätze auch unter Verwendung von Auswahlstrukturen zu finden. Bei der

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 1/21 Informationsverarbeitung im Bauwesen Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2010/2011 Vorlesung 8

Mehr

24 Transformation der Anforderungsspezifikation

24 Transformation der Anforderungsspezifikation 271 24 Transformation der Anforderungsspezifikation 24.1 Einleitung Bei der Softwarespezifizierung wird die Anforderungsspezifikation überarbeitet, weiter strukturiert und präzisiert, um eine Basis für

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

Programmiersprachen. Organisation und Einführung. Berthold Hoffmann. Studiengang Informatik Universität Bremen

Programmiersprachen. Organisation und Einführung. Berthold Hoffmann. Studiengang Informatik Universität Bremen Organisation und Einführung Studiengang Informatik Universität Bremen Sommersemester 2010 (Vorlesung am Montag, der 12. April 2010) (Montag, der 12. April 2008) 1 Vorstellung 2 Organisation 3 Einführung

Mehr

Softwaretechnik Folge 8 Methoden für Entwurf und Realisierung

Softwaretechnik Folge 8 Methoden für Entwurf und Realisierung Skript zur Vorlesung Softwaretechnik Folge 8 Methoden für Entwurf und Realisierung IT Kompaktkurs Sommersemester 2001 Prof. Dr. Herbert Fischer Fachhochschule Deggendorf 1 Methoden für Entwurf und Realisierung

Mehr

Requirements Engineering Die Dinge von Anfang an richtig machen

Requirements Engineering Die Dinge von Anfang an richtig machen Requirements Engineering Die Dinge von Anfang an richtig machen Martin Glinz www.ifi.uzh.ch/~glinz Erstes Requirements Engineering Forum Zürich, 13. November 2008 Universität Zürich Institut für Informatik

Mehr

codia Schriftgutverwaltung / Aktenplan

codia Schriftgutverwaltung / Aktenplan codia Schriftgutverwaltung / Aktenplan codia Software GmbH Auf der Herrschwiese 15a 49716 Meppen Telefon: 0 59 31/93 98 0 Telefax: 0 59 31/93 98 25 E-Mail: info@codia.de Internet: www.codia.de [1] 1 codia

Mehr

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung

Block R (Rahmen): SE Aktivitäten 21.10.04 2. Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung Block R (Rahmen): SE Aktivitäten 21.10.04 1 Vorlesung Methoden des Software Engineering Block R Rahmen Aktivitäten der Software-Entwicklung Martin Wirsing Einheit R.2, 21.10.2004 Block R (Rahmen): SE Aktivitäten

Mehr

Software Engineering. Dokumentation. Wintersemester 2005/06. Kapitel 21. Universität Zürich Institut für Informatik

Software Engineering. Dokumentation. Wintersemester 2005/06. Kapitel 21. Universität Zürich Institut für Informatik Martin Glinz Harald Gall Software Engineering Wintersemester 2005/06 Kapitel 21 Dokumentation Universität Zürich Institut für Informatik 2006 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe

Mehr

SEAL Systems Integrationen für SAP PLM 7 und Web UI Anwendungen

SEAL Systems Integrationen für SAP PLM 7 und Web UI Anwendungen SEAL Systems Integrationen für SAP PLM 7 und Web UI Anwendungen Mit SAP PLM 7 und anderen Web UI Anwendungen hat SAP neue Oberflächen für bestehende und neue Funktionalität geschaffen. Diese Anwendungen

Mehr

6 Produktqualität Systeme: Integrationstest [sehr stark gekürzt]

6 Produktqualität Systeme: Integrationstest [sehr stark gekürzt] 1 Software-Qualitätssicherung 2 Integrationsstrategien big bang 6 Produktqualität Systeme: Integrationstest [sehr stark gekürzt] nicht-inkrementell geschäftsprozeßorientiert Prof. Dr. Helmut Balzert Lehrstuhl

Mehr

VS Praktikum 03 Konzept

VS Praktikum 03 Konzept Darstellung der Architektur: Manager VS Praktikum 03 Konzept Account 3 3 7 6 NameServiceServer 4 5 2 1 2 1 Geldautomat Filiale Messagearten: Für jede unterschiedliche Message gibt es eine eigene Klasse:

Mehr

Softwarearchitekturen I Softwareentwicklung mit Komponenten

Softwarearchitekturen I Softwareentwicklung mit Komponenten Softwarearchitekturen I Softwareentwicklung mit Komponenten Detlef Streitferdt Technische Universität Ilmenau TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Softwarearchitekturen I 1 Beispiel: Bibliothekssystem

Mehr

Requirements Engineering I. Verwalten von Anforderungen!

Requirements Engineering I. Verwalten von Anforderungen! Martin Glinz Requirements Engineering I Kapitel 14 Verwalten von Anforderungen! 2010-2011 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

1. Grundbegriffe des Software-Engineering

1. Grundbegriffe des Software-Engineering 1. Grundbegriffe Software Engineering 1 1. Grundbegriffe des Software-Engineering Was ist Software-Engineering? (deutsch: Software-Technik) Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen

Mehr

Softwarearchitekturstile (Stichworte)

Softwarearchitekturstile (Stichworte) Softwarearchitekturstile (Stichworte) Udo Kelter 01.07.2009 Zusammenfassung dieses Lehrmoduls Die Architektur eines Softwaresystems ist entscheidend für das Management der Systementwicklung und für die

Mehr

nessbase Projekte Über Projekte I

nessbase Projekte Über Projekte I nessbase Projekte Über Projekte I nessbase Projekte ist eine Erweiterung für nessbase, die es ermöglicht, eine Projekt Verwaltung zu führen. Diese Erweiterung besteht aus der Formular Datei und Externals,

Mehr

Berichte aus der Medizinischen Informatik und Bioinformatik. Günther Schadow. Krankenhauskommunikation mit HL7

Berichte aus der Medizinischen Informatik und Bioinformatik. Günther Schadow. Krankenhauskommunikation mit HL7 Berichte aus der Medizinischen Informatik und Bioinformatik Günther Schadow Krankenhauskommunikation mit HL7 Analyse, Implementation und Anwendungeines Protokollstandards für medizinische Datenkommunikation

Mehr

Praxis-Workshop Tipps & Tricks zur Arbeit mit BSCW

Praxis-Workshop Tipps & Tricks zur Arbeit mit BSCW Praxis-Workshop Tipps & Tricks zur Arbeit mit BSCW Anwenderforum 2015 Fraunhofer-Institut für Angewandte Informationstechnik FIT OrbiTeam Software GmbH & Co. KG Sankt Augustin, 27.05.2015 www.orbiteam.de

Mehr

Objektorientiertes Software-Engineering

Objektorientiertes Software-Engineering Objektorientiertes Software-Engineering TIT99BPE/TIT99CPE BA Mannheim WS 2001/2 F. Schönleber Organisatorisches Kurs 1: TIT99BPE 6.Studienhalbjahr Termin Mo. 13.00 14.30 Raum: 037B Kurs 1: TIT99CPE 6.Studienhalbjahr

Mehr

Entwicklungswerkzeuge

Entwicklungswerkzeuge Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner

Mehr

Java Einführung Objektorientierte Grundkonzepte

Java Einführung Objektorientierte Grundkonzepte Java Einführung Objektorientierte Grundkonzepte Inhalt Verständnis der grundlegenden Konzepte der Objektorientierung: Objekte Nachrichten Kapselung Klassen und Instanzen Vererbung Polymorphismus Darstellung

Mehr

Informatik mit Delphi

Informatik mit Delphi Eckart Modrow Informatik mit Delphi Band 2 für Unterricht und Selbststudium Zeiger und dynamische Datenstrukturen objektorientierte Programmierung abstrakte Datentypen Komplexität Dateien SQL-Datenbanken

Mehr

Message Oriented Middleware am Beispiel von XMLBlaster

Message Oriented Middleware am Beispiel von XMLBlaster Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de

Mehr

Installation des edu- sharing Plug- Ins für Moodle

Installation des edu- sharing Plug- Ins für Moodle Installation des edu- sharing Plug- Ins für Moodle [edu-sharing Team] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu- sharing / metaventis

Mehr

Netzwerk Technologien in LabVIEW

Netzwerk Technologien in LabVIEW Netzwerk Technologien in LabVIEW von Dirk Wieprecht NI Germany Hier sind wir: Agenda Agenda Bedeutung des Ethernet für die Messtechnik Ethernet-basierende Technologien in LabVIEW Low Level- TCP/IP Objekt

Mehr

01. Grundprinzipien der Vererbung

01. Grundprinzipien der Vererbung 01. Grundprinzipien der Vererbung 1.1 Grundidee der Vererbung Bei der Analyse eines Problems (z.b. Baukasten) stellt man beispielsweise fest, dass 67 % an Daten/Funktionen immer vorkommen 25 % an Daten/Funktionen

Mehr

Informationssystemanalyse Use Cases 11 1

Informationssystemanalyse Use Cases 11 1 Informationssystemanalyse Use Cases 11 1 Use Cases Slide 1 Als ein populäres Mittel um Anforderungen zu erfassen und Systeme zu beschreiben, werden Use Cases benutzt. Sie bilden die Basis für eine umfassendere

Mehr

Kapitel 2: Der Software-Entwicklungsprozess

Kapitel 2: Der Software-Entwicklungsprozess Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken

Mehr

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:

Mehr

(27 - Selbstanordnende lineare Listen)

(27 - Selbstanordnende lineare Listen) Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 - Selbstanordnende lineare Listen) Prof. Dr. Susanne Albers Problemstellung Gegeben sei eine Menge von Objekten (Schlüsseln), auf die mit zeitlich

Mehr

Inhaltsverzeichnis. Vorwort...XIII. Aufbau des Buches...

Inhaltsverzeichnis. Vorwort...XIII. Aufbau des Buches... Inhaltsverzeichnis Vorwort...XIII Aufbau des Buches............................................... XV 1 Von der Idee zur Software..................................... 1 1.1 Beispielanwendung... 1 1.2 Schritte

Mehr

Referenzarchitekturmodell Industrie 4.0 (RAMI 4.0) Eine Einführung

Referenzarchitekturmodell Industrie 4.0 (RAMI 4.0) Eine Einführung Referenzarchitekturmodell Industrie 4.0 (RAMI 4.0) Eine Einführung Schöne neue Welt Foto BillionPhotos.com Fotolia Das Internet der Dinge und Dienstleistungen Smart Meter Smart Home Smart Building Smart

Mehr

Projektmanagement: Werkzeuge & Methoden

Projektmanagement: Werkzeuge & Methoden Projektmanagement: Werkzeuge & Übersicht & Klassifikationen für Projektmitarbeiter Stand: 06/2016 Sie finden diese und weitere Präsentationen unter ( Klick): http://www.peterjohannconsulting.de/praesentationen

Mehr

Requirements Engineering. Requirements Engineering. Requirements Engineering. Requirements Engineering. Requirements Engineering

Requirements Engineering. Requirements Engineering. Requirements Engineering. Requirements Engineering. Requirements Engineering 1. Einführung Bemerkungen 2. Analyse Methoden/Techniken 3. Entwurf Notationsformen 4. Werkzeugunterstützung Erfahrungen 5. Usability Test Hinweise Peter Forbrig zu 1. 1 1. Einführung SE versus HCI Analyse

Mehr

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Leistungsbeschreibung. PHOENIX Archiv. Oktober 2014 Version 1.0

Leistungsbeschreibung. PHOENIX Archiv. Oktober 2014 Version 1.0 Leistungsbeschreibung PHOENIX Archiv Oktober 2014 Version 1.0 PHOENIX Archiv Mit PHOENIX Archiv werden Dokumente aus beliebigen Anwendungen dauerhaft, sicher und gesetzeskonform archiviert. PHOENIX Archiv

Mehr

. TYPO3-Plug-in u:cris

. TYPO3-Plug-in u:cris . TYPO3-Plug-in u:cris Zentraler Informatikdienst der Universität Wien Stand: Jänner 2014 TYPO3-Version 4.5 Dieses Handbuch ist eine Übersicht zum Einsatz des TYPO3-Plug-ins u:cris. Naturgemäß würde die

Mehr

Software Engineering I Prof. Dr. Martin Glinz. Fallstudie: Ariane Flug 501. Universität Zürich Institut für Informatik

Software Engineering I Prof. Dr. Martin Glinz. Fallstudie: Ariane Flug 501. Universität Zürich Institut für Informatik Software Engineering I Prof. Dr. Martin Glinz Fallstudie: Ariane Flug 501 Universität Zürich Institut für Informatik Was geschah mit Flug 501? So hätte es aussehen sollen......und so sah es tatsächlich

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

B.4. B.4 Betriebssysteme. 2002 Prof. Dr. Rainer Manthey Informatik II 1

B.4. B.4 Betriebssysteme. 2002 Prof. Dr. Rainer Manthey Informatik II 1 Betriebssysteme Betriebssysteme 2002 Prof. Dr. Rainer Manthey Informatik II 1 Bekannte Betriebssysteme Windows 2000 CMS UNIX MS-DOS OS/2 VM/SP BS 2000 MVS Windows NT Solaris Linux 2002 Prof. Dr. Rainer

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 8 10. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Komponentenbasierte Softwareentwicklung

Komponentenbasierte Softwareentwicklung Seminar WS04 Komponentenbasierte Softwareentwicklung Karl Pauls Software-Komponente A software component is a unit of composition with contractually specified interfaces and explicit context dependencies

Mehr

UML 2 glasklar Praxiswissen für die UML-Modellierung

UML 2 glasklar Praxiswissen für die UML-Modellierung Chris Rupp, Stefan Queins, Barbara Zengler UML 2 glasklar Praxiswissen für die UML-Modellierung ISBN-10: 3-446-41118-6 ISBN-13: 978-3-446-41118-0 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

6 Architektur-Mittel (WOMIT)

6 Architektur-Mittel (WOMIT) 6 Architektur-Mittel (WOMIT) Abb. 6-1: Positionierung des Kapitels im Ordnungsrahmen. Dieses Kapitel befasst sich mit der WOMIT-Dimension des architektonischen Ordnungsrahmens, indem es grundlegende Konzepte

Mehr

Umstellung des Schlüsselpaares der EU von A003 auf A004

Umstellung des Schlüsselpaares der EU von A003 auf A004 Umstellung des Schlüsselpaares der EU von A003 auf A004 Kundenleitfaden Ausgabe März 2007 Version: 7.03.00 vom 19.03.2007 SFirm32-Version: 2.0k-SP1 BIVG Hannover, 2007, Kundenleitfaden - Umstellung A003

Mehr