1 / 37

Datamodellering en –verwerking 8C020 college 2

Datamodellering en –verwerking 8C020 college 2. docent: Dragan Bošnački WH 3.101 Tel. 5159 Dragan@win.tue.nl , D.Bosnacki@tue.nl. Terugblik college 1. Informatiesystemen Databases Conceptueel data model Entity-Relationship Model Entiteiten Relaties Cardinaliteit

jarrett
Download Presentation

Datamodellering en –verwerking 8C020 college 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Datamodellering en –verwerking8C020 college 2 docent: Dragan Bošnački WH 3.101 Tel. 5159 Dragan@win.tue.nl , D.Bosnacki@tue.nl

  2. Terugblik college 1 • Informatiesystemen • Databases • Conceptueel data model • Entity-Relationship Model • Entiteiten • Relaties • Cardinaliteit • Meerwaardig atribuut-type

  3. Overzicht college week 2 • Aspecten van modelleren • Meerwaardige atribuut-type • Herhalende groep • Tijdsafhankelijke gegevens • Classificeren • ISA relatie • Constraints (Beperkingen) • UML • Oefeningen • Relationeel Model

  4. Ternair relatie-type

  5. Cardinaliteit • cardinaliteit van een relatie-type • het aantal entiteit-instanties van een entiteit-type die geassocieerd kunnen zijn met elke entiteit-instantie van een ander entiteit-type • voorbeeld van “veel”

  6. Minimum/maximum/vrij/verplicht

  7. Zwakke entiteit bij een relatie-type met cardinaliteit “verplicht 1”kan een instantie van het ene type niet bestaan zonderhet bestaan van een instantie van het andere type zo'n entiteit-type heet eenzwakke entiteit we noemen dit een existentiële afhankelijkheid

  8. Identificeerend relatie-type bij een zwakke entiteit is vaak de primaire sleutel van de ouder-entiteitonderdeel van de primaire sleutel van de (zwakke) kind-entiteit

  9. Voorbeeld ziekenhuis • Arts • Naam • Kamernummer • Heeft afspraken met patienten • Patient • Naam • Adres • Geboortedatum • Verzekering • Rekeningnummer • Huisarts • Maakt afspraken met arts(en) • Afspraken • Datum, tijd en duur • Reden • Arts kan geen twee afspraken tegelijkertijd hebben

  10. Modeleren van meerwaardige atribuut-type

  11. Herhalende groep

  12. Herhalende groep

  13. Modelleren van tijdsafhankelijke gegevens

  14. Modeleren van tijdsafhankelijke gegevens

  15. Modelleren van tijdsafhankelijke gegevens

  16. Tijdsafhankeljike gegevens

  17. Classificeren • ERM gebruikt het menselijk vermogen omdingen (objecten) inklassenin te delenen om hun eigenschappen algemeen te beschouwen • bij het classificeren: niet alleen gemeenschappelijkeeigenschappenmaar ook onderscheidende eigenschappen • generalisatie(bottom up) • het concept dat sommige entiteiten subtype zijn van meer algemene entiteiten • specialisatie (top down) • het concept dat entiteit-instanties voorkomen in verschillende subtypen

  18. Supertype en Subtype • uur-werkers: WERKNEMERSNUMMER • NAAM • ADRES • DATUM-IN-DIENST • UURLOON • salaris-personeel: WERKNEMERSNUMMER • NAAM • ADRES • DATUM-IN-DIENST • JAARSALARIS • contract-werkers:WERKNEMERSNUMMER • NAAM • ADRES • DATUM-IN-DIENST • CONTRACTNUMMER • DAGLOON • er zijn drie opties om een model te maken: • één enkel entiteit-type • drie afzonderlijke entiteit-typen • één supertype met drie subtypen

  19. Supertype en subtype • drie opties om een model te maken: • één enkel entiteit-type • drie afzonderlijke entiteit-typen • één supertype met drie subtypen

  20. Een supertype met drie subtypen

  21. ISA-relatie • Opties • Subtypen kunnen exclusief of niet exclusief zijn • Subtypen kunnen volledig on niet volledig zijn

  22. Constraints • constraints (beperkingen) • beschrijven regels die ervoor zorgen dat de gegevens correct zijn en blijven • belangrijk bij het uitvoerenvan operaties (updates) die gegevens veranderen • een ER-diagram brengt slechts de structuur in kaart • een ER-model specificeert o.a. ook alle constraints

  23. Domein • een domein legt vast aan welke voorwaarden attribuutwaarden (-instanties) moeten voldoen • naam: REKENINGNUMMER • betekenis:nummer van klantenrekening bij de bank • type van de gegevens: alfa-numerieke karakters • formaat:xxx-xxx-xxxx • uniek?moet uniek zijn • n.v.t.?mag niet n.v.t. zijn • naam: BEDRAG • betekenis:bedrag van transactie in euro’’s • type van de gegevens: numeriek • formaat:2 cijfers achter de komma • bereik:0-10.000 • uniek?hoeft niet uniek te zijn • n.v.t.?mag niet n.v.t. zijn

  24. Trigger • trigger • een specificatie van een regel die de database helpt om de integriteit van de gegevens te bewarenbij het uitvoeren van operaties die de gegevens veranderen • regel:opnamebedrag groter danrekeningsaldo • operatie:toevoeging • entiteit-naam:OPNAME • conditie:OPNAME.BEDRAG > REKENING.SALDO • actie:verwerp toevoeging

  25. UML • UML: Unified Modeling Language • (Future) standard for creating specifications (?) • A collection of different formalisms (diagrams) to graphically model different aspects of an entire software system • class diagrams, • use case diagrams, • activity diagrams, • implementation diagrams • (See also the link on the course web page) • UML Class Diagrams correspond to E-R Diagram, but there exist several differences

  26. Entity type STUDENT SUDNETNUMMER NAAM ADRES TELEFOONNUMMER

  27. Relationship type Volbrengt

  28. Relationtip attributes Volbrengt DATUM-AFRONDING

  29. UML • Entity sets are shown as boxes, and attributes are shown within the box, rather than as separate ellipses in E-R diagrams. • Binary relationship sets are represented in UML by just drawing a line connecting the entity sets. The relationship set name is written adjacent to the line. • The role played by an entity set in a relationship set may also be specified by writing the role name on the line, adjacent to the entity set. • The relationship set name may alternatively be written in a box, along with attributes of the relationship set, and the box is connected, using a dotted line, to the line depicting the relationship set. • Non-binary relationships drawn using diamonds, just as in ER diagrams

  30. Cardinality Is voorradig als 0..* 1..1

  31. UML • Cardinality constraints are specified in the form l..h, where l denotes the minimum and h the maximum number of relationships an entity can participate in. • The constraint 0..* on the E2side and 0..1 on the E1 side means that each E2 entity can participate in at most one relationship, whereas each E1 entity can participate in many relationships; in other words, the relationship is many to one from E2 to E1. • Single values, such as 1 or * may be written on edges; The single value 1 on an edge is treated as equivalent to 1..1, while * is equivalent to 0..*.

  32. ISA ISA Generalization and Specialization A A B C B C

  33. Oefening: Ziekenhuis • Het ziekenhuisinformatiesysteem bevat de informatie over behandelingen van patienten bij het ziekenhuis. Wanneer en patient voor het eerst naar het ziekenhuis verwezen wordt, wordt hij of zij opgenomen in de ziekenhuisadministratie. Bij deze registratie worden gegevens, zoals de naam (voorletters en achternaam), adres en geboortedatum genoteerd, en de patient krijgt een ID nummer. Voor elk behandeling worden er afspraken gemaakt voor bepaalde tijd en plaats met een vermelding wat voor soort behandeling, aantal verpleegkundigen en aantal specialisten met concrete specialismen zijn voor elke soort behandeling vastgesteld. Het tarief voor elke soort behandeling wordt berekend volgens een formule die het aantal verpleekundigen en het aantal specialisten van elke specialisme als parameters gebruikt. Het uurtarief van verpleegkundigen ligt vast terwijl het uurtarief van specialisten is afhankelijk van het specialisme. De informatie die over elk staflid bewaard wordt omvat de naam (voorletters, achternaam, roepnaam), telefoonnummer en personeelsnummer. Verpleegkundigen werken bij een afdeling terwijl specilasiten kunnen voor alle afdelingen werken.(Niemand kan tegelijkertijd als specialist en als verpleegkundige werken). Specialisten kunnen meerdere specialismen hebben.

  34. Oefening: Ziekenhuis • Het ziekenhuisinformatiesysteem bevat de informatie over behandelingen van patienten bij het ziekenhuis. Wanneer en patient voor het eerst naar het ziekenhuis verwezen wordt, wordt hij of zij opgenomen in de ziekenhuisadministratie. Bij deze registratie worden gegevens, zoals de naam (voorletters en achternaam), adres en geboortedatum genoteerd, en de patient krijgt een ID nummer. Voor elk behandeling worden er afspraken gemaakt voor bepaalde tijd en plaats met een vermelding wat voor soort behandeling, aantal verpleegkundigen en aantal specialisten met concrete specialismen zijn voor elke soort behandeling vastgesteld. Het tarief voor elke soort behandeling wordt berekend volgens een formule die het aantal verpleekundigen en het aantal specialisten van elke specialisme als parameters gebruikt. Het uurtarief van verpleegkundigen ligt vast terwijl het uurtarief van specialisten is afhankelijk van het specialisme. De informatie die over elk staflid bewaard wordt omvat de naam (voorletters, achternaam, roepnaam), telefoonnummer en personeelsnummer. Verpleegkundigen werken bij een afdeling terwijl specilasiten kunnen voor alle afdelingen werken.(Niemand kan tegelijkertijd als specialist en als verpleegkundige werken). Specialisten kunnen meerdere specialismen hebben.

  35. Oefening: Ziekenhuis • Het ziekenhuisinformatiesysteem bevat de informatie over behandelingen van patienten bij het ziekenhuis. Wanneer en patient voor het eerst naar het ziekenhuis verwezen wordt, wordt hij of zij opgenomen in de ziekenhuisadministratie. Bij deze registratie worden gegevens, zoals de naam (voorletters en achternaam), adres en geboortedatum genoteerd, en de patient krijgt een ID nummer. Voor elk behandeling worden er afspraken gemaakt voor bepaalde tijd en plaats met een vermelding wat voor soort behandeling, aantal verpleegkundigen en aantal specialisten met concrete specialismen zijn voor elke soort behandeling vastgesteld. Het tarief voor elke soort behandeling wordt berekend volgens een formule die het aantal verpleekundigen en het aantal specialisten van elke specialisme als parameters gebruikt. Het uurtarief van verpleegkundigen ligt vast terwijl het uurtarief van specialisten is afhankelijk van het specialisme. De informatie die over elk staflid bewaard wordt omvat de naam (voorletters, achternaam, roepnaam), telefoonnummer en personeelsnummer. Verpleegkundigen werken bij een afdeling terwijl specilasiten kunnen voor alle afdelingen werken.(Niemand kan tegelijkertijd als specialist en als verpleegkundige werken). Specialisten kunnen meerdere specialismen hebben.

  36. Oefening: Ziekenhuis • Het ziekenhuisinformatiesysteem bevat de informatie over behandelingen van patienten bij het ziekenhuis. Wanneer en patient voor het eerst naar het ziekenhuis verwezen wordt, wordt hij of zij opgenomen in de ziekenhuisadministratie. Bij deze registratie worden gegevens, zoals de naam (voorletters en achternaam), adres en geboortedatum genoteerd, en de patient krijgt een ID nummer. Voor elk behandeling worden er afspraken gemaakt voor bepaalde tijd en plaats met een vermelding wat voor soort behandeling, aantal verpleegkundigen en aantal specialisten met concrete specialismen zijn voor elke soort behandeling vastgesteld. Het tarief voor elke soort behandeling wordt berekend volgens een formule die het aantal verpleekundigen en het aantal specialisten van elke specialisme als parameters gebruikt. Het uurtarief van verpleegkundigen ligt vast terwijl het uurtarief van specialisten is afhankelijk van het specialisme. De informatie die over elk staflid bewaard wordt omvat de naam (voorletters, achternaam, roepnaam), telefoonnummer en personeelsnummer. Verpleegkundigen werken bij een afdeling terwijl specilasiten kunnen voor alle afdelingen werken.(Niemand kan tegelijkertijd als specialist en als verpleegkundige werken). Specialisten kunnen meerdere specialismen hebben.

  37. Oefening: Ziekenhuis • Het ziekenhuisinformatiesysteem bevat de informatie over behandelingen van patienten bij het ziekenhuis. Wanneer en patient voor het eerst naar het ziekenhuis verwezen wordt, wordt hij of zij opgenomen in de ziekenhuisadministratie. Bij deze registratie worden gegevens, zoals de naam (voorletters en achternaam), adres en geboortedatum genoteerd, en de patient krijgt een ID nummer. Voor elk behandeling worden er afspraken gemaakt voor bepaalde tijd en plaats met een vermelding wat voor soort behandeling, aantal verpleegkundigen en aantal specialisten met concrete specialismen zijn voor elke soort behandeling vastgesteld. Het tarief voor elke soort behandeling wordt berekend volgens een formule die het aantal verpleekundigen en het aantal specialisten van elke specialisme als parameters gebruikt. Het uurtarief van verpleegkundigen ligt vast terwijl het uurtarief van specialisten is afhankelijk van het specialisme. De informatie die over elk staflid bewaard wordt omvat de naam (voorletters, achternaam, roepnaam), telefoonnummer en personeelsnummer. Verpleegkundigen werken bij een afdeling terwijl specilasiten kunnen voor alle afdelingen werken.(Niemand kan tegelijkertijd als specialist en als verpleegkundige werken). Specialisten kunnen meerdere specialismen hebben.

More Related