13.07.2017 Vorlesung Medizininformatik Software Engineering Sommersemester 2017 Inhaltsverzeichnis 1. Einleitung 2. Software und Medizinprodukt 3 Vorgehensmodelle 3. 4. Strukturierter Entwurf von Echtzeitsystemen 4.1 Echzeit, was ist das? 4.2 Einführung in die Strukturierte Analyse 4.3 Das Hierarchiekonzept 4.4 Das Essentielle Modell 4.5 Das Implementierungsmodell 5. Grundzüge des Datenbankentwurfs Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 2 1 13.07.2017 5. Grundzüge des Datenbankentwurfs Reale Welt Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 3 Phasenmodell des Datenbankentwurfs DBMS unabhängig Idee Anforderungsanalyse DBMS abhängig Konzept LoImpleDaten PhysiSpezifi-ioneller Design .... P r o z gischer e s s s c h r i t mentdefie ……….Test scher kation Entwurf Entwurf tierung nition Entwurf Systemintegration Produkt (vs. Ziel) Wartung Pflege Prozesse Projekt z.B. Entity Relationship Modell Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger z.B. Relationales Datenmodell Medizininformatik Sommersemester 2017 z.B. RDBMS Oracle, etc. Dozent: Dr. Ing. Stefan Werner Folie 4 2 13.07.2017 5. Grundzüge des Datenbankentwurfs - Ebenenarchitektur Ebenenarchitektur bei der Datenmodellierung Reale Welt Schnittstellen definition Transformations regeln Ausgangspunkt für Datenhaltung Transformations regeln Datenbanksystem Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 5 5. Grundzüge des Datenbankentwurfs - Ebenenarchitektur - Abstraktionsgrad 3-Ebenenmodell Externe Ebene Konzeptionelle Ebene Interne Ebene Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 6 3 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell - • Entity Relationship Modell, kurz: ERM oder ERD • 1976 von Peter Chen vorgeschlagen • semantisches ti h D Datenmodell t d ll fü für di die konzeptionelle k ti ll Entwurfsphase • auf große Datenmengen ausgelegt • beschreibt statische Eigenschaften und Integritätsbedingungen • unterstützt verschiedene Abstraktionsmechanismen (Aggregation Verallgemeinerung) (Aggregation, • leichte Übersetztbarkeit ins RDM (Transformationsregeln) Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 7 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Entity: • Objekte der realen oder einer virtuellen Welt • beschrieben durch Eigenschaften (Attribute) Attribute • Eigenschaft von Entities oder Beziehungen. • Attribute sind von einem bestimmten Typ und haben Werte. Entity: Ferrari Entity: Comicfigur Attribute: Hersteller, Fahrzeugtyp, Farbe, Leistung, Verbrauch,….. Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Attribute: Name, Wohnort, Alter, Größe, Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 8 4 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Entity Set: • ähnliche Entities; beschrieben durch gleiche Attribute, werden zu Entity Set zusammengefasst. zusammengefasst z.B: Entity Set „Auto“, „Patient“ „Krankenstation“ • Graphische Darstellung: • Tabellarische Darstellung: Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 9 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM • Textuelle Darstellung: • • ENTITY SET: Name : <Name> Attribute: Attribut1 : - 1 - INTEGER (4) Attribut2 : - 1 - CHAR (35) ………. Attributn : - 1 - CHAR (20) KEY: Attribut1 Foreign Key: Weitere Integritätsbedinbgungen Textuelle Darstellung ist die vollständigste; Graphische Darstellung bietet den besten (Schnell)überblick. Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 10 5 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Primärschlüssel/ primary Key: • der Primärschlüssel ist ein besonderes Attribut/ besondere Att ib tk bi ti Attributkombination => eindeutig identifizierend für ein Entity / Tupel der Tabelle. • jedes Entity Set und jede Relation besitzt einen Primärschlüssel • oft werden künstliche Schlüssel verwendet => z.B. PersonalID, Personalausweisnr, Rentenversicherungsnummer • auch zusammengesetzter Schlüssel möglich, dann mehrere Attribute z.B. Krankenkasse & Versichertennummer • die Menge aller Attribute eines Entity Sets ist immer eindeutig identifizierend Im ERD werden Primärschlüsselattribute unterstrichen Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 11 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Relationship, Relationship Set, Beziehungstyp • Abstraktion der Beziehung zwischen Entity-Sets zu einem Beziehungstyp. • Inhalt: Schlüsselattribute der beteiligten Entity Sets • zusätzliche eigene sind Attribute möglich. Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 12 6 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Beispiel Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 13 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Spezielle Beziehungstypen: IS-A Relationship • Entitätstyp A ist Teilmenge eines allgemeineren Entitätstyps B => (A ist Spezialisiserung von B, oder A is-a B) • beteiligte Entity Sets werden über eine gerichtete Kante miteinander verbunden, • Kante ist auf das auf das allgemeine Entity Set gerichtet ist. • Entity Set A „erbt“ alle Attribute vom Entity Set B und wird i.d.R. durch weitere spezialisierende Attribute beschrieben. • Die Angabe spezieller Beziehungsattribute ist zulässig und erfolgt wie bei Relationship Sets. • Spezialisiserung geht üblicherweise bei Übersetzung in das RDM Fachgebiet Technische Informatik Medizininformatik Dozent: Folie verloren. Prof. Dr.‐Ing. Axel Hunger Sommersemester 2017 Dr. Ing. Stefan Werner 14 7 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Grundelemente des ERM Hierarchy Relationship • Vater-Sohn Beziehung zwischen Entities desselben Entity Sets • Typ: T 1 1:n Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 15 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Bisher können wir nicht modellieren, dass z.B. • einer Pflegestation mindestens drei Pfleger zugeordnet sein müssen • das d di die OP eines i P Patienten ti t von genau einem i und d nur einem i A Arztt durchgeführt wird • usw. => Einführung von Kardinalitäten Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 16 8 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell 1:1 Beziehung • jedem Entity vom Typ E1 ist maximal eine Entity vom Typ E2 zugeordnet und umgekehrt Beispiel: Ein Mann ist mit maximal einer Frau verheiratet und jede Frau mit maximal einem Mann 1:n Beziehungen • jedem Entity vom Typ E1 können beliebig viele Entities vom Typ E2 zugeordnet sein, aber • zu jedem Entity aus E2 gibt es maximal ein Entity aus E1 Beispiel: ein Hausarzt betreut n Patienten, bzw. e in Patient hat genau einen Hausarzt Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 17 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell n:m Beziehung • jedem Entity vom Typ E1 können beliebig viele Entities vom Typ E2 zugeordnet werden und yp E2 können beliebig g viele Entities vom Typ yp E1 • jjedem Entityy vom Typ zugeordnet werden Beispiel: Ein Facharzt kann beliebig viele Patienten betreuen ein Patient kann bei beliebig vielen Fachärzten in Behandlung sein Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 18 9 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Beispiel: Aber, immer noch keine Unterscheidung möglich: • „genau 1“, • „mindestens 1“ • höchstens 1“ Hierfür: Einführung min/max Notation Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 19 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell Min/Max Notation • die mögliche Anzahl von Instanzen der beteiligten Entity-Typen an einer Beziehung g wird eingeschränkt, g , indem ein minimaler und ein maximaler Wert definiert wird Für e1∈ E1 und e2 ∈ E2 gilt: • e1 nimmt an mindestens min1 und höchstens max1 Beziehungen vom Typ R teil • e2 nimmt an mindestens min2 und höchstens max2 Beziehungen vom Typ R teil B i i l JJedes Beispiel: d R Rad d eines i E tit S t E1 gehört Entity-Sets hö t zu keinem k i oder d genau einem i Fahrzeug eines Entity-Sets E2. Jedes Fahrzeug des Entity Sets E2 besitzt 2 oder 4 Räder des Entity-Sets E1 Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 20 10 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell -Beispiele: Einfache ERD- 1.) 1.) Genau ein A hat eine Beziehung R mit genau einem B und umgekehrt. 2.) 2.) Ein A hat eine Beziehung R mit einem oder mehreren (n) B’s. Ein B hat eine Beziehung mit 1 oder beliebig vielen (*) A‘s 3.) 3.) Ein A hat eine Beziehung R mit keinem oder genau einem B und umgekehrt. 4) 4.) 4 ) Ei 4.) Ein A hat h t eine i Beziehung B i h R mit it keinem, k i einem oder beliebig vielen B’s oder umgekehrt. Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 21 Dozent: Dr. Ing. Stefan Werner Folie 22 5. Grundzüge des Datenbankentwurfs - Das Entity Relationship Modell -Beispiele: Einfache ERD- Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 11 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das Relationenmodell• E. F. Codd(1970) • Grundkonzept: der mathematischen Begriff der Relation • Anschaulich: Jede Relation kann als Tabelle mit n Spalten dargestellt werden. • ALLE Informationen werden in Relationen abgelegt => Unterscheidbarkeit Entity Set, Relationship geht verloren Einfache Regeln zur Übersetzung des ERM in das RDM 1. Der Name einer Relation sollte sich aus dem ERM ableiten lassen. 2. Die Spalten tragen einen eindeutigen Namen, der sich aus dem Attributnamen aus dem ERM ableiten lässt. 3 Zu 3. Z jeder j d R Relation l ti existiert i ti t ein i P Primärschlüssel i ä hlü l ((ggf. f weitere it S Schlüsselhlü l kandidaten.) Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 23 5. Grundzüge des Datenbankentwurfs - Das RelationenmodellÜbersetzung des ERM in das RDM Beispiel: ERM Primärschlüsselattribut Relation „Stationen“ Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Name Fachrichtung Betten ACH Allgemeine Chirugie 24 HNO Hals-Nasen-Ohren 30 GYN Gynäkologie und Geburtshilfe 20 Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 24 12 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das RelationenmodellÜbersetzung des ERM in das RDM Beispiel: Name der Relation ERM Attribute/ Attributnamen Relation „Patienten“ Patienten-ID Vorname Nachname Geburts -datum Aufnahmedatum 2017-01 Müller Hein 3.3.1933 11.7.2017 2017-02 2017 02 Meier Heike 6.4.1971 13.7.2017 Primärschlüsselattribut Jede Zeile der Tabelle enthält genau ein Tupel bzw. den Datensatz genau eines Patienten Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 25 5. Grundzüge des Datenbankentwurfs - Das RelationenmodellÜbersetzung des ERM in das RDM Beispiel: ERM Attribute sind die Primärschlüssel der beteiligten Relationen Relation „Auf“ Name Patienten ID ACH 2017-01 HNO 2017-02 GYN NULL Erlaubt weil im ERM so angegeben Erlaubt, angegeben. Wäre die Notation (1,30), dann keine „leeren“ Werte Primärschlüssel dürfen nie „NULL“ sein Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 Dozent: Dr. Ing. Stefan Werner Folie 26 13 13.07.2017 5. Grundzüge des Datenbankentwurfs - Das RelationenmodellPrimärschlüsselattribut Relation „Stationen“ Name Fachrichtung Betten ACH Allgemeine Chirugie Chir gie 24 HNO Hals-Nasen-Ohren 30 GYN Gynäkologie und Geburtshilfe 20 Auch möglich: Der Primärschlüssel der Relation „Stationen“ ist zugleich Fremdschlüssel der Relation „Patienten“ Relation „Patienten“ Patienten-ID Vorname 2017-01 Müller Hein 3.3.1933 11.7.2017 ACH 2017-02 Mustermann Heike 6.4.1971 13.7.2017 HNO Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Nachname Geburtsdatum Medizininformatik Sommersemester 2017 Aufnahme - datum Station Dozent: Dr. Ing. Stefan Werner Folie 27 Dozent: Dr. Ing. Stefan Werner Folie 28 5. Grundzüge des Datenbankentwurfs - Das Relationenmodell Weiteres Vorgehen: 1. Normalisierung Schrittweise Reduktion redundanter Informationen 2. Implementierung des Datenbankschemas Data Definition Language, z.B. SQL 3. Implementierung von Sichten und Abfragen Data Query Language (SQL) 4. Benutzerführung Diese Schritte werden hier nicht weiter betrachtet => Spezialvorlesung. S i l l z.B. B Prof. P f Fuhr: F h Datenbanken D t b k Fachgebiet Technische Informatik Prof. Dr.‐Ing. Axel Hunger Medizininformatik Sommersemester 2017 14