Vorlesung "Praktische Softwaretechnik" Teil 8: Einführung in die Systemanalyse

Größe: px
Ab Seite anzeigen:

Download "Vorlesung "Praktische Softwaretechnik" Teil 8: Einführung in die Systemanalyse"

Transkript

1 Vorlesung "Praktische Softwaretechnik" Teil 8: Einführung in die Systemanalyse Vortragender: Prof. Dr. Dirk Riehle Folien: Prof. Dr. Ing. Detlef Kips, develop group Praktische Softwaretechnik Informatik Martensstraße Erlangen

2 Wiederholung: Die essentiellen Phasen des Software Entwicklungsprozesses Anforderungsdefinitionsphase Frage: Welche Anforderungen will man mit dem Zielsystem erfüllen? Systemanalysephase Frage: Wie modelliert man die Anwendungswelt, in der diese Anforderungen auftreten? Hinweis: BALZERT fasst in seinem Lehrbuch der Software Technik die Phasen Anforderungsdefinition und Systemanalyse zu einer einheitlichen Definitionsphase zusammen. Systementwurfsphase Frage: Wie setzt man das Modell der Anwendungswelt unter Berücksichtigung der technischen Rahmenbedingungen in eine informationstechnische Lösung um? Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 2

3 Wiederholung: Die essentiellen Phasen des Software Entwicklungsprozesses (Forts.) Implementierungsphase Frage: Wie gewinnt man aus dem Entwurf einer informationstechnischen Lösung ein lauffähiges System? Systemvalidierungsphase Frage: Wie überzeugt man sich von der Konformität des lauffähigen Zielsystems zu den ursprünglichen Anforderungen? Bemerkung: Im Rahmen der Definition eines konkreten Entwicklungsprozessmodells werden diese essentiellen Phasen typischerweise in verschiedene Teilphasen bzw. aktivitäten unterteilt... mehr oder weniger stark parallelisiert... mit diversen Iterationen bzw. Rückkopplungsmöglichkeiten versehen... u.u. durch weitere, projektspezifische Phasen ergänzt. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 3

4 Zielsetzung der Systemanalyse Das primäre Ziel der Systemanalysephase besteht in der Erstellung und Dokumentation eines Systemmodells, das den während der Anforderungsdefinition ermittelten Anforderungen genügt,... das zu erstellende Softwaresystem mit den Begriffen der Anwendungswelt hinreichend exakt beschreibt. In der Systemanalysephase wird eine fachliche (= anwendungsbezogene) Problemlösung erarbeitet. Fragestellung: Was ist zu realisieren? nicht: Wie ist es zu realisieren? Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 4

5 Ergebnisse der Systemanalyse Das Ergebnis der Systemanalysephase ist i.a. eine Sammlung von Artefakten und Dokumenten, darunter typischerweise ein sog. Pflichtenheft (= verfeinerte und bereinigte Fortschreibung der Anforderungen)... ein sog. Systemglossar (= Definition der verwendeten Terminologie und Begriffe)... (optional) ein Oberflächenprototyp bzw. ein rudimentäres Pilotsystem... (optional) eine erste Version eines Benutzerhandbuchs... eine Dokumentation des eigentlichen Analyse Modells ( später!) Die Gesamtheit dieser Artefakte und Dokumente bezeichnet man auch als Produkt Definition oder System Definition Produkt Spezifikation oder System Spezifikation Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 5

6 Mitwirkende Rollen in der Systemanalyse An der Systemanalyse wirken typischerweise folgende Rollen mit: Projektleiter Aufgaben: Planung, Steuerung und Kontrolle der durchzuführenden Aktivitäten Anwendungsspezialist Bereitstellung und Dokumentation von Expertenwissen über die Anwendungswelt und über die fachlichen Anforderungen Mitwirkung an der Erstellung des Pflichtenheftes, des Systemglossars und des Analysemodells Systemanalytiker Aufgaben: Erstellung des Analyse Modells aus den im Pflichtenheft beschriebenen Anforderungen Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 6

7 Mitwirkende Rollen in der Systemanalyse (Forts.) Auftraggeber Aufgaben: Prüfung und Abnahme der erstellten Artefakte optional: Software Ergonom Aufgaben: Konzeption, Mitwirkung bei der Erstellung sowie Evaluation von Benutzungsoberflächen optional: Technischer Redakteur Aufgaben: Konzeption und Realisierung von Benutzerhandbüchern und Online Hilfe Systemen Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 7

8 Exkurs: Modellbildung und Systemmodelle (1) Eine der zentralen Aufgaben in den frühen Phasen eines größeren Entwicklungsprojektes besteht in der Modellbildung. Ziel der Modellbildung: Beschreibung der wesentlichen Eigenschaften des Zielsystems durch eine ggf. vereinfachte, abstrakte Repräsentation in Form eines Systemmodells Das Systemmodell entsteht i.a. sukzessive im Rahmen eines Prozesses der schrittweisen Verfeinerung und Konkretisierung, schwerpunktmäßig in der Systemanalyse und Entwurfsphase. Je nach Definition des gewählten Entwicklungsprozesses und der gewählten Modellierungsmethodik kann es unterschiedliche Abstraktionsstufen und Sichten eines Systemmodells geben: Analysemodell Designmodell Architekturmodell... Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 8

9 Exkurs: Modellbildung und Systemmodelle (2) Systemmodelle werden heutzutage vielfach werkzeuggestützt erstellt und in einem Modell Repository verwaltet. Vorteile der modellbasierten Softwareentwicklung: Automatisierte Codeerzeugung wird erleichtert Systemdokumentation kann automatisch erstellt werden Systemdokumentation bleibt automatisch aktuell und konsistent Änderungen können (im Idealfall) ausschließlich auf Modellebene durchgeführt werden Prinzip des Round Trip Engineering... ermöglicht es, wahlweise Modifikationen auf Ebene des Systemmodells oder auf Codeebene vorzunehmen... Konsistenzerhaltung zwischen Modell und Code wird durch den Einsatz automatischer Generatoren zwischen beiden Ebenen sichergestellt. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 9

10 Exkurs: Modellbildung und Systemmodelle (3) Systemmodell (werkzeuggestütztes Repository) Codegenerator (Forward Engineering) "Round Trip Engineering" Reverse Engineering Dokumentationsgenerator Implementierung (Quellcode) Systemdokumentation Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 10

11 Das Analyse Modell Das Analyse Modell stellt das entscheidende Bindeglied zwischen den in der Anforderungsdefinitionsphase ermittelten Anforderungen und dem (implementierungsbezogenen) Systementwurf dar. Aufgabe des Analyse Modells ist es, die wesentlichen Eigenschaften des Zielsystems aus einer anwendungsbezogenen Perspektive vollständig konsistent präzise redundanzfrei überprüfbar zu beschreiben. Häufig verwendete Synonyma für Analyse Modell : Produkt Modell (z.b. bei Balzert) Fachkonzept (wird typischerweise verwendet in der Terminologie von Behörden, Banken und Versicherungen) Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 11

12 Aspekte der Modellbildung: Typische Fragestellungen Gegenstände der Modellierung Welche Eigenschaften bzw. Aspekte des Zielsystems werden modelliert? Anwendungskontext der Modellierung In welchem fachlichen Anwendungsbereich ist das Zielsystem angesiedelt? Sichten der Modellierung Unter welchem "Blickwinkel" erfolgt die Modellierung bestimmter Teilaspekte bzw. Eigenschaften des Zielsystems? Modellierungskonzepte Welche Basiskonzepte der Modellierung eignen sich zur Spezifikation bestimmter Aspekte bzw. Eigenschaften des Zielsystems? Welche Notation wird beim Einsatz dieser Basiskonzepte verwendet? Methodik der Modellbildung Welche Vorgehensweise wird bei der Modellierung verwendet? Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 12

13 Aspekte der Modellbildung: Gegenstände der Modellierung Die Gegenstände der Modellbildung während der Systemanalyse lassen sich grob vier verschiedenen Aspekten bzw. Sichten auf das Zielsystem zuordnen: Struktur und Beziehungen der benötigten bzw. erzeugten Daten und Informationen Gliederung des Systems in Funktionen bzw. Teilfunktionen, die eine aus Anwendersicht relevante Funktionalität erbringen Dynamik des Zielsystems (Abläufe und Zeitverhalten) funktionaler und ergonomischer Aufbau der Benutzungsoberfläche Im Analyse Modell müssen diese vier Aspekte in konsistenter, aufeinander abgestimmter Weise integriert werden. In Abhängigkeit vom Anwendungskontext (= die fachliche Umgebung, in der das Zielsystem angesiedelt ist) haben die einzelnen Modellierungsgegenstände unterschiedliche Bedeutung für die Modellierung und... unterschiedliche Komplexität. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 13

14 Aspekte der Modellbildung: Anwendungskontext der Modellierung Hohe Komplexität der Daten typisch für kommerziell administrative Datenbank Anwendungen z.b. im Anwendungskontext von Handel, Banken, ERP,... Hohe Komplexität der Funktionen und Algorithmen typisch für Systeme mit komplexen numerischen Berechnungen z.b. im Anwendungskontext der medizinischen Bildverarbeitung, der Versicherungsmathematik, der Systemsimulation,... Hohe Komplexität der Dynamik und des zeitabhängigen Verhaltens typisch für Systeme mit nebenläufigen Prozessen und/oder Echtzeitanforderungen z.b. im Anwendungskontext von industriellen Fertigungsleitsystemen, Kraftwerkstechnik, Automobilelektronik,... Hohe Komplexität der Benutzungsoberfläche typisch für graphische Entwurfs und Planungsprogramme z.b. im Kontext von CAD/CAM Anwendungen, CASE Tools,... Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 14

15 Aspekte der Modellbildung: Sichten der Modellierung (1) In Abhängigkeit vom aktuellen Fokus der Modellierung kann das Zielsystem aus unterschiedlichen "Sichten" betrachtet bzw. interpretiert werden. Hinweis zur Terminologie: Modellierungssicht Modellierungsparadigma Beispiele für gängige Modellierungssichten: Funktionsorientierte Sicht Zerlegung des Zielsystems in Teilaufgaben, die aus bestimmten Eingabedaten mittels einer funktionalen Transformation bestimmte Ausgabedaten erzeugen Datenorientierte Sicht Modellierung der Anwendungswelt unter Fokussierung auf Struktur und Manipulation der beteiligten Datenelemente Objektorientierte Sicht Modellierung der Anwendungswelt durch interagierende Objekte, die als Kapselungseinheit für Daten und Funktionen dienen Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 15

16 Aspekte der Modellbildung: Sichten der Modellierung (2) Beispiele für gängige Modellierungssichten (Forts.): Szenariobasierte Sicht Beschreibung des Systemverhaltens anhand von exemplarischen Anwendungssituationen (Szenarien) sowie anhand des Nachrichtenaustauschs zwischen kooperierenden Interaktionspartnern Zustandsorientierte Sicht Beschreibung des Systemverhaltens anhand von definierten Systemzuständen sowie anhand der möglichen Übergänge (Transitionen) zwischen den Zuständen Kontrollflussorientierte Sicht Beschreibung des Systemverhaltens mit Hilfe von algorithmischen Kontrollstrukturen und (sequentiellen oder nebenläufigen) Kontrollflüssen Regelbasierte Sicht Beschreibung des Systemverhaltens anhand von Regeln, die festlegen, unter welchen Bedingungen bestimmte Aktionen ausgeführt werden Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 16

17 Aspekte der Modellbildung: Basiskonzepte der Modellierung Basiskonzepte der Systemmodellierung sind... elementare, problemneutrale, phasenübergreifend verwendbare Abstraktionsmuster, die zur Modellierung bestimmter Teilaspekte eines Zielsystems besonders gut geeignet sind. Typische Beispiele für Modellierungskonzepte: Objekt und Klassenstrukturen Endliche Automaten Petri Netze Kontrollflüsse Datenflüsse Interaktionsstrukturen wenn/dann Regeln... Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 17

18 Aspekte der Modellbildung: Modellierungsnotationen Eine Modellierungsnotation ist ein problemneutrales Darstellungsmittel zur Beschreibung des Modells bzw. von Teilen des Modells. Modellierungsnotationen bieten die Möglichkeit zur adäquaten (textuellen, mathematischen, graphischen) Darstellung von Modellierungsgegenständen auf der Basis geeigneter Basiskonzepte. Modellierungsnotationen sind in ihrer Struktur weitestgehend abhängig von den Basiskonzepten, deren Darstellung sie dienen. Dagegen sind die Basiskonzepte selbst unabhängig von bestimmten Notationsformen. Für ein bestimmtes Basiskonzept kann es mehrere unterschiedliche Notationen geben, die gleichermaßen adäquat sind! z.b. für das Basiskonzept "Kontrollflüsse": Struktogramme, Programmablaufpläne, UML Aktivitätsdiagramme,... z.b. für das Basiskonzept "Interaktionsstrukturen": Sequenzdiagramme, Kommunikationsdiagramme, Zeitdiagramme,... Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 18

19 Aspekte der Modellbildung: Übersicht der Basiskonzepte und Notationsvarianten (1) Sichten Basiskonzepte Notationsvarianten Funktionsorientierte Funktionshierarchien Funktionsbäume Sicht Informations und Datenflüsse Datenflussdiagramme Aktivitätsdiagramme Datenorientierte Datenstrukturen Datenkataloge Sicht Entitäten und Beziehungen Entity Relationship Diagramme (Klassendiagramme) (Instanzdiagramme) Objektorientierte Sicht Szenariobasierte Sicht Klassenmodelle Interaktionsstrukturen Klassendiagramme Instanzdiagramme Sequenzdiagramme Kommunikationsdiagramme Zeitdiagramme Interaktionsübersichtsdiagramme Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 19

20 Aspekte der Modellbildung: Übersicht der Basiskonzepte und Notationsvarianten (2) Sichten Basiskonzepte Notationsvarianten Zustandsorientierte Endliche Automaten Moore Automaten Mealy Automaten Harel Statecharts UML Zustandsautomaten Sicht Petri Netze Bedingungs /Transitions Netze Stellen /Transitions Netze Prädikat /Transitions Netze Zeitbehaftete Petri Netze Aktivitätsdiagramme Kontrollflussorientierte Sicht Regelbasierte Sicht Kontrollstrukturen und Kontrollflüsse Wenn/dann Regeln Programmablaufpläne Struktogramme Pseudo Code Aktivitätsdiagramme Entscheidungstabellen Entscheidungsbäume (allgemeine) Regelsysteme Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 20

21 Eignung der Basiskonzepte und Notationen für bestimmte Anwendungsbereiche x = gut geeignet (x) = bedingt geeignet komplexe Daten komplexe Algorithmen komplexe Dynamik Funktionsbäume x x Datenflussdiagramme (x) x x Datenkataloge Entity Relationship Modelle Klassenmodelle x x (x) Interaktionsdiagramme (x) x x x Zustandsautomaten (x) (x) x (x) Petri Netze Aktivitätsdiagramme x x Entscheidungstabellen Regelsysteme x x Struktogramme, Pseudocode, Programmablaufpläne x x x x komplexe Oberfläche Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 21

22 Einsatz der Basiskonzepte und Notationen in den Phasen des Entwicklungsprozesses x = gut geeignet (x) = bedingt geeignet Funktionsbäume x (x) Datenflussdiagramme x (x) Datenkataloge x x x Entity Relationship Modelle x Klassenmodelle x x (x) Interaktionsdiagramme (x) x x Zustandsautomaten x x Petri Netze x Aktivitätsdiagramme (x) x x (x) Entscheidungstabellen (x) x x (x) Regelsysteme x (x) Struktogramme, Pseudocode, Programmablaufpläne x x Anforderungsdefinition Systemanalyse Systementwurf Implementierung Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 22

23 Aspekte der Modellbildung: Modellierungsmethodik Eine Modellierungsmethode definiert eine Kombination von Basiskonzepten (und ggf. Notationen), die verwendet werden sollen, um die einzelnen relevanten Modellierungsgegenstände adäquat abzubilden;... die Abbildung aller gewählten Basiskonzepte auf ein integriertes Systemmodell, das sämtliche Teilmodelle zueinander in Beziehung setzt;... ein integriertes Vorgehensmodell, durch das festgelegt wird, welche Aktivitäten in welchen Phasen und Teilschritten ggf. mit welchen Hilfsmitteln und Werkzeugen auszuführen sind, um die Teilmodelle und das integrierte Systemmodell zu erstellen. Die Definition einer geeigneten Modellierungsmethodik ist zentraler Bestandteil der Definition eines Entwicklungsprozessmodells. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 23

24 Historie der Modellierungsmethoden Strukturierte Methoden (ca ) DeMarco et al. 1979: Structured Analysis (SA) DeMarco/Yourdon et al. 1989: Structured Analysis and Design (SA/SD) Hatley/Pirbhai 1987: Structured Analysis for Real Time Systems (SA/RT) "Frühe" objektorientierte Methoden (ca ), u.a.: Shlaer/Mellor 1988: Object Oriented Systems Analysis (OOSA) Wirfs Brock et al. 1990: Responsibility Driven Design (RDD) Coad/Yourdon 1991: Object Oriented Analysis and Design (OOA/OOD) Jacobson 1992: Object Oriented Software Engineering (OOSE) Rumbaugh et al. 1991: Object Modeling Technique (OMT) Booch 1991: Object Oriented Analysis and Design (OOAD) UML basierte Methoden (seit ca. 1999), u.a.: Jacobson et al. 1999: Unified Software Development Process (USDP) Kruchten et al. 2000: Rational Unified Process (RUP) Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 24

25 Strukturierte Methoden der Systemanalyse Strukturierte Analyse (SA) DeMarco 1979: "Structured Analysis and Systems Specification" ergänzt durch Yourdon 1989: "Modern Structured Analysis" de facto Standard der Systemanalyse von Anfang der 1980er bis Mitte der 1990er Jahre zielt primär auf die Beschreibung von Anwendungen mit hoher Datenkomplexität (Business Software) Real Time Analysis (SA/RT) Hatley/Pirbhai 1987: "Strategies for Real Time System Specification" ergänzt die SA Methodik um Konzepte zur Modellierung von Zeitanforderungen und Kontrollflüssen zielt primär auf die Beschreibung technischer Anwendungen Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 25

26 Kombination der Basiskonzepte in SA Strukturierte Analyse (SA) Entscheidungsbäume Entscheidungstabellen Datenflussdiagramme Funktionsbäume Datenkataloge Pseudo Code Funktionshierarchien Informationsund Datenflüsse Datenstrukturen Kontrollflüsse Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 26

27 Kombination der Basiskonzepte in SA/RT Strukturierte Realzeit Analyse (SA/RT) Strukturierte Analyse (SA) Entscheidungsbäume Entscheidungstabellen Datenflussdiagramme Funktionsbäume Datenkataloge ERM Pseudo Code Zustandsautomaten Funktionshierarchien Informationsund Datenflüsse Entitäten und Beziehungen Datenstrukturen Kontrollflüsse Endlicher Automat Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 27

28 Kombination von Basiskonzepten für OOA Methoden Objektorientierte Analyse Klassendiagramme Aktivitätsdiagramme UML Zustandsautomaten ERM Petri Netze Programmablaufpläne Harel Statecharts Interaktionsdiagramme Klassenstrukturen Nebenläufige Kontrollflüsse Sequentielle Kontrollflüsse Endlicher Automat Szenarien und Interaktionen Entitäten und Beziehungen Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 28

29 Exkurs UML (1): Was ist die "UML"? Die UML ( Unified Modeling Language ) ist eine standardisierte, universelle, semi formale Modellierungsnotation zur Visualisierung, Spezifikation, Entwicklung und Dokumentation von Softwaresystemen. Die UML ist in einem langwierigen Vereinheitlichungs und Standardisierungsprozess aus den diversen OOAD Methoden und Notationen der frühen 1990er Jahre hervorgegangen. Sie ist heute die de facto Standardnotation für objektorientierte Systemmodellierung und OOAD Methoden. Die UML definiert eine Mischung aus graphischen und textuellen Notationselementen, mit der die verschiedenen Aspekte, Sichten und Abstraktionsebenen eines Systemmodells beschrieben werden können. Die UML kann in sämtlichen Phasen des Software Entwicklungsprozesses als Hilfsmittel eingesetzt werden. Schwerpunkt des Einsatzes liegt in den Analyse und Designphasen. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 29

30 Exkurs UML (2): Eigenschaften der UML Die UML bietet Notationselemente zur Darstellung nahezu sämtlicher relevanten Modellierungsgegenstände an. Daten, Funktionen, Algorithmen, Dynamik, Architektur... Die UML unterstützt die Vereinigungsmenge nahezu sämtlicher etablierter Basis Modellierungskonzepte. u.a. ERM, Klassenmodelle, Zustandsautomaten, Petri Netze, Datenflüsse, Kontrollflüsse, Interaktionsstrukturen,... Die UML integriert sämtliche unterstützten Modellierungskonzepte zu einem einheitlichen Systemmodell. Die UML unterstützt (zumindest partiell) sämtliche gängigen Modellierungsparadigmen bzw. sichten: durchgängige Verwendung des objektorientierten Paradigmas Für Teilaspekte des Systemmodells ist aber auch eine funktionsorientierte, datenorientierte, kontrollflussorientierte, szenariobasierte oder zustandsorientierte Sicht möglich. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 30

31 Exkurs UML (3): Diagrammtypen der UML Die UML definiert 14 verschiedene Diagrammtypen. Jeder Diagrammtyp dient als Notationsmittel für bestimmte Basiskonzepte... ist speziell geeignet für die Darstellung bestimmter Teilaspekte des Systemmodells und stellt somit eine spezifische Sicht auf das Modell zur Verfügung. UML Strukturdiagramme Klassendiagramme Instanzdiagramme Paketdiagramme Kompositionsstrukturdiagramme Komponentendiagramme Einsatzdiagramme UML Verhaltensdiagramme Anwendungsfalldiagramme Aktivitätsdiagramme Zustandsdiagramme Interaktionsdiagramme Sequenzdiagramme Kommunikationsdiagramme Zeitdiagramme Interaktionsübersichtsdiagramme Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 31

32 Exkurs UML (4): Zielsetzungen der UML Die Definition der UML zielt ab auf die Bereitstellung einer hinreichend vollständigen Menge von integrierten Modellierungskonzepten für die Modellierung komplexer Softwaresysteme... die Bereitstellung einer hierfür geeigneten, wohldefinierten graphischen bzw. textuellen Modellierungsnotation... die Bereitstellung von informellen Richtlinien und "Rezepten" zur Verwendung der Konzepte und Notationen... eine de facto Standardisierung der Notation im Sinne eines einheitlichen Kommunikations und Dokumentationsmediums... die Unterstützung eines durchgängigen, tool basierten "Round Trip Engineering" Ansatzes zur integrierten Entwicklung und Pflege des Systemmodells und des lauffähigen Zielsystems Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 32

33 Exkurs UML (5): Was ist die UML nicht? Die UML ist eine Modellierungsnotation, keine Modellierungsmethode! Die UML unterstützt den gesamten Software Entwicklungsprozess, schreibt aber keinen bestimmten Entwicklungsprozess vor! Die Verwendung der UML erzwingt nicht eine Beschränkung auf bestimmte (z.b. objektorientierte) Konzepte und/oder Systemarchitekturen,... die Verwendung bestimmter Modellierungsmethoden oder Vorgehensmodelle,... den Einsatz bestimmter Programmiersprachen,... den Einsatz bestimmter Modellierungs oder Entwicklungswerkzeuge. Prof. Dr. Detlef Kips Praktische Softwaretechnik Informatik Universität Erlangen Nürnberg 33

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung? Kapitelübersicht Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge Was bedeutet Objektorien+erung? ObjektorienCerte Analyse und Design die Objektmodellierung

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

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

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

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

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0 Für den Einsatz in der Praxis Seite 2 Überblick 1. Ziele 2. Warum das alles? 3. Was ist UML 4. Diagrammarten 5. Umfeld Seite 3 1. Ziele 1. Ziele dieses

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

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

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

Systemdenken und Gestaltungsmethodik System-Modellierung

Systemdenken und Gestaltungsmethodik System-Modellierung Systemdenken und Gestaltungsmethodik System-Modellierung Prof. Dr.-Ing. Stefan Brunthaler TFH Wildau 2008ff Master Telematik Ausgangsbasis Es liegt ein kosten-nutzen-optimales Lösungskonzept vor. Die Architektur

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Analyse- und Designmethoden Analyse- & Designmethoden Strukturierte, traditionelle Methoden Objektorientierte Methoden Funktionsorientierte Methoden Datenorientierte

Mehr

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Softwaretechnik I Wintersemester 2015 / 2016 www.ias.uni-stuttgart.de/st1 st1@ias.uni-stuttgart.de

Mehr

Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS

Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS (theoretische Aspekte der Informationsmodellierung) 3. Vorlesung 23.04.2007 Informationsmodelle Phasen der Softwareentwicklung:

Mehr

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin Fragestellungen: Warum reicht das Lastenheft nicht aus? Was kann ich mit dem Lastenheft machen? Was unterscheidet das Pflichtenheft vom Lastenheft? Was gehört zum Auftragsumfang einer Individualsoftware?

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

Objektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt

Objektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt Objektorientierter Software-Entwurf Grundlagen 1 1 Einordnung der Veranstaltung Analyse Design Implementierung Slide 1 Informationssystemanalyse Objektorientierter Software-Entwurf Frühe Phasen durch Informationssystemanalyse

Mehr

Software Engineering

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

Mehr

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur UML-Klassendiagramme als Werkzeug im Unterricht Blitzlicht? In welcher Programmiersprache(n) unterrichten Sie?? In welchem Umfang unterrichten Sie Objektorientierung??

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

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Historisch Kulturelle Informationsverarbeitung Hauptseminar: KLIPS 2.0 Dozent: Prof. Dr. Thaller Referent:

Mehr

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 4 Entwurfs-, Implementierungs- und Abnahmephase Prof. Dr. Rolf Dornberger OPTSWE_SWE: 4 Entwurfs-, Implementierungs-

Mehr

PRÜFUNG FÜR ELEKTROINGENIEURE. Softwaretechnik I. Musterlösung SS 12. - Ohne Gewähr -

PRÜFUNG FÜR ELEKTROINGENIEURE. Softwaretechnik I. Musterlösung SS 12. - Ohne Gewähr - PRÜFUNG FÜR ELEKTROINGENIEURE Softwaretechnik I Musterlösung SS 12 - Ohne Gewähr - LfdNr. Thema Punkte Zeitbedarf in min 1 Analyse und Entwurf 15 30 2 Basistechniken und Test 15 30 3 Projektmanagement

Mehr

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003 Software Engineering Softwaretechnik Softwaretechnologie, Software Engineering (engl.) das, -, Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen für das ingenieurmäßige Entwerfen, Herstellen

Mehr

Vortrag von: Ilias Agorakis & Robert Roginer

Vortrag von: Ilias Agorakis & Robert Roginer MDA Model Driven Architecture Vortrag von: Ilias Agorakis & Robert Roginer Anwendungen der SWT - WS 08/09 Inhalt Was ist MDA? Object Management Group (OMG) Ziele Konzepte der MDA Werkzeuge Vor- und Nachteile

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Meitner, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 16 Objektorientiertes Design Matthias Meitner Marc Spisländer Lehrstuhl für

Mehr

Es war einmal... "StudyING: Welten bewegen - Welten gestalten"

Es war einmal... StudyING: Welten bewegen - Welten gestalten Computer, generiere! Christian Schröder Fachbereich Elektrotechnik und Informationstechnik Fachhochschule Bielefeld christian.schroeder@fh-bielefeld.de Es war einmal... Es war einmal... ein Bauvorhaben!

Mehr

Praktikum Grundlagen der Programmierung. Diverse Grundlagen. Dr. Karsten Tolle

Praktikum Grundlagen der Programmierung. Diverse Grundlagen. Dr. Karsten Tolle Diverse Grundlagen Dr. Karsten Tolle Vorgehensmodelle im Software Engineering Wasserfallmodell Rapid Prototyping Spiralmodell V-Modell Rational Unified Process extrem Programming Test Driven Development

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

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Evaluation of Database Design and Reverse Engineering Tools for a Large Software System Anne Thomas TU Dresden Dr. B. Demuth Pre Press GmbH (Dresden) T. Reuter Gliederung Einleitung Vorgehensweise Kontext

Mehr

Die Softwareentwicklungsphasen!

Die Softwareentwicklungsphasen! Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.

Mehr

RUP Analyse und Design: Überblick

RUP Analyse und Design: Überblick Inhaltsverzeichnis Übersicht [, 2, 8] 3. Vorgehensweise............................... 5 2 Planungsmethoden 37 2. Definitionsphase.............................. 6 3 Rational Unified Process [5, 6] und

Mehr

Fragenkatalog Geschäftsmodellierung Grundlagen

Fragenkatalog Geschäftsmodellierung Grundlagen Fragenkatalog Geschäftsmodellierung Grundlagen 1. Erläutern Sie den Begriff der Geschäftsmodellierung - Erfassung und Spezifikation von Geschäftsprozessen für die Analyse und Gestaltung betrieblicher Systeme

Mehr

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Vermeiden Sie es sich bei einer deutlich erfahreneren Person dranzuhängen, Sie sind persönlich verantwortlich für Ihren Lernerfolg. 1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich

Mehr

Software-Engineering SS03. Zustandsautomat

Software-Engineering SS03. Zustandsautomat Zustandsautomat Definition: Ein endlicher Automat oder Zustandsautomat besteht aus einer endlichen Zahl von internen Konfigurationen - Zustände genannt. Der Zustand eines Systems beinhaltet implizit die

Mehr

ERP-Evaluation systematisch und sicher zum optimalen ERP-System

ERP-Evaluation systematisch und sicher zum optimalen ERP-System ERP-Evaluation systematisch und sicher zum optimalen ERP-System Risiken minimieren, Chancen nutzen durch ein strukturiertes Vorgehen basierend auf Anforderungen (Requirements Engineering) und Prozessoptimierung

Mehr

Use Cases. Use Cases

Use Cases. Use Cases Use Cases Eigenschaften: Ein Use Case beschreibt einen Teil des Verhaltens eines Systems aus externer Sicht (Formuliert in der der Fachsprache der Anwendung) Dies geschieht, indem ein Systemdialog beschrieben

Mehr

Gliederung des Vortrages

Gliederung des Vortrages Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme

Mehr

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009

Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Generative Prozessmodelle Patrick Otto MDD Konferenz 22.03.2009 Gliederung 1. Generative Programmierung 2. Möglichkeiten und Einsatzgebiet 3. Prozess / Tools 4. Zusammenfassung 19.03.2009 GENERATIVE PROGRAMMIERUNG

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

Übungsaufgaben zum Software Engineering: Management

Übungsaufgaben zum Software Engineering: Management Übungsaufgaben zum Software Engineering: Management Grundbegriffe: Aufgabe 1: Aus welchen Disziplinen setzt sich das Software Engineering zusammen? a. Informatik b. Physik c. Psychologie d. Chemie e. Geologie

Mehr

Einführung und Motivation

Einführung und Motivation Einführung und Motivation iks-thementag: Requirements Engineering 16.11.2010 Autor Carsten Schädel Motto Definiere oder Du wirst definiert. Seite 3 / 51 These Im Privatleben definiert jeder (seine) Anforderungen.

Mehr

Grundlagen Software Engineering

Grundlagen Software Engineering Grundlagen Software Engineering Rational Unified Process () GSE: Prof. Dr. Liggesmeyer, 1 Rational Unified Process () Software Entwicklungsprozess Anpassbares und erweiterbares Grundgerüst Sprache der

Mehr

Software- Entwicklungsaktivitäten und Vorgehensmodelle. Lebenszyklusmodell

Software- Entwicklungsaktivitäten und Vorgehensmodelle. Lebenszyklusmodell 1. Vorgehensmodelle Software- Entwicklungsaktivitäten und Vorgehensmodelle a) Lebenszyklusmodell (Life- Cycle- Modell) b) V- Modell c) Wasserfallmodell d) Modifiziertes Wasserfallmodell e) Iterative Modelle

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Inhalt Wiederholung Weitere Begriffe Programmierung im Großem (Programmierung von Software als Ganzes) Prozess-Modelle 2 Wiederholung: Prozesse Prozesse sind hierarchische Gruppierungen von

Mehr

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Wintersemester 2009/10 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. K. Spies, Dr. M. Spichkova, L. Heinemann, P.

Mehr

Kompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung.

Kompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung. Kompetenz rund um Ihren Entwicklungsprozess Modellieren für den Test - Segen oder Fluch? Firmenpräsentation auf der embeddedworld 2010 Dipl. Ing. (Univ) Gerhard Baier Bereichsleiter Marketing und Vertrieb

Mehr

Requirements Engineering für IT Systeme

Requirements Engineering für IT Systeme Requirements Engineering für IT Systeme Warum Systemanforderungen mit Unternehmenszielen anfangen Holger Dexel Webinar, 24.06.2013 Agenda Anforderungsdefinitionen Von der Herausforderung zur Lösung - ein

Mehr

Methodenbasiert in der Durchführung V-Modell XT-konform im Ergebnis

Methodenbasiert in der Durchführung V-Modell XT-konform im Ergebnis Methodenbasiert in der Durchführung V-Modell -konform im Ergebnis - 1 - So? oder gibt es einen anderen Weg? - 2 - Die Werkzeugfamilie Business professionelle Geschäftsprozessmodellierung mit UML Object

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Inhalt Nachlese Aufgaben Literatur Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese Aufgaben Literatur Marc Spisländer Dirk Wischermann Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

Mehr

Rhapsody in J Modellierung von Echtzeitsystemen

Rhapsody in J Modellierung von Echtzeitsystemen Rhapsody in J Modellierung von Echtzeitsystemen Tobias Schumacher tobe@uni-paderborn.de Rhapsody in J - Modellierung von Echtzeitsystemen p.1/17 Anspruch des Tools Einsatzbereiche/Features Modellierung

Mehr

Software Engineering Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen

Software Engineering Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen White Paper Software Engineering Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen Die arbeitsteilige, ingenieurmäßige Entwicklung und Anwendung von umfangreichen

Mehr

Software Systems Engineering

Software Systems Engineering Software : SoSe 08 Prof. Dr. Klaus Schmid Software Produktlinien Ein neues Programm soll erstellt werden. Das habe ich doch schon mal programmiert, oder? Alter Code passt aber nicht ganz! Wird passend

Mehr

Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005

Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Hinweise: Bearbeitungszeit: 90 Minuten Erlaubte Hilfsmittel: im Anhang, sonst keine Bitte notieren Sie Ihre Antworten ausschließlich auf dem Aufgabenblatt!

Mehr

Modellbasierte Softwareentwicklung

Modellbasierte Softwareentwicklung CD OCL OD Statechart SD Modellbasierte Softwareentwicklung 7. Evolutionäre Methodik 7.1. Vorgehensmodell Vorlesungsnavigator: Prof. Dr. Bernhard Rumpe Sprache Codegen. http://www.se-rwth.de/ Testen Evolution

Mehr

Abschnitt 16: Objektorientiertes Design

Abschnitt 16: Objektorientiertes Design Abschnitt 16: Objektorientiertes Design 16. Objektorientiertes Design 16 Objektorientiertes Design Informatik 2 (SS 07) 610 Software-Entwicklung Zur Software-Entwicklung existiert eine Vielfalt von Vorgehensweisen

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

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer Holger Sinnerbrink Einführung Firmenentwicklung Gründung von Telelogic 1983 als Forschungs- und Entwicklungsabteilung

Mehr

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

SysML Die Zukunft des Systems Engineering?

SysML Die Zukunft des Systems Engineering? ECC 2012 Winterthur 5. Juni 2012 SysML Die Zukunft des Systems Engineering? Omar Naas, Senior Consultant, EVOCEAN GmbH 1934 Citroën 2CV Citroën Direktor Pierre-Jules Boulanger definierte 7 Anforderungen,

Mehr

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun Java Projekt Schiffe Versenken mit GUI 1. Über den Autor: Name: Marija Matejic Matrikelnummer: 9352571 E-mail: marijamatejic@yahoo.com

Mehr

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava shota.okujava@isento.de www.isento.de Beispielhaft MDSD in der Praxis Dr. Shota Okujava shota.okujava@isento.de www.isento.de Agenda Einführung Softwareentwicklungsprozess und MDSD Technologien und Werkzeuge Demo Entwicklung der Metamodelle

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

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: gi@uwe.doetzkies.de

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: gi@uwe.doetzkies.de Agiles Design Dr.-Ing. Uwe Doetzkies Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail: gi@uwe.doetzkies.de startupcamp berlin 15.3.2013 Regionalgruppe Berlin/Brandenburg Arbeitskreis Freiberufler

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

Analyse und Toolevaluierung

Analyse und Toolevaluierung Analyse und Toolevaluierung Evaluierung von Werkzeugen zur Erstellung von IT-Spezifikationen Im Zuge der Standardisierung und Industrialisierung der Softwareerstellung stehen zunächst kleinere Verbesserungen

Mehr

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Andreas Ditze MID GmbH Kressengartenstraße 10 90402 Nürnberg a.ditze@mid.de Abstract: Data Lineage

Mehr

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

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

Mehr

Software Engineering I

Software Engineering I Vorlesung Software Engineering I Dynamische Basiskonzepte 2 Kontrollstrukturen Aktivitätsdiagramme Sequenzdiagramme 1 Basiskonzepte Beschreiben die feste Struktur des Systems, die sich während der Laufzeit

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

UML-DSLs effizient eingesetzt. Insight 07, 13.11.2007 Klaus Weber

UML-DSLs effizient eingesetzt. Insight 07, 13.11.2007 Klaus Weber UML-DSLs effizient eingesetzt Insight 07, 13.11.2007 Klaus Weber Einladung Domänenspezifische Sprachen (DSLs) sind notwendige Voraussetzung für den Erfolg einer MDA-Strategie. MID favorisiert statt der

Mehr

Softwareanforderungsanalyse

Softwareanforderungsanalyse Softwareanforderungsanalyse Evolution von Anforderungen Burkhardt Renz Institut für SoftwareArchitektur der Technischen Hochschule Mittelhessen Wintersemester 2015/16 Evolution von Anforderungen Anforderungen

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Modellierungstechniken im Softwaredesign. Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting

Modellierungstechniken im Softwaredesign. Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting Modellierungstechniken im Softwaredesign Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting Was ist Modellierung? Modell = Ein Modell ist eine Repräsentation eines Systems von Objekten,

Mehr

Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien. Andreas Ditze, MDD & PL 2009, Leipzig, 23.03.2009

Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien. Andreas Ditze, MDD & PL 2009, Leipzig, 23.03.2009 Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien Andreas Ditze, MDD & PL 2009, Leipzig, 23.03.2009 I N H A L T 1. Vorstellung 2. Was macht einen guten Baukasten aus? 3. Ziele der MID ModellierungsMethodik

Mehr

6. Programmentwicklung

6. Programmentwicklung 6. Programmentwicklung Fertigungsprozess Qualitativ hochwertige Software ist ein Industrieprodukt -> Methoden der Industrie übertragen auf der Herstellprozess -> Herstellprozess gliedert sich in Phasen

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

Einführung in die Modellierung

Einführung in die Modellierung Einführung in die Modellierung Christian Huemer Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3, 1040 Vienna,

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

Software Engineering Interaktionsdiagramme

Software Engineering Interaktionsdiagramme Software Engineering Interaktionsdiagramme Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Nachrichtenaustausch Welche Nachrichten werden ausgetauscht? (Methodenaufrufe)

Mehr

Emergency Room für Projektleiter

Emergency Room für Projektleiter Emergency Room für Projektleiter Handlungsfähigkeit schnell zurückgewinnen Präsentation P0540 Copyright hyperskill GmbH 2010-2013 www.hyperskill.de Version 5.1 Emergency Room für Projektleiter Der Nutzen

Mehr

Geschäftsprozesse: Modellierung und Analyse

Geschäftsprozesse: Modellierung und Analyse Geschäftsprozesse: Modellierung und Analyse 1. Ausgangssituation 2. Begriffe 3. Modellierungsmethoden 4. Modellarten 5. Vorgehensprinzipien 6. Analyse 7. Werkzeuge Modellierung Modellierung: Modell: Prozess

Mehr

Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering

Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering Helmut Balzert Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering 3. Auflage Unter Mitwirkung von Heide Balzert Rainer Koschke Uwe Lämmel Peter Liggesmeyer Jochen Quante Spektrum

Mehr

Inhaltsverzeichnis. 1. Fragestellung

Inhaltsverzeichnis. 1. Fragestellung Inhaltsverzeichnis 1. Fragestellung... 1 2. Herleitung zum Thema... 1 3. Das Entity Relationship Modell (ERM)... 2 4. Praktisches Beispiel zum ERM... 7 5. Anhang...Fehler! Textmarke nicht definiert. 1.

Mehr

INNOVATOR im Entwicklungsprozess

INNOVATOR im Entwicklungsprozess Erfahrungsbericht INNOVATOR im Entwicklungsprozess Basis für Host- und Java-Anwendungen Dr. Carl-Werner Oehlrich, Principal Consultant MID GmbH Das Modellierungswerkzeug INNOVATOR Geschäftsprozess-Modellierung

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

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin Unsere Kunden erzählen keine Geschichten Ursula Meseberg microtool GmbH Berlin Unsere Kunden erzählen keine Geschichten Ein modellbasierter Prozess für die Anforderungsanalyse im Vorfeld agiler Produktentwicklung

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2008 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind

Mehr

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Jens Kohlmeyer 05. März 2007 Institut für Programmiermethodik und Compilerbau ActiveCharts Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0 Seite 2 Übersicht

Mehr

Übungsklausur vom 7. Dez. 2007

Übungsklausur vom 7. Dez. 2007 Übungsklausur vom 7. Dez. 2007 Ein Lösungsmuster Teilbereiche der Softwaretechnik Software Anforderungen Software Entwurf Software Konstruktion Software Test Software Wartung Software Konfigurationsmanagement

Mehr

Inhaltsverzeichnis.

Inhaltsverzeichnis. Wegweiser durch das Buch 1 1 Problembereich und Lösungsbereich 10 1.1.Unterschiede zwischen Problembereich und Lösungsbereich 10 1.2 Paradigmen der Softwareentwicklung 12 1.3 Methoden für die verschiedenen

Mehr

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 4 Lösungshilfe. Aufgabe 1. Zustandsdiagramm (8 Punkte) Geben Sie ein Zustandsdiagramm für

Mehr

Software Engineering. 3. Anforderungsanalyse. Franz-Josef Elmer, Universität Basel, WS 2006/07

Software Engineering. 3. Anforderungsanalyse. Franz-Josef Elmer, Universität Basel, WS 2006/07 Software Engineering 3. Anforderungsanalyse Franz-Josef Elmer, Universität Basel, WS 2006/07 Software Engineering: 3. Anforderungsanalyse 2 Definitionen Anforderungen (Requirements): Beschreibung aller

Mehr

Hochschule Darmstadt Fachbereich Informatik. Softwaretechnik II. 4.1 Darstellung der Architektur

Hochschule Darmstadt Fachbereich Informatik. Softwaretechnik II. 4.1 Darstellung der Architektur Hochschule Darmstadt Fachbereich Informatik Softwaretechnik II 4.1 Darstellung der Architektur Darstellung der Architektur Was macht ein Architekt? Viele Pläne! Endkunde Elektro Bauarbeiter Sanitär Softwaretechnik

Mehr

SEQUENZDIAGRAMM. Christoph Süsens

SEQUENZDIAGRAMM. Christoph Süsens SEQUENZDIAGRAMM Christoph Süsens DEFINITION Das Sequenzdiagramm gibt Auskunft darüber: Welche Methoden für die Kommunikation zwischen ausgewählten Objekten zuständig sind. Wie der zeitliche Ablauf von

Mehr

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2 EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0 EDV Kurs 13/2 Inhaltsverzeichnis 1 Objekte... 1 2 Klassen... 3 2.1 Beziehungen zwischen Klassen... 4 2.1.1 Vererbung... 4 2.1.2

Mehr

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster

Mehr