Folien zum Textbuch • Kapitel 2: Planung, Entwicklung und Betrieb von IS • Teil 3: Modellierung von betrieblichen Informationssystemen • Textbuch-Seiten 185 - 208 WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/1 Datensicht von Informationssystemen Wo befinden wir uns? Strategische IS-Planung IS-Architekturplanung … ARIS Organisationssicht Datensicht Funktionssicht Steuerungssicht IS-Entwicklung IS-Betrieb WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/2 Architektur integrierter InformationsSysteme (ARIS) von A.-W. Scheer Drei Beschreibungsebenen: Organisationssicht Fachkonzept - Fachkonzept - DV-Konzept - Implementierung DV-Konzept Implementierung Datensicht Steuerungssicht Fachkonzept Fachkonzept Funktionssicht Fachkonzept DV-Konzept DV-Konzept DV-Konzept Implementierung Implementierung Implementierung Leistungssicht WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/3 ARIS: Die Datensicht • Die Datensicht – hat die Definition der Daten in einem IS zum Gegenstand – beschreibt die digitalen Repräsentationen der Objekte des zu beschreibenden Realitätsausschnittes • Die Darstellungs- bzw. Realisierungsform – auf Ebene des Fachkonzepts à konzeptionelle Datenmodelle – auf Ebene des DV-Konzepts à relationale Datenbanksysteme WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/4 Datensicht: Konzeptionelles Datenmodell • Vereinfachte Beschreibung eines betrieblichen Realitätsausschnitts • Definition der relevanten Objekttypen mit ihren sachlogischen und strukturellen Zusammenhängen • Beschreibung meist durch eine grafisch orientierte, formale Modellierungssprache (bspw. das Entitiy-Relationship- oder ER-Modell) WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/5 Datensicht: ER-Modelle 1/8 ER-Diagramm mit Objekt- und Beziehungstypen Beziehungstypen Objekte Kunde Kunde Objekttypen entleiht entleiht Autor Autor verfasst verfasst Buch Buch Beziehungen WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/6 Datensicht: ER-Modelle 2/8 Grundlegende Elemente des ER-Modells • Objekte, Ausprägungen (engl.: entity) • Beziehungen (engl.: relationship) • Objekttypen (engl.: entity types) – Abstraktion gleichartiger Objekte mit gemeinsamen Attributen • Beziehungstypen (engl.: relationship types) – Abstraktion gleichartiger Beziehungen • Konstruktionselemente von ER-Diagrammen: – Objekttypen – Beziehungstypen – (Attribute) <Objekttyp> <Beziehungstyp> WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/7 Datensicht: ER-Modelle 3/8 Weiterführende Elemente des ER-Modells • Attribute (beschreibende Eigenschaften) – Beschreiben die relevanten Merkmale von Objekten oder Beziehungen – Konstruktionselement in ER-Diagramm: <Attribut> • Identifizierende Attribute – auch Schlüsselattribute genannt – Kennzeichnen eindeutig ein bestimmtes Objekt eines Objekttyps – Ein Schlüssel ist ein Objektattribut bzw. eine Kombination von Objektattributen, die geeignet sind, ein Objekt eindeutig zu identifizieren; man unterscheidet Primär- und Sekundärschlüssel. <Attribut> – Konstruktionselement in ER-Diagramm: WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/8 Datensicht: ER-Modelle 4/8 Beispiel eines um Attribute erweiterten ER-Diagramms Kunden-Nr Kunden-Nr. . Kunde Kunde Name Name Adresse Adresse Autoren-Nr. Autoren-Nr. entleiht entleiht Name Name Datum Datum InventarInventarnr. nr. Autor Autor verfasst verfasst WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Buch Buch Titel Titel Kap. 02, Teil 03/9 Datensicht: ER-Modelle 5/8 Spezifizierung von ER-Beziehungstypen • Das Kardinalitätsverhältnis – drückt aus, wie viele Objekte eines Objekttyps mit wie vielen Objekten eines weiteren Objekttyps in Beziehung treten dürfen – Ausprägungen: 1:1, 1:n, n:m • Die Partizipation – bestimmt, ob alle Objekte eines Objekttyps an einer Beziehung teilnehmen müssen. – Ausprägungen: partiell, vollständig WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/10 Datensicht: ER-Modelle 6/8 Beispiele für Kardinalitätsverhältnisse • 1:1-Beziehung Mitarbeiter 1 verwendet 1 PC – Ein Mitarbeiter verwendet maximal einen PC, ein PC wird von maximal einem Mitarbeiter verwendet • 1:n-Beziehung Abteilung 1 beschäftigt n Mitarbeiter – Eine Abteilung kann mehrere (n) Mitarbeiter beschäftigen, ein Mitarbeiter ist in maximal einer Abteilung beschäftigt WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/11 Datensicht: ER-Modelle 7/8 Beispiele für Kardinalitätsverhältnisse • m:n-Beziehung Mitarbeiter m ist beteiligt n Projekt – Ein Mitarbeiter kann in mehreren Projekten beteiligt sein, an einem Projekt können mehrere Mitarbeiter arbeiten WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/12 Datensicht: ER-Modelle Ein Beispiel einer Partizipation 8/8 • 1:n-Beziehung mit vollständiger Partizipation Abteilung 1 beschäftigt n Mitarbeiter – Kardinalitätsverhältnis: Eine Abteilung kann mehrere (n) Mitarbeiter beschäftigen, ein Mitarbeiter ist in maximal einer Abteilung beschäftigt (Optionalität) – (vollständige) Partizipation: Jeder Mitarbeiter ist bei einer Abteilung beschäftigt. Es gibt keinen Mitarbeiter, für den das nicht gilt (Ausschluss der Optionalität) WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/13 Datensicht: Datenbanksysteme 1/6 • Die Realisierung der Datensicht auf Ebene des DV-Konzepts erfolgt durch Datenbanksysteme als Verbund aus – Datenbank und – Datenbankverwaltungssystem (DBMS) • Auf Fachkonzept-Ebene als Vorbedingung: Konzeptionelles Modell • Charakteristika eines Datenbanksystems – Zentrale Kontrolle von Daten, die von mehreren Benutzern bzw. Programmen verwendet werden – Probleme der Datenspeicherung und Dateiorganisation werden zentral und anwendungsunabhängig gelöst – Trennung der Daten von anwendungsspezifischen Auswertungen und Datensichten WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/14 Datensicht: Datenbanksysteme 2/6 Beispielhafte Verwendung einer zentralen Datenbank FinanzFinanz-und und RechnungsRechnungswesen wesen MaterialMaterialwirtschaft wirtschaft PersonalPersonalwirtschaft wirtschaft Produktion Produktion Datenbank Forschung Forschung und und Entwicklung Entwicklung WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Vertrieb, Vertrieb, Marketing Marketing Kap. 02, Teil 03/15 Datensicht: Datenbanksysteme 3/6 Architektur von Datenbanksystemen Die Architektur von Datenbanksystemen aus der Sicht des ANSI-SPARCDreischichtenmodells WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/16 Datensicht: Datenbanksysteme 4/6 Ziele des ANSI-SPARC-Dreischichtenmodells • Logische Datenunabhängigkeit – Entkopplung eines Datenbanksystems von Änderungen der Anwendung • Physische Datenunabhängigkeit – Entkopplung der Anwendung von der physischen Art der Speicherung der Daten in der Datenbank WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/17 Datensicht: Datenbanksysteme Externe Schemata 5/6 • Benutzerspezifische Sichten (Ausschnitte) des konzeptionellen Schemas einer Datenbank • Warum? – Der Benutzer sieht nur die Teile des konzeptionellen Schemas (Gesamtsystems), die für ihn interessant sind – Benutzerfreundliche Präsentation (Oberfläche) – Beschränkung des Zugriffs auf die wirklich benötigten Daten • Zum Beispiel das externe Schema für Bibliothekskunden: Bequemer, rascher Zugriff auf Bücherdaten, aber kein Zugriff auf die Daten der Entleiher und der Lieferanten (Preise usw.) WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/18 Datensicht: Datenbanksysteme Internes Schema 2/6 • Physische Organisation der Daten auf den peripheren Speichermedien • Ziele – Minimale Zugriffszeit und Speicherkapazität • Wird erreicht durch – Wahl geeigneter Größen und Anordnungen der physischen Datenblöcke – Erzeugung von Indexdateien für bestimmte Attribute – Verwendung geeigneter Zugriffsmethoden • Eine Änderung des internen Schemas beeinflusst das konzeptionelle Schema und die externen Schemata nicht! WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/19 Datensicht: Relationales Datenmodell 1/12 Das in der Praxis dominierende Datenmodell: • Repräsentation der Anwendungsdaten in der Form von Relationen (Tabellen) • Relationen (Tabellen) haben einen Namen • Relationen (Tabellen) sind Attribute zugeordnet, die durch Spalten repräsentiert sind • Zeilen tragen die zusammengehörigen Attributwerte für eine Ausprägung der Relation. Sie werden auch Tupel genannt. • Eindeutig identifizierende Attribute/ Attributmengen werden als Primärschlüssel bezeichnet WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/20 Datensicht: Relationales Datenmodell Relationsschema als ER-Modell 2/12 [Relation] Kunde(KundenNr,Name,PLZ) Kunden-Nr Kunden-Nr Kunde Kunde Name Name PLZ PLZ WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/21 Datensicht: Relationales Datenmodell Relationsschema in Tabellenform 3/12 [Relation] Kunde(KundenNr,Name,PLZ) Primärschlüssel KUNDE Tabellenname Tupel KundenNr. Name Attribute PLZ 1 Hansen 1010 2 Torberg 8670 3 Neumann 1010 4 Schnitzler 8020 . . . . WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung . . Kap. 02, Teil 03/22 Datensicht: Relationales Datenmodell 4/12 Regelwerk zu Definition von Relationen • Werteinschränkungen bezogen auf Attribute (Wertbereiche, Datentypen usw.) • Abhängigkeiten zwischen Attributen – Funktionale Abhängigkeit – Inklusionsabhängigkeit • Normalisierung von Relationsschemata • Ziel ist es, – Dateninkonsistenz und – Datenredundanz zu vermeiden WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/23 Datensicht: Relationales Datenmodell Funktionale Abhängigkeit 5/12 • Ausprägung einer Attributmenge bestimmt Ausprägung einer zweiten Attributmenge • Abhängigkeiten zwischen Attributen/ Attributmengen innerhalb einer Relation • Beispiel: – Kunden-Nr bestimmt Adresse – Kunden-Nr → Adresse – Interpretation: Für eine Kundennummer darf nur eine Adresse in einer Tabelle eingetragen werden. – Diese Abhängigkeit wird bspw. verletzt, wenn mehrfach die gleiche Kundennummer vergeben wurde. WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/24 Datensicht: Relationales Datenmodell Inklusionsabhängigkeit 6/12 • Alle Ausprägungen einer Attributmenge müssen in den Ausprägungen einer zweiten Attributmenge enthalten sein • Abhängigkeiten zwischen Attributen/ Attributmengen unterschiedlicher Relationen • Beispiel: AUTOR(Autoren-Nr, Name) VERFASST(Autoren-Nr, Buch-Nr) • Interpretation: – Autoren-NrVERFASST inkludiert in Autoren-NrAUTOR – Autoren-NrVERFASST ist Fremdschlüssel (engl.: foreign key). – Die Abhängigkeit wird bspw. verletzt, wenn ein Tupel in Relation/Tabelle AUTOR gelöscht wird ohne das korrespondierende Tupel in Relation/Tabelle VERFASST ebenfalls zu entfernen. WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/25 Datensicht: Relationales Datenmodell 7/12 Normalisierung von Relationsschemata • Attribute werden derart auf Relationen verteilt, dass beim Einfügen, Löschen oder Ändern von Tupeln keine Inkonsistenzen auftreten • Erste Normalform: Jedes Attribut ist atomar (nicht weiter zerlegbar) • Zweite Normalform: Erste Normalform + jedes Nicht-Schlüsselattribut muss funktional vom Schlüssel der Relation abhängen – BUCH(Inv.Nr, Titel, Verlag, Preis, ...) – Erzwingt semantisch zusammengehörige Attribute pro Relation WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/26 Datensicht: Relationales Datenmodell 8/12 Normalisierung von Relationsschemata • Dritte Normalform – 1. Bedingung: Relationsschema in Erster Normalform – 2. Bedingung: Kein Nicht-Schlüsselattribut hängt transitiv, d.h. nicht auch indirekt, vom Schlüssel der Relation ab • Beispiel Relation BUCH(Inventarnummer,Kundennummer,Adresse-Ausleiher) • Inventarnummer bestimmt Kundennummer • Kundennummer bestimmt Adresse-Ausleiher • Folglich: Inventarnummer bestimmt Adresse-Ausleiher transitiv – Relation(en) in Dritter Normalform • BUCH(Inventarnummer, Titel, …) • LEIHE(Inventarnummer,Kundennummer) • KUNDE(Kundennummer, Adresse-Ausleiher) WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/27 Datensicht: Relationales Datenmodell Vom Fachkonzept zum DV-Konzept 9/12 Überführung von ER-Diagrammen in Relationsschemata KundenNr KundenNr 1. Jeder Objekttyp wird zur Relation 2. Die Attribute eines Objekttypen werden zu den Attributen der Relation Kunde Kunde Name Name Adresse Adresse AutorenNr. AutorenNr. entleiht entleiht Name Name Datum Datum InventarNr InventarNr Autor Autor Buch Buch verfasst verfasst Titel Titel Kunde 3. Mehrwertige Attribute werden eigene Relationen Buch Autor WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Verfasst Kap. 02, Teil 03/28 Datensicht: Relationales Datenmodell 10/12 Überführung von ER-Diagrammen in Relationsschemata • • 1:1-Beziehungen: Primärschlüssel der Objekttypen werden als Fremdschlüssel in den beteiligten Objekttypen aufgenommen – PC(Seriennummer, …, Mitarbeiternummer) – MITARBEITER(Mitarbeiternummer, …, PC-Seriennummer) 1:n-Beziehungen: Primärschlüssel der Objekttypen werden als Fremdschlüssel in den beteiligten Objekttypen aufgenommen Abteilung • 1 beschäftigt n Mitarbeiter – ABTEILUNG(Abteilungsnummer,…) – MITARBEITER(Mitarbeiternummer, …, Abteilungsnummer) m:n-Beziehungen: Der Beziehungstyp wird zwingend in eine eigene Relation überführt WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/29 Datensicht: Relationales Datenmodell 11/12 Beispiel: ER-Diagramm als Ausgangspunkt KundenNr KundenNr Kunde Kunde Name Name Adresse Adresse AutorenNr. AutorenNr. Datum Datum entleiht entleiht Name Name InventarNr InventarNr Autor Autor verfasst verfasst Buch Buch Titel Titel WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/30 Datensicht: Relationales Datenmodell 12/12 Beispiel: Abgeleitetes relationales Schema KUNDE Kunden-Nr. Name Adresse BUCH Inventarnr. Kunden-Nr AUTOR Titel Autoren-Nr. Name VERFASST Entleih-Datum Autoren-Nr. Inventarnr. Alternativ: eigene Tabelle für ENTLEIHT, BUCH mit 2 Attributen weniger ENTLEIHT Kunden-Nr. Inventarnr. Datum WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/31 Datenbanksprachen 1/2 • Erstellung, Veränderung und Abfrage von Datenbanken • Dominierend bei relationalen DB: Structured Query Language (SQL) – Deskriptiv • Es genügt anzugeben, was das Problem ist (und nicht - wie bei prozeduralen Sprachen - wie es im einzelnen gelöst werden soll) – Abfrageoperationen • Selektion • Projektion • Verbund WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/32 Datenbanksprachen 2/2 Beispiel einer SQL-Abfrage: Selektion SELECT * FROM Kunde WHERE PLZ = 1010 KUNDE KundenNr. Name PLZ 1 Hansen 1010 2 Torberg 8670 3 Neumann 1010 4 Schnitzler 8020 . . . . . . KundenNr Name PLZ 1 Hansen 1010 3 Neumann 1010 WI à Planung, Entwicklung und Betrieb von IS à IS-Modellierung Kap. 02, Teil 03/33