Wie lautet der Gesamtansatz der Systemgestaltung?
Strategieentwicklung
Ausgangspunkt gestalterischer Überlegungen
Prozessgestaltung
(Re-)Organisation des Geschäftsprozesses eines Geschäftsbereichs (vornehmlich Leistungserstellungsprozesse)
Anwendungssystemgestaltung
Steigerung der Prozessqualität und –effizienz durch umfassenden, innovativen Einsatz von IuK-Systemen
Organisationsgestaltung
Schaffung organisatorischer Strukturen, die der Prozess(re)organisation und dem Einsatz
unterstützender Technologien Rechnung tragen
Ausgangspunkt gestalterischer Überlegungen
Prozessgestaltung
(Re-)Organisation des Geschäftsprozesses eines Geschäftsbereichs (vornehmlich Leistungserstellungsprozesse)
Anwendungssystemgestaltung
Steigerung der Prozessqualität und –effizienz durch umfassenden, innovativen Einsatz von IuK-Systemen
Organisationsgestaltung
Schaffung organisatorischer Strukturen, die der Prozess(re)organisation und dem Einsatz
unterstützender Technologien Rechnung tragen
Wie lauten die Komponenten des Gestaltungsansatzes?
Phasenkonzept
o Untergliederung der Gestaltungsaktivitäten in mehrere Abschnitte
(Gestaltungs-)Methoden
o Methoden zur Erarbeitung der angestrebten Gestaltungsergebnisse in den Phasen
Werkzeuge
o optionale Komponenten zur Unterstützung der Gestaltungstätigkeiten in Phasen
o Untergliederung der Gestaltungsaktivitäten in mehrere Abschnitte
(Gestaltungs-)Methoden
o Methoden zur Erarbeitung der angestrebten Gestaltungsergebnisse in den Phasen
Werkzeuge
o optionale Komponenten zur Unterstützung der Gestaltungstätigkeiten in Phasen
Geschäftsprozessgestaltung - Business-Reengineering Definition?
Menge von Aktivitäten, die eine oder mehrere Arten von Input zur Outputerzeugung verwendet, der für den Kunden Wert besitzt
Business-Reengineering - Merkmale?
- Ansatz zur radikalen Unternehmenserneuerung
(1993, Hammer/Champy)
- IuK-Technologien als Innovationspotential und Enabler
Gestaltungsfelder: ganzheitlicher Ansatz
Gestaltungsumfang: alle Geschäftsprozesse; sinnvoll jedoch Beschränkung auf problematische Prozesse
Gestaltungsart: Individualisierung
Ausrichtung :Prozess- und Kundenorientierung
Ausgangspunkt: vom Istzustand losgelöster Idealzustand
Vorgehensweise: Top down (von oben nach unten gerichtete Strategie der schrittweisen Verfeinerung)
(1993, Hammer/Champy)
- IuK-Technologien als Innovationspotential und Enabler
Gestaltungsfelder: ganzheitlicher Ansatz
Gestaltungsumfang: alle Geschäftsprozesse; sinnvoll jedoch Beschränkung auf problematische Prozesse
Gestaltungsart: Individualisierung
Ausrichtung :Prozess- und Kundenorientierung
Ausgangspunkt: vom Istzustand losgelöster Idealzustand
Vorgehensweise: Top down (von oben nach unten gerichtete Strategie der schrittweisen Verfeinerung)
Geschäftsprozess- und Geschäftsprozess-Modellierung Merkmale eines Geschäftsprozesses?
o zielgerichtete, zeitlich-logische Abfolge von Aufgaben, die arbeitsteilig von mehreren Organisationen oder Organisationseinheiten unter Nutzung von IuK- Technologien ausgeführt werden
o dient der Erstellung von Leistungen entsprechend den aus den Unternehmenszielen abgeleiteten Prozesszielen
o maximaler Detaillierungsgrad der Beschreibung ist erreicht,
wenn die ausgewiesenen Aufgaben je in einem Zug, von einem Mitarbeiter ohne Wechsel des Arbeitsplatzes ausgeführt werden können
o dient der Erstellung von Leistungen entsprechend den aus den Unternehmenszielen abgeleiteten Prozesszielen
o maximaler Detaillierungsgrad der Beschreibung ist erreicht,
wenn die ausgewiesenen Aufgaben je in einem Zug, von einem Mitarbeiter ohne Wechsel des Arbeitsplatzes ausgeführt werden können
Geschäftsprozess- und Geschäftsprozess-Modellierung In Arten von Geschäftsprozessen?
Leistungsprozesse
- an Kundenbedürfnisse ausgerichtet
- dienen der Erstellung und Vermarktung von Produkten und Dienstleistungen
Unterstützungsprozesse
- Aufbau und Pflege der benötigten Ressourcen
Führungsprozesse
- Überwachung der Finanzen
- Führung der Mitarbeiter
- Strategieentwicklung und -umsetzung
- an Kundenbedürfnisse ausgerichtet
- dienen der Erstellung und Vermarktung von Produkten und Dienstleistungen
Unterstützungsprozesse
- Aufbau und Pflege der benötigten Ressourcen
Führungsprozesse
- Überwachung der Finanzen
- Führung der Mitarbeiter
- Strategieentwicklung und -umsetzung
Merkmale der Geschäftsprozess- und Geschäftsprozess-Modellierung?
Gestaltungsfelder: Geschäftsprozesse, organisatorische Strukturen, Anwendungssysteme
Gestaltungsumfang: wichtigste Geschäftsprozesse
Gestaltungsart: Neugestaltung, begrenzte Individualisierung
Ausrichtung: Prozessorientierung
Ausgangspunkt: Idealzustand und Istzustand
Vorgehensweise: Top down, Integration von Bottom up
- IuK-Technologien als Innovationspotential und Enabler
- evolutionäre Entwicklung der Prozesse
Gestaltungsumfang: wichtigste Geschäftsprozesse
Gestaltungsart: Neugestaltung, begrenzte Individualisierung
Ausrichtung: Prozessorientierung
Ausgangspunkt: Idealzustand und Istzustand
Vorgehensweise: Top down, Integration von Bottom up
- IuK-Technologien als Innovationspotential und Enabler
- evolutionäre Entwicklung der Prozesse
Workflow und Workflow-Spezifikation - Eigenschaften?
Workflow
o formal beschriebene, ganz oder teilweise automatisierter Geschäftsprozess
o beinhaltet zeitliche, fachliche und ressourcenbezogene Spezifikation zur automatischen Steuerung des Arbeitsablaufes
o anzustoßende Arbeitsschritte zur Ausführung durch Mitarbeiter oder IuK-Systeme vorgesehen
o formal beschriebene, ganz oder teilweise automatisierter Geschäftsprozess
o beinhaltet zeitliche, fachliche und ressourcenbezogene Spezifikation zur automatischen Steuerung des Arbeitsablaufes
o anzustoßende Arbeitsschritte zur Ausführung durch Mitarbeiter oder IuK-Systeme vorgesehen
Workflow und Workflow-Spezifikation
Objekte und Beschreibung?
Objekte und Beschreibung?
Workflow-Schema
- formale Beschreibung des Workflows (Workflow-Spezifikation)
Workflow-Instanz
- konkrete Ausführung eines Workflows
allgemeiner Workflow
- gut strukturierte und repetitiv auszuführende Abläufe
fallbezogener Workflow
- geringer Formalisierungsgrad
Ad-hoc Workflow
- nicht modellierbar, da nicht-repetitive Einzelprozesse
Workflow-Management-Systeme (WFMS)
- automatische Steuerung von Workflows
- formale Beschreibung des Workflows (Workflow-Spezifikation)
Workflow-Instanz
- konkrete Ausführung eines Workflows
allgemeiner Workflow
- gut strukturierte und repetitiv auszuführende Abläufe
fallbezogener Workflow
- geringer Formalisierungsgrad
Ad-hoc Workflow
- nicht modellierbar, da nicht-repetitive Einzelprozesse
Workflow-Management-Systeme (WFMS)
- automatische Steuerung von Workflows
Eigenschaften Gruppenarbeit?
- nicht repetitiv
- gemeinsame Bearbeitung einer Aufgabe durch eine Personalgruppe bzw. ein Team
- Unterstützung durch Computer Supported Cooperative Work (CSCW) bzw. Workgroup-Computing durch Groupware (spezielles Softwaresystem)
- gemeinsame Bearbeitung einer Aufgabe durch eine Personalgruppe bzw. ein Team
- Unterstützung durch Computer Supported Cooperative Work (CSCW) bzw. Workgroup-Computing durch Groupware (spezielles Softwaresystem)
Geschäftsprozess-Management
Phasen?
Phasen?
Prozessabgrenzung
Prozessmodellierung
Prozessführung
Prozessmodellierung
Prozessführung
Geschäftsprozess-Management -
Eigenschaften Prozessabgrenzung
Eigenschaften Prozessabgrenzung
- Anfang und Ende von Prozessen, Beziehungen zwischen Prozessen, Bedeutung für dasUnternehmen
- Ausganspunkte: strategische Vorgaben, bestehende Arbeitsabläufe
- Umsetzung in drei Schritten
# Ableitung von Prozesskandidaten
# Beschreibung von Prozesskandidaten
# Auswahl der zu modellierenden Prozesse
- Ausganspunkte: strategische Vorgaben, bestehende Arbeitsabläufe
- Umsetzung in drei Schritten
# Ableitung von Prozesskandidaten
# Beschreibung von Prozesskandidaten
# Auswahl der zu modellierenden Prozesse
Geschäftsprozess-Management: Prozessabgrenzung
Aufgaben - Ableitung von Prozesskandidaten?
Aufgaben - Ableitung von Prozesskandidaten?
Ableitung von Prozesskandidaten
- nach Marktsegmentierung in Produkt/Markt-Kombination
- nach Strukturierung der Welt der Ist-Prozesse
- nach Kundenbedürfnissen
- nach Marktsegmentierung in Produkt/Markt-Kombination
- nach Strukturierung der Welt der Ist-Prozesse
- nach Kundenbedürfnissen
Geschäftsprozess-Management: Prozessabgrenzung
Aufgaben - Beschreibung von Prozesskandidaten?
Aufgaben - Beschreibung von Prozesskandidaten?
Beschreibung von Prozesskandidaten
- Verdeutlichung des Prozesszwecks, des Prozessinhalts sowie der
Beziehungen zwischen Prozessen
- Beschreibungskriterien: Aufgaben der Prozesskandidaten, erbrachte Prozessleistungen, korrespondierende Kundenprozesse
- Verdeutlichung des Prozesszwecks, des Prozessinhalts sowie der
Beziehungen zwischen Prozessen
- Beschreibungskriterien: Aufgaben der Prozesskandidaten, erbrachte Prozessleistungen, korrespondierende Kundenprozesse
Geschäftsprozess-Management: Prozessabgrenzung
Aufgaben - Auswahl der zu modellierenden Prozesse?
Aufgaben - Auswahl der zu modellierenden Prozesse?
Auswahl der zu modellierenden Prozesse
- strategisches Potential
- ökonomisches Potential
- technologisches Potential
- Standardisierbarkeit
- anschließend Bewertung der Prozesskandidaten, evtl. auch mit portfolio-orientierter Bewertung (z.B. Diagramm nach Prozessergebnisbeitrag und Reorgansisationsbedarf)
- strategisches Potential
- ökonomisches Potential
- technologisches Potential
- Standardisierbarkeit
- anschließend Bewertung der Prozesskandidaten, evtl. auch mit portfolio-orientierter Bewertung (z.B. Diagramm nach Prozessergebnisbeitrag und Reorgansisationsbedarf)
Geschäftsprozess-Management: Prozessmodellierung
Eigenschaften??
Eigenschaften??
- (semi)formale Beschreibung gegebener oder neu gestalteter Geschäftsprozesse
Phasenmodell
- systematische Gliederung von Entwicklungsvorhaben
Sichtenkonzept
- separate Betrachtung fachbezogener Zusammenhänge
Modellierungsmethode
Phasenmodell
- systematische Gliederung von Entwicklungsvorhaben
Sichtenkonzept
- separate Betrachtung fachbezogener Zusammenhänge
Modellierungsmethode
Geschäftsprozess-Management: Prozessmodellierung
Merkmale Phasenmodell?
Merkmale Phasenmodell?
Prozessentwurf nach Österle (1995)
- Erhebung des Ist-Zustandes
- Analyse der Potentiale (Makro-Ebene)
- Konzipierung des Soll-Zustandes
- Workflow (Mikro-Ebene)
Prozessentwurf nach Rauschecker (1998)
- Soll-Zustand aus Abstimmung von Vision und Strategie einerseits und Beschränkungen des Ist-Zustandes andererseits Systemanalytisches Vorgehen
- Projektdefinition: Abgrenzung des Modellierungsbereichs, Erstellung Termin- und Ressourcenplan
- Ist-Analyse: (semi)formale Beschreibung der durchgeführten Geschäftsprozesse und Analyse der Schwachstellen
- Potential-Analyse: Abgrenzung der visionären, technologischen und strategischen Aspekte
- Soll-Konzept: Entwurf der Soll-Prozesse, Beschreibung der Soll-Prozesse in einer speziellen Datenbank (Prozess-Repository)
- Durchführbarkeitsstudie: praktische Umsetzbarkeit Soll-Konzept klären
- Erhebung des Ist-Zustandes
- Analyse der Potentiale (Makro-Ebene)
- Konzipierung des Soll-Zustandes
- Workflow (Mikro-Ebene)
Prozessentwurf nach Rauschecker (1998)
- Soll-Zustand aus Abstimmung von Vision und Strategie einerseits und Beschränkungen des Ist-Zustandes andererseits Systemanalytisches Vorgehen
- Projektdefinition: Abgrenzung des Modellierungsbereichs, Erstellung Termin- und Ressourcenplan
- Ist-Analyse: (semi)formale Beschreibung der durchgeführten Geschäftsprozesse und Analyse der Schwachstellen
- Potential-Analyse: Abgrenzung der visionären, technologischen und strategischen Aspekte
- Soll-Konzept: Entwurf der Soll-Prozesse, Beschreibung der Soll-Prozesse in einer speziellen Datenbank (Prozess-Repository)
- Durchführbarkeitsstudie: praktische Umsetzbarkeit Soll-Konzept klären
Geschäftsprozess-Management: Prozessmodellierung
Merkmale Sichtenkonzept?
Merkmale Sichtenkonzept?
ARIS (Scheer 1998)
- Organisationssicht, Datensicht, Funktionssicht, Leistungssicht, Steuerungssicht
PROMET (Österle 1995)
- Organisation, Daten, Funktionen (, Personal, ...)
SOM (Ferstl/Sinz 1995)
- Leistungssicht, Lenkungssicht, Ablaufsicht
- Organisationssicht, Datensicht, Funktionssicht, Leistungssicht, Steuerungssicht
PROMET (Österle 1995)
- Organisation, Daten, Funktionen (, Personal, ...)
SOM (Ferstl/Sinz 1995)
- Leistungssicht, Lenkungssicht, Ablaufsicht
Geschäftsprozess-Management: Prozessmodellierung
Notationsformen in der Modellierungsmethode?
Notationsformen in der Modellierungsmethode?
- Typ der Modellierungssprache – von Art der verwendeten Zeichen bzw. Symbolen sowie vom Formalisierungsgrad abhängig
nicht-formale Methoden
- z.B. verbal-sprachliche Beschreibungsform, an natürliche Sprachen angelehnt
- geringe Eignung
semiformale Methoden
- z.B. grafisch-sprachliche Beschreibungsform, neben Symbolen auchalphanumerische Zeichen zur Beschriftung
formale Methoden
- z.B. mathematische Formelsprache
- geringe Eignung
nicht-formale Methoden
- z.B. verbal-sprachliche Beschreibungsform, an natürliche Sprachen angelehnt
- geringe Eignung
semiformale Methoden
- z.B. grafisch-sprachliche Beschreibungsform, neben Symbolen auchalphanumerische Zeichen zur Beschriftung
formale Methoden
- z.B. mathematische Formelsprache
- geringe Eignung
Geschäftsprozess-Management: Prozessmodellierung
Arten der Diagrammsprache?
Arten der Diagrammsprache?
Geschäftsprozesse meist mit gerichteten Graphien modelliert, Knoten Modellierungsobjekte, Kanten Beziehungen
Petri-Netze (Petri 1962)
- gute Darstellung dynamischer Aspekte von
Arbeitsabläufen
Strukturierte Methoden
- basieren auf Ansatz der „Strukturierten Analyse“ aus der Softwareentwicklung
Objektorientierte Methoden
- folgen objektorientierten Paradigma der Softwareentwicklung
Vorgangskettendiagramme
- Beschreibung von Geschäftsprozessen mittels
spaltenorientiertem Beschreibungsschema unter Verwendung der Symbolik des herkömmlichen Datenflussplans
Petri-Netze (Petri 1962)
- gute Darstellung dynamischer Aspekte von
Arbeitsabläufen
Strukturierte Methoden
- basieren auf Ansatz der „Strukturierten Analyse“ aus der Softwareentwicklung
Objektorientierte Methoden
- folgen objektorientierten Paradigma der Softwareentwicklung
Vorgangskettendiagramme
- Beschreibung von Geschäftsprozessen mittels
spaltenorientiertem Beschreibungsschema unter Verwendung der Symbolik des herkömmlichen Datenflussplans
Geschäftsprozess-Management: Prozessmodellierung
Eigenschaften des Begriffssystem?
Eigenschaften des Begriffssystem?
Begriffssystem
- Definition und Darstellung modellierungsrelevanter Sachverhalte
Objekte
- Prozessschritte
- Objekte (werden in Prozessschritten bearbeitet)
- Kontroll- und Steuerflüsse
- Aufgabenträger (führen Prozessschritte aus)
- Definition und Darstellung modellierungsrelevanter Sachverhalte
Objekte
- Prozessschritte
- Objekte (werden in Prozessschritten bearbeitet)
- Kontroll- und Steuerflüsse
- Aufgabenträger (führen Prozessschritte aus)
Geschäftsprozess-Management: Prozessmodellierung
Eigenschaften des Prozess-Repository?
Eigenschaften des Prozess-Repository?
- Datenlexikon zur Beschreibung der Modellbausteine eines Prozessmodells und der zwischen den Bausteinen bestehenden Beziehungen
- Auskunftstool: Bereitstellung geeignet aufbereiteter Informationen über Einzelbausteine, Bausteingruppen, Einzelverbindungen etc. für Gestaltungs- und Analysezwecke
- Beschreibungstool: Definition und detaillierte Beschreibung der Bausteine und zwischen den Bausteinen bestehenden Verbindungen
- Unterstützung der Modellgenerierung: automatische Erstellung undgrafische Ausgabe von Prozessmodellen
- Vollständigkeits- und Konsistenzüberprüfung der Objektbeschreibungen
- Bereitstellung von Informationen für Zwecke des Prozess-Managements
- Auskunftstool: Bereitstellung geeignet aufbereiteter Informationen über Einzelbausteine, Bausteingruppen, Einzelverbindungen etc. für Gestaltungs- und Analysezwecke
- Beschreibungstool: Definition und detaillierte Beschreibung der Bausteine und zwischen den Bausteinen bestehenden Verbindungen
- Unterstützung der Modellgenerierung: automatische Erstellung undgrafische Ausgabe von Prozessmodellen
- Vollständigkeits- und Konsistenzüberprüfung der Objektbeschreibungen
- Bereitstellung von Informationen für Zwecke des Prozess-Managements
Geschäftsprozess-Management Prozessführung
Merkmale? Warum?
Merkmale? Warum?
- Messung des Prozesserfolgs
- Sicherung der Qualität der Prozessleistung
- Organisation eines Prozess-Controllings
- Sicherung der Qualität der Prozessleistung
- Organisation eines Prozess-Controllings
Geschäftsprozess-Management Prozessführung
Schritte des Führungskreislaufes??
Schritte des Führungskreislaufes??
Definition von Prozesszielen
Definition von Prozess-Führungsgrößen
Messung der Zielerreichung
Ableitung von Maßnahmen
Definition von Prozess-Führungsgrößen
Messung der Zielerreichung
Ableitung von Maßnahmen
Ansatz zur Modellierung von Geschäftsprozessen
Objekte in der Erstellung von Geschäftsprozessmodellen?
Objekte in der Erstellung von Geschäftsprozessmodellen?
Geschäftsprozessschritt
o Teil eines Arbeitsablaufes für dessen Ausführung eine organisatorische Einheit verantwortlich ist
Kontrollfluss
o Darstellung der Ablauffolge von Prozessschritten
Logische Verknüpfungen
o UND, ODER, XOR
Eintrittspunkt
o Anfang eines Prozesses
Austrittspunkt
o Ende eines Prozesses
Konnektoren
o Vorgänger-Konnektor: Anknüpfungspunkt am Anfang eines Teil-Geschäftsprozesses
o Teil eines Arbeitsablaufes für dessen Ausführung eine organisatorische Einheit verantwortlich ist
Kontrollfluss
o Darstellung der Ablauffolge von Prozessschritten
Logische Verknüpfungen
o UND, ODER, XOR
Eintrittspunkt
o Anfang eines Prozesses
Austrittspunkt
o Ende eines Prozesses
Konnektoren
o Vorgänger-Konnektor: Anknüpfungspunkt am Anfang eines Teil-Geschäftsprozesses
Geschäftsprozess-Management Prozessführung
Führungskreislauf - Step 1?
Führungskreislauf - Step 1?
Definition von Prozesszielen
- aus strategischen Zielen des Geschäftsfeldes
- Vorgabe der angestrebten Zielerreichung
- Konzept der kritischen Erfolgsfaktoren
# Erfolg eines Unternehmens maßgeblich von wenigen Faktoren bestimmt
- aus strategischen Zielen des Geschäftsfeldes
- Vorgabe der angestrebten Zielerreichung
- Konzept der kritischen Erfolgsfaktoren
# Erfolg eines Unternehmens maßgeblich von wenigen Faktoren bestimmt
Geschäftsprozess-Management Prozessführung
Führungskreislauf - Step 2?
Führungskreislauf - Step 2?
Definition von Prozess-Führungsgrößen
- Umsetzung Prozessziele in leistungsbezogene Führungsgrößen - Vorgabe von Sollwerten für Prozessleistungen
- Umsetzung Prozessziele in leistungsbezogene Führungsgrößen - Vorgabe von Sollwerten für Prozessleistungen
Geschäftsprozess-Management Prozessführung
Ermittlung Fürhungsgrößen inkl. 1. Ableitungsschritt?
Ermittlung Fürhungsgrößen inkl. 1. Ableitungsschritt?
- lassen sich aus beobachtbaren Prozessleistungen bestimmen
- repräsentieren Prozessziel inhaltlich
1. Ableitungsschritt
Ausgansbasis strategische Ziele bzw. kritische Erfolgsfaktoren eines Geschäftsfeldes
allgemein gültige Erfolgsfaktoren
- gelten für jegliche wirtschaftliche Betätigung
- prozessübergreifend
- Interpretation notwendig, um Bezug auf aktuell
betrachteten Prozess herzustellen
prozessspezifische Erfolgsfaktoren
- spezifische Situation eines Prozesses
- unmittelbar für Auswahl von kritischen Erfolgsfaktoren verwendbar
- repräsentieren Prozessziel inhaltlich
1. Ableitungsschritt
Ausgansbasis strategische Ziele bzw. kritische Erfolgsfaktoren eines Geschäftsfeldes
allgemein gültige Erfolgsfaktoren
- gelten für jegliche wirtschaftliche Betätigung
- prozessübergreifend
- Interpretation notwendig, um Bezug auf aktuell
betrachteten Prozess herzustellen
prozessspezifische Erfolgsfaktoren
- spezifische Situation eines Prozesses
- unmittelbar für Auswahl von kritischen Erfolgsfaktoren verwendbar
Geschäftsprozess-Management Prozessführung
Ermittlung Fürhungsgrößen - 2. Ableitungsschritt?
Ermittlung Fürhungsgrößen - 2. Ableitungsschritt?
2. Ableitungsschritt
- mehrere den kritischen Erfolgsfaktor bestimmende Führungsgrößen zu ermitteln
- sollen gestatten, den Faktorbeitrag zum Prozesserfolg zu messen
finanzielle Größen
- aus dem Rechnungswesen, nicht direkt (indirekt)
einem Prozess zu entnehmen
quantitative Größen
- der Messung unmittelbar zugänglich (direkt)
qualitative Größen
- mittels Bewertungsskalen Messung im weiteren Sinne möglich
generell anwendbare Größen
- müssen interpretiert werden, um prozessspezifische
Größen zu erhalten
- mehrere den kritischen Erfolgsfaktor bestimmende Führungsgrößen zu ermitteln
- sollen gestatten, den Faktorbeitrag zum Prozesserfolg zu messen
finanzielle Größen
- aus dem Rechnungswesen, nicht direkt (indirekt)
einem Prozess zu entnehmen
quantitative Größen
- der Messung unmittelbar zugänglich (direkt)
qualitative Größen
- mittels Bewertungsskalen Messung im weiteren Sinne möglich
generell anwendbare Größen
- müssen interpretiert werden, um prozessspezifische
Größen zu erhalten
Geschäftsprozess-Management Prozessführung
Wege der Ermittlung von Führungsgrößen?
Wege der Ermittlung von Führungsgrößen?
Kanal
- Auftragskanäle (z.B. Auftragserfassung über Vertreter),
- Korrekturkanäle (z.B. manuelle Korrektur)
- Auftragskanäle (z.B. Auftragserfassung über Vertreter),
- Korrekturkanäle (z.B. manuelle Korrektur)
Geschäftsprozess-Management Prozessführung
Führungskreislauf - Step 3?
Führungskreislauf - Step 3?
Messung der Zielerreichung
- Erhebung der Ist-Leistungen
- Ermittlung der Erreichung der Prozessziele aufgrund der Ist-Leistungen
- Erhebung der Ist-Leistungen
- Ermittlung der Erreichung der Prozessziele aufgrund der Ist-Leistungen
Geschäftsprozess-Management Prozessführung
Messung der Zielerreichung - Arten?
Messung der Zielerreichung - Arten?
Prozessleistungen
- Ergebnisse von Prozessen bzw. Prozessschritten
- auch Input für weitere Leistungserstellung
- Leistungen erst dann dokumentieren, wenn Zustandsänderung zu
Ergebnis mit Produktcharakter und Produktbezeichnung geführt hat
Prozesskosten
- mit traditionellen Systemen der Kostenrechnung nicht ohne weiteres ermittelbar
- Konzept der Verrechnungssatzkalkulation
- Ergebnisse von Prozessen bzw. Prozessschritten
- auch Input für weitere Leistungserstellung
- Leistungen erst dann dokumentieren, wenn Zustandsänderung zu
Ergebnis mit Produktcharakter und Produktbezeichnung geführt hat
Prozesskosten
- mit traditionellen Systemen der Kostenrechnung nicht ohne weiteres ermittelbar
- Konzept der Verrechnungssatzkalkulation
Geschäftsprozess-Management Prozessführung
Führungskreislauf - Step 4?
Führungskreislauf - Step 4?
Ableitung von Maßnahmen
- Vergleich von Soll- und Ist-Leistungen und Identifikation von Prozessdefiziten
- Ableitung von Maßnahmen zur Defizitverbesserung
- Vergleich von Soll- und Ist-Leistungen und Identifikation von Prozessdefiziten
- Ableitung von Maßnahmen zur Defizitverbesserung
Ansatz zur Modellierung von Geschäftsprozessen
- relevante Betrachtungen bei der Erstellung??
- relevante Betrachtungen bei der Erstellung??
- Geschäftsprozessschritt
- Kontrollfluss
- Logische Verknüpfungen
- Eintrittspunkt
- Austrittspunkt
- Konnektoren
- Organisationssicht
- Datensicht
- Funktionssicht
- Kontrollfluss
- Logische Verknüpfungen
- Eintrittspunkt
- Austrittspunkt
- Konnektoren
- Organisationssicht
- Datensicht
- Funktionssicht
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Geschäftsprozessschritt?
Charakterisierung Geschäftsprozessschritt?
o Teil eines Arbeitsablaufes für dessen Ausführung eine organisatorische Einheit verantwortlich ist
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Kontrollfluss?
Charakterisierung Kontrollfluss?
o Darstellung der Ablauffolge von Prozessschritten
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Logische Verknüpfungen?
Charakterisierung Logische Verknüpfungen?
o UND, ODER, XOR
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Eintrittspunkt und Austrittspunkt?
Charakterisierung Eintrittspunkt und Austrittspunkt?
Eintrittspunkt
o Anfang eines Prozesses
Austrittspunkt
o Ende eines Prozesses
o Anfang eines Prozesses
Austrittspunkt
o Ende eines Prozesses
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Konnektoren?
Charakterisierung Konnektoren?
o Vorgänger-Konnektor: Anknüpfungspunkt am Anfang eines Teil-Geschäftsprozesses
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Organisationssicht??
Charakterisierung Organisationssicht??
Organisationsobjekt
- repräsentiert interne oder externe ganze Organisation
Organisationszuordnung
- Zuordnung eines Organisationsobjektes zu einem Prozess oder
Prozessschritt
- durch punktierte Linie
Hierarchiebeziehung
- verbindet genau zwei Organisationsobjekte und gestattet Über- bzw. Unterordnung
- repräsentiert interne oder externe ganze Organisation
Organisationszuordnung
- Zuordnung eines Organisationsobjektes zu einem Prozess oder
Prozessschritt
- durch punktierte Linie
Hierarchiebeziehung
- verbindet genau zwei Organisationsobjekte und gestattet Über- bzw. Unterordnung
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Datensicht??
Charakterisierung Datensicht??
Datenobjekt
- Datenspeicher (formatierte Daten)
- Dokument
- werden als Input für Prozess(schritt) benötigt oder als Output erzeugt
Datenfluss
- Verbindung zwischen Prozess(schritt) und Datenobjekt
Assoziation
- zwischen zwei Datenobjekten bestehende Beziehung
- Kardinalitäten präzisieren Beziehungszusammenhang (z.B. 0,*)
- Datenspeicher (formatierte Daten)
- Dokument
- werden als Input für Prozess(schritt) benötigt oder als Output erzeugt
Datenfluss
- Verbindung zwischen Prozess(schritt) und Datenobjekt
Assoziation
- zwischen zwei Datenobjekten bestehende Beziehung
- Kardinalitäten präzisieren Beziehungszusammenhang (z.B. 0,*)
Ansatz zur Modellierung von Geschäftsprozessen
Charakterisierung Funktionssicht?
Charakterisierung Funktionssicht?
o Verdeutlichen der funktionalen Struktur des mit einem Geschäftsprozess gegebenen Tätigkeitsbereich
o Funktionshierarchie
- Aufgliederung in Prozessschritte und Teilprozesse
o Funktionshierarchie
- Aufgliederung in Prozessschritte und Teilprozesse
Datenorganisation - Aufgabe Datenorganisation?
- Strukturierung der Datenwelt eines Realitätsausschnitts
- Abbildung der dabei entstehenden Strukturen auf Datenspeicher
- Abbildung der dabei entstehenden Strukturen auf Datenspeicher
Datenorganisation - Logische Datenorganisation?
- Formulierung eines konzeptionellen Datenmodells
Datenorganisation - Physische Datenorganisation?
- geeignete Speicherungsformen und Zugriffspfade bestimmen
Datenorganisation - Datensatz??
- Menge logisch zusammenhängender Datenelemente
- jedes Datenelement beschreibt ein Merkmal, für das der Datensatz konkreten Merkmalswert enthält
- jedes Datenelement beschreibt ein Merkmal, für das der Datensatz konkreten Merkmalswert enthält
Datenorganisation - Datei?
- Menge logisch zusammengehöriger, meist gleichartiger Datensätze
Datenorganisation - Schlüssel
Merkmal oder Merkmalskombination zur Kennzeichnung von Datensätzen
Identifikationsschlüssel
(eindeutige Identifikation eines Datensatzes durch seinen Wert)
Suchschlüssel (grenzt Menge der gesuchten Datensätze ein)
Sortierschlüssel
(bestimmt Reihenfolge der Datensätze in einer Datei)
Primärschlüssel (Hauptschlüssel, über den Zugriffe besonders effizient möglich sind)
Sekundärschlüssel (Nebenschlüssel für häufig benötigte Anfragen, die nicht über Primärschlüssel erfolgen)
Identifikationsschlüssel
(eindeutige Identifikation eines Datensatzes durch seinen Wert)
Suchschlüssel (grenzt Menge der gesuchten Datensätze ein)
Sortierschlüssel
(bestimmt Reihenfolge der Datensätze in einer Datei)
Primärschlüssel (Hauptschlüssel, über den Zugriffe besonders effizient möglich sind)
Sekundärschlüssel (Nebenschlüssel für häufig benötigte Anfragen, die nicht über Primärschlüssel erfolgen)
Datenorganisation - Datenbank?
System von Dateien, zwischen denen logische Beziehungen bestehen
Beziehungen werden über Primärschlüssel der Datensätze in den Dateien hergestellt
Beziehungen werden über Primärschlüssel der Datensätze in den Dateien hergestellt
Datenorganisation - Anforderungen an Datenorganisation?
- Datenpersistenz
o dauerhafte und zuverlässige Speicherung
- Effizienz und Wirtschaftlichkeit
o kurze Zugriffs- und Antwortzeiten
o Kosten in angemessenem Verhältnis zum Nutzen
- Integrität
o inhaltliche Widerspruchsfreiheit der Daten (Datenkonsistenz)
o Schutz vor Verlust, Verfälschung... (Datensicherheit)
o Schutz von Personen vor missbräuchlicher Verwendung personenbezogener Daten (Datenschutz)
- Minimal Redundanz
- Physische Datenunabhängigkeit
- Logische Datenunabhängigkeit
o Erweiterung auf logischer Ebene der Daten möglich ohne bestehende Anwendungsprogramme ändern zu müssen
o dauerhafte und zuverlässige Speicherung
- Effizienz und Wirtschaftlichkeit
o kurze Zugriffs- und Antwortzeiten
o Kosten in angemessenem Verhältnis zum Nutzen
- Integrität
o inhaltliche Widerspruchsfreiheit der Daten (Datenkonsistenz)
o Schutz vor Verlust, Verfälschung... (Datensicherheit)
o Schutz von Personen vor missbräuchlicher Verwendung personenbezogener Daten (Datenschutz)
- Minimal Redundanz
- Physische Datenunabhängigkeit
- Logische Datenunabhängigkeit
o Erweiterung auf logischer Ebene der Daten möglich ohne bestehende Anwendungsprogramme ändern zu müssen
Datenorganisation - Dateiorganisation?
Organisation der Datensätze innerhalb einer Datei (Speicherungsformen, Zugriffsmethoden)
Dateiverwaltung
Dateiverwaltung
Datenorganisation - Speicherungsform?
Prinzipien, nach denen Datensätze in Datei abgelegt werden
Datenorganisation - Zugriffsmethoden?
erlauben Wiederauffinden eines Datensatzes in einer Datei
Datenorganisation - Grundoperationen?
Einfügen eines Datensatzes
Entfernen eines Datensatzes
Ändern eines Datensatzes
Entfernen eines Datensatzes
Ändern eines Datensatzes
Datenorganisation - Verarbeitung?
fortlaufend: gemäß Speicherfolge in Datei
wahlfrei: beliebig gewählter Datensatz
wahlfrei: beliebig gewählter Datensatz
Datenorganisation - Sequentielle Speicherung??
fortlaufende und lückenlose Speicherung
unsortiert oder sortiert möglich
Zugriffsmethode richtet sich nach Speichermedium
(sequentiell bei seriellem Speicher)
Einfügen und Entfernen ineffizient
für wahlfreie Verarbeitung ungeeignet
unsortiert oder sortiert möglich
Zugriffsmethode richtet sich nach Speichermedium
(sequentiell bei seriellem Speicher)
Einfügen und Entfernen ineffizient
für wahlfreie Verarbeitung ungeeignet
Datenorganisation - Index-sequentielle Speicherung?
Voraussetzung ist Direktzugriffsspeicher
Index enthält Primärschlüsselwert des letzten und physische Adresse des ersten Datensatzes des jeweiligen Dateibereiches
Zugriff
o Suche im Index nach erstem Eintrag dessen Primärschlüssel größer ist als der Suchschlüssel, Adresse verweist auf zutreffenden Dateibereich
o Suche im Dateibereich bis gesuchter Datensatz gefunden
deutliche Effizienzvorteile bei Einfügen und Entfernen
neben fortlaufender auch effiziente wahlfreie Verarbeitung möglich
Index enthält Primärschlüsselwert des letzten und physische Adresse des ersten Datensatzes des jeweiligen Dateibereiches
Zugriff
o Suche im Index nach erstem Eintrag dessen Primärschlüssel größer ist als der Suchschlüssel, Adresse verweist auf zutreffenden Dateibereich
o Suche im Dateibereich bis gesuchter Datensatz gefunden
deutliche Effizienzvorteile bei Einfügen und Entfernen
neben fortlaufender auch effiziente wahlfreie Verarbeitung möglich
Datenorganisation - Verkettete Speicherung??
Datensätze physisch an beliebigen Stellen eines Speichers ablegbar
Voraussetzung Direktzugriffsspeicher
Kettenbildung durch Zeiger, der physische Adresse des folgenden Datensatzes enthält
effizientes Einfügen und Entfernen möglich
lediglich sequentielle Suche möglich
Voraussetzung Direktzugriffsspeicher
Kettenbildung durch Zeiger, der physische Adresse des folgenden Datensatzes enthält
effizientes Einfügen und Entfernen möglich
lediglich sequentielle Suche möglich
Datenorganisation - Index-verkettete Speicherung??
Index enthält größten Primärschlüssel einer Kette und Verweis auf den ersten zugehörigen Datensatz
Suche in der identifizierten Kette lediglich sequentiell möglich
deutliche Effizienzvorteile bei Einfügen und Entfernen
Überlauf kann aufgrund verketteter Speicherung nicht auftreten
mehrstufige Indizes bei großen Dateien sinnvoll
Suche in der identifizierten Kette lediglich sequentiell möglich
deutliche Effizienzvorteile bei Einfügen und Entfernen
Überlauf kann aufgrund verketteter Speicherung nicht auftreten
mehrstufige Indizes bei großen Dateien sinnvoll
Datenorganisation - Gestreute Speicherung??
Direktzugriffsspeicher notwendig
aus Primärschlüsselwert wird relative Speicheradresse berechnet, unter der Datensatz gespeichert wird
direkte Adressierung
o umkehrbar eindeutig
o nur Datenbestände mit numerischen Primärschlüsseln
o keine großen Lücken bei Primärschlüsselwerten, da sonst ineffiziente Speicherausnutzung
indirekte Adressierung
o nicht umkehrbar eindeutig
o kann zur Kollision synonymer Datenobjekte führen
o Kollisionsbehandlung kann Effizienz verringern
aus Primärschlüsselwert wird relative Speicheradresse berechnet, unter der Datensatz gespeichert wird
direkte Adressierung
o umkehrbar eindeutig
o nur Datenbestände mit numerischen Primärschlüsseln
o keine großen Lücken bei Primärschlüsselwerten, da sonst ineffiziente Speicherausnutzung
indirekte Adressierung
o nicht umkehrbar eindeutig
o kann zur Kollision synonymer Datenobjekte führen
o Kollisionsbehandlung kann Effizienz verringern
Datenorganisation - Speicherung mit Bäumen als Hilfsorganisation??
- statt Index-Tabellen baumartig strukturierte Hilfsorganisationen
- Baum
o besteht aus Knoten und Kanten
o oberster Knoten heißt Wurzel
o Knoten ohne Nachfolger heißen Blätter
- Index-Eintrag enthält Primärschlüssel und Speicheradresse des jeweiligen Datensatzes
- Suche
o Zugriff auf aktuellen Knoten (Anfang Wurzel)
o Suchschlüssel mit Primärschlüssel im aktuellen Knoten vergleichen; Erfolg – Suche beendet
o Suchschlüssel kleiner als Primärschlüssel – linker Nachfolger, sonst rechter Nachfolger und mit Schritt 1 neu beginnen
- äußerst effiziente Zugriffe in sehr großen Dateien
- auch Bäume mit einer deutlich höheren Anzahl an Nachfolgern pro Knoten möglich
- Baum
o besteht aus Knoten und Kanten
o oberster Knoten heißt Wurzel
o Knoten ohne Nachfolger heißen Blätter
- Index-Eintrag enthält Primärschlüssel und Speicheradresse des jeweiligen Datensatzes
- Suche
o Zugriff auf aktuellen Knoten (Anfang Wurzel)
o Suchschlüssel mit Primärschlüssel im aktuellen Knoten vergleichen; Erfolg – Suche beendet
o Suchschlüssel kleiner als Primärschlüssel – linker Nachfolger, sonst rechter Nachfolger und mit Schritt 1 neu beginnen
- äußerst effiziente Zugriffe in sehr großen Dateien
- auch Bäume mit einer deutlich höheren Anzahl an Nachfolgern pro Knoten möglich
Datenorganisation - Dateiorganisation mit invertierten Dateien als sekundäre Hilfsorganisation?
- unterstützen Selektion von Datensätzen für Selektionskriterien, welche keine Primärschlüssel sind
- invertierte Datei
o liefert für beliebigen Sekundärschlüsselwert den Primärschlüsselwert
- schnellerer Dateizugriff kostet Speicherplatz und Verwaltungsaufwand
- invertierte Datei
o liefert für beliebigen Sekundärschlüsselwert den Primärschlüsselwert
- schnellerer Dateizugriff kostet Speicherplatz und Verwaltungsaufwand
Datenorganisation - Suchen und Sortieren
Eigenschaften der sequentielle Suche?
Eigenschaften der sequentielle Suche?
o physisch oder logisch vorgegebene Reihenfolge wird durchsucht
o im Durchschnitt muss Hälfte des Datenbestandes durchsucht werden
o für sequentiell als auch verkettete gespeicherte Datensätze geeigne
o im Durchschnitt muss Hälfte des Datenbestandes durchsucht werden
o für sequentiell als auch verkettete gespeicherte Datensätze geeigne
Datenorganisation - Suchen und Sortieren
Eigenschaften der binäre Suche?
Eigenschaften der binäre Suche?
o Voraussetzung sequentiell gespeicherter und nach Suchkriterium sortierter Datenbestand
o Suchbestand wird in zwei Hälften geteilt und mittleres Element mit Suchschlüssel verglichen, wonach entweder die Suche beendet ist oder im linken bzw. rechten Datenbestand weitergesucht werden muss; usw.
o sehr effizientes Verfahren; jedoch macht Vorsortierung nach Suchschlüssel Grundoperationen Einfügen und Löschen aufwändiger
o Suchbestand wird in zwei Hälften geteilt und mittleres Element mit Suchschlüssel verglichen, wonach entweder die Suche beendet ist oder im linken bzw. rechten Datenbestand weitergesucht werden muss; usw.
o sehr effizientes Verfahren; jedoch macht Vorsortierung nach Suchschlüssel Grundoperationen Einfügen und Löschen aufwändiger
Datenorganisation - Suchen und Sortieren
Sortierschlüssel?
Sortierschlüssel?
o Merkmal oder Kombination von Merkmalen aus der Definition eines Datensatzes
o zwei Datensätze müssen mit Sortierschlüssel im Sinne einer Ordnungsrelation vergleichbar sein (z.B. A<B, A=B)
o zwei Datensätze müssen mit Sortierschlüssel im Sinne einer Ordnungsrelation vergleichbar sein (z.B. A<B, A=B)
Datenorganisation - Suchen und Sortieren
Speicherungsform?
Speicherungsform?
o sequentiell: Umspeichern der Objekte für Sortierung notwendig
o verkettet: Ändern der Zeiger für Sortierung notwendig
o verkettet: Ändern der Zeiger für Sortierung notwendig
Datenorganisation - Suchen und Sortieren
interne Sortierverfahren?
interne Sortierverfahren?
o Datenbestände zum Zeitpunkt des Umspeicherns vollständig im Hauptspeicher
o Insertionsort
o Selectionsort
o Sortieren durch Austauschen (z.B. Bubblesort)
o Sortieren durch Zerlegen (z.B. Quicksort)
o Insertionsort
o Selectionsort
o Sortieren durch Austauschen (z.B. Bubblesort)
o Sortieren durch Zerlegen (z.B. Quicksort)
Datenorganisation - Suchen und Sortieren
externe Sortierverfahren?
externe Sortierverfahren?
Datenbestand muss aufgeteilt, stückweise sortiert und wieder zusammengesetzt werden, da Datenbestand größer als Hauptspeicher
Dateiverwaltung - Merkmale ... Vorteile??
separate Verwaltung durch Anwendungsprogramme unter Nutzung elementarer Dateisysteme
o jedes Anwendungsprogramm verwaltet von ihm benutzte Daten selbst
o Nutzung des vom Betriebssystem bereitgestellte elementare Dateisystem
o Nutzung der Zugriffsdienste über angebotene Programmierschnittstelle
o Nachteile
- Redundanz
- Inkonsistenz
- logische und physische Datenabhängigkeit
- Inflexibilität
- daher nicht für unternehmensweite Datenspeicherung, sondern nur für Speicherung streng lokaler Daten geeignet
o jedes Anwendungsprogramm verwaltet von ihm benutzte Daten selbst
o Nutzung des vom Betriebssystem bereitgestellte elementare Dateisystem
o Nutzung der Zugriffsdienste über angebotene Programmierschnittstelle
o Nachteile
- Redundanz
- Inkonsistenz
- logische und physische Datenabhängigkeit
- Inflexibilität
- daher nicht für unternehmensweite Datenspeicherung, sondern nur für Speicherung streng lokaler Daten geeignet
Merkmale der übergreifenden Datenverwaltung mit Hilfe von Dateiverwaltungssystemen?
o Zentralisierung der Dateiverwaltung
o Programmteile der Dateiverwaltung werden in zentrales Dienstprogramm ausgelagert
o Zugriff aus dieselbe Datei durch verschiedene Anwendungsprogramme möglich
o Vorteile
- Reduktion von Redundanz und Inkonsistenz
o Nachteile
- Redundanzen werden nur gemildert, treten aber noch in erheblichem Umfang auf
- logische Datenabhängigkeit besteht weiterhin
- physische Datenabhängigkeiten betreffen mehr Anwendungsprogramme als bei separater Datenverwaltung
- Inflexibilitäten
o Programmteile der Dateiverwaltung werden in zentrales Dienstprogramm ausgelagert
o Zugriff aus dieselbe Datei durch verschiedene Anwendungsprogramme möglich
o Vorteile
- Reduktion von Redundanz und Inkonsistenz
o Nachteile
- Redundanzen werden nur gemildert, treten aber noch in erheblichem Umfang auf
- logische Datenabhängigkeit besteht weiterhin
- physische Datenabhängigkeiten betreffen mehr Anwendungsprogramme als bei separater Datenverwaltung
- Inflexibilitäten
Datenbankorganisation - Merkmale des Datenbankkonzeptes?
Datenwelt zentral und weitgehend anwendungsneutral verwalten
konsequente Trennung von Benutzern und Anwendungssystemen einerseits und Datenhaltung andererseits
konsequente Trennung von Benutzern und Anwendungssystemen einerseits und Datenhaltung andererseits
Datenbankorganisation - Vorteile Datenbankkonzept?
o Reduzierung von Redundanzen
o hohe Flexibilität der Datennutzung
o Vermeidung von Inkonsistenzen
o Abstraktion von Aspekten der physischen Datenspeicherung
o hohe Flexibilität der Datennutzung
o Vermeidung von Inkonsistenzen
o Abstraktion von Aspekten der physischen Datenspeicherung
Datenbankorganisation - Nachteile Datenbankkonzept?
o Datenbankbenutzer von zentraler Instanz abhängig
o Einsatz besonders leistungsfähiger Hardware notwendig
o gesamte Datenbasis betroffen, falls Datenschutz- und Sicherungsmaßnahmen versagen
o Einsatz besonders leistungsfähiger Hardware notwendig
o gesamte Datenbasis betroffen, falls Datenschutz- und Sicherungsmaßnahmen versagen
Datenbanksystem - Beschreibungssichten?
konzeptionelles Schema
logisches Schema
internes Schema
externes Schema
logisches Schema
internes Schema
externes Schema
Datenbanksystem - Beschreibungssichten
konzeptionelles Schema?
konzeptionelles Schema?
Gesamtsicht aller logischen Dateneinheiten und Beziehungen
zwischen Dateneinheiten unabhängig vom eingesetzten DVBS
unabhängig von einem bestimmten Datenmodell
zwischen Dateneinheiten unabhängig vom eingesetzten DVBS
unabhängig von einem bestimmten Datenmodell
Datenbanksystem - Beschreibungssichten
logisches Schema?
logisches Schema?
beschreibt Datenwelt unter Berücksichtigung der Vorgaben eines
bestimmten Ziel-DVBS
bestimmten Ziel-DVBS
Datenbanksystem - Beschreibungssichten
internes Schema?
internes Schema?
physische Realisierung eines konzeptionellen Schemas auf den zur Verfügung stehenden Speichermedien
Datenbanksystem - Beschreibungssichten
externes Schema?
externes Schema?
Ausschnitt aus dem logischen Schema, der auf Datensicht bestimmter Benutzergruppe zugeschnitten ist (Subschema)
verbirgt Gesamtsicht vor dieser Benutzergruppe
verbirgt Gesamtsicht vor dieser Benutzergruppe
Datenbanksystem - Beschreibungssichten
Konsequenzen der Sichtentrennung?
Konsequenzen der Sichtentrennung?
physische Datenunabhängigkeit
&
logische Datenunabhängigkeit
&
logische Datenunabhängigkeit
Datenbankorganisation - Datenbankentwurf - Phasen?
Problemabgrenzung und Anforderungsanalyse
o relevanten Realitätsausschnitt festlegen und beschreiben
o Informationsverarbeitungsprozesse darstellen und auf Schwachstellen untersuchen
Entwurf eines konzeptionellen Schemas
o systemunabhängige Beschreibung der Datenwelt in Form eines semantischen Datenmodells (z.B. ERM)
Entwurf des logischen Schemas und der externen Schemata o Transformation des konzeptionellen in das logische Schema unter Berücksichtigung der Ziel-DVBS in der vom Ziel-DVBS unterstützten logischen Datenbeschreibungssprache
o Anforderungen der verschiedenen Benutzergruppen in externen Schemata modellieren
Entwurf des internen Schemas
o Festlegung der Speicherstrukturen und Zugriffsmechanismen auf physischer Ebene
o bei großen Datenbeständen evtl. manuelle Optimierung des Schemas notwendig
o relevanten Realitätsausschnitt festlegen und beschreiben
o Informationsverarbeitungsprozesse darstellen und auf Schwachstellen untersuchen
Entwurf eines konzeptionellen Schemas
o systemunabhängige Beschreibung der Datenwelt in Form eines semantischen Datenmodells (z.B. ERM)
Entwurf des logischen Schemas und der externen Schemata o Transformation des konzeptionellen in das logische Schema unter Berücksichtigung der Ziel-DVBS in der vom Ziel-DVBS unterstützten logischen Datenbeschreibungssprache
o Anforderungen der verschiedenen Benutzergruppen in externen Schemata modellieren
Entwurf des internen Schemas
o Festlegung der Speicherstrukturen und Zugriffsmechanismen auf physischer Ebene
o bei großen Datenbeständen evtl. manuelle Optimierung des Schemas notwendig
Datenbankorganisation - Datenmodellierung?
Abbildung der verarbeitungsrelevanten Phänomene eines betrachteten Realitätsausschnitts durch logische Datenobjekte und der zwischen diesen Phänomenen bestehenden Beziehungen zu einem Datenmodell
Datenbankorganisation - Datenmodellierung
Entität?
Entität?
o Element der Datenwelt, welches ein reales oder gedankliches Einzelphänomen in einem betrachteten Realitätsausschnitt repräsentiert
Datenbankorganisation - Datenmodellierung
Entitätstyp?
Entitätstyp?
o fasst alle Entitäten zusammen, die durch gleiche Merkmale, nicht notwendigerweise aber durch gleiche Merkmalsausprägungen charakterisiert werden
Datenbankorganisation - Datenmodellierung
Beziehung?
Beziehung?
o logische Verknüpfung zwischen zwei oder mehreren Entitäten bzw. Entitätstypen
Datenbankorganisation - Datenmodellierung
Assoziation?
Assoziation?
o gibt an, wie viele Entitäten eines Entitätstyps einer beliebigen Entität des anderen Entitätstyps zugeordnet sein können
Datenbankorganisation - Datenmodellierung
Assoziationstypen?
Assoziationstypen?
einfach
- 1 oder (1,1)
konditionell
- c oder (0,1)
multipel
- m oder (1,n)
multipel-konditionell
- mc oder (0,n)
- 1 oder (1,1)
konditionell
- c oder (0,1)
multipel
- m oder (1,n)
multipel-konditionell
- mc oder (0,n)
Datenbankorganisation - Datenmodellierung
Beziehungstyp?
Beziehungstyp?
o Zusammenfassung der beiden einander entgegen gerichteten Assoziationstypen einer Beziehung zwischen Entitätstypen
Datenbankorganisation - Datenmodellierung
Attribut?
Attribut?
o bestimmte Eigenschaft, die sämtliche Entitäten einer Entitätsmenge bzw. sämtliche Beziehungen eines Beziehungstyps aufweisen
Datenbankorganisation - Datenmodellierung
Wertebereich?
Wertebereich?
o Menge der Datenwerte, die ein Attribut für die Entitäten des zugrunde liegenden Entitätstyps annehmen kann
Datenbankorganisation - Datenmodellierung
Identifikationsschlüssel?
Identifikationsschlüssel?
o besteht aus einem Attribut oder aus einer Kombination von Attributen, welche jede Entität einer Entitätsmenge eindeutig identifiziert
Datenbankorganisation - Darstellung der konzeptionellen Datenmodellierung?
Datenwelt in allgemeingültiger Form beschreiben
Entitätsmengen und Beziehungen zwischen ihnen werden modelliert
Entity-Relationship-Modell (ERM)
relationales Datenbankmodell
Entitätsmengen und Beziehungen zwischen ihnen werden modelliert
Entity-Relationship-Modell (ERM)
relationales Datenbankmodell
Datenbankorganisation - Merkmale Entity-Relationship-Modell (ERM)?
o umfassendes Beschreibungsmittel zur expliziten Darstellung der Gesamtstruktur einer Datenwelt bzw. eines Datenbestandes einschließlich entitätsübergreifender Verknüpfungen
o Entitätstypen als Rechtecke dargestellt
o Beziehungstypen zwischen Entitätstypen als Rauten modelliert
o an jeder Kante wird Assoziationstyp für jeweiligen Entitätstyp notiert
o Schlüsselattribute sind unterstrichen
o rekursiver Beziehungstyp
Beziehungen zwischen Entitäten desselben Entitätstyps
o Entitätstypen als Rechtecke dargestellt
o Beziehungstypen zwischen Entitätstypen als Rauten modelliert
o an jeder Kante wird Assoziationstyp für jeweiligen Entitätstyp notiert
o Schlüsselattribute sind unterstrichen
o rekursiver Beziehungstyp
Beziehungen zwischen Entitäten desselben Entitätstyps
Datenbankorganisation - Entity-Relationship-Modell (ERM) - Erweiterungen?
Erweiterung der Beziehungstypen
- 1-1, 1-c, 1-m, 1-mc
- c-c, c-m, c-mc
- m-m, m-mc, mc-mc
Generalisierung
- Zusammenfassung von Entitätstypen zu einem Super-Entitätstyp
- durch Dreieckssymbol gekennzeichnet
Spezialisierung
- Aufspaltung eines Entitätstyps in Sub-Entitätstypen
- durch Dreieckssymbol gekennzeichnet
- 1-1, 1-c, 1-m, 1-mc
- c-c, c-m, c-mc
- m-m, m-mc, mc-mc
Generalisierung
- Zusammenfassung von Entitätstypen zu einem Super-Entitätstyp
- durch Dreieckssymbol gekennzeichnet
Spezialisierung
- Aufspaltung eines Entitätstyps in Sub-Entitätstypen
- durch Dreieckssymbol gekennzeichnet
Datenbankorganisation - Merkmale des relationalen Datenbankmodells?
o geht von gegebenen Datenbestand auf Attributebene aus und zielt auf Strukturierung des Datenbestandes
o Schaffung redundanzfreier Strukturen durch Normalisierung
o Vermeidung der Vermischung unabhängiger Sachverhalte in einer Relation
o Schaffung redundanzfreier Strukturen durch Normalisierung
o Vermeidung der Vermischung unabhängiger Sachverhalte in einer Relation
Datenbankorganisation - relationale Datenbankmodell
Mutationsanomalien?
Mutationsanomalien?
Mutationsanomalien (unerwünschte Effekte bei der Datenpflege) werden verhindert
- Änderungsanomalien
- Einfügeanomalien
- Löschanomalien
- Änderungsanomalien
- Einfügeanomalien
- Löschanomalien
Datenbankorganisation - relationale Datenbankmodell
Relation?
Relation?
- Tabelle mit einem Datensatz (Tupel) als Zeile
- jede Spalte repräsentiert Attribut
- Anzahl der Attribute ist Grad der Relation
- jede Spalte repräsentiert Attribut
- Anzahl der Attribute ist Grad der Relation
Datenbankorganisation - relationale Datenbankmodell
Schlüsselkandidat?
Schlüsselkandidat?
Attribut oder minimale Kombination von Attributen, welche jeden Tupel eindeutig identifizieren (auch als Identifikationsschlüssel bezeichenbar)
Datenbankorganisation - relationale Datenbankmodell
Normalisierung - 1. Normalform?
Normalisierung - 1. Normalform?
in Relation weisen alle Attribute nur atomare (einfache) Attributwerte auf durch Elimination von Wiederholungsgruppen
Datenbankorganisation - relationale Datenbankmodell
Normalisierung - 2. Normalform?
Normalisierung - 2. Normalform?
in Relation jedes Nichtschlüsselattribut vom Identifikationsschlüssel vollfunktional abhängig
Normalisierung ggf. durch Aufspaltung von Relation in mehrere Relationen, Verbindung zwischen Relationen über globale Attribute (gemeinsame Attribute) durch Aufnahme des Identifikationsschlüssels einer Relation als Attribut einer anderen Relation (Fremdschlüssel in der Relation, in der er nicht Identifikationsschlüssel ist)
funktionale Abhängigkeit
o für Wert von Attribut bzw. Attributkombination A existiert in
selber Relation höchstens ein Wert in Attribut bzw.
Attributkombination B
vollfunktionale Abhängigkeit
o Attribut bzw. Attributkombination A und B: B von A funktional abhängig und B nicht schon allein von Teil von A funktional abhängig
Normalisierung ggf. durch Aufspaltung von Relation in mehrere Relationen, Verbindung zwischen Relationen über globale Attribute (gemeinsame Attribute) durch Aufnahme des Identifikationsschlüssels einer Relation als Attribut einer anderen Relation (Fremdschlüssel in der Relation, in der er nicht Identifikationsschlüssel ist)
funktionale Abhängigkeit
o für Wert von Attribut bzw. Attributkombination A existiert in
selber Relation höchstens ein Wert in Attribut bzw.
Attributkombination B
vollfunktionale Abhängigkeit
o Attribut bzw. Attributkombination A und B: B von A funktional abhängig und B nicht schon allein von Teil von A funktional abhängig
Datenbankorganisation - relationale Datenbankmodell
Normalisierung - 3. Normalform?
Normalisierung - 3. Normalform?
kein Nichtschlüsselattribut hängt transitiv vom
Identifikationsschlüssel ab
Normalisierung ggf. durch weitere Aufspaltung in Relationen
transitive Abhängigkeit
o Attribut bzw. Attributkombinationen A, B, C
o wenn B funktional abhängig von A und C funktional abhängig
von B, dann ist C transitiv abhängig von A
Identifikationsschlüssel ab
Normalisierung ggf. durch weitere Aufspaltung in Relationen
transitive Abhängigkeit
o Attribut bzw. Attributkombinationen A, B, C
o wenn B funktional abhängig von A und C funktional abhängig
von B, dann ist C transitiv abhängig von A
Datenbankorganisation - relationale Datenbankmodell
explizite Relationenschreibweise?
explizite Relationenschreibweise?
Relationsname (Attribut 1, Attribut 2, Attribut 3, ...)
Verbindungslinien zwischen den gemeinsamen Attributen
an Verbindungslinien beidseitig Assoziationssymbole anfügen
Verbindungslinien zwischen den gemeinsamen Attributen
an Verbindungslinien beidseitig Assoziationssymbole anfügen
Datenbankorganisation - relationale Datenbankmodell
Erweiterungen?
Erweiterungen?
Relationenübergreifende Normalisierung zur Vermeidung
relationenübergreifender Redundanzen
- Relationen in 3. Normalform
- gemeinsame Attribute müssen in mindestens einer beteiligten
Relation als Identifikationsschlüssel auftreten
Referenzielle Integrität zur Sicherstellung der Widerspruchsfreiheit der Daten
relationenübergreifender Redundanzen
- Relationen in 3. Normalform
- gemeinsame Attribute müssen in mindestens einer beteiligten
Relation als Identifikationsschlüssel auftreten
Referenzielle Integrität zur Sicherstellung der Widerspruchsfreiheit der Daten
Datenbankorganisation - Überführung von ERM in relationales Datenbankmodell?
o Erstellung konzeptioneller Modelle per ERM
o Erstellung logischer Modelle bzw. Schemata mit Relationenmodell
o dazu Interpretation von Entitätstypen als Relationen
o Raute als Symbol kann weggelassen werden, wenn Beziehungstyp keine informationstragende Verbindung darstellt (kein Informationsverlust bei Weglassen)
o Erstellung logischer Modelle bzw. Schemata mit Relationenmodell
o dazu Interpretation von Entitätstypen als Relationen
o Raute als Symbol kann weggelassen werden, wenn Beziehungstyp keine informationstragende Verbindung darstellt (kein Informationsverlust bei Weglassen)
Datenbankverwaltungssysteme - Aufgaben?
o Verwaltung der Datenbeschreibungen
o Speicherung der Daten und Anlegen von effizienten
Zugriffspfaden
o Ausführen von Datenbankoperationen (Lesen, Ändern, ...)
o Prüfen der Zugangsberechtigungen der Benutzer
o Protokollierung und Führung von Fehlerstatistiken
o Sicherstellung der Datenkonsistenz
o Bereitstellung von Sprachen und Schnittstellen
o Bereitstellung von Kommunikationsschnittstellen für
Netzwerkbetrieb
o Speicherung der Daten und Anlegen von effizienten
Zugriffspfaden
o Ausführen von Datenbankoperationen (Lesen, Ändern, ...)
o Prüfen der Zugangsberechtigungen der Benutzer
o Protokollierung und Führung von Fehlerstatistiken
o Sicherstellung der Datenkonsistenz
o Bereitstellung von Sprachen und Schnittstellen
o Bereitstellung von Kommunikationsschnittstellen für
Netzwerkbetrieb
Datenbankverwaltungssysteme - Benutzerklassen?
o Datenbank-Administratoren
o Datenbank-Entwickler
o Anwendungssystem-Entwickler
o Endanwender
o Datenbank-Entwickler
o Anwendungssystem-Entwickler
o Endanwender
Datenbankverwaltungssysteme - Aufbau?
Komponente zur Schemaverwaltung
- Definition und Wartung der Datenbeschreibungen mittels Datenbeschreibungssprache (DDL) und Speicherbeschreibungssprache (SDL)
Komponente zur Abfrage- und Mutationsbearbeitung
- Speichern, Löschen, Ändern und Selektieren von Daten mittels
Datenmanipulationssprache (DML)
Komponente zur Speicherverwaltung
- physische Datenorganisation
Administrationskomponente
- Module und Werkzeuge zur Einrichtung und Verwaltung eines Berechtigungskonzepts, Datensicherung, Überwachung Leistungsverhalten
- Definition und Wartung der Datenbeschreibungen mittels Datenbeschreibungssprache (DDL) und Speicherbeschreibungssprache (SDL)
Komponente zur Abfrage- und Mutationsbearbeitung
- Speichern, Löschen, Ändern und Selektieren von Daten mittels
Datenmanipulationssprache (DML)
Komponente zur Speicherverwaltung
- physische Datenorganisation
Administrationskomponente
- Module und Werkzeuge zur Einrichtung und Verwaltung eines Berechtigungskonzepts, Datensicherung, Überwachung Leistungsverhalten
Datenbankverwaltungssysteme - Structured Query Language (SQL) - Merkmale?
o Datenbanksprache für relationales Datenbankmodell
o deklarative Sprache (Sprache der 4. Generation)
o deckt Aspekte von DDL und DML ab
o deklarative Sprache (Sprache der 4. Generation)
o deckt Aspekte von DDL und DML ab
DBVS - Sicherung der Datenkonsistenz
Konsistenzbedingungen/Konsistenzregeln/Integritätsregeln?
Konsistenzbedingungen/Konsistenzregeln/Integritätsregeln?
Angaben in der Beschreibung von Daten, die festlegen, welche Daten in welchen Zeitabschnitten unter welchen Bedingungen zulässig sind
DBVS - Sicherung der Datenkonsistenz
Transaktion?
Transaktion?
elementare Datenbankoperation oder Folge davon, welche nach
Anwendung konsistente Datenbank in konsistentem Zustand hinterläßt
Anwendung konsistente Datenbank in konsistentem Zustand hinterläßt
DBVS - Sicherung der Datenkonsistenz
Elementare Datenbankoperation?
Elementare Datenbankoperation?
jede einfache Datenbankoperation (Lesen Tupel oder Attributwert, Ändern Attributwert, Neueintrag oder Löschen Tupel)
DBVS - Sicherung der Datenkonsistenz
Sychronisationsmechanismus?
Sychronisationsmechanismus?
..synchronisiert bzw. koordiniert Zugriffe in zeitlicher Hinsicht, um Eigenschaft der Isolation zu gewährleisten
Systementwicklung - Merkmale?
- systematische Vorgehensweise zur Entwicklung, Anpassung und Einführung betrieblicher Anwendungssysteme inkl. zugehöriger Dokumente und sonstiger Systembestandteile
- beruht auf ingenieurmäßigen Entwicklungsprinzipien und –methoden
- trägt Anforderungen an Funktionalität, Qualität, Entwicklungszeit und Kosten Rechnung
- beruht auf ingenieurmäßigen Entwicklungsprinzipien und –methoden
- trägt Anforderungen an Funktionalität, Qualität, Entwicklungszeit und Kosten Rechnung
Systementwicklung - Aufschlüsselung der Teilgebiete?
Vorgehensweise
- Phasenmodelle
- Prinzipien, Methoden, Werkzeuge
- Strukturierter Entwicklungsansatz
- Objektorientierter Entwicklungsansatz
- Einführung von Standard-Anwendungssystemen
Software-Qualitätssicherung
- Software-Qualitätsfaktoren
- Maßnahmen der Qualitätssicherung
- Zertifizierung von Software
Software-Projektmanagement
- Projektplanung, -steuerung und –kontrolle
- Terminplanung von Entwicklungsprojekten
- Aufwandsschätzung von Entwicklungsprojekten
- Phasenmodelle
- Prinzipien, Methoden, Werkzeuge
- Strukturierter Entwicklungsansatz
- Objektorientierter Entwicklungsansatz
- Einführung von Standard-Anwendungssystemen
Software-Qualitätssicherung
- Software-Qualitätsfaktoren
- Maßnahmen der Qualitätssicherung
- Zertifizierung von Software
Software-Projektmanagement
- Projektplanung, -steuerung und –kontrolle
- Terminplanung von Entwicklungsprojekten
- Aufwandsschätzung von Entwicklungsprojekten
Systementwicklung - Anwendungssystem
Eigenschaften?
Eigenschaften?
...auch bezeichnet als Anwendungssoftware, Informationssystem oder Informations- und Kommunikationssystem (IKS)
...Unterstützung oder Automatisierung von Informationsverarbeitungsaufgaben in den verschiedenen Anwendungsbereichen (z.B. Leistungserstellung oder Management)
...Zusammensetzung aus Modulen zur fachlichen Differenzierung
...umfasst auch System-Bestandteile wie Entwicklungsdokumente, Handbücher, Referenzprozesse (weitgehend standardisierte mit dem System unterstützte Arbeits- bzw. Geschäftsprozesse), Daten, etc.
...Unterstützung oder Automatisierung von Informationsverarbeitungsaufgaben in den verschiedenen Anwendungsbereichen (z.B. Leistungserstellung oder Management)
...Zusammensetzung aus Modulen zur fachlichen Differenzierung
...umfasst auch System-Bestandteile wie Entwicklungsdokumente, Handbücher, Referenzprozesse (weitgehend standardisierte mit dem System unterstützte Arbeits- bzw. Geschäftsprozesse), Daten, etc.
Systementwicklung - historische Entwicklungsstufen?
.. Individualprogrammierung bis in die 1960er Jahre
.. Software Engineering ab den 1970er Jahren
- systematisches Vorgehen unter Anwendung von ingenieurmäßigen Entwicklungsprinzipien und –methoden
.. Einsatz von CASE Tools ab den 1980er Jahren
.. Erstellung integrierter Lösungen ab den 1990er Jahren
- breitflächiger Einsatz von Standard-Anwendungssystemen in Unternehmen
Software-Migration
- Umstellung von Anwendungssystemen
- Migration eines eigenentwickelten Anwendungssystems
- Migration auf ein Standard-Anwendungsystem
- Neuentwicklung eines Anwendungssystems
- Neueinführung eines Standard-Anwendungssystems
.. Software Engineering ab den 1970er Jahren
- systematisches Vorgehen unter Anwendung von ingenieurmäßigen Entwicklungsprinzipien und –methoden
.. Einsatz von CASE Tools ab den 1980er Jahren
.. Erstellung integrierter Lösungen ab den 1990er Jahren
- breitflächiger Einsatz von Standard-Anwendungssystemen in Unternehmen
Software-Migration
- Umstellung von Anwendungssystemen
- Migration eines eigenentwickelten Anwendungssystems
- Migration auf ein Standard-Anwendungsystem
- Neuentwicklung eines Anwendungssystems
- Neueinführung eines Standard-Anwendungssystems
Systementwicklung - Anforderungen an Software-Entwicklung?
Funktionalität (definierte bzw. vertraglich zugesicherte Leistungen erbringen)
Qualität (regelmäßig bestimmte Qualitätsanforderungen erfüllen)
Termintreue
Kosten
Qualität (regelmäßig bestimmte Qualitätsanforderungen erfüllen)
Termintreue
Kosten
Systementwicklung - Software Life Cycle
Phasen?
Phasen?
Entwicklung
1. Analyse
-Festlegung der Anforderungen
2. Entwurf
- innere Systemstruktur
3. Implementierung
- Realisierung in einer Programmiersprache
4. Test
- Aufdecken möglicher Fehler
Wartung
zur Außerbetriebnahme des Anwendungssystems
1. Analyse
-Festlegung der Anforderungen
2. Entwurf
- innere Systemstruktur
3. Implementierung
- Realisierung in einer Programmiersprache
4. Test
- Aufdecken möglicher Fehler
Wartung
zur Außerbetriebnahme des Anwendungssystems
Systementwicklung - Phasenmodell
Merkmale / Arten?
Merkmale / Arten?
...legt Vorgehensweise bei der Software-Entwicklung fest – wie soll Software Life Cycle durchlaufen werden
Wasserfallmodell
Evolutionäre Modelle
Wasserfallmodell
Evolutionäre Modelle
Systementwicklung - Phasenmodell
Wasserfallmodell Eigenschaft / Varianten?
Wasserfallmodell Eigenschaft / Varianten?
o Phasen werden einmalig und strikt durchlaufen
o Varianten
- ohne Rückkopplung
- mit Rückkopplung
- mit Rückkopplung und Prototyping
o Varianten
- ohne Rückkopplung
- mit Rückkopplung
- mit Rückkopplung und Prototyping
Systementwicklung - Phasenmodell
Wasserfallmodell mit Rückkopplung und Prototyping?
Wasserfallmodell mit Rückkopplung und Prototyping?
...Arbeiten mit vorab erstellten und (noch) unvollständigen Versionen zur frühzeitigen Gewinnung von Erkenntnissen
Prototyping vor allem bei Analyse und Entwurf
o Demonstrationsprototyp
(Erfolgsaussichten eines Projekts beurteilen, Wegwerfprodukt)
o Prototyp im engeren Sinne
(Abklärung der Systemanforderungen)
o Labormuster
(Untersuchung von Entwurfsproblemen, nicht zur Demonstration)
o Pilotsystem (anwendungsreifer Prototyp)
Prototyping vor allem bei Analyse und Entwurf
o Demonstrationsprototyp
(Erfolgsaussichten eines Projekts beurteilen, Wegwerfprodukt)
o Prototyp im engeren Sinne
(Abklärung der Systemanforderungen)
o Labormuster
(Untersuchung von Entwurfsproblemen, nicht zur Demonstration)
o Pilotsystem (anwendungsreifer Prototyp)
Systementwicklung - Phasenmodell
Evolutionäre Modelle Merkmale??
Evolutionäre Modelle Merkmale??
o Entwicklung in mehreren Stufen, bei Stufenübergang vorangehende Systemversion verbessert und erweitert
o Systemfunktionalität in jeder Stufe bis zum vollständigen Gesamtsystem erweitert
o Schwachsteller der Vorgängerversionen in jeder Stufe beseitigt
o pro Stufe ein Entwicklungszyklus in den Phasen durchlaufen, in dem Erweiterungen vorgenommen und Fehler beseitigt werden
o frühzeitig Produktversionen lauffähig und Fehler aufdeckbar, jedoch höherer Aufwand für Projekt-Management
o Systemfunktionalität in jeder Stufe bis zum vollständigen Gesamtsystem erweitert
o Schwachsteller der Vorgängerversionen in jeder Stufe beseitigt
o pro Stufe ein Entwicklungszyklus in den Phasen durchlaufen, in dem Erweiterungen vorgenommen und Fehler beseitigt werden
o frühzeitig Produktversionen lauffähig und Fehler aufdeckbar, jedoch höherer Aufwand für Projekt-Management
Systementwicklung - Phasenmodell
Evolutionäre Modelle Varianten??
Evolutionäre Modelle Varianten??
... mit partieller Analyse
Analyse der fachlichen Anforderungen der jeweiligen Stufen in
Verbindung mit Anforderungen Vorgängerstufen mit
...vollständiger Analyse
Analyse zu Entwicklungsbeginn über gesamte fachliche Anforderungen
Analyse der fachlichen Anforderungen der jeweiligen Stufen in
Verbindung mit Anforderungen Vorgängerstufen mit
...vollständiger Analyse
Analyse zu Entwicklungsbeginn über gesamte fachliche Anforderungen
Systementwicklung - Allgemeine Prinzipien??
Grundsätze für das Vorgehen bei der Systementwicklung
Strukturierung
o Herausarbeitung und Darstellung der wesentlichen Merkmale
Abstraktion
o Hervorhebung allgemeiner und wesentlicher Zusammenhänge
Hierarchisierung
o Zerlegung des Systems in seine Teile und Festlegung einer Rangordnung zwischen den Elementen
Modularisierung
o Zerlegung des Systems in Module (Module möglichst homogen und gegenüber anderen Modulen möglichst heterogen)
Strukturierung
o Herausarbeitung und Darstellung der wesentlichen Merkmale
Abstraktion
o Hervorhebung allgemeiner und wesentlicher Zusammenhänge
Hierarchisierung
o Zerlegung des Systems in seine Teile und Festlegung einer Rangordnung zwischen den Elementen
Modularisierung
o Zerlegung des Systems in Module (Module möglichst homogen und gegenüber anderen Modulen möglichst heterogen)
Systementwicklung - Allgemeine Methoden??
Top-down-Strategie
o von abstrakter Benutzermaschine über Anwendungssystem zu konkreter Basisaschine
o Systemteile werden von abstrakter Ebene ausgehend immer detaillierter beschrieben, bis detaillierte Systemspezifikation vorliegt
o begünstigt Anwenderinteressen
Bottom-up-Strategie
o von konkreter Basismaschine über Anwendungssystem zu abstrakter Benutzermaschine
o detaillierte Systemteile werden abgegrenzt und beschrieben und zu Systemteilen höherer Ebenen zusammengefasst, bis Gesamtdarstellung des Systems vorliegt
o begünstigt Wiederverwendung von Softwarekomponenten
o von abstrakter Benutzermaschine über Anwendungssystem zu konkreter Basisaschine
o Systemteile werden von abstrakter Ebene ausgehend immer detaillierter beschrieben, bis detaillierte Systemspezifikation vorliegt
o begünstigt Anwenderinteressen
Bottom-up-Strategie
o von konkreter Basismaschine über Anwendungssystem zu abstrakter Benutzermaschine
o detaillierte Systemteile werden abgegrenzt und beschrieben und zu Systemteilen höherer Ebenen zusammengefasst, bis Gesamtdarstellung des Systems vorliegt
o begünstigt Wiederverwendung von Softwarekomponenten
Systementwicklung - Werkzeuge
Werkzeug?
Werkzeug?
...auf marktüblichen Rechnersystemen lauffähiges Softwaresystem zur Unterstützung von Entwicklungsaktivitäten in einzelnen oder allen Phasen für Erhöhung der Entwicklungsproduktivität und Softwarequalität
Systementwicklung - Werkzeuge
Software-Entwicklungsumgebung?
Software-Entwicklungsumgebung?
o Menge aufeinander abgestimmter Werkzeuge
o in Verbindung mit Entwicklungsdatenbank (Repository) eingesetzt
o dient in allen Phasen der Systementwicklung, Dokumentation und Verwaltung der Entwicklungsergebnisse
o in Verbindung mit Entwicklungsdatenbank (Repository) eingesetzt
o dient in allen Phasen der Systementwicklung, Dokumentation und Verwaltung der Entwicklungsergebnisse
Systementwicklung - Werkzeuge
Upper CASE Tools - Analysephase?
Upper CASE Tools - Analysephase?
grafisch-sprachliche Modellierung von Systemanforderungen
Beschreibung der Elemente der Systemmodelle
Prüfung Konsistenz der Beschreibungen und automatische Generierung von Modelldiagrammen verschiedener Detailstufen
Generierung separater Funktionsdiagramme, Entity Relationship-
Diagramme auf Basis des Repository
Verwaltung der Entwicklungsdokumente
Beschreibung der Elemente der Systemmodelle
Prüfung Konsistenz der Beschreibungen und automatische Generierung von Modelldiagrammen verschiedener Detailstufen
Generierung separater Funktionsdiagramme, Entity Relationship-
Diagramme auf Basis des Repository
Verwaltung der Entwicklungsdokumente
Systementwicklung - Werkzeuge
Upper CASE Tools - Entwurfsphase?
Upper CASE Tools - Entwurfsphase?
grafisch-sprachliche Modellierung der Struktur in Moduldiagrammen
Beschreibung der Modulfunktionen und Modulschnittstellen mittels einer Sprache zur Spezifikation
Prüfung der Konsistenz der Modulspezifikationen und automatische Generierung von Moduldiagrammen
Verwaltung der Entwicklungsdokumente
Beschreibung der Modulfunktionen und Modulschnittstellen mittels einer Sprache zur Spezifikation
Prüfung der Konsistenz der Modulspezifikationen und automatische Generierung von Moduldiagrammen
Verwaltung der Entwicklungsdokumente
Systementwicklung - Werkzeuge
Lower CASE Tools - Implementierungsphase?
Lower CASE Tools - Implementierungsphase?
automatische Generierung von Programmen, Programmteilen oder – gerüsten aus den Modelspezifikationen
automatische Generierung von Datenstrukturen aus Datenspezifikationen
Binden von Programmteilen zu vollständigen Programmen und Erzeugung von ausführbarem Programmcode
automatische Generierung von Datenstrukturen aus Datenspezifikationen
Binden von Programmteilen zu vollständigen Programmen und Erzeugung von ausführbarem Programmcode
Systementwicklung - Werkzeuge
Lower CASE Tools - Testphase?
Lower CASE Tools - Testphase?
Erzeugung von Testdaten mit Generatoren
Überwachung des Ablaufs von Testserien, Protokollierung der Ergebnisse
Überwachung des Ablaufs von Testserien, Protokollierung der Ergebnisse
Systementwicklung - Werkzeuge
Verwaltungstools?
Verwaltungstools?
Versionsverwaltung
(alle Versionen plus zugehörige Dokumente)
Änderungsmanagement
(Erfassung und Dokumentation der Änderungswünsche sowie deren Umsetzung)
(alle Versionen plus zugehörige Dokumente)
Änderungsmanagement
(Erfassung und Dokumentation der Änderungswünsche sowie deren Umsetzung)
Systementwicklung - Werkzeuge
Projektmanagement-Tools?
Projektmanagement-Tools?
o Beschreibung und Verwaltung von Projektstrukturen und –ressourcen
o Durchführung von Termin-, Kosten-, und Ressourcenplanungen und –abgleichen
o Generierung und Bereitstellung von Termin-, Kosten- und Ressourcenberichten
o Durchführung von Termin-, Kosten-, und Ressourcenplanungen und –abgleichen
o Generierung und Bereitstellung von Termin-, Kosten- und Ressourcenberichten
Systementwicklung - Paradigma der strukturierten Systementwicklung - Merkmale?
Analyse
Methoden der strukturierten Analyse
Entwurf
Methoden des Grobentwurf
Methoden des Feinentwurf
Implementierung
Methoden der strukturierten Programmierung
Methoden der Programmiersprachen
Test
Methoden des computergestützten Testens
Problem: Strukturbruch bei Übergang von Analyse zum Entwurf
Methoden der strukturierten Analyse
Entwurf
Methoden des Grobentwurf
Methoden des Feinentwurf
Implementierung
Methoden der strukturierten Programmierung
Methoden der Programmiersprachen
Test
Methoden des computergestützten Testens
Problem: Strukturbruch bei Übergang von Analyse zum Entwurf
Systementwicklung - Paradigma der Objektorientierung - Merkmale?
o Analyse und Entwurf basieren auf einheitlichen Konzepten
o Objekte und Klassen werden aus realen Objekten des Anwendungsbereiches durch Abstraktion gewonnen
o Beziehungen ermöglichen Vererbung von Daten und Funktionen einer Klasse auf eine andere
o UML (Unified Modeling Language)
- Sprachstandard für objektorientierte Systementwicklung
- ermöglicht objektorientierte Modelle mit Diagrammen aus statischer und dynamischer Sicht zu beschreiben
o Phasen
- Analyse und Entwurf
- Implementierung
- Test
o Objekte und Klassen werden aus realen Objekten des Anwendungsbereiches durch Abstraktion gewonnen
o Beziehungen ermöglichen Vererbung von Daten und Funktionen einer Klasse auf eine andere
o UML (Unified Modeling Language)
- Sprachstandard für objektorientierte Systementwicklung
- ermöglicht objektorientierte Modelle mit Diagrammen aus statischer und dynamischer Sicht zu beschreiben
o Phasen
- Analyse und Entwurf
- Implementierung
- Test
Systementwicklung - Programm?
...Verarbeitungsvorschrift als Folge von Anweisungen oder Befehlen in einer Programmiersprache
... kann auf Computer ausgeführt werden und dient bestimmtem Verarbeitungszweck
... kann auf Computer ausgeführt werden und dient bestimmtem Verarbeitungszweck
Systementwicklung - Algorithmus?
... Vorschrift zur Bearbeitung von Datenobjekten
... müssen eindeutig beschrieben sein, unterschiedliche Probleme einer Problemklasse lösen und korrekte Ergebnisse ermitteln sowie terminieren
... unterschiedliche Notationsmöglichkeiten
o Flussdiagramm
o Struktogramm
o Pseudocode
... müssen eindeutig beschrieben sein, unterschiedliche Probleme einer Problemklasse lösen und korrekte Ergebnisse ermitteln sowie terminieren
... unterschiedliche Notationsmöglichkeiten
o Flussdiagramm
o Struktogramm
o Pseudocode
Systementwicklung - Algorithmieren?
schrittweise Verfeinerung
Beschreibung auf grober Ebene und anschließende Verfeinerung
strukturierte Programmierung
Formulierung von Algorithmen, so dass Kontrollfluss erkennbar wird
o Kontrollstrukturen
- Grundbausteine strukturierter Programmierung
- Beispiele
# Sequenz
# Einseitige Auswahl
# Zweiseitige Auswahl
# Wiederholung mit Anfangs- oder Endabfrage
Beschreibung auf grober Ebene und anschließende Verfeinerung
strukturierte Programmierung
Formulierung von Algorithmen, so dass Kontrollfluss erkennbar wird
o Kontrollstrukturen
- Grundbausteine strukturierter Programmierung
- Beispiele
# Sequenz
# Einseitige Auswahl
# Zweiseitige Auswahl
# Wiederholung mit Anfangs- oder Endabfrage
Systementwicklung - Programmiersprache?
...künstliche formale Sprache, die über Syntax (Menge von grammatischen Regeln für Abfassung von Programmtexten) und Semantik (Bedeutung der Aussagen in Programmtexten) verfügt
Systementwicklung - Programmiersprache
Einteilung??
Einteilung??
prozedurale Programmiersprachen
- Maschinensprache (1. Generation)
- Maschinenorientierte Sprachen, Assemblersprache (2. Generat.)
- Höhere prozedurale Programmiersprachen (3. Generation) / Bsp. FORTRAN, COBOL, BASIC, PASCAL, C
objektorientierte PRogrammiersprachen
- rein objektorientiert - Bsp.: Java
- hybrid objektorientiert - Bsp. C++, Visual Basic
weitere höhere Programmiersprachen
- Endbenutzersprachen (4. Generation) - SQL
- Wissensorientierte Sprachen - Bsp. PROLOG, LISP
- Scriptsprachen - Bsp. Perl, JavaScript
- Maschinensprache (1. Generation)
- Maschinenorientierte Sprachen, Assemblersprache (2. Generat.)
- Höhere prozedurale Programmiersprachen (3. Generation) / Bsp. FORTRAN, COBOL, BASIC, PASCAL, C
objektorientierte PRogrammiersprachen
- rein objektorientiert - Bsp.: Java
- hybrid objektorientiert - Bsp. C++, Visual Basic
weitere höhere Programmiersprachen
- Endbenutzersprachen (4. Generation) - SQL
- Wissensorientierte Sprachen - Bsp. PROLOG, LISP
- Scriptsprachen - Bsp. Perl, JavaScript
Systementwicklung - Programmübersetzung?
...Übersetzung eines Quellenprogramms in ein Objektprogramm , welches in Maschinensprache des Zielrechners abgefasst ist
Systementwicklung - Programmübersetzung
Assembler?
Assembler?
... direkte Übersetzung von Assemblersprache 1:1 in Maschinencode
Systementwicklung - Programmübersetzung
Compiler?
Compiler?
o Übersetzung in Maschinencode sowie Binden und Laden
o aus Anweisung werden mehrere Maschinenbefehle erzeugt
o häufig Umweg über Assemblersprache
o Nutzung von Programmbibliotheken
o aus Anweisung werden mehrere Maschinenbefehle erzeugt
o häufig Umweg über Assemblersprache
o Nutzung von Programmbibliotheken
Systementwicklung - Programmübersetzung
Interpreter?
Interpreter?
... Übersetzung in Zwischen-Code, der Anweisung für Anweisung direkt ausgeführt wird
Systementwicklung - Programmübersetzung
Binder?
Binder?
.. Systemprogramm, das erzeugtes Objektprogramm sowie hier referenzierte Objektprogramme aus der Programmbibliothek zu einem Objektprogramm zusammenfasst
Systementwicklung - Programmübersetzung
Lader?
Lader?
... weist den Adressen des gebundenen Objektprogramms absolute Wert zu und stößt Ausführung des Programms an
Systementwicklung - Objektorientierter Entwicklungsansatz
Objekte?
Objekte?
... in sich abgeschlossene Beschreibungseinheit, welche abgrenzbares Phänomen des entsprechenden Anwendungsbereiches abbildet
... alle Objekte einer Klasse stimmen in ihren Operationen und Attributen überein
... Notation in UML als Rechteck mit ein oder zwei Feldern
o Objektname: Klassenname (1. Feld oben)
o Angaben zu allen oder ausgewählten Attributen
... enthält
o Attribute sowie zugehörige Attributwerte
- wesentliche Merkmale bzw. zugehörige Merkmalsausprägungen
o Operationen
- Operationen die Objekt ausführen kann
... alle Objekte einer Klasse stimmen in ihren Operationen und Attributen überein
... Notation in UML als Rechteck mit ein oder zwei Feldern
o Objektname: Klassenname (1. Feld oben)
o Angaben zu allen oder ausgewählten Attributen
... enthält
o Attribute sowie zugehörige Attributwerte
- wesentliche Merkmale bzw. zugehörige Merkmalsausprägungen
o Operationen
- Operationen die Objekt ausführen kann
Systementwicklung - Objektorientierter Entwicklungsansatz
Klasse?
Klasse?
...Definition eines bestimmten Typs von Objekten
...enthält
Attribut-Definitionen
- Bedeutung und Wertebereich
Operationsdefinitionen
- Algorithmen
... abstrakte Klasse
- nicht dazu bestimmt, Objekte zu erzeugen (instanzieren)
...enthält
Attribut-Definitionen
- Bedeutung und Wertebereich
Operationsdefinitionen
- Algorithmen
... abstrakte Klasse
- nicht dazu bestimmt, Objekte zu erzeugen (instanzieren)
Systementwicklung - Objektorientierter Entwicklungsansatz
Klassenattribute?
Klassenattribute?
... Merkmale, die nicht einzelnen Objekten, sondern der Klasse zuzuordnen sind
... besitzt nur einen Wert für alle Objekte der Klasse
... durch Unterstreichung gekennzeichnet
... besitzt nur einen Wert für alle Objekte der Klasse
... durch Unterstreichung gekennzeichnet
Systementwicklung - Objektorientierter Entwicklungsansatz
Abgeleitetes Attribut?
Abgeleitetes Attribut?
... Wert lässt sich aus anderen Attributwerten derselben Klasse bestimmen
Systementwicklung - Objektorientierter Entwicklungsansatz
Klassenoperationen?
Klassenoperationen?
... Operation der Klasse selbst zugeordnet und von ihr ausgeführt
... zur Manipulation von Klassenattributen oder gleichzeitigen Verarbeitung mehrerer Objekte der Klasse
... durch Unterstreichung gekennzeichnet
... zur Manipulation von Klassenattributen oder gleichzeitigen Verarbeitung mehrerer Objekte der Klasse
... durch Unterstreichung gekennzeichnet
Systementwicklung - Objektorientierter Entwicklungsansatz
Prinzip der Kapselung?
Prinzip der Kapselung?
... Daten eines Objekts bleiben anderen Objekten verborgen
... Umsetzung des Geheimnisprinzips
- Daten können ausschließlich über Inanspruchnahme von Operationen des Objekts gelesen oder geändert werden
... Umsetzung des Geheimnisprinzips
- Daten können ausschließlich über Inanspruchnahme von Operationen des Objekts gelesen oder geändert werden
Systementwicklung - Objektorientierter Entwicklungsansatz
Botschaft?
Botschaft?
... Zusammenarbeit zwischen Objekten erfolgt durch Austausch von Botschaften
... Aufforderung eines Sender-Objekts an Empfänger-Objekt mit dem Ziel, den Zustand des Empfänger-Objekts zu verändern und/oder vom Empfänger-Objekt Daten zu erhalten
... Aufforderung eines Sender-Objekts an Empfänger-Objekt mit dem Ziel, den Zustand des Empfänger-Objekts zu verändern und/oder vom Empfänger-Objekt Daten zu erhalten
Systementwicklung - Objektorientierter Entwicklungsansatz
Szenario?
Szenario?
.... logisch zusammenhängende Folge von Verarbeitungsschritten
Systementwicklung - Objektorientierter Entwicklungsansatz
Sequenzdiagramm?
Sequenzdiagramm?
... Modellierung der zeitlichen Abfolge der Botschaften zwischen Objekten im Rahmen eines Szenarios (UML-Teilmodell)
Systementwicklung - Objektorientierter Entwicklungsansatz
Assoziation?
Assoziation?
... dauerhafte Verbindung zwischen mindestens zwei Objekten, die – einmal eingerichtet – jederzeit für Botschaftsversand genutzt werden kann
... binäre Assoziation (zwei Objekte beteiligt)
... unidirektionale Assoziation (nur in eine Richtung, Kennzeichnung mit Pfeilspitze)
... bidirektionale Assoziation (in beide Richtungen, Kennzeichnung mit Pfeilspitzen)
... Richtung unbestimmt wenn Pfeilspitzen fehlen
... reflexive Assoziation (binäre Assoziation von Objekten derselben Klasse)
... binäre Assoziation (zwei Objekte beteiligt)
... unidirektionale Assoziation (nur in eine Richtung, Kennzeichnung mit Pfeilspitze)
... bidirektionale Assoziation (in beide Richtungen, Kennzeichnung mit Pfeilspitzen)
... Richtung unbestimmt wenn Pfeilspitzen fehlen
... reflexive Assoziation (binäre Assoziation von Objekten derselben Klasse)
Systementwicklung - Objektorientierter Entwicklungsansatz
Objektdiagramm?
Objektdiagramm?
Dokumentation der einzelnen Objekte und zwischen ihnen bestehenden Beziehungen
Systementwicklung - Objektorientierter Entwicklungsansatz
Klassendiagramm?
Klassendiagramm?
Dokumentation der einzelnen Klassen und zwischen ihnen bestehenden Beziehungen
Assoziation kann mit Namen versehen werden, Kardinalitäten werden an den Enden notiert
Assoziation kann mit Namen versehen werden, Kardinalitäten werden an den Enden notiert
Systementwicklung - Objektorientierter Entwicklungsansatz
Aggregation?
Aggregation?
... zwischen den an Assoziation beteiligten Klassen besteht eine Enthaltseins-Beziehung
Aggregatklasse
o Klasse, deren Objekte das übergeordnete Ganze repräsentieren
Aggregatobjekte
o Objekte der Aggregatklasse
Teilklasse
o Klasse, deren Objekte Teil eines Aggregatobjektes bilden
Teilobjekte
o Objekte der Teilklasse
Aggregatklasse
o Klasse, deren Objekte das übergeordnete Ganze repräsentieren
Aggregatobjekte
o Objekte der Aggregatklasse
Teilklasse
o Klasse, deren Objekte Teil eines Aggregatobjektes bilden
Teilobjekte
o Objekte der Teilklasse
Systementwicklung - Objektorientierter Entwicklungsansatz
Komposition?
Komposition?
Aggregation in der ...
o jedes Objekt der Teilklasse genau einem Objekt der Aggregatklasse zugeordnet
o Existenz eines Teilobjekts hängt von Existenz des Aggregatobjekts ab
o jedes Objekt der Teilklasse genau einem Objekt der Aggregatklasse zugeordnet
o Existenz eines Teilobjekts hängt von Existenz des Aggregatobjekts ab
Systementwicklung - Objektorientierter Entwicklungsansatz
Vererbung?
Vererbung?
... übergeordnete Klassen (Oberklassen) können ihre Eigenschaften an untergeordnete Klassen (Unterklassen) übertragen
... ererbte Eigenschaften müssen nicht noch einmal explizit ausgewiesen werden
... betrifft Attribute, Operationen und Assoziationen
... ererbte Eigenschaften müssen nicht noch einmal explizit ausgewiesen werden
... betrifft Attribute, Operationen und Assoziationen
Systementwicklung - Objektorientierte Analyse (OOA)
Anwendungsfälle??
Anwendungsfälle??
... beschreibt funktionale Anforderungen, welche sich aus einer bestimmten Variante der Systembenutzung ergeben
Eigenschaften
o Bezug auf Arbeitsablauf
o Beschreibung aus Anwendersicht
o führt zu einem in sich abgeschlossenem Ergebnis mit messbarem Wert für Anwender
o Beschreibung auf hohem Abstraktionsniveau
... Nutzung einer Anwendungsschablone für semiformale Beschreibung sinnvoll
o enthält Vorgaben für strukturiert-verbale Beschreibung eines Anwendungsfalls
Eigenschaften
o Bezug auf Arbeitsablauf
o Beschreibung aus Anwendersicht
o führt zu einem in sich abgeschlossenem Ergebnis mit messbarem Wert für Anwender
o Beschreibung auf hohem Abstraktionsniveau
... Nutzung einer Anwendungsschablone für semiformale Beschreibung sinnvoll
o enthält Vorgaben für strukturiert-verbale Beschreibung eines Anwendungsfalls
Systementwicklung - Objektorientierte Analyse (OOA)
Fachliches Modell (OOA-Modell) - statisches Modell??
Fachliches Modell (OOA-Modell) - statisches Modell??
o ausschließliche Betrachtung der zeitunabhängigen und strukturellen Aspekte eines Systems
o wesentlicher Bestandteil ist Klassendiagramm (wegen Kapselung Funktions- und Datenperspektive integriert)
o Basisannahmen bei Erstellung Klassendiagramm
- implizite Objektidentität
- implizite Objektverwaltung
- implizite Basisoperationen
o Bildung von Paketen
o Notiz
o Klassenlexikon
o wesentlicher Bestandteil ist Klassendiagramm (wegen Kapselung Funktions- und Datenperspektive integriert)
o Basisannahmen bei Erstellung Klassendiagramm
- implizite Objektidentität
- implizite Objektverwaltung
- implizite Basisoperationen
o Bildung von Paketen
o Notiz
o Klassenlexikon
Systementwicklung - Objektorientierte Analyse (OOA)
Fachliches Modell (OOA-Modell) - dynamisches Modell??
Fachliches Modell (OOA-Modell) - dynamisches Modell??
o Modellierung der dynamischen Aspekte eines Systems
o Beschreibung der zeitlichen Abläufe eines Szenarios per Sequenzdiagramm
o Beschreibung der zeitlichen Abläufe eines Szenarios per Sequenzdiagramm
Systementwicklung - Objektorientierte Analyse (OOA)
Prototyp der Benutzeroberfläche??
Prototyp der Benutzeroberfläche??
... vorläufige Fassung der Benutzeroberfläche als ablauffähige Programmversion ohne Funktionalität
- Dialog
- Fenster
- Dialogelemente
- Menü
... Ableitung einer objektorientierten Dialogstruktur für die Oberflächengestaltung aus dem OOA-Klassendiagramm
- Dialog
- Fenster
- Dialogelemente
- Menü
... Ableitung einer objektorientierten Dialogstruktur für die Oberflächengestaltung aus dem OOA-Klassendiagramm
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur??
Drei-Schichten-Architektur??
hierarchischer Aufbau
unidirektionale Abhängigkeit
o höhere Schichten nehmen Leistungen der unmittelbar darunter liegenden Schicht in Anwendung, nicht umgekehrt
1. GUI-Schicht (Bereitstellung grafischer Benutzeroberfläche)
2. Fachkonzept- oder problemorientierte Schicht (Bereitstellung fachlicher Funktionen)
3. Datenhaltungsschicht (Dienste für Speicherung und Zugriff auf Anwendungsdaten)
unidirektionale Abhängigkeit
o höhere Schichten nehmen Leistungen der unmittelbar darunter liegenden Schicht in Anwendung, nicht umgekehrt
1. GUI-Schicht (Bereitstellung grafischer Benutzeroberfläche)
2. Fachkonzept- oder problemorientierte Schicht (Bereitstellung fachlicher Funktionen)
3. Datenhaltungsschicht (Dienste für Speicherung und Zugriff auf Anwendungsdaten)
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur - Merkmale GUI-Schicht??
Drei-Schichten-Architektur - Merkmale GUI-Schicht??
... ermöglicht Erzeugung und Bearbeitung von Objekten der Fachkonzept- Schicht durch Eingaben des Benutzers
... Klassen der GUI-Schicht unter Verwendung von GUI-Klassenbibliothek erstellt
# enthält standardisierte, weitgehend vorgefertigte Elemente
# Programmierschnittstelle zum plattformspezifischen GUI-System (als Bestandteil der verwendeten Systemsoftware)
... Weiterverwendung eines Prototyps der GUI aus dem OOA-Modell möglich
Aufgaben
- Menü- und Dialogstruktur vervollständigen
- Klassendiagramm der GUI-Schicht anfertigen
- Spezifikation der GUI-Klassen vervollständigen und Dokumentation im Klassenlexikon
... Klassen der GUI-Schicht unter Verwendung von GUI-Klassenbibliothek erstellt
# enthält standardisierte, weitgehend vorgefertigte Elemente
# Programmierschnittstelle zum plattformspezifischen GUI-System (als Bestandteil der verwendeten Systemsoftware)
... Weiterverwendung eines Prototyps der GUI aus dem OOA-Modell möglich
Aufgaben
- Menü- und Dialogstruktur vervollständigen
- Klassendiagramm der GUI-Schicht anfertigen
- Spezifikation der GUI-Klassen vervollständigen und Dokumentation im Klassenlexikon
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur - Merkmale Fachkonzept- oder problemorientierte Schicht??
Drei-Schichten-Architektur - Merkmale Fachkonzept- oder problemorientierte Schicht??
... Grundlage ist OOA-Modell
... Einführung von Container-Klassen
# bewahren aktuell existierende Objekte einer Klasse in geeigneten Datenstrukturen auf
# stellen Zugriffsoperationen zur Verwaltung der Objekte zur Verfügung, die im OOA-Modell nur implizit unterstellt wurden
... Attribute und Operationen müssen im Klassenlexikon spezifiziert werden
... Algorithmen komplexer Operationen sind ausführlich zu dokumentieren
... Assoziationen und Kardinalitäten sind vollständig zu modellieren
... Einführung von Container-Klassen
# bewahren aktuell existierende Objekte einer Klasse in geeigneten Datenstrukturen auf
# stellen Zugriffsoperationen zur Verwaltung der Objekte zur Verfügung, die im OOA-Modell nur implizit unterstellt wurden
... Attribute und Operationen müssen im Klassenlexikon spezifiziert werden
... Algorithmen komplexer Operationen sind ausführlich zu dokumentieren
... Assoziationen und Kardinalitäten sind vollständig zu modellieren
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur -
Fachkonzept- oder problemorientierte Schicht
- Sichtbarkeit??
Drei-Schichten-Architektur -
Fachkonzept- oder problemorientierte Schicht
- Sichtbarkeit??
... muss deklariert werden
...von welchen anderen Klassen aus darf auf ein Attribut zugegriffen bzw. eine Operation aufgerufen werden
... Objekte der eigenen Klasse können direkt auf Attribut und
Operationen der eigenen Klasse zugreifen
uneingeschränkt (public)
o direkter Zugriff für beliebige Klassen
o UML-Notation: vorangestelltes +
vollständig eingeschränkt (private)
o sperrt Attribut bzw. Operation für jeglichen Zugriff von außen
o UML-Notation: vorangestelltes -
...von welchen anderen Klassen aus darf auf ein Attribut zugegriffen bzw. eine Operation aufgerufen werden
... Objekte der eigenen Klasse können direkt auf Attribut und
Operationen der eigenen Klasse zugreifen
uneingeschränkt (public)
o direkter Zugriff für beliebige Klassen
o UML-Notation: vorangestelltes +
vollständig eingeschränkt (private)
o sperrt Attribut bzw. Operation für jeglichen Zugriff von außen
o UML-Notation: vorangestelltes -
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels Dateien (Serialisierung)??
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels Dateien (Serialisierung)??
o Objekte als Ganzes (Attribute, Klassenzugehörigkeit,
Objektverbindungen) in Datei gespeichert
o Objekte für die Persistenz erforderlich ist, müssen zusammen
geladen und gespeichert werden – Auswahl benötigter Objekte kann nicht gezielt geladen/gespeichert werden
o daher nur für kleine Anwendungen geeignet
o Fachklassen durch Serialisierungsoperation erweitern, die alle Daten in Archiv-Objekt schreibt und dieses auslesen kann
o keine Ad-hoc-Abfragen möglich
Objektverbindungen) in Datei gespeichert
o Objekte für die Persistenz erforderlich ist, müssen zusammen
geladen und gespeichert werden – Auswahl benötigter Objekte kann nicht gezielt geladen/gespeichert werden
o daher nur für kleine Anwendungen geeignet
o Fachklassen durch Serialisierungsoperation erweitern, die alle Daten in Archiv-Objekt schreibt und dieses auslesen kann
o keine Ad-hoc-Abfragen möglich
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels objektorientiertem Datenbanksystem??
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels objektorientiertem Datenbanksystem??
o Fachklassen, für die Persistenz erforderlich ist, werden als
Unterklassen einer Basisklasse angelegt, die von Programmierschnittstelle des objektorientierten Datenbanksystems bereitgestellt wird
o Basisklasse vererbt ihnen Fähigkeit zur Selbstverwaltung in Datenbank
o Mehrbenutzerfähigkeit, Transaktionsabwicklung und Ad-hoc- Abfragen möglich
Unterklassen einer Basisklasse angelegt, die von Programmierschnittstelle des objektorientierten Datenbanksystems bereitgestellt wird
o Basisklasse vererbt ihnen Fähigkeit zur Selbstverwaltung in Datenbank
o Mehrbenutzerfähigkeit, Transaktionsabwicklung und Ad-hoc- Abfragen möglich
Systementwicklung - Objektorientierter Entwurf (OOD)
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels relationalem Datenbanksystem??
Drei-Schichten-Architektur - Datenhaltungsschicht
- Variante mittels relationalem Datenbanksystem??
1. Abbildung der persistent zu speichernden Fachklassen einschließlich ihrer Beziehungen auf logische Tabellen
2. Einführung zusätzlicher Klassen, deren Objekte diese Tabelle
repräsentieren und den Austausch zwischen Objekten der Fachklassen mit den entsprechenden Felder in der Datenbank übernehmen
3. ggf. Erweiterung der Fachklassen um Operationen zur Steuerung der Datenbankzugriffe
o vorgefertigte Klassenbibliotheken verwendbar (z.B. ODBC, JDBC)
2. Einführung zusätzlicher Klassen, deren Objekte diese Tabelle
repräsentieren und den Austausch zwischen Objekten der Fachklassen mit den entsprechenden Felder in der Datenbank übernehmen
3. ggf. Erweiterung der Fachklassen um Operationen zur Steuerung der Datenbankzugriffe
o vorgefertigte Klassenbibliotheken verwendbar (z.B. ODBC, JDBC)
DBVS - Sicherung der Datenkonsistenz
ACID-Eigenschaften einer Transaktion?
ACID-Eigenschaften einer Transaktion?
Atomizität
- zusammengefasste Einzelanweisungen werden vollständig ausgeführt oder gar nicht
Konsistenz
- Ergebnis Transaktion ist immer konsistenter Datenbestand, dies gilt auch für Fall der Rückabwicklung bei Fehlern
Isolation
- von Transaktion bearbeitete Datenelemente dürfen während Transaktionsausführung von keiner anderen Transaktion bearbeitet werden
Dauerhaftigkeit
- Änderungen am Datenbestand sind dauerhaft
- zusammengefasste Einzelanweisungen werden vollständig ausgeführt oder gar nicht
Konsistenz
- Ergebnis Transaktion ist immer konsistenter Datenbestand, dies gilt auch für Fall der Rückabwicklung bei Fehlern
Isolation
- von Transaktion bearbeitete Datenelemente dürfen während Transaktionsausführung von keiner anderen Transaktion bearbeitet werden
Dauerhaftigkeit
- Änderungen am Datenbestand sind dauerhaft
Kartensatzinfo:
Autor: tr10
Oberthema: Informatik
Thema: Wirtschaftsinformatik
Schule / Uni: Fernuni Hagen
Ort: Hagen
Veröffentlicht: 23.03.2010
Tags: Winter Semester 2009
Schlagwörter Karten:
Alle Karten (173)
keine Schlagwörter