Inleiding. In dit college: Opzet van de cursus (1) DMO - introductie DMO 2008 1. Datamodellering 2008



Vergelijkbare documenten
DMD-2011 Introductie. Introductie. Opzet van de cursus. Werkwijze per week. Datamodelleren en databases Twee hoorcolleges in totaal

ER-modeling. Datamodellering Wat is ER-modeling?

ER-modeling. Wat is ER-modeling? ERD & relationeel model. ER-benadering DMO Datamodellering 2008

Het verleden, het heden en de toekomst van testverbetering

Transitie in beeld Agile & DevOps. Presentatie voor functioneel beheerders

Continuous Delivery. Sander Aernouts

Enterprisearchitectuur

Datamodelleren en databases 2011

B.Sc. Informatica Module 4: Data & Informatie

Relationele Databases 2002/2003

Normaliseren versie 1.1

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.

PROGRAMMA Vak: informatica..

Ontwikkelmethoden en technieken. Ontwikkelmethoden & Technieken HC 2

MODULEBESCHRIJVING Databases DBS1

PROGRAMMA Vak: Informatica..

DATAMODELLERING DATA MAPPING MODEL

INHOUD. Presentatie ICT werkervaring (voornamelijk) Gericht op databasetoepassingen. Sprekers. Allard van Amerongen Ing. Stefan Boekel

Informatie Systeem Ontwikkeling ISO 2R290

SQL & Datamodelleren

DATAMODELLERING ER DIAGRAM

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober A. Snippe ICT Lyceum 1

Conceptueel Modelleren GEÏNTEGREERD DATA MODELLEREN MET DEMO EN DATA VAULT

Canonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans

Het belang van. Data Modellering. GEMINIT Training. Data Modellering. Frédéric BARBIER

Sparse columns in SQL server 2008

Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14

UML is een visuele taal om processen, software en systemen te kunnen modeleren.

DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING

DATAMODELLERING CRUD MATRIX

Model Driven Software Development: Geen toekomst maar realiteit. 4 juni 2009, WTC, Amsterdam.

Risico s van Technologisch Succes in digitale transformatie S T R A T E G I C A D V I S O R

SQL Developer Data Modeler

Module 1 Programmeren

Les S-01: De basisbeginselen van SQL

TOEGANG VOOR NL / ENTRANCE FOR DUTCH : lator=c&camp=24759

Activant Prophet 21. Prophet 21 Version 12.0 Upgrade Information

ANOUK ROUMANS TO CODE OR NOT TO CODE.

Entiteit Zaken en gebeurtenissen waarvan gegevens moeten worden vastgelegd worden een entiteit genoemd: b.v. mens, voorstelling, auto.

RECEPTEERKUNDE: PRODUCTZORG EN BEREIDING VAN GENEESMIDDELEN (DUTCH EDITION) FROM BOHN STAFLEU VAN LOGHUM

Wat heeft een tester aan ASL en BiSL?

Relationele Databases 2002/2003

Relationele Databases 2002/2003

WG4: De gebruikerservaring. Service Design Lesweek 5 Aranea Felëus

Technisch Ontwerp W e b s i t e W O S I

Use-Case 2.0. Requirements Kenniscentrum 15 November Eric Lopes Cardozo

Sturen met inzicht op basis van managementinformatie. InfoTopics. Agenda. Conferentie bedrijfsvoering VOSABB

Educagen. Wij zijn specialisten in Education en in Gen met een ervaring in consultancy en training van meer dan 20 jaar in de Gen-omgeving.

ICT: HOOFDROLSPELER OF BACKSTAGE ASSISTANT? Steven Van Uffelen INCA Networks NV

TFS als perfecte tool voor Scrum

DATAMODELLERING ARCHIMATE DATAMODELLERING

NFR & Architectuur: Twee handen op één buik. Remco de Boer

ICBC (Europe) S.A. Amsterdam Branch

Successfully combining Requirements Engineering and Conceptual (Business) System Modeling

Stephanie van Dijck De integrale aanpak maakt complexiteit hanteerbaar

Tester, hoe word jij geschikt voor de toekomst?

Help je Power BI Analytics project om zeep 6 succesfactoren. Marc Wijnberg Gebruikersdag 2018

XTREMIO WAT IS HET OORDEEL VAN DE GEBRUIKER?

DRIVEN BY AMBITION WOENSDAG 11 MEI INN STYLE, MAARSSEN

Business Architectuur vanuit de Business

Mobile Devices, Applications and Data

General info on using shopping carts with Ingenico epayments

Praktische zaken INFOB3SO

End-to-End testen: de laatste horde

Klanten en Leveranciers moeten samen groeien voor en succesvol toekomst

Betekent SOA het einde van BI?

Risk & Requirements Based Testing

J2EE/.NET en de rol Applicatie Architectuur

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling

Taco Schallenberg Acorel

Databases en SQL Foundation (DBSQLF.NL)

Product Quality Management, onze toekomst René Tuinhout

Adding value to test tooling

LDAP Server on Yeastar MyPBX & tiptel 31xx/32xx series

GETTING THE BEST OUT OF YOUR SOURCE CODE FIT TEST VOOR UNIFACE

1ste bach TEW. Informatiesystemen. samenvatting + minicases. uickprinter Koningstraat Antwerpen 3.

Adding value to test tooling

Een platformaanpak voor moderne architectuurontwikkeling

STRATEGIE VOOR KMO S PROF. DR. KURT VERWEIRE

Enterprise Portfolio Management

Sitecore Author Experience

Information security officer: Where to start?

Teststrategie met behulp van heuristieken

SE + BIM = integraal BIM?

Transitie in beeld Agile & DevOps. Presentatie voor Project Managers

Continuous testing in DevOps met Test Automation

Talentmanagement in tijden van crisis

SQL en XML. XML schema s & DMO. Entiteitsklasse en attribuut. SQL en XML. Datamodellering Schema een ruim begrip (zie Møller, p.

Op de computer kan naar eigen inzicht software op worden geïnstalleerd, een andere besturingssysteem is mogelijk.

Enterprise Architectuur. een duur begrip, maar wat kan het betekenen voor mijn gemeente?

Adding value to test tooling Hoe en waarom DevOps de wereld van performance testen verandert

Les 2 Eenvoudige queries

De Digitale Transformatie en de impact op IT. Capgemini Edwin Leinse

Free Electives (15 ects)

Innovaties in de chronische ziekenzorg 3e voorbeeld van zorginnovatie. Dr. J.J.W. (Hanneke) Molema, Prof. Dr. H.J.M.

Ervaringen met begeleiding FTA cursus Deployment of Free Software Systems

Transcriptie:

Inleiding Datamodellering 2008 1 In dit college: Opzet van de cursus Inhoud van het vak DMO Belangrijke begrippen base, model, etc. DMO in context: andere vakken Klassiek en modern modelleren vernieuwing in systeemontwikkeling Doelomgeving: relationele base en XML Oefenen 2/27 Opzet van de cursus (1) Hoor/werkcollege (verplicht) inleiding en overzicht warming up voor weekopgaven Thuis literatuur bestuderen opgaven maken; inleveren via Submit, zie rooster Practicum (verplicht) hulp bij opgaven zelf opgaven nakijken (s.a. oplossing) 3/27 DMO 2008 1

Opzet van de cursus (2) Tussentoets en tentamen mc + modelleeropgaven RDBMS en XML, XSLT Beoordeling eindcijfer = (tussentoets + tentamen) / 2 ontbrekende_opgaven * 0.3 Indien meer dan 2 keer afwezig, geen aanvullende toets Lees: http://www.cs.uu.nl/docs/vakken/dmo/opzet.htm 4/27 Waarover gaat DMO? Datamodellering: het ontwerp van de base = kern van informatiesysteem requirements bedrijfsproces model basemodel + theorie b.v. relationele base model diagram 5/27 Wat is een informatiesysteem? Report Report DATABASE 6/27 DMO 2008 2

Structuur van een base base: tabellen (althans relationele bases) tabel: kolommen = velden rijen: records speciale velden (sleutels) koppelen tabellen Problemen modellering: Hoe kies je de tabellen? Welke velden ga je definiëren? Welke zijn overbodig? Hoe vermijd redundantie? Welke velden zijn geschikt als sleutel? Hoe krijg ik antwoord op mijn informatievraag? 7/27 Voorbeeld: verzekering Polis Polisnr V213748 N065987 Datum start 02/29/1989 04/04/1984 Type E20 E20 Klantnr HAYES01 WALSH01 Rente 12% 12% Datum einde 02/29/2009 04/04/2004 tabellen / entity types Klant W345798 12/18/1987 WOL ODEAJ13 8% W678649 09/12/1967 WOL RICHB76 8% V986377 11/07/1977 SUI RICHB76 14% koppeling via sleutelvelden Klantnr Naam Adres Postcode Geslacht Leeftijd HAYES01 D HazeHayes 3/1 Collins St 3000 F 25 WALSH01 H Walsh 2 Allen Road 3065 M 53 ODEAJ13 J O Dea 69 Black Street 3145 M 33 RICHB76 B Rich 181 Kemp Rd 3507 M 59 06/12/2047 09/12/2006 09/12/2006 Geboren 06/23/1975 04/16/1947 06/12/1967 09/12/1941 velden / attributes 8/27 Vragen bij dit voorbeeld Waarom twee tabellen en niet alles in één tabel? Wat is voor een verzekeringsmaatschappij precies een klant? Moet de leeftijd van een klant in de base worden vastgelegd? Correspondeert een bepaald type polis steeds met de zelfde rente? Is het handig om voorletters en achternaam in één veld op te slaan? 9/27 DMO 2008 3

Niveaus van modelering Conceptueel de wereld die wordt vastgelegd in de base (Universe of Discourse) entitytypes en attributen Logisch een model toegesneden op de implementatie-omgeving, b.v. een RDBMS tabellen en velden Fysiek technische specificatie van tabellen, veldlengte. veldtype, etc. indexen, etc. 10/27 Wat is modellering? Analyse & design van informatie: entiteiten en hun attributen verbanden en afhankelijkheden die bestaan in Universe of Discourse (UoD) = de mini-wereld van de base met als doel: model base-structuur N.B. Er is meestal niet een enkel goed model (varianten!) 11/27 Datamodeling belangrijk? Data modeling is the hardest and most important activity in the RDBMS world. If you get the model wrong, your application might not do what users need, it might be unreliable, it might fill up the base with garbage. Philip Greenspun http://philip.greenspun.com/sql/-modeling.html 12/27 DMO 2008 4

Wie zijn betrokken? business specialist, gebruikers Business Requirements Business Specialist Develop Information Requirements Build Conceptual Data Model Information Requirements Conceptual Data Model requirements conceptueel model modeler, systeem architect Data Modeler DBMS & Platform Specification Design Logical Data Model Logical Data Model logisch model base ontwerper, programmeur Database Designer Design Physical Data Model Physical Data Model fysiek model Performance Requirements 13/27 Criteria goed model 1. Compleet 2. Niet-redundant 3. Implementeert business-rules 4. Data herbruikbaar voor meerdere doelen 5. Stabiel (t.o.v. bedrijfspraktijk) 6. Flexibel (uitbreidbaar) 7. Elegant 8. Helder (communicatie van concepten en regels) 9. Past in bredere -architectuur 14/27 Waarom een DBMS? Wat is het verschil tussen A en B (implicaties)? A. base applicatie applicatie B. base DBMS applicatie applicatie 15/27 DMO 2008 5

Wat is een DBMS? A software system that has a catalog describing the it manages controls access to the stored within it contains routines for input, verification, storage, retrieval, and combination simplifies writing applications 16/27 ANSI/SPARC-schema Extern schema Extern schema Extern schema Conceptueel schema Intern schema Een DBMS is gebaseerd op deze driedeling independence ( onafhankelijkheid) basestructuur kan veranderen zonder dat gebruiker het merkt. 17/27 DBMS en independence Greep uit definities independence: The separation of from the programs that use the. Data access is unaffected by changes in the physical storage characteristics Data fields can be added, changed, and deleted from a base without necessarily affecting existing application programs. Immunity of user applications to changes in the definition and organization of, and viceversa. 18/27 DMO 2008 6

Context: DMO & andere (1) Datamodel min of meer onafhankelijk van DBMS conceptueel model te implementeren in RDBMS of XMLbase basetheorie (-architectuur) wel ondersteunend, maar in DMO niet in detail behandeld DMO minder nadruk op retrieval ( MIR) maar wel opgaven over SQL (eenvoudig) DMO nauwelijks architectuur en werking van DBMS transacties, concurrency, security, client-server, etc. ( Databases) 19/27 Context: DMO & andere (2) MSO ontwikkeling van het hele informatiesysteem bedrijfsprocessen functionaliteit ontwikkelmethodologie met schematechnieken DMO focus op base (= kern van het informatiesysteem) op de achtergrond: bedrijfsprocessen, functionaliteit ontwerp en documenteren ontwikkelmethodologie overlap met MSO schematechnieken voor structuur 20/27 Context: DMO & andere (3) Een conceptueel model is in verschillende systemen te implementeren: RDBMS, maar ook XML base Daarom: herhaling stof UWT en ook oefenen met XML-implementatie 21/27 DMO 2008 7

DMO en systeemontwikkeling Ontwerpen van een base is onderdeel van het traject van informatiesysteem ontwikkeling Invloed van nieuw trends in systeemontwikkeling (webtijdperk), ook op modellering klassiek versus modern 22/27 Methodologie Methodologieën: process-driven (-flow) -driven (vanaf ±1980: structuur primair) blended (combinatie) object-oriented (weinig O-O DBMS) agile (nu invoedrijk) Schema-technieken: uitsluitend UML? ERD vs. UML 23/27 Agile development Manifesto for Agile Software Development (2001) Early and continuous delivery of valuable software Welcome changing requirements Business people and developers must work together, build projects around motivated individuals, face-toface conversation, self-organizing teams Continuous attention to technical excellence and good design, simplicity Team reflects on how to become more effective 24/27 DMO 2008 8

Klassiek versus modern Simsion volgt meer de klassieke benadering Scott Ambler de moderne, agile aanpak We komen in de loop van de cursus terug op de verschillen 25/27 Hoe leer je modelleren? Veel, veel oefenen Testen van gemaakte modellen Boek ondersteunt en biedt kader, maar is geen vervanging voor oefenen Dus cursus is hierop afgestemd! 26/27 Oefening Een fietsclub gaat elke zaterdag in groepjes van wisselende samenstelling erop uit; elk groepje rijdt een andere route naar keuze. Een groepje heeft een nummer; een route een letter en een omschrijving. De club heeft al een eenvoudige base van de leden (tabel, NAW, etc.) en wil die uitbreiden zodat men weet: wanneer wie samen een route heeft gereden welke routes nooit worden gereden Opdracht Maak een lijst van benodigde (velden), groepeer deze en vermijd dubbel vastleggen (redundantie). 27/27 DMO 2008 9