Software- und Systementwurf - Softwarearchitektur -

Größe: px
Ab Seite anzeigen:

Download "Software- und Systementwurf - Softwarearchitektur -"

Transkript

1 Software- und Systementwurf - Softwarearchitektur - Software Engineering 1 WS 2011/2012 Dr. Ina Schaefer Software Systems Engineering Technische Universität Braunschweig (mit Folien von Prof. B. Rumpe)

2 Überblick Softwareentwurf Ziele Entwurfsprinzipien Architekturentwurf Architekturmuster Service-orientierte Architekturen Dr. Ina Schaefer Software Engineering 1 Seite 2

3 Software-Entwurf Ausgangspunkt: Systemspezifikation (Pflichtenheft) Ziel: Vom WAS" zum WIE": Vorgabe für Implementierung Zentrale Begriffe: Subsystem in sich geschlossen eigenständig funktionsfähig mit definierten Schnittstellen besteht aus Komponenten Komponente Baustein für ein Softwaresystem (z.b. Modul, Klasse, Paket) benutzt andere Komponenten wird von anderen Komponenten benutzt kann auch aus Unterkomponenten bestehen Dr. Ina Schaefer Software Engineering 1 Seite 3

4 Von der Analyse zum Entwurf Analyse! Anforderungs-" Ermittlung" Anforderungs-" Spezifikation" (Lastenheft)" System-" Spezifikation" (Pflichtenheft)" System-" Modellierung" Entwurf! Dr. Ina Schaefer Software Engineering 1 Seite 4

5 Gliederung des Entwurfsprozesses Architekturentwurf Subsystem-Spezifikation Schnittstellen-Spezifikation Gesamtstruktur des Systems (Grobentwurf) Komponentenentwurf Datenstrukturentwurf Algorithmenentwurf Detailstruktur des Systems (Feinentwurf) Grobentwurf: weitgehend unabhängig von Implementierungssprache Feinentwurf angepasst an die Implementierungssprache und Plattform Dr. Ina Schaefer Software Engineering 1 Seite 5

6 Arbeitsteilung beim Entwurf Architekturentwurf Entwurf Subsystem 1 Entwurf Schnittstelle 1 2 Entwurf Subsystem 2 Entwurf Schnittstelle 2... Entwurf Subsystem... Entwurf der Komponenten Dr. Ina Schaefer Software Engineering 1 Seite 6

7 Kriterien für "guten" Entwurf Korrektheit Erfüllung der Anforderungen Wiedergabe aller Funktionen des Systemmodells Sicherstellung der nichtfunktionalen Anforderungen Verständlichkeit & Präzision Gute Dokumentation Anpassbarkeit Hohe Kohäsion innerhalb der Komponenten Schwache Kopplung zwischen den Komponenten Wiederverwendung Diese Kriterien gelten auf allen Ebenen des Entwurfs (Architektur, Subsysteme, Komponenten). Dr. Ina Schaefer Software Engineering 1 Seite 7

8 Kohäsion Kohäsion ist ein Maß für die Zusammengehörigkeit der Bestandteile einer Komponente. Hohe Kohäsion einer Komponente erleichtert Verständnis, Wartung und Anpassung. Frühere Ansätze zur Kohäsion wie: ähnliche Funktionalitäten zusammenfassen führten nicht unbedingt zu stabiler Systemstruktur Bessere Kohäsion wird erreicht durch: Prinzipien der Objektorientierung (Datenkapselung) Einhaltung von Regeln zur Paketbildung Verwendung geeigneter Muster zu Kopplung und Entkopplung "Kohärente" Klasse: Es gibt keine Partitionierung in Untergruppen von zusammengehörigen Operationen und Attributen Dr. Ina Schaefer Software Engineering 1 Seite 8

9 Kopplung Kopplung ist ein Maß für die Abhängigkeiten zwischen Komponenten. Geringe Kopplung erleichtert die Wartbarkeit und macht Systeme stabiler. Arten der Kopplung: Datenkopplung (gemeinsame Daten) Schnittstellenkopplung (gegenseitiger Aufruf) Strukturkopplung (gemeinsame Strukturelemente) Reduktion der Kopplung: Kopplung kann nie auf Null reduziert werden! Schnittstellenkopplung ist akzeptabel, da höhere Flexibilität Datenkopplung vermeiden! aber durch Objektorientierung meist gegeben Strukturkopplung vermeiden! z.b. keine Vererbung über Paketgrenzen hinweg Entkopplungsbeispiel: getter/setter-methoden statt direkter Attributzugriff Dr. Ina Schaefer Software Engineering 1 Seite 9

10 Interne Wiederverwendung Interne Wiederverwendung (reuse) ist ein Maß für die Ausnutzung von Gemeinsamkeiten zwischen Komponenten Reduktion der Redundanz Erhöhung der Stabilität und Ergonomie Hilfsmittel für Wiederverwendung: im objektorientierten Entwurf: Vererbung, Parametrisierung im modularen und objektorientierten Entwurf: Module/Objekte mit allgemeinen Schnittstellen (Interfaces) Aber: Wiederverwendung kann die Kopplung erhöhen: Schnittstellenkopplung und Strukturkopplung Dr. Ina Schaefer Software Engineering 1 Seite 10

11 Entwurfsschritte Analyse! Anforderungs-" Ermittlung" Anforderungs-" Spezifikation" (Lastenheft)" System-" Spezifikation" (Pflichtenheft)" System-" Modellierung" Architektur-" Spezifikation" Architektur-" Entwurf" Klassen- bzw. Modul-" Spezifikationen" Entwurf! Detail-" Entwurf" Dr. Ina Schaefer Software Engineering 1 Seite 11

12 Architekturentwurf im Kontext der SW-Entwicklung Anforderungsanalyse, Domänenanalyse" Entwurf der Softwarearchitektur" Entwurf der Systemarchitektur, Auswahl der Hardware" Feindesign, Programmierung, Integration, Testen, Auslieferung" Dr. Ina Schaefer Software Engineering 1 Seite 12

13 Softwarearchitektur in der Praxis Architekturspezifikation wird zu oft nicht als separates Dokument gefordert. Häufig wird funktionale Spezifikation und Architekturspezifikation in einem Dokument realisiert. denn WAS zu spezifizieren, ohne auf grobe Strukturen des WIE einzugehen ist oft nicht möglich. Dennoch: die grobe Systemarchitektur wird der Entwurfs-Aktivität zugeordnet Ist Hardware involviert (Steuergeräte im Auto, Telekommunikations- Anlagen etc.), so wird oft bereits dadurch eine physische Architektur vorgegeben. (Sinnvoll: Architekturskizzen bereits in der Anforderungsbeschreibung.) Logische Systemarchitektur und physische Architektur sind nicht notwendig identisch. Dr. Ina Schaefer Software Engineering 1 Seite 13

14 Beispielarchitektur Dr. Ina Schaefer Software Engineering 1 Seite 14

15 4+1 Sichten -Modell der Softwarearchitektur Logische Sicht Entwurfssicht Szenarien Ablaufsicht Physikalische Sicht Philippe Kruchten, The 4+1 view model of architecture, IEEE Software, November 1995, 12(6), pp (Verwendung im Rational Unified Process - RUP) Dr. Ina Schaefer Software Engineering 1 Seite 15

16 Bestandteile der 4+1 Sichten Logische Sicht Klassenmodell Verfeinerung des Analysemodells Ablaufsicht Prozesse Koordination Szenarien Use-Cases Entwurfssicht Subsysteme Schnittstellen Grobentwurf Physikalische Sicht Komponenten Hardwaresysteme Netze Feinentwurf Dr. Ina Schaefer Software Engineering 1 Seite 16

17 Primäre Zielgruppe und Aufgabe der Sichten Logische Sicht Endanwender Entwurfssicht Programmierung Wartung Grobentwurf Ablaufsicht System-Integratoren (Performanz, Durchsatz...) Physikalische Sicht Kommunikation Verteilung Auslieferung, Installation Feinentwurf Dr. Ina Schaefer Software Engineering 1 Seite 17

18 Blockdiagramme Blockdiagramme sind kein Bestandteil von UML! (Gleichwertige Notation in UML: Implementierungsdiagramm) Blockdiagramme sind ein verbreitetes Hilfsmittel zur Skizzierung der logischen Struktur einer Systemarchitektur. Schnittstelle Subsystem umfasst Objekte bestimmter Klassen." Schnittstelle ist klar definiert. (z.b. Aufrufschnittstelle, Kommunikationsprotokoll)" Subsystem Umfassendes Subsystem Dr. Ina Schaefer Software Engineering 1 Seite 18

19 UML Komponentendiagramme Das Komponenten-Diagramm stellt die (logischen) Komponenten des Systems und deren Schnittstellen (Ports) dar. Architektur: Anwendung UI Bank UI = User Interface = Benutzerschni7stelle/ Benutzeroberfläche GUI = Graphical User Interface = grafische Benutzerschni7stelle Dr. Ina Schaefer Software Engineering 1 Seite 19

20 Komponenten Name der Komponente HTTP Webservice «component» WebInterface optionaler grafischer Stereotyp Database bereitgestellte Schnittstelle benötigte Schnittstelle Dr. Ina Schaefer Software Engineering 1 Seite 20

21 Komposition von Komponenten Port! benötigte! Schnittstelle! Zusammengesetzte! Komponente! Komponente! A" bereitgestellte! Schnittstelle! D" B" C" D" A" analoges Blockdiagramm B" C" Dr. Ina Schaefer Software Engineering 1 Seite 21

22 Konfigurationsdiagramme Konfigurationsdiagramme sind (noch) nicht Bestandteil von UML! Konfigurationsdiagramme sind das meistverbreitete Hilfsmittel zur Beschreibung der physikalischen Verteilung von System- Komponenten. Rechner, Knoten Lokales Kommunikationsnetz Speicherndes System Datenkommunikations- Netz Dr. Ina Schaefer Software Engineering 1 Seite 22

23 UML: Verteilungsdiagramm engl.: deployment diagram zeigt die physische Verteilung von Systemen Node (Knoten) <<processor>>" Client" Stereotypen kennzeichnen die Arten von Knoten <<network>> local network" <<processor>>" Server 1" <<processor>>" Server 2" A" B" Komponenten können zugeordnet werden Dr. Ina Schaefer Software Engineering 1 Seite 23

24 Beispiel Terminverwaltung PC1"..." PCn" PDA1" PDAm" Physikalische! Konfiguration" Termin-" Server" Anzeigetafel-" Steuerung" PC Client" PDA Client" Blockdiagramm" PDA Sync" Termin-Manager" Daten-" Export" Termin-Datenbank" Dr. Ina Schaefer Software Engineering 1 Seite 24

25 Kriterien für guten Entwurf Wie bereits diskutiert ist auf Kohäsion und Kopplung zu achten: Hohe Kohäsion: Kohäsion = "Zusammenhalt" Die Dinge sollen in Struktureinheiten zusammengefasst werden, die inhaltlich zusammengehören. Niedrige Kopplung: Kopplung = Abhängigkeiten Einzelne Struktureinheiten sollen möglichst unabhängig voneinander sein. Daneben allgemeine Eigenschaften, z.b.: Korrektheit, Anpassbarkeit, Verständlichkeit, Ressourcenschonung Dr. Ina Schaefer Software Engineering 1 Seite 25

26 Hohe Kohäsion und Niedrige Kopplung Subsystem A! " (z.b. Benutzungs-" oberfläche)" Hohe Kohäsion: Subsystem B darf keine Information und Funktionalität enthalten, die zum Zuständigkeitsbereich von A gehört und umgekehrt. Subsystem B!! (z.b. fachlicher Kern)" Niedrige Kopplung: Es muss möglich sein, Subsystem A weitgehend auszutauschen oder zu verändern, ohne Subsystem B zu verändern. Änderungen von Subsystem B sollten nur möglichst einfache Änderungen in Subsystem A nach sich ziehen. Dr. Ina Schaefer Software Engineering 1 Seite 26

27 Qualitätssicherung mittels Szenarien Szenarien (für Anwendungsfälle) sind von zentraler Bedeutung: Integration der verschiedenen Sichten Kriterium für Architekturbewertung (Auswahl alternativer Muster) Qualitätssicherung (Review) Bewertung für Softwarearchitekturen: Architektur(en) festlegen Im Architekturentwurf: Alternativen Bei der abschließenden Qualitätssicherung: gewählte Architektur Szenarien durchspielen Direkte Szenarien : Auf der Architektur gut realisierbar Indirekte Szenarien : Nur nach Architekturerweiterung realisierbar Architekturen bewerten nach: Anzahl der direkten Szenarien Aufwand zur Modifikation für indirekte Szenarien Abschätzung der Effizienz Dr. Ina Schaefer Software Engineering 1 Seite 27

28 Architekturmuster für die Entwurfssicht Struktursicht der Architektur: Zerlegung in Subsysteme eigenständiger Funktionalität Keine Aussage über physikalische Verteilung Darstellung meist durch Blockdiagramme: Subsystem Datenfluss-Schnittstelle Aufrufschnittstelle Muster (Architekturmuster, Architekturstile): Kette (Chain) Schichten Interpreter Model-View-Controller (MVC) Dr. Ina Schaefer Software Engineering 1 Seite 28

29 Architekturmuster Pipes & Filters Phase 2.1 Phase 1 Phase 3 Phase 2.2 Zwischenprodukt 1.1 Zwischenprodukt 1.2 Zwischenprodukt 2.1 Zwischenprodukt 2.2 Deutsch auch Kette Inkrementelle oder phasenweise Verarbeitung Beispiele: UNIX pipes Batch-sequentielle Systeme Compiler-Grundstruktur Dr. Ina Schaefer Software Engineering 1 Seite 29

30 Beispiel: Compiler-Architektur Instanz von Pipes & Filters : Kombination von Ketten Quell- Programm Tokens Syntaxbaum Ziel- Programm Scanner Parser Code- Generator Symboltabelle Fehlermeldungen Fehler- Ausgabe Fehlermeldungen Dr. Ina Schaefer Software Engineering 1 Seite 30

31 Architekturmuster "Schichten" Benutzer Schicht 2 Schicht 1 Systemkern Jede Schicht bietet Dienste (nach oben) und nutzt Dienste (von unten) Beispiele: Kommunikationsprotokolle Datenbanksysteme, Betriebssysteme Dr. Ina Schaefer Software Engineering 1 Seite 31

32 Beispiel: 3-Schichten-Referenzarchitektur Benutzungsschnittstelle Fachlicher Kern Persistenzschicht Entwurfsregeln: Benutzungsschnittstelle greift nie direkt auf Datenhaltung zu. Persistenzschicht verkapselt Zugriff auf Datenhaltung, ist aber nicht identisch mit dem Mechanismus der Datenhaltung (z.b. Datenbank). Fachlicher Kern basiert auf dem Analyse-Modell Erlaubt das Aufsetzen von interaktiven, batch, etc. Benutzerschnittstellen und den Austausch von Datenbanken Dr. Ina Schaefer Software Engineering 1 Seite 32

33 Variante: 3-Schichten-Referenzarchitektur Benutzungsschnittstelle Fachlicher Kern Systemfunktionen Persistenzschicht Beispiele für Systemfunktionen: Verkapselung von plattformspezifischen Funktionen Schnittstellen zu Fremdsystemen Dr. Ina Schaefer Software Engineering 1 Seite 33

34 Architekturmuster "Interpreter" Benutzer Programm Abstrakte Maschine Basissystem Schichtenarchitektur mit Parametrisierung Beispiele: Portable Sprachimplementierung (z.b. Java Virtual Machine) Emulation von Systemarchitekturen (z.b. Soft Windows) Dr. Ina Schaefer Software Engineering 1 Seite 34

35 Model-View-Controller Controller (Programmsteuerung) Wählt View aus Bildet Nutzereingaben auf Modelupdates ab View (Darstellung der Daten) Fordert Update des Models an Sendet Nutzereingaben an Controller Model (Datenhaltung) Benachrichtigt über Änderungen Dr. Ina Schaefer Software Engineering 1 Seite 35

36 Architekturmuster für die physikalische Sicht Physikalische Sicht der Architektur: Aufteilung der Funktionalität auf Knoten (Rechner) eines Netzes Darstellung meist durch Konfigurationsdiagramme: Knoten Kommunikation Muster (Verteilungsmuster): Zentrales System Client/Server: Two-Tier (Thin-Client, Fat-Client) Three-Tier (GUI; Applikationskern, Datenhaltung) Föderation Cloud Computing Dr. Ina Schaefer Software Engineering 1 Seite 36

37 Verteilungsmuster "Zentrales System" "Unintelligentes" Terminal Zentrales System Beispiele: Klassische Großrechner-("Mainframe"-)Anwendungen Noch einfachere Variante: Lokale PC-Anwendungen (identifizieren Zentrale und Terminal) Dr. Ina Schaefer Software Engineering 1 Seite 37

38 Verteilungsmuster "Client/Server" "Intelligenter" Client Server Sogenannte "Two-Tier" Client/server-Architektur Andere Namen: "Front-end" für "Client", "Back-end" für "Server" Client: Benutzungsschnittstelle Einbindung in Geschäftsprozesse Entkoppelt von Netztechnologie und Datenhaltung Server: Datenhaltung, evtl. Fachlogik Dr. Ina Schaefer Software Engineering 1 Seite 38

39 "Thin-Client" und "Fat-Client" Thin-Client: Nur die Benutzungsschnittstelle auf dem Client-System Ähnlich zu Zentralem System, aber oft Download- Mechanismen Anwendungen: "Screen-Scraping" (Umsetzung traditioneller Benutzungsschnittstellen in moderne Technologie) Fat-Client: Teile der Fachlogik (oder gesamte Fachlogik) auf dem Client- System Hauptfunktion des Servers: Datenhaltung Entlastung des Servers Zusätzliche Anforderungen an Clients (z.b. Installation von Software) Dr. Ina Schaefer Software Engineering 1 Seite 39

40 Verteilungsmuster "Three-Tier Client/Server" "Intelligenter" Client Anwendungs- Server Server Client: Benutzungsschnittstelle evtl. Fachlogik Anwendungsserver: evtl. Fachlogik Verteilung von Anfragen auf verschiedene Server Server: Datenhaltung, Rechenleistung etc. Kommunikation unter Servern meist breitbandig. Dr. Ina Schaefer Software Engineering 1 Seite 40

41 Verteilungsmuster "Föderation" Knoten 1 Knoten 2 Knoten 5 Knoten 3 Knoten 4 Gleichberechtigte Partner (peer-to-peer) Unabhängigkeit von der Lokation und Plattform von Funktionen Verteilte kommunizierende Objekte Dr. Ina Schaefer Software Engineering 1 Seite 41

42 Cloud Computing Abstraktion von konkreten IT-Resourcen (z. B. Rechenkapazität, Datenspeicher, Netzwerkkapazitäten oder auch fertige Software) Resourcen werden dynamisch nach Bedarf zur Verfügung gestellt. Client Client Dienst Dienst Dienst Client Client Dr. Ina Schaefer Software Engineering 1 Seite 42

43 Cloud Computing (2) Üblicherweise Unterscheidung von 3 Ebenen der Cloud-Dienste: Infrastructure as a Service (IaaS): Zugang zu virtualisierten Hardware-Ressourcen, wie Rechnern, Netzwerken und Speicher. Platform as a Service (PaaS): Zugang zu Programmierungs- oder Laufzeitumgebungen mit flexiblen, dynamisch anpassbaren Rechen- und Datenkapazitäten. Entwicklung eigener Software-Anwendungen innerhalb einer Softwareumgebung, die vom Dienstanbieter (Service Provider) bereitgestellt und unterhalten wird. Software as a Service (SaaS) oder Software on demand: Zugang zu Software-Bibliotheken und Anwendungsprogrammen. Dr. Ina Schaefer Software Engineering 1 Seite 43

44 Architekturmuster der Ablaufsicht Ablaufsicht der Architektur: Definition nebenläufiger Systemeinheiten (z.b. Prozesse) Steuerung der Abfolge von Einzelfunktionen Synchronisation und Koordination Reaktion auf externe Ereignisse Darstellung z.b. durch Sequenzdiagramme Muster (Steuerungsmuster): Zentrale Steuerung Call-Return Master-Slave Ereignis-Steuerung Selective Broadcast Interrupt Dr. Ina Schaefer Software Engineering 1 Seite 44

45 Steuerungsmuster "Call-Return" Hauptprogramm Unterprogramm 1 Unterprogramm 1.1 Unterprogramm 1.2 Dr. Ina Schaefer Software Engineering 1 Seite 45

46 Steuerungsmuster "Master-Slave" Manager Benutz.- oberfläche Sensor Aktuator Dr. Ina Schaefer Software Engineering 1 Seite 46

47 Steuerungsmuster "Selective Broadcast" Event Handler Subsystem 1 Subsystem 2 Subsystem 3 Ereignis e e Ereignis e' e' e e' e e' Dr. Ina Schaefer Software Engineering 1 Seite 47

48 Steuerungsmuster "Interrupt" Interrupt Dispatcher Handler 1 Handler 2 e Prozess 2 e Prozess 1 Verwendet Interrupt-Vektor Dr. Ina Schaefer Software Engineering 1 Seite 48

49 Zusammenfassung Architekturmuster Architekturmuster beschreiben erprobte Strukturierungsformen für die Architektur eines Systems Architekturmuster beschreiben: Entwurfsstruktur physikalische Verteilung Kommunikationsformen und protokolle Schichtenbildung ist ein mächtiges Strukturierungsmittel Dr. Ina Schaefer Software Engineering 1 Seite 49

50 Service-orientierte Architektur Die Service-orientierte Architektur (SOA) ist ein Architekturparadigma mit folgenden Zielen: Erleichterung der Entwicklung von großen Unternehmenssystemen Orientierung an Geschäftsprozessen Integration von heterogenen Anwendungen Bessere Anpassbarkeit, Erweiterbarkeit und Skalierbarkeit Bessere Weiterentwickelbarkeit und Wartbarkeit Dr. Ina Schaefer Software Engineering 1 Seite 50

51 Begriffsklärung A service oriented architecture is a form of distributed system architecture. It consists of a set of components (services) which can be invoked, and whose interface descriptions can be published and discovered. A service is an abstract resource that represents a capability of performing tasks that form a coherent functionality from the point of view of provider and requester entities. [nach W3C, 2004] Dr. Ina Schaefer Software Engineering 1 Seite 51

52 Services Ein Service kapselt Zugriff auf die Funktionen und Daten einer oder mehrerer Applikationen und erbringt bestimmte Leistung gemäß der Service-Spezifikation. Service-Spezifikation: Servicename und Operationsnamen Ein- und Ausgabedaten mit Typen Beschreibung der Funktionalität (meist textuell) Randbedingungen (Vor- und Nachbedingungen, Invarianten) Nicht-funktionale Eigenschaften (z.b. Performance) ggf. weitere Informationen (z.b. Release, Herkunft,...) Dr. Ina Schaefer Software Engineering 1 Seite 52

53 Verwendung von Services Service Provider (Anbieter): Bietet die Möglichkeit, Funktionen gemäß Spezifikation zu nutzen Implementierung des Services unter Einhaltung der Spezifikation austauschbar Service User (Nutzer): Dem Service Provider ggf. unbekannt Kann Service auch anders nutzen, als vom Provider vorgesehen Kann Funktion auch im Auftrag weiterer Nutzer ausführen Dr. Ina Schaefer Software Engineering 1 Seite 53

54 Service Directory Aufgaben des Service Directory (Verzeichnis): Zentrale Verwaltung von Services Publikation von Service-Spezifikationen Kategorisierung von Services Schnittstellen für Suche nach Services Dr. Ina Schaefer Software Engineering 1 Seite 54

55 Referenzarchitektur Service User ➍ Spezifikation abfragen ➎ Service nutzen ➎ Service Provider ➋ Service suchen ➌ Spezifikation liefern ➊ Spezifikation publizieren Service Directory SOA-Dreieck Dr. Ina Schaefer Software Engineering 1 Seite 55

56 Dr. Ina Schaefer Software Engineering 1 Seite 56 5 Web Services Service User SOAP (über HTTP/SMTP) Service Provider (WDSL) Service Directory (UDDI) SOAP = Simple Object Access Protocol WDSL = Web Service Description Language UDDI = Universal Description Discovery and Integration

57 Designprinzipien Schnittstellenorientierung: Spezifikation abstrahiert von Implementierung. Interoperabilität: Einheitliche Kommunikationsstandards Modularität: Hohe Kohäsion im Service Niedrige Kopplung zwischen Services Bedarfsorientierung: Leistungsumfang entspricht Prozessaktivitäten. Dr. Ina Schaefer Software Engineering 1 Seite 57 5

58 Zusammenfassung Softwareentwurf Ziele und Tätigkeiten Architekturentwurf Prinzipien und Ziele 4-Sichten-Modell der Softwarearchitektur Architekturmuster für Entwurfssicht Verteilungssicht Ablaufsicht Grundbegriffe der Service-orientierten Architekturen Dr. Ina Schaefer Software Engineering 1 Seite 58

Software- und Systementwurf - Softwarearchitektur -

Software- und Systementwurf - Softwarearchitektur - Software- und Systementwurf - Softwarearchitektur - Software Engineering 1 WS 2011/2011 Dr. Ina Schaefer Software Systems Engineering Technische Universität Braunschweig (Folien von Prof. B. Rumpe) Überblick

Mehr

Softwaretechnik Vorlesung. 5. Software- und Systementwurf. Farbe!

Softwaretechnik Vorlesung. 5. Software- und Systementwurf. Farbe! Farbe! Softwaretechnik Vorlesung 5. Software- und Systementwurf Prof. Dr. Bernhard Rumpe Technische Universität Braunschweig http://www.sse-tubs.de/ 5. Software- & Systementwurf 5.1. Entwurfsprinzipien

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

Zusammenfassung. Software Engineering 1 WS 2010/11. Dr.-Ing. Ina Schaefer. Software Systems Engineering TU Braunschweig

Zusammenfassung. Software Engineering 1 WS 2010/11. Dr.-Ing. Ina Schaefer. Software Systems Engineering TU Braunschweig Zusammenfassung Software Engineering 1 WS 2010/11 Dr.-Ing. Ina Schaefer Software Systems Engineering TU Braunschweig Ina Schaefer SE 1 - WS 2010/11 1 Inhalte Vorgehensmodelle Anforderungsanalyse Objektorientierte

Mehr

Inhalt. 3 Architektureller Entwurf... 39 3.1 Modellgeleitete Entwicklung... 39 3.2 Was ist Software-Architektur?... 43

Inhalt. 3 Architektureller Entwurf... 39 3.1 Modellgeleitete Entwicklung... 39 3.2 Was ist Software-Architektur?... 43 1 Was ist Software-Architektur?... 1 1.1 Software-Architektur als Abstraktion... 2 1.2 Software-Architektur als Bauplan... 3 1.3 Software-Architektur-Terminologie... 5 1.4 Was ist Software-Architektur?...

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 1 17. Oktober 2002 www4.in.tum.de/~rumpe/se

Mehr

Die Inhalte der Vorlesung wurden primär auf Basis der Vorlesung Software Engineering von Prof. Dr. Faustmann (FHW Berlin Fachbereich II) erstellt.

Die Inhalte der Vorlesung wurden primär auf Basis der Vorlesung Software Engineering von Prof. Dr. Faustmann (FHW Berlin Fachbereich II) erstellt. Software Engineering Dokumentation von Softwarearchitekturen Die Inhalte der Vorlesung wurden primär auf Basis der Vorlesung Software Engineering von Prof. Dr. Faustmann (FHW Berlin Fachbereich II) erstellt.

Mehr

Service-Orientierte Architekturen

Service-Orientierte Architekturen Hochschule Bonn-Rhein-Sieg Service-Orientierte Architekturen Kapitel 2: Einführung in Service-Orientierte Architekturen Vorlesung im Masterstudiengang Informatik Sommersemester 2010 Prof. Dr. Sascha Alda

Mehr

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN: 978-3-446-42728-0

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN: 978-3-446-42728-0 sverzeichnis Gernot Starke Effektive Softwarearchitekturen Ein praktischer Leitfaden ISBN: 978-3-446-42728-0 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42728-0 sowie im

Mehr

Zusammenfassung. Software Engineering 1 WS 2011/12. Dr.-Ing. Ina Schaefer. Software Systems Engineering TU Braunschweig

Zusammenfassung. Software Engineering 1 WS 2011/12. Dr.-Ing. Ina Schaefer. Software Systems Engineering TU Braunschweig Zusammenfassung Software Engineering 1 WS 2011/12 Dr.-Ing. Ina Schaefer Software Systems Engineering TU Braunschweig Ina Schaefer SE 1 - WS 2011/12 1 Inhalte Vorgehensmodelle Anforderungsanalyse Objektorientierte

Mehr

Softwarearchitekturen für das Internet der Energie

Softwarearchitekturen für das Internet der Energie Softwarearchitekturen für das Internet der Energie Herausforderungen und Anforderungen an die Architektur aus Sicht der Informatik Manfred Broy Lehrstuhl für Software & Systems Engineering Technische Universität

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

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble

Tier-Konzepte. Vertiefungsarbeit von Karin Schäuble Vertiefungsarbeit von Karin Schäuble Gliederung 1. Einführung 3. Rahmenbedingungen in der heutigen Marktwirtschaft 3.1 Situation für Unternehmen 3.2 Situation für Applikationsentwickler 4. Lösungskonzepte

Mehr

Agenda. Einführung und Motivation. Verteilte Objekte und Komponenten. Verteilte Softwarearchitekturen. J2EE-Plattform

Agenda. Einführung und Motivation. Verteilte Objekte und Komponenten. Verteilte Softwarearchitekturen. J2EE-Plattform Agenda Einführung und Motivation Verteilte Objekte und Komponenten Verteilte Softwarearchitekturen J2EE-Plattform J2EE-basierte Softwarearchitektur Aspekte der Verteilung von J2EE-Anwendungen 21 Ziele

Mehr

Design im Softwareentwicklungsprozess. Stand der Dinge & Designziel. fachliche & technische Architektur. generelles Vorgehen bei Grob-Design

Design im Softwareentwicklungsprozess. Stand der Dinge & Designziel. fachliche & technische Architektur. generelles Vorgehen bei Grob-Design Design im Softwareentwicklungsprozess traditionell Geschäftsprozessmodellierung Requirements Engineering Analyse Design Implementierung Tests Design 1 test-getrieben: nur 1. Design top-down hier testgetrieben

Mehr

Verteilte Systemarchitekturen

Verteilte Systemarchitekturen Verteilte Systemarchitekturen Proseminar im WS 09/10 Prof. Sergei Gorlatch, Philipp Kegel, Alexander Ploß Parallele und verteilte Systeme, Westfälische Wilhelms-Universität Münster 17. Juli 2009 Inhalte

Mehr

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Die Unified Modeling Language Die UML (hier in der Version 0.9) ist ein Satz von Notationen zur Beschreibung objektorientierter Softwaresysteme.

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

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.

3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1996 Philippe Kruchten: Rational Unified Process Produkt der Firma Seit 2002 Teil des IBM Konzerns Objektorientiertes

Mehr

1 Objektorientierte Software-Entwicklung

1 Objektorientierte Software-Entwicklung 1 Objektmodellierung 1 Objektorientierte Software-Entwicklung Prof. Dr. Heide Balzert Fachbereich Informatik Fachhochschule Dortmund Heide Balzert 2000 2 Lernziele Wissen, was unter objektorientierter

Mehr

Software Engineering II (IB) Serviceorientierte Architektur

Software Engineering II (IB) Serviceorientierte Architektur Serviceorientierte Architektur Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München SS 2015 Webservices Ziel: flexible programmatische Zusammenarbeit zwischen Servern Bereitstellung

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

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

17 Komponentenbasiertes Software-Engineering

17 Komponentenbasiertes Software-Engineering 17 Komponentenbasiertes Software-Engineering 17.0 Einführung Lernziele Grundlagen, Prinzipien und Probleme des CBSE 17.1 Komponenten und Komponentenmodelle Komponenten und ihre Eigenschaften Komponentenmodelle

Mehr

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Inhalt Projektvorstellung Übung 1 Wiederholung zusammengefasst Planungsphase Lernziele Ziele und Inhalt der Planungsphase Anlass und Aufgabestellung(Was ist dabei erförderlich) Requirement Engineering

Mehr

Software-Lebenszyklus

Software-Lebenszyklus Software-Lebenszyklus Inhalt Vorgehensmodell/Phasenplan Wasserfallmodell WAS-Beschreibung WIE-Beschreibung Weitere Phasenmodelle: Spiral-Modell, V-Modell, RUP Extreme Programming SW-Qualitätssicherung

Mehr

Cloud Computing Chancen für KMU

Cloud Computing Chancen für KMU Cloud Computing Chancen für KMU Sascha A. Peters Cluster Manager IT FOR WORK 31. Oktober 2012 Cloud Computing Worüber reden alle? Fragen zum Thema Cloud Was ist Cloud Computing und wofür wird es genutzt?

Mehr

Stefan Zörner. Softwarearchitekturen dokumentieren und kommunizieren

Stefan Zörner. Softwarearchitekturen dokumentieren und kommunizieren Stefan Zörner Softwarearchitekturen dokumentieren und kommunizieren Entwürfe, Entscheidungen und Lösungen nachvollziehbar und wirkungsvoll festhalten Geleitwort von Gernot Starke ISBN: 978-3-446-42924-6

Mehr

Softwaretechnik für den Entwurf

Softwaretechnik für den Entwurf Projektseminar RIKA Wintersemester 1999/2000 18.11.1999 Holm Wegner, Florian Matthes Entwurfsphase: Einordnung Planungsphase Lastenheft Definitionsphase Pflichtenheft Entwurfsphase Produktentwurf Implementierungsphase

Mehr

Stichwortverzeichnis. Effektive Softwarearchitekturen (6. Auflage)

Stichwortverzeichnis. Effektive Softwarearchitekturen (6. Auflage) Stichwortverzeichnis zu Effektive Softwarearchitekturen (6. Auflage) von Gernot Starke ISBN (Buch): 978-3-446-43614-5 ISBN (E-Book): 978-3-446-43653-4 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43614-5

Mehr

Inhaltsverzeichnis. xiii

Inhaltsverzeichnis. xiii Inhaltsverzeichnis 1 Einleitung... 1 1.1 Ausgangslage und Zielsetzung des Buches...2 1.2 Was ist Software-Architektur?...8 1.3 Leser-Leitfaden... 11 1.3.1 Buchaufbau... 11 1.3.2 Zielpublikum... 15 1.3.3

Mehr

Informatikdienste Virtualisierung im Datacenter mit VMware vsphere

Informatikdienste Virtualisierung im Datacenter mit VMware vsphere Virtualisierung im Datacenter mit ware vsphere Luzian Scherrer, ID-IS-SYS1 Virtual Center Virtualisierung im Datacenter mit ware vsphere Luzian Scherrer, ID-IS-SYS1 Cloud SaaS otion DRS ware otion Fault

Mehr

Konzept / Architektur Diagramme

Konzept / Architektur Diagramme Architektur-Modell Konzept / Architektur Diagramme Im Übergang Analyse Design wird das System konzipiert und seine Architektur entworfen: Subsystem-Modell (execution view) UML 1.x Package Diagram «subsystem»

Mehr

Design Patterns. 5. Juni 2013

Design 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

Mehr

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek Speaker Andreas Holubek VP Engineering andreas.holubek@arlanis.com arlanis Software AG, D-14467 Potsdam 2009, arlanis

Mehr

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP 8.4 Überblick und Vergleich weiterer ERP-Systeme G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP Kapitel 8: ERP-Einführung 32 Architektur von Oracle Applications 11 G Logische

Mehr

Institut für Unternehmensinformatik Konzeption eines Service Repository zur Beschreibung von Services in der Cloud

Institut für Unternehmensinformatik Konzeption eines Service Repository zur Beschreibung von Services in der Cloud Institut für Unternehmensinformatik Konzeption eines Service Repository zur Beschreibung von Services in der Cloud Commit Clusterworkshop Datenmanagement Thomas Specht Mannheim, 22.10.2012 Hochschule Mannheim

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

Mobile Backend in. Cloud. Azure Mobile Services / Websites / Active Directory /

Mobile Backend in. Cloud. Azure Mobile Services / Websites / Active Directory / Mobile Backend in Cloud Azure Mobile Services / Websites / Active Directory / Einführung Wachstum / Marktanalyse Quelle: Gartner 2012 2500 Mobile Internet Benutzer Desktop Internet Benutzer Internet Benutzer

Mehr

2.Strukturdiagramme. 2.5 Das Komponentendiagramm 2.6 Das Verteilungsdiagramm. Prof. Mario Jeckle

2.Strukturdiagramme. 2.5 Das Komponentendiagramm 2.6 Das Verteilungsdiagramm. Prof. Mario Jeckle 2.5 Das Komponentendiagramm 2.6 Das Verteilungsdiagramm Prof. Mario Jeckle Fachhochschule Furtwangen mario@ http://www. Fachhochschule Furtwangen, Sommersemester 2004 Das Komponentendiagramm Dient Darstellung

Mehr

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

Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht

Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht Eine Taxonomie und Bewertung von Cloud Computing Diensten aus Entwicklersicht Universität der Bundeswehr München Mario Golling und Michael Kretzschmar Fakultät für Informatik E-Mail: mario.golling@unibw.de

Mehr

IT-Security on Cloud Computing

IT-Security on Cloud Computing Abbildung 1: IT-Sicherheit des Cloud Computing Name, Vorname: Ebert, Philipp Geb.: 23.06.1993 Studiengang: Angewandte Informatik, 3. FS Beruf: IT-Systemelektroniker Abgabedatum: 08.12.2014 Kurzfassung

Mehr

Einführung in die OPC-Technik

Einführung in die OPC-Technik Einführung in die OPC-Technik Was ist OPC? OPC, als Standartschnittstelle der Zukunft, steht für OLE for Process Control,und basiert auf dem Komponentenmodel der Firma Microsoft,dem Hersteller des Betriebssystems

Mehr

SECTINO. Security for Inter-Organizational Workflows

SECTINO. Security for Inter-Organizational Workflows SECTINO Security for Inter-Organizational Workflows Framework zur Modellierung und Realsisierung sicherheitskritischer organisationsübergreifender Workflows Kooperation Research Group Quality Engineering

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 9 Dr. H. Ehler, S. Wagner 11. Januar 2007 Übungen zu Softwaretechnik Aufgabe 15 Systemerstellung / Systemarchitektur nach dem V- Modell XT Machen Sie sich mit den

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

Informationswirtschaft II

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

Mehr

Mobile Backend in der

Mobile Backend in der Mobile Backend in der Cloud Azure Mobile Services / Websites / Active Directory / Kontext Auth Back-Office Mobile Users Push Data Website DevOps Social Networks Logic Others TFS online Windows Azure Mobile

Mehr

1 2 013 I BM I C BM orporatiton

1 2 013 I BM I C BM orporatiton 1 Ronald Brutter, Senior IT Architect 3. Nov. 2013 Backup wozu? Ich habe Cloud Was ist Cloud? 5 Charakteristika nach NIST Das NIST listet fünf essentielle Charakteristika für Cloud-Computing: 1. Selbstzuweisung

Mehr

Open Grid Services Architecture (OGSA)

Open Grid Services Architecture (OGSA) Open Grid Services Architecture (OGSA) IBM Red Paper; Fundamentals of Grid Computing, 2002 A d v an ced M id d lew are P ro f. D r. C h. R eich rc h @ fh-furtw angen.d e http://www.informatik.fh-furtwangen.de/~reich/advancedmiddlewareallg.ss05/index.html

Mehr

Webcast-Serie IT Transformation in die Cloud, Teil 1. Public Cloud - mit Best-Practice-Beispiel hetras GmbH - Henning von Kielpinski, ConSol* GmbH

Webcast-Serie IT Transformation in die Cloud, Teil 1. Public Cloud - mit Best-Practice-Beispiel hetras GmbH - Henning von Kielpinski, ConSol* GmbH Webcast-Serie IT Transformation in die Cloud, Teil 1 Public Cloud - mit Best-Practice-Beispiel hetras GmbH - 24.01.2013 Henning von Kielpinski, ConSol* GmbH Inhalt Kurze Vorstellung ConSol* GmbH Übersicht

Mehr

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert The Rational Unified Process Eine Einführung von T. Langer und A. Nitert Übersicht Einleitung Probleme der SW-Entwicklung, Best Practices, Aufgaben Was ist der Rational Unified Process? Struktur des Prozesses

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

Objektorientierte Software-Entwicklung

Objektorientierte Software-Entwicklung Objektorientierte Software-Entwicklung Priv.- Doz Dr. Rolf Hennicker 04.10.2002 Kapitel 1 Software Engineering: Überblick Kapitel 1 Software Engineering: Überblick 2 Ziele Verstehen, womit sich die Disziplin

Mehr

SaaS-Referenzarchitektur. iico-2013-berlin

SaaS-Referenzarchitektur. iico-2013-berlin SaaS-Referenzarchitektur iico-2013-berlin Referent Ertan Özdil Founder / CEO / Shareholder weclapp die Anforderungen 1.000.000 registrierte User 3.000 gleichzeitig aktive user Höchste Performance Hohe

Mehr

Thomas Freitag achelos GmbH SmartCard-Workshop. 1 2012 achelos GmbH

Thomas Freitag achelos GmbH SmartCard-Workshop. 1 2012 achelos GmbH Thomas Freitag achelos GmbH SmartCard-Workshop 2012 1 2012 achelos GmbH Übersicht 1. 2. 3. 4. 5. 6. 7. Einführung / Motivation Historie des Testens Schnittstellen im Testbereich Eclipse Plugins Automatisierung,

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

objectif / SOA /.NET Inhalt Technologien ObjectiF Beispiel Vergleich: ObjectiF Rational Rose Quellenverzeichnis 20.01.2008 Christian Reichardt 2 Technologien 20.01.2008 Christian Reichardt 3 Methodenaufruf

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

Gliederung. Was ist Cloud Computing Charakteristiken Virtualisierung Cloud Service Modelle Sicherheit Amazon EC2 OnLive Vorteile und Kritik

Gliederung. Was ist Cloud Computing Charakteristiken Virtualisierung Cloud Service Modelle Sicherheit Amazon EC2 OnLive Vorteile und Kritik Cloud Computing Gliederung Was ist Cloud Computing Charakteristiken Virtualisierung Cloud Service Modelle Sicherheit Amazon EC2 OnLive Vorteile und Kritik 2 Bisher Programme und Daten sind lokal beim Anwender

Mehr

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA Hauptseminar Management von Softwaresystemen Techniken der System-Integration EAI, Middleware, SOA, CORBA Betreuerin: Referent: Ulrike Hammerschall Alexey Krivoborodov Agenda Motivation Arten der Verteilung

Mehr

Projekt e-energy@home Prof. Dr.-Ing. Ingo Kunold

Projekt e-energy@home Prof. Dr.-Ing. Ingo Kunold Prof. Dr.-Ing. Ingo Kunold Entwurf eines Informations- und Kommunikationssystems zur zeitetikettierten Energiemengenerfassung und zum parametergestützten Last-Management im Energieversorgungsnetz für Privat-Haushalte

Mehr

Softwaretechnik WS 2004/05

Softwaretechnik WS 2004/05 Softwaretechnik WS 2004/05 1 Softwaretechnik WS 2004/05 Basisveranstaltung im Studiengebiet SSG (Softwaretechnik und Systemgestaltung) Stephan Herrmann Susanne Jucknath-John Matthias Vösgen Softwaretechnik

Mehr

Robert-Bosch-Straße 18 D-63303 Dreieich Tel.: +49 6103 37416-00 Fax: +49 6103 37416-99 www.isw-online.de

Robert-Bosch-Straße 18 D-63303 Dreieich Tel.: +49 6103 37416-00 Fax: +49 6103 37416-99 www.isw-online.de Robert-Bosch-Straße 18 D-63303 Dreieich Tel.: +49 6103 37416-00 Fax: +49 6103 37416-99 www.isw-online.de Inhaltsverzeichnis ISW nur ein paar Worte Cloud Computing Die richtige Cloud-Lösung Problematiken

Mehr

Ein mobiler Electronic Program Guide für Android

Ein mobiler Electronic Program Guide für Android Whitepaper Telekommunikation Ein mobiler Electronic Program Guide für Android Prototyp für Android Apps 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller Munde. Durch

Mehr

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme

Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Mobile Agenten am Beispiel JADE (Java Agent DEvelopment Framework) Vorstellung in der Übung zu Konzepte Verteilter Systeme Agenda Mobile Agenten allgemein JADE - Java Agent DEvelopment Framework Anwendungsfall

Mehr

Die Macht, die uns umgibt. Design Prinzipien. Schneller und besser Software entwickeln. 2012 Jörg Bächtiger

Die Macht, die uns umgibt. Design Prinzipien. Schneller und besser Software entwickeln. 2012 Jörg Bächtiger Die Macht, die uns umgibt Design Prinzipien Schneller und besser Software entwickeln 2012 Jörg Bächtiger Joerg.Baechtiger@Abraxas.ch http://www.xing.com/profile/joerg_baechtiger Übersicht geben Zusammenhänge

Mehr

NVS1 5. Jahrgang Mag. Dr. Klaus Coufal

NVS1 5. Jahrgang Mag. Dr. Klaus Coufal NVS1 5. Jahrgang Mag. Dr. Klaus Coufal Übersicht Kompetenzbereiche Architektur und Entwicklung verteilter Systeme Dr. Klaus Coufal 29.8.2013 NVS1 5.Jahrgang 2 Architektur und Entwicklung verteilter Systeme

Mehr

Einführung Cloud Computing. Dr. Alexander Wöhrer, Fakultät für Informatik

Einführung Cloud Computing. Dr. Alexander Wöhrer, Fakultät für Informatik Einführung Cloud Computing Dr. Alexander Wöhrer, Fakultät für Informatik DIE Cloud noch Fragen? http://www.boston.com/business/ticker/cloud320.jpg Cloud computing Mittels virtualisierter Ressourcen und

Mehr

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

Mehr

Software Engineering. 2. V-Modell XT

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

Mehr

Hochschule Darmstadt Fachbereich Informatik

Hochschule Darmstadt Fachbereich Informatik Hochschule Darmstadt Fachbereich Informatik 6.3 Systemarchitektur 430 6.3 Systemarchitektur Drei Schichten Architektur Die "Standardtechniken" des Software-Engineering sind auch auf die Architektur einer

Mehr

Prozessautomatisierung Vom Geschäftsprozess zum IT-Prozess Benjamin Brunner SOA Architect OPITZ CONSULTING Bad Homburg GmbH

Prozessautomatisierung Vom Geschäftsprozess zum IT-Prozess Benjamin Brunner SOA Architect OPITZ CONSULTING Bad Homburg GmbH Prozessautomatisierung Vom Geschäftsprozess zum IT-Prozess Benjamin Brunner SOA Architect OPITZ CONSULTING Bad Homburg GmbH Agenda Warum Prozessautomatisierung? Prozessautomatisierung in einer SOA Von

Mehr

Verteilte Systeme. Verteilte Architekturen. Prof. Dr. Oliver Haase

Verteilte Systeme. Verteilte Architekturen. Prof. Dr. Oliver Haase Verteilte Systeme Verteilte Architekturen Prof. Dr. Oliver Haase 1 Übersicht Plattformen für verteilte Systeme Softwarearchitekturen Systemarchitekuren Von der Software- zur Systemarchitektur Architekturmuster

Mehr

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten Aktuelle Themen der Wirtschaftsinformatik Zusammenfassung 09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten 1 Serverseitige Webprogrammierung

Mehr

Dr. Uwe Jasnoch Intergraph SG&I Deutschland GmbH

Dr. Uwe Jasnoch Intergraph SG&I Deutschland GmbH Dr. Uwe Jasnoch Intergraph SG&I Deutschland GmbH Definition Cloud Computing Was ist cloud computing? on demand Computer Center mit pay as you go Konzepten Direkte Verfügbarkeit von Rechenkapazitäten, die

Mehr

Vorlesung Methoden des Software Engineering. Martin Wirsing. Einheit B.2, 09.11.2006

Vorlesung Methoden des Software Engineering. Martin Wirsing. Einheit B.2, 09.11.2006 Block B (Software-Architektur): Systemarchitektur 09.11.2006 1 Vorlesung Methoden des Software Engineering Block B Software Architektur Systemarchitektur Martin Wirsing Einheit B.2, 09.11.2006 Block B

Mehr

Military Air Systems

Military Air Systems Trennung von Applikationen unterschiedlicher Kritikalität in der Luftfahrt durch Software en am Beispiel des Real-time Operating Systems PikeOS Dr. Bert Feldmann DGLR Workshop Garching, 09.10.2007 Seite

Mehr

BESSER SPÄT ALS FRÜH ARCHITEKTURENTSCHEIDUNGEN AUF DEM PRÜFSTAND. AIT GmbH & Co. KG Ihr Software effizienter entwickelt.

BESSER SPÄT ALS FRÜH ARCHITEKTURENTSCHEIDUNGEN AUF DEM PRÜFSTAND. AIT GmbH & Co. KG Ihr Software effizienter entwickelt. BESSER SPÄT ALS FRÜH ARCHITEKTURENTSCHEIDUNGEN AUF DEM PRÜFSTAND AIT GmbH & Co. KG Ihr Software effizienter entwickelt. AGENDA Problemstellung Architekturmuster vs. Designmuster MVVM Das Wesentliche Fazit

Mehr

Model Driven Architecture Praxisbeispiel

Model Driven Architecture Praxisbeispiel 1 EJOSA OpenUSS CampusSource Model Driven Architecture Praxisbeispiel 2 Situation von CampusSource-Plattformen Ähnliche Funktionen (Verwaltung von Studenten und Dozenten, Diskussionsforen,...), jedoch

Mehr

Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA

Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA E-Gov Fokus Geschäftsprozesse und SOA 31. August 2007 Implementierung von Geschäftsprozessen in der Verwaltung mit Hilfe von SOA Im Vortrag werden die Vor- und Nachteile von Geschäftsprozessen in der öffentlichen

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

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Softwareentwicklung Probleme bei großer Software Life-Cycle-Modelle Teilphasen eines Software-Projekts Methoden und Werkzeuge 01101101 01011001 11010011 10011000 00000011 00011100

Mehr

Softwareentwicklungsprozesse. 18. Oktober 2012

Softwareentwicklungsprozesse. 18. Oktober 2012 Softwareentwicklungsprozesse 18. Oktober 2012 Überblick Was soll ein Softwareentwicklungsprozess leisten? Überblick über Softwareentwicklungsprozesse Welche gibt es? Warum gibt es mehrere? Diskussion:

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster

Mehr

Standardsoftware. SAP Basisarchitektur. Prof. Dr. Bernhard Schiefer 2-1

Standardsoftware. SAP Basisarchitektur. Prof. Dr. Bernhard Schiefer 2-1 Standardsoftware SAP Basisarchitektur Prof. Dr. Bernhard Schiefer 2-1 SAP Client/Server Dreistufige Rechnerhierarchie Lesen in der DB und Aktualisierung der Puffer Datenbankänderung Zentrale DB (speichert

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Systeme 1. Kapitel 10. Virtualisierung

Systeme 1. Kapitel 10. Virtualisierung Systeme 1 Kapitel 10 Virtualisierung Virtualisierung Virtualisierung: Definition: Der Begriff Virtualisierung beschreibt eine Abstraktion von Computerhardware hin zu einer virtuellen Maschine. Tatsächlich

Mehr

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit IBM Software Group IBM Rational mit RequisitePro Hubert Biskup hubert.biskup@de.ibm.com Agenda Rational in der IBM Software Group Der Rational Unified Process als Basis für die Projektarbeit mit Rational

Mehr

R016 Beilage 5: SOA-Glossar

R016 Beilage 5: SOA-Glossar Eidgenössisches Finanzdepartement EFD Informatiksteuerungsorgan des Bundes ISB R016 Beilage 5: SOA-Glossar Ausgabedatum: 2015-02-25 Version: 2.01 Status: Genehmigt Ersetzt: 2.0 Verbindlichkeit: Weisung

Mehr

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

Mehr

Lösungsvorschlag für Übungsblatt 4 Software Engineering 1 (WS 2012/13)

Lösungsvorschlag für Übungsblatt 4 Software Engineering 1 (WS 2012/13) Prof. Ina Schaefer Software Systems Engineering TU Braunschweig Lösungsvorschlag für Übungsblatt 4 Software Engineering 1 (WS 2012/13) Ausgabe: Kleine Übung: 07. Dezember/10. Dezember 2012 Abgabe: Kleine

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