Informatieanalyse en modellering
|
|
|
- Helena Veenstra
- 10 jaren geleden
- Aantal bezoeken:
Transcriptie
1 HS.1 HS blz 5 1 Informatieanalyse en modellering Systeemontwikkeling - Informatieanalyse en Modelleren - Hoofdstuk: 1 Samenhang informatieanalyse, systeem modellen en SQL INFORMATIEANALYSE > is de activiteit vh verkrijgen en analyseren vd informatie die nodig is om het informatiesysteem te kunnen realiseren. MODELLEREN > is de activiteit waarbij in de analyse verkregen informatie wordt vastgelegd in modellen (bouwtekening) blz Projectmanagement en systeemontwikkeling - SYSTEEMONTWIKKELAAR > zijn activiteiten zijn specialistisch van aard en leveren een direct bijdrage aan het te realiseren resultaat, de aan eenschakeling van deze activiteiten leiden tot het IS. PROJECTLEIDER > zijn activiteiten richten zich op de besturing met als doel het zo efficiënt en effectief mogelijk behalen van het resultaat. Het zijn geen inhoudelijke activiteiten, maar activiteiten die zich richten op de onderlinge afstemming vd uitvoerende activiteiten, de beheersing vd planning en beschikbare financiële middelen. 323 PRODUCT v projectmanegement > is het proces v systeemontwikkeling. PRODUCT v systeemontwikkeling > is het informatiesysteem maandag 19 oktober 2015 Pagina 1 van 61
2 1002 blz a Projectmanagement Een organisatie heeft primair tot doel de producten of diensten voort te brengen waarmee zij haar bestaansrecht kan geranderen, dit hoort tot de reguliere activiteiten vd organisatie en wordt uitgevoerd door de lijn. PROJECTORGANISATIE > Zijn ALLE mensen binnen het project die gericht samenwerken. Is de aangewezen vorm om verbeteringen, veranderingen en vernieuwingen te realiseren naast de reguliere activiteiten. Is verantwoordelijk voor de realisatie en invoering vd gewenste resultaten. Hierbij is van belang dat (petec): - PROCEDURES moeten goed ingericht zijn - de organistructuur EFFICIËNT is - de verdeling van TAKEN, VERANTWOORDELIJKHEDEN en BEVOEGDHEDEN zijn helder - de organistructuur EFFECTIEF is - COMMUNICATIESTRUCTUUR moet goed ingericht zijn SELECTIEMECHANISME > hanteren om te bepalen welke ideeën en wensen worden omgezet in een project. BUSINESS CASE > is een rapport waarin de noodzaak, kosten en baten worden beschreven, op basis daarvan kan worden bepaald of het idee geprioriteerd wordt om als project te worden uitgevoerd. 325 maandag 19 oktober 2015 Pagina 2 van 61
3 1003 blz b Projectmanagement - Project - Een PROJECT is een tijdelijk, multidisciplinair samenwerkingsverband gericht op het realiseren ve afgesproken resultaat. Meestal wil men meer functionaliteit implementeren en een hogere kwaliteit leveren, echter dat kost geld. Achteraf duurder uit zijn is nooit goed. Er is sprake ve project als het resultaat: - van TIJDELIJKe aard is - EENMALIG karakter heeft - AFDELINGSOVERSCHRIJDEND is - OMVANGRIJK en COMPLEX is DOEL en KENMERKEN ve project > het realiseren vh afgesproken resultaat op (fkbt) - FUNCTIONALITEIT - KWALITEIT - binnen beschikbaar BUDGET - binnen beschikbaar TIJDSBESTEK PROJECTMANAGER > is verantwoordelijk voor de besturing vh informatiesysteemontwikkelingtraject, hij stuurt op het te bereiken resultaat en beheerst de bovenstaande aspecten (FKBT). 326 maandag 19 oktober 2015 Pagina 3 van 61
4 1004 Projectmanagement - ** blz c projectmanagement methode - PRINCE2-327 belangrijkste kenmerken: - toetsen vd tussenresultaten (mijlpalen) - toepassen van fasering PRINCE2 > is een algemene projectmanagementmethode en is bruikbaar voor uitvoering van allerlei soorten projecten. Is algemeen toepasbaar en hanteerbaar op elke ontwikkelmethode. Toepassen ve methode of aanpak dient de volgende doelen: - CHECKLIST > niet alle stappen hoeven altijd doorlopen te worden - FASERING > hierdoor complexiteitsreductie en tijd positionering - STANDAARDISATIE - BESTUURBAARHEID FASEN zijn: 1. Vooronderzoek 2. Definitiestudie 3. opstellen Functioneel ontwerp 4. opstellen Technische ontwerp 5. Bouw/realisatie 6. Uitvoeren Acceptatietest 7. Invoering informatiesysteem 8. Gebruik en beheer (buiten het traject) blz 12: Belang v projectmangementaanpak en de systeemontwikkelaanpak optimaal op elkaar afstemmen > daardoor kan optimaal resultaat worden bereikt. SYSTEEMONTWIKKELAANPAK > Een systeemontwikkelaanpak is het productieproces waarin ICT-deskundigen en materiedeskundigen (de bedrijfsvoering) gericht samenwerken met als doel: de realisatie van een informatiesysteem blz d Projectmanagement - projectmanagementmethode - PRINCE2-1. vooronderzoek - is een globaal organisatieonderzoek en heeft als doel de huidige situatie in kaart te brengen, werkwijze te achterhalen en knelpunten te inventariseren. Op basis hiervan wordt een advies uitgebracht met mogelijke oplossingsrichtingen en samenhangende kosten. maandag 19 oktober 2015 Pagina 4 van 61
5 1006 Projectmanagement - projectmanagementmethode - PRINCE2 - *** blz e 2. definitiestudie - Richt zich op het bepalen vd verschillende oplossingsrichtingen uit het vooronderzoek, activiteiten zijn: - opstellen plan van aanpak / alternatieven bekijken *** - analyse huidige informatievoorziening - bedrijfsprocessen, gegevens, problemen en gewenste veranderingen - evaluatie veranderingsbehoeften en specificatie systeemeisen - systeemconcept bepalen - opstellen eindrapportage vd definitiestudie, waaronder: - beschrijving systeemoplossing - 1e opzet raamwerk acceptatietest - kosten/baten overzicht - systeemontwikkelplan 1007 blz f Projectmanagement - projectmanagementmethode - PRINCE2-3. functioneel ontwerp (FO) - Dit bestaat uit een conceptuele beschrijving van het te realiseren informatiesysteem, activiteiten zijn hier: - opstellen plan van aanpak - analyse en ontwerp v gewenst functionaliteit en kwaliteit vh IS - opstellen eindrapport FO 1008 Projectmanagement - projectmanagementmethode - PRINCE2 - *** blz g 4. technisch ontwerp (TO) - het functioneel ontwerp wordt hier vertaald naar technische consequenties zodat aan de gestelde prestatie-eisen wordt voldaan, activiteiten zijn hier: - opstellen plan van aanpak - opstellen programmaspecs - ontwerpen opslagstructuur - uitwerken beeldschermspecificaties *** - opstellen specs voor systeemtest - opstellen eindrapport TO 1009 blz h Projectmanagement - projectmanagementmethode - PRINCE2-5.bouw/realisatie - programma's worden geschreven en de DB gerealiseerd, activiteiten zijn hier: - opstellen plan van aanpak - programmeren, bouw DB, uitwerken procedures en handleidingen - uitvoeren systeemtest - opstellen rapportage 1010 blz i Projectmanagement - projectmanagementmethode - PRINCE2-6. acceptatietest - deze wordt door klant/opdrachtgever uitgevoerd met als doel controleren of het systeem aan de gevraagde specs voldoet, het richt zich op de gestelde functionele eisen en de gestelde prestatie eisen, activiteiten zijn hier: - opstellen plan van aanpak/tekstplanning - uitvoeren acceptatietest - opstellen rapportage testbevindingen 1011 blz j Projectmanagement - projectmanagementmethode - PRINCE2-7. invoering - in gebruik nemen van het IS, activiteiten zijn hier: - opstellen plan van aanpak - inrichten (beheer)organisatie - verzorgen opleidingen - installatie systeem - uitvoeren dataconversie (indien nodig) - invoering - overdracht systeem aan eigenaar maandag 19 oktober 2015 Pagina 5 van 61
6 1012 blz k Projectmanagement - projectmanagementmethode - PRINCE2-8. gebruik en beheer - Dit valt buiten het project en is nodig zolang het systeem in gebruik is. Het IS wordt hier doorlopen aangepast aan gestelde functionele en prestatie eisen, de belangrijkste soorten onderhoud zijn: - CORRECTIEF onderhoud > herstellen van fouten - PERFECTIEF onderhoud > perfectioneren - ADAPTIEF onderhoud > aanpassen, uitbreiden 1013 blz l Projectmanagement - projectmanagementmethode - Dynamic Systems Development Method (DSDM) - DSDM is een methode voor incrementele en iteratieve applicatieontwikkeling, waarbij een Is vooral geschikt voor systemen die: - interactief zijn, met een goed zichtbare functionaliteit in userinterface - goed gedefinieerde gebruikersgroep hebben - als complex > decomponeerbare complexiteit bezitten - als groot > opdeelbaar zijn in kleine functionele eenheden - prioteerbare requirements hebben - onduidelijke of veranderlijke requirements hebben DSDM minder geschikt voor: - procesbesturings- en real-time applicaties - systemen waarbij op voorhand de eisen volledig vast moeten liggen - safety-critical applicaties - projecten waarbij ook herbruikbare componenten moeten worden geleverd. Uit ISYF > DSDM > applicatie niet in één keer in zijn geheel ontwikkeld wordt, maar in kleine stukjes wordt opgeleverd. Incrementen = kleine stukjes. Het kent de volgende fase: 1. Toepasbaarheidsonderzoek > nagaan of de start vh ontwikkelproces zin heeft en of DSDM juiste methode is 2. Bedrijfsanalyse > beter inzicht krijgen in de te automatiseren bedrijfsprocessen en informatiebehoeften (voor het project) 3. Functioneel model - iteratie > is gericht op verfijnen vd bedrijfsprocessen, de basis voor de protypes 4. Ontwerp & Bouw - iteratie > systeem wordt steeds verder getest en verfijnd en kan overgedragen worden aan gebruikers, op dat moment voldoet het systeem aan een aantal minimaal gestelde eisen nog niet aan alle. 5. Implementatie > het gerealiseerde systeem wordt overgedragen aan gebruikers. Hierbij hoort ook opleiding, voorlichting en trainingen en het maken vd gebruikershandleiding. Voor de priotering vd eisen is het acroniem MoSCoW bedacht: - Must have > eisen zijn essentieel > alleen deze v belang voor oplevering deelsysteem!! - Should have > eisen zijn belangrijk, maar niet noodzakelijk en als we tijd hebben doen we deze - Could have > eisen die weg gelaten zouden kunnen worden - Want to but not now > Want to have but will not have this time around > eisen voor het volgende traject Als bij deelsysteem een nieuwe must have eis ontstaat, alle andere weer even nakijken of deze nog allemaal must have zijn. Speling inbouwen. 113 maandag 19 oktober 2015 Pagina 6 van 61
7 1014 blz a Systeemontwikkeling - architectuurbenaderi ng wordt gebruik van gemaakt om toenemende noodzaak tot uitbreiden en migreren vd bestaand informatievoorziening te kanaliseren. Elke architectuurlaag heeft de volgende aspecten: - CRITERIA > omvat uitgangspunten, principes, voorschriften en richtlijnen - GRAFISCH > omvat modellen, structuren en ontwerpen Op elk niveau worden de criteria en grafische aspecten vh BOVENliggende niveau uitgediept. BEDRIJFSARCHITECTUUR > is het startpunt voor informatievoorzienings-architectuur. Is een gestructureerde omschrijving v alleen die zaken die voor de informatievoorzienings-architectuur relevant zijn. Het bevat een schematische blauwdruk vd totale gewenste indeling in gebieden die elk een specifiek doel hebben en bevatten soms complete architecturen op zichzelf. INFORMATIEVOORZIENINGSARCHITECTUUR > Schetst een beeld vd (toekomstige) informatievoorziening. Interpreteert de bedrijfsarchitectuur en stelt de consequenties voor de informatievoorziening vast. De principes beschrijven de eisen die aan de individuele informatiesystemen worden gesteld. Gevolg is dat de reorganisatie de voor haar best passende pakketten selecteren of systemen ontwikkelen, terwijl toch de samenhang bewaakt blijft. Belangrijke onderdelen zijn: - functionaliteitsmodel > - WELKE toepassingen verwerken gegevens / WAAR vindt dat plaats / WAAR zijn de gegevens opgeslagen INFORMATIESYSTEEMARCHITECTUUR > vertaalt de informatievoorzienings-architectuur naar de werkende informatievoorziening en bevat op basis v principes en modellen richtlijnen en ontwerpen. De richtlijnen zijn constructie eisen die rechtstreeks zijn afgeleid uit de principes vd informatievoorzienings-architectuur. Deelarchitecturen zijn hier: - applicatiearchitectuur > hoe worden applicaties gebouwd - gegevensarchitectuur > welke eisen voor fysieke gegevensverzamelingen INFRASTRUCTUUR > bevat voorschriften die afgeleid zijn vd principes uit de informatievoorzienings-architectuur en bevatten eisen ten aanzien v beveiliging en beheersbaarheid. 328 maandag 19 oktober 2015 Pagina 7 van 61
8 1015 Systeemontwikkeling - *** blz b architectuurbenaderi ng - INFRASTRUCTUUR > fysieke wereld waarbinnen het informatiesysteem geïmplementeerd is. APLLICATIESTRUCTUUR > is de inwendige structuur van een IS. Een IS bevat de volgende componenten > - invoerfaciliteiten - verwerkingsfaciliteiten - opslagfaciliteiten - uitvoerfaciliteiten Informatieanalisten, systeemontwerpers en toekomstige gebruikers zullen de specificaties vaststellen en daarna gaan de programmeurs en ontwikkelaars overgaan tot realisatie. SYSTEEMONTWIKKELINGSAANPAK : is het productieproces waarin ICT/deskundigen en materiedeskundigen (de bedrijfsvoering) gericht samenwerken met als doel de realisatie ve informatiesysteem. DOEL > via een zo effieciënt en effectieve mogelijke aaneenschakeling v stappen komen tot het gewenste IS dat optimaal is afgestemd op de eisen en wensen vd opdrachtgever. STRATEGIËN om gewenst resultaat te bereiken zijn afhankelijk vd aard en complexiteit > - invulling vd ontwikkelcyclus - benaderingswijze - denkwijze Ontwikkelcycli kunnen toegepast worden - LIE > *** - LINEAIR > alle stappen sequentieel doorlopen en compleet afleveren. Werkt bij kleine projecten of projecten waarbij op voorhand DUIDELIJK is hoe het moet worden. - INCREMENTEEL * > voor ieder volwaardig onderdeel stappen iteratief doorlopen, prioriteiten leggen op deelsystemen, waar onzekerheid is later doen. - EVOLUTIONAIR * > voor ieder onderdeel stappen iteratief doorlopen en het hele systeem in een aantal iteraties opgeleverd waarbij iedere functionaliteit wordt toegevoegd. Deze aanpak kiezen als er onzekerheid is over de volledige functionaliteit van het op te leveren systeem. Rudimentair prototyping. GEHEEL ONDUIDELIJK. Benaderingswijzen > TOP-DOWN > processen als uitgangspunt, organisatie gericht, voordeel > meer samenhang tussen strategisch en operationeel niveau. BOTTOM-UP > Benodigde data als uitgangspunt, mensgericht, voordeel > betere fit vh IS met belevingswereld eindgebruikers. TESTEN, regels zijn o.a. > - uitgangspunt is FO - resultaten vd test vooraf vaststellen - testgegevens moeten representatief zijn TESTEN, aspecten > - functioneren volgens de functionele specificaties op gebied van: - volledigheid / juistheid / betrouwbaarheid / tijdigheid / gebruiksvriendelijkheid - functioneren overeenkomstig de prestatie eisen - POF: - performance / onderhoudbaarheid / flexibiliteit Gebruikers organisatie is verantwoordelijk voor de acceptatietesten. ICT-deskundigen zijn verantwoordelijk voor technische testen (bv systeem- en DB-testen). Het is belangrijk om onderscheid te maken tussen besturing en inhoudelijke activiteiten bij realisatie van een IS. Systeemontwikkelaars zijn samen met gebruikersorganisatie verantwoordelijk voor inhoudelijk resultaat en voor het daadwerkelijk realiseren vd functionaliteit volgens gewenste kwaliteit. 329 maandag 19 oktober 2015 Pagina 8 van 61
9 1016 blz Systeemontwikkeling volgens MAD (Modelbased Application Development) - overzicht vd methode MAD aanpak bevat handvatten voor projectmangement en systeemontwikkeling. MAD is een vorm v RAD (Rapid Application Devolement), waarbij de nadruk ligt op modelleren. Bij MAD wordt ook gebruikgemaakt van JAD (Joint Application Design) om gebruikersparticipatie optimaal te waarborgen. Scope vd projectaanpak is breder dan de scope vd ontwikkelingsaanpak. De overkoepelende fase beheerden de MAD-ontwikkelcyclus heeft de fasering > 1. definieer project 2. definieer increment 3. realisatie 4. installatie Ontwikkelactiviteiten binnen MAD zijn > - opstellen bedrijfsmodellen bevat > - bedrijfsactiviteitenmodel, - informatiemodel en - afbakening systeemgrenzen - opstellen systeemmodellen bevat > - definitie vd gegevensstructuur - gedrag - userinterface vh increment - ontwikkel increment - installeer increment maandag 19 oktober 2015 Pagina 9 van 61
10 1017 blz a Systeemontwikkeling volgens MAD (Modelbased Application Development) - kenmerken Ontwikkelfilosofie van MAD > - hanteren v modelmatige specificaties en hergebruik v modellen - toepassen v iteratieve en incrementele systeemontwikkeling - actieve betrokkenheid v toekomstige gebruikers - optimaal gebruik maken v prototypes - effectief gebruik van tools (applicatiegenerators) MAD onderscheidt zich doordat de methode het documenteren (modelleren) verankert in de methode. Modellen zijn het uitgangspunt en worden gebruikt als specificatie voor het geneneren van het systeem, hierdoor blijven ze actueel. Men begint altijd met het opstellen ve bedrijfsactiviteitenmodel > doel > inzicht krijgen in de eisen vanuit het bedrijfsproces. INCREMENTELE ontwikkeling > het systeem wordt opgedeeld in deelsystemen nadat de bedrijfsactiviteiten en de informatiebehoefte voor de volle breedte zijn bepaald en vastgelegd. DEELSYSTEEM > is een logische geïsoleerde eenheid vd functionaliteit die los ontwikkeld en geïmplemeerd kan worden, hierdoor is parallele systeemontwikkeling mogelijk. Volgorde van ontwikkelen is afhankelijk van de afhankelijkheden tussen incrementen en gestelde prioriteiten door de opdrachtgever. JAD (Joint Application Design) > gebruiker actief laten participeren, de volgende deelnemers zijn bij een JAD sessie aanwezig: - Sessie-leider > taak > sessie faciliteren - Opdrachtgever > taak > beslissen over beschikbaarheid en budget - Gebruikersvertegenwoodigers > taak > verwoorden vd functionele eisen en wensen - Informatie-analisten > taak > opstellen vd bedrijfs- en systeemmodellen - Secretaresse> taak > notuleren - Specialisten (eventueel) > taak > beantwoorden v specifieke vragen Voorwaarden ve goede JAD-sessie > - juiste personen met juiste kennis - deelnemers moeten gedurende hele project beschikbaar zijn - deelnemers moeten beslissingsbevoegd zijn bij keuzes voor functies vh IS maandag 19 oktober 2015 Pagina 10 van 61
11 1018 blz b Systeemontwikkeling volgens MAD (Modelbased Application Development) - prototyping - is een methode om op iteratieve wijze in nauwe samenwerking met gebruikers in korte tijd een prototype te ontwikkelen met als doel de kwaliteit vh te ontwikkelen IS te verhogen, doordat met behulp van prototyping betere functionele specificaties worden verkregen. De protoype-cyclus is een iteratie vd onderstaande activiteiten > - specificatie en ontwerp vh prototype - bouwen protoype - het protypen met gebruiker - evalueren vh prototype om vervolgens de specificatie en het ontwerp te kunnen aanpassen Applicatiegenerator > ontwikkeltool ter ondersteuning voor systeemontwikkelaars blz a Systeemontwikkeling volgens MAD (Modelbased Application Development) - MADprojectinrichting Op basis ve businesscases kan beoordeeld worden of nieuwe ideeën en/of wensen aan de doelstelling vd organisatie voldoen. Het informatieplan vertaalt het beleid naar een planning in de tijd. Het omschrijft de volgende onderwerpen: 1. informatiesysteemarchitectuurplan 2. programma (= overzicht vd uit te voeren projecten) 3. plan voor gebruik van tools 4. plan voor technische infrastructuur 5. middelenplan 6. sociaal plan 7. organisatieplan maandag 19 oktober 2015 Pagina 11 van 61
12 1020 blz b Systeemontwikkeling volgens MAD (Modelbased Application Development) - MAD projectinrichting - MAD heeft veel overeenkomsten met PRINCE2 en bestaat uit de volgende fase: 1. OPSTARTEN en INITIEREN project Voorbereidingen starten en randvoorwaarden invullen, plan van aanpak maken. Projectorganisatie bepalen, verantwoordelijkheden en bevoegdheden verdelen. Overzicht v op te leveren producten maken, diverse planningen Risico-analyse uitvoeren. 2. BEHEERSEN vd MAD-ontwikkelcyclus > subfasen: a. DEFINIEER PROJECT b. DEFINIEER INCREMENT c. REALISATIE d. INSTALLATIE 3. IMPLEMENTATIE informatiesysteem Oplevering vd incrementen, opleiden en nazorg 4. BEHEER en ONDERHOUD Projectmanager moet beheer en onderhoud regelen, maakt SLA. Beheer en onderhoud zelf valt buiten het project. 5. AFSLUITING project 1. Projectmanager stelt eindrapportage op, legt verantwoording af en geeft resultaat. 2. Opdrachtgever verleent decharge. 3. Projectmanger draagt project over aan de lijnorganisatie. VERANTWOORDELIJKHEDEN: PROJECTMANAGER/leider > besturing en beheersing. ICT deskundigen > realiseren vh IS volgens functionele eisen en prestatie eisen die door gebruikers zijn bepaald. 333 maandag 19 oktober 2015 Pagina 12 van 61
13 1021 Systeemontwikkeling volgens MAD (Modelbased Application Development) - *** blz c MAD projectinrichting - beheersen vd MADontwikkelcyclus - 2. BEHEERSEN vd MAD-ontwikkelcyclus > subfasen: a. ***DEFINIEER PROJECT ***> 1. opstellen bedrijfsactiviteitenmodel > doel > bedrijfsprocessen en informatiebehoefte in kaart brengen 2. maak globaal informatiemodel 3. ***afbakening systeemgrenzen *** > *** DOEL > benoemen welke informatieverwerking daadwerkelijk gerealiseerd wordt binnen het informatiesysteem. Wat binnen de systeemgrens valt en wordt gerealiseerd. Hiermee wordt de scope vh systeem bekend (bepaal zelfstandignaamwoorden, dan werkwoorden en daarna de scope = grenzen). b. DEFINIEER INCREMENT > 4. definitie van de incrementen > In logische eenheden indelen die zelfstandig ontwikkeld en geïnstalleerd kunnen worden. Kernsysteem eerst ontwikkelen. Logische samenhang tussen incrementen is ook bekend.!!activiteiten 1 t/m 4 worden voor het hele systeem doorlopen!!!!activiteiten 5 t/m 9 worden per increment doorgelopen!! c. REALISATIE > 5. definieer gegevensstructuur per increment 6. definieer het gedrag van increment > uitwerken van > - domeinen voor de verschillende attributen - afhankelijkheidsregels voor de verschillende attributen - statusovergangen voor de verschillende attributen - updaten & delete regels voor de attributen - onderlinge samenhang tussen associaties - procesgegevens - autorisaties 7. definieer user-interface voor increment > - GUI = grafische userinterface - welke output en in welke vorm (bv rapportages) 8. ontwikkel increment > - genereren vd basisfunctionaliteit vh increment - toevoegen event-getriggerde regels - bouw GUI/menustructuren - bouw rapportages - integratie met andere reeds ontwikkelde incrementen - systeemtest d. INSTALLATIE > 9. installeer increment Testen is hier vaak lastig > aandachtspunten > - ontwikkel testbare software (kleine componenten) - wissel bouw en test voordurend af - (her)gebruik eerder geteste componenten - gebruik ondersteunende test-tools 334 maandag 19 oktober 2015 Pagina 13 van 61
14 1022 Systeemontwikkeling volgens MAD (Modelbased Application Development) blz d MAD projectinrichting - beheersen vd MADontwikkelcyclus - MOSQUITO = GROKIT (Geld - Risico - Organisatie - Kwaliteit - Informatie - Tijd/planning) - Money / safety (risico) / QUality / Information / Time and resources / Organization > ad Organisatie > belangrijk voor slagen is> kleine projectteams / brede inzetbaarheid vd projectleden / flexibiliteit vd projectleden / leden moeten kunnen anticiperen op wijzigingen Voor de priotering vd eisen en TIME is het acroniem MoSCoW bedacht: - Must have > eisen zijn essentieel > alleen deze v belang voor oplevering deelsysteem!! - Should have > eisen zijn belangrijk, maar niet noodzakelijk en als we tijd hebben doen we die - Could have > eisen die weg gelaten zouden kunnen worden - Want to but not now > Want to have but will not have this time around > eisen voor het volgende traject 1023 blz a MAD-systeemontwikkelingsaanpak - uitgangspunten - - modelmatige specificaties en hergebruik van modellen - iteratieve en incrementele systeemontwikkeling - specificaties bepalen in samenspraak gebruikers én ontwikkelaars - prototype gebruiken - (grotendeels) generen met applicatiegeneratoren. Zie figuur 343 voor de ontwikkelingsfase en bijbehorende activiteiten, modellen en producten. - bedrijfsanalyse > in kaart brengen probleemgebied - systeemspecificatie > systeemafbakening, scope en opstellen incrementen - systeembouw > daadwerkelijke realisatie maandag 19 oktober 2015 Pagina 14 van 61
15 1024 MAD-systeemontwikkelingsaanpak - uitgangspunten - *** blz b bedrijfsactiviteiten model heeft de volgende functies: - verkrijgen v inzicht in bedrijfsproces - Uitgangspunt voor het vaststellen van de systeemgrenzen - Uitgangspunt voor het opstellen van een globaal informatiemodel - Uitgangspunt voor het vaststellen van de informatieregels - Uitgangspunt voor het opstellen en vaststellen van de userviews - Communicatiemiddel Voor het modelleren van het bedrijfsactiviteitenmodel wordt hier gebruik gemaakt van zgn A-schema's van de ontwikkelmethode van ISAC of DFD's diagrammen van de ontwikkelmethode Yourdon. GEGEVENSSTROMEN > de pijlen > zelfstandige naamwoorden in de tekst. - INPUT STROOM > gaat in de activiteitblok, is invoer - CONTROLE STROOM > pijl van boven af, die info geeft, alleen raadplegen - OUTPUT STROOM > komt uit de activiteiten blok, is uitvoer Een informatiestroom heeft een naam. Deze naam is een zelfstandig naamwoord en geeft de inhoud van de informatiestroom weer. ACTIVITEITEN > de blokken > werkwoorden uit de tekst. Activiteiten hebben een naam en een nummer. De naam wordt altijd uitvoergericht gekozen en bestaat uit een werkwoord eventueel gevolgd door een zelfstandig naamwoord. De naam duidt de verwerking aan die door de activiteit wordt uitgevoerd. Iedere activiteit heeft minimaal één invoerstroom en één uitvoerstroom. maandag 19 oktober 2015 Pagina 15 van 61
16 1025 MAD-systeemontwikkelingsaanpak - uitgangspunten - *** blz c informatiemodel is een semantisch model > er wordt nog geen rekening gehouden met implementatie beperkingen. DOEL > informatiebehoefte inventariseren en vastleggen. De figuren 1.19 en 1.20 vormen SAMEN het informatiemodel en bestaat dus uit: 1. INFORMATIESTRUCTUURMODEL >ERD >entiteiten, attributen en hun onderlinge samenhang 2. INFORMATIEREGELS > - identificatieregels > primairy key, uniek gegeven - verplichte attributen > moeten minimaal bekend zijn - validatieregels > toegestane waarden - afhankelijkheidsregels > geeft relatie tussen attributen v verschillende entiteiten weer - ***afleidingsregels > *** op welke wijze de waarde ve attribuut afgeleid of berekend kan worden (21C). - transitieregels > beschrijven toegestane statuswijzigingen ve attribuut. Bv patient van "in behandeling" naar "onder controle". ***Dus het informatiemodel bestaat uit het informatiestructuurmodel én de informatieregels!! 1026 blz d MAD-systeemontwikkelingsaanpak - uitgangspunten - afbakening systeemgrenzen - DOEL > bepalen welke bedrijfsactiviteiten voor automatisering in aanmerking komen en daadwerkelijk gerealiseerd worden. De scope vh te realiseren systeem wordt gemodelleerd mbv een contextdiagram, dit is een afbeelding vh te automatiseren systeem in relatie met haar omgeving. Het systeem wordt in dit diagram beschouwd als een black box. Is bedoel om de grenzen af te bakenen en de relatie met de omgeving te tonen. Dit context-diagram is ook gelijk het A-0 schema 340 maandag 19 oktober 2015 Pagina 16 van 61
17 1027 blz e MAD-systeemontwikkelingsaanpak - uitgangspunten - definieer de incrementen DOEL > identificeren en vast stellen van incrementen. Incrementen zijn als het ware logische eenheden die zelfstandig ontwikkeld en geinstalleerd kunnen worden. Deze opdeling vindt plaats aan de hand vh informatiemodel. Opsplitsen gebeurd daar waar er zoweinig mogelijk informatiestromen lopen. Ontwikkel principes van coupling en binding worden hier gebruikt. BINDING (intern+max) > een maximale interne samenhang > sterke > dan hebben ze een eigen afgebakende verantwoordelijkheid. COUPLING (extern-min) > een minimale externe afhankelijkheid > beschrijft de mate waarop incrementen van elkaar afhankelijk zijn, deze moet zo klein mogelijk zijn. Doet uitspraken over de communicatie tussen incrementen. Sterke binding en zwakke coupling** 341 maandag 19 oktober 2015 Pagina 17 van 61
18 1028 MAD-systeemontwikkelingsaanpak - uitgangspunten blz f definieer de gegevensstructuur - is een systeemgerichte activiteit. Is per increment vastleggen welke gegevens in welke vorm worden opgeslagen. Hiervoor wordt het conceptuele informatiemodel (ERD) omgezet naar een fysiek model. Dit gaat gepaard met de vertaalslag die men normaliseren noemt. Relationele model bestaat uit: - tabellen; - attributen; - primaire en vreemde sleutels. MAD hanteer principe van gecontroleerde redundantie > men kan afwijken van het volledig uit normaliseren vd gegevensverzameling. Twee doelen > - ervoor te zorgen dat de juiste schermen worden gegenereerd - uit performance overwegingen 1029 MAD-systeemontwikkelingsaanpak - uitgangspunten blz g definieer het gedrag - gebeurt om de gewenste functionaliteit te specificeren. De volgende specs uitwerken > - domeinen voor attributen - verplichte attributen - internal events (afhankelijkheidsregels en statusovergangen) - update en delete regels - afleidingsregels - autorisaties - aanvullende programma's 1031 MAD-systeemontwikkelingsaanpak - uitgangspunten blz h definieer de user interface - dit beïnvloedt in sterke mate de kwaliteit vd software en bepaalt o.a. > - snelheid waarmee men de software leert kennen - bedieningsgemak - kans op bedieningsfouten - visuele aantrekkingskracht Bij ontwerpen is van belang > - gebruikerstaak - frequentie van de taak - duur van de taak - mogelijkheden tot taakonderbreking en schakelen tussen verschillende taken 1031 MAD-systeemontwikkelingsaanpak - uitgangspunten blz i ontwikkel het increment - Doel > realiseren vh increment. Activiteiten > - genereer basisfunctionaliteit - event getriggerde regels toevoegen - bouw user interface - bouw rapportages - test - integreer met reeds ontwikkelde incrementen - systeemtest Daarna wordt het geinstalleerd. maandag 19 oktober 2015 Pagina 18 van 61
19 1032 MAD-systeemontwikkelingsaanpak blz beheer en onderhoud - Wijzigingen aan informatiesystemen zijn in een vijftal categorieen te plaatsen (PAPAC): - CORRECTIEF onderhoud > verbeteren van fouten die ontdekt zijn. - PREVENTIEF onderhoud > voorkomen van mogelijke fouten. - ADAPTIEF onderhoud > veranderen als gevolg van externe ontwikkelingen. - PERFECTIEF onderhoud > vernieuwen vanwege technische ontwikkelingen. - ADDITIEF onderhoud > veranderen als gevolg van nieuwe wensen en eisen, het toevoegen van nieuwe functionaliteiten, veranderingen als gevolg van functionele eisen Modelmatige aanpak blz model - Een MODEL is een beperkte vereenvoudigde afbeelding van de werkelijkheid vanuit een bepaald gezichtspunt voor een bepaalde doelgroep. MODELLEREN > is het geheel van activiteiten om een aspect uit de werkelijkheid te transformeren tot een model. Richtlijnen > vanuit een bepaald gezichtspunt of voor een bepaalde doelgroep. Er moet bij modellering altijd een doorgaande resultaatlijn en een doorgaande communicatielijn gehanteerd worden. Per model maar één gezichtspunt visualiseren. Mogelijke systeemonderdelen (zie figuur) 1. verwerking > hart vh systeem 2. user interface > manier voor gebruiker en verwerking om gegevens uit te wisselen 3. via data toegangslaag krijgt gegevens de data van de data opslag 4. data toegang zorgt voor communicatie met de data opslag laag 342 maandag 19 oktober 2015 Pagina 19 van 61
20 1034 Samenhang tussen MAD-modellen - *** blz a 344 ANALYSEMODEL > is het samenstel v modellen die gericht zijn op het afbeelden vd bedrijfsgerichte specificaties. SPECIFICATIEMODEL > is het samenstel v modellen die gericht zijn op het afbeelden vd systeemgerichte specificaties. AFBAKENING > richt zich op het modelleren vd bedrijfsgerichte specificaties. BEDRIJFSACTIVITEITENMODEL > vormt het startpunt vd modellencyclus binnen MAD. INFORMATIEMODEL *** > de binnen het bedrijfsactiviteitenmodel opgestelde A-schema's bevatten activiteiten en de verbindende informatiestromen, deze worden geanalyseerd om de entiteiten af te leiden om zodoende een globaal informatie-structuurmodel (ERD) op te stellen. Dit informatiestructuurmodel wordt door interviews en workshops via een aantal iteraties steeds verder gedetaillieerd > gevolg totaal overzicht van alle atributen per entiteit > daaruit kunnen weer de informatieregels worden opgesteld e.d. De in A-schema's gemodelleerde activiteiten bieden vooral inzicht in de aard van de informatieregels. maandag 19 oktober 2015 Pagina 20 van 61
21 1035 blz b Samenhang tussen MAD-modellen CONTEXTDIAGRAM > wordt vh bedrijfsactiviteitenmodel afgeleid, de basis activiteiten uit het basismodel (A-0 schema) worden tot één activiteit geaggregeerd. Geeft ook inzicht in de begrenzing vh IS en kan er worden overgegaan in opdelen naar incrementen. SPECIFICATIEMODEL > zodra incrementen zijn gedefinieerd worden op iteratieve wijze per increment het gegevensmodel, functiemodel en userinterfacemodel opgesteld. Daarna kun je gaan protoypen. Zie figuur. GEGEVENSMODEL > is de kern vh systeem, hier worden tabellen, gegevens, sleutels en domeinen gespecificeerd. FUNCTIEMODEL > omvat specificaties vd update & delete regels, event getriggerde regels, afleidingsregels en overige functionaliteitsregels. USER INTERFACE MODEL > welke gegevens op welk scherm, hoe worden ze benaderd, welke functionaliteit is mogelijk en wie is waarvoor geautororiseerd. PROTOTYPING > inzicht krijgen in de eisen en de wensen vd gebruikers ten aanzien vh specificatiemodel. maandag 19 oktober 2015 Pagina 21 van 61
22 1036 Templates en applicatiegeneratie - *** blz a template Over *** Systeemspecificatie *** deel komt een examen vraag. Dit is de kern. (Y) Bij MAD aanpak. TEMPLATE of rompsysteem of cassosysteem of designware > is een bedrijfsmodel dat is opgeslagen in de repository vd applicatiegenerator, ze kunnen hergebruikt worden. REFERENTIEMODEL > is een template die algemeen toepasbaar is voor een bepaald toepassingsgebeid. SPECIFICATIEMODEL > componenten zijn > - relationeel gegevensmodel - programmadelen - schermdefinities - menustructuur definities SPECIFICATIEMODEL > onderdelen zijn > *** - gegevens - gedrag - kern *** - userinterface maandag 19 oktober 2015 Pagina 22 van 61
23 1037 blz b Templates en applicatiegeneratie - applicatiegenerator maakt deel uit van een casetool. CASETOOL > is een samenhangende set ontwikkeltools voor analyse, ontwerp, modellering, prototyping en generatie van informatiesystemen. Focus ligt op het functioneel ontwikkelen en ze bieden de volgende faciliteiten > - grafische ondersteuning - onderhoudsfaciliteiten voor de modellen en specs - mogelijkheden tot prototyping - integratie met SQL - hergebruik mogelijk - voor gedefinieerde events beschikbaar op conceptueel en extern niveau - mogelijkheden om business rules te definieren - automatische generen van programmacode voor diverse platforms UPPERCASE TOOLS > vooral geschikt voor opstellen vd bedrijfsmodellen LOWERCASE TOOLS > zijn voornamelijk voor specificatiesmodellen en geschikt voor applicatiegeneratoren. Modellen uit de uppercase > worden getransformeerd naar > modellen vd lowercase tools. Minimale input voor een applicatiegenerator bestaat uit een relationeel model. De TRIVIALE functionaliteit bestaat uit > - de DB structuur; - menustructuur; - onderhoudsfunctionaliteit voor tabellen; - navigatiepaden tussen tabellen; - zoek funcionaliteit in tabellen; - bewaken referentiele integriteit; - bewaking update- en delete regels; - basisschermen voor de gebruiker. HS.1 Hoofdstuk: 2 Bedrijfsactiviteitenmodel maandag 19 oktober 2015 Pagina 23 van 61
24 1038 blz 66 2 Business Proces Redisign (BPR) - DOEL > processen beter op klant af stemmen OF de processen efficiënter laten verlopen. Bedrijfsprocessen worden rond klantwaarden georganiseerd. BPR is het opnieuw inrichten vh bedrijfsproces, waarbij infomatietechnologie als bij het ontwerp vh bedrijfsproces wordt meegenomen, met als doel snel en flexibel op veranderende behoeften ingespeeld kan worden en concurrentieposities verbeterd kunnen worden. Succesfactoren > - bedrijfsstrategie wordt heroverwogen; - bedrijfsprocessen herontwerpen; - ict optimaal wordt ingezet ter ondersteuning vd bedrijfsprocessen. Valkuilen > - te laat toepassen van ICT en niet alle ICT mogelijkheden benutten; - teveel aandacht schenken aan kostenbesparingen blz a Begrippen en toepassing - Integration DEFinition = IDEF - bestaat uit 3 technieken > - IDEF0 > voor modelleren van activiteitenschema's - IDEF1 > voor modelleren van gegevensschema's - IDEF2 > voor modelleren van gedrag Hebben een top-down structuur. maandag 19 oktober 2015 Pagina 24 van 61
25 1040 Begrippen en toepassing - *** blz b A-schema en Actimod moet eenduidigheid scheppen over alle modellen, dit kan door volgende aspecten in beschouwing te nemen > - CONTEXT > is de omgeving waarbinnen het model wordt opgesteld; - DOEL - GEZICHTPUNT > standpunt van waaruit het model wordt opgesteld; - CONTENT > onderwerp vd modellering. Binnen een A-schema is het HOE een activiteit cq verwerkingsproces (werkwoord) dat invoer en uitvoer oplevert. De invoer wordt getransformeerd tot uitvoer. Ook vastleggen met welke hulpmiddelen WAARMEE en wie of wat WAARDOOR de activiteit gestuurd wordt. A-schema bestaat uit de volgende componenten >; - ACTIVITEIT > is een functie waarbinnen een verwerking plaats vindt; - INPUT STROOM > is informatie-/materiestroom die de input levert voor een activiteit; - CONTROL STROOM > is een informatiestroom voor alleen te raadplegen; - OUTPUT STROOM > is de informatiestroom de activiteit levert/resultaat vd verwerking; - MECHANISM STROOM > is een stroom die op meerdere manier kan worden toegepast. Deze bestaat niet in Actimod en wordt alleen in IDEF gebruikt. *** Volgorde ve A-schema is: A-0 > A0 > A1 > A2..etc *** De bedrijfsanalyse begint met het A0 schema. *** Volgorde v opstellen ve A-schema is: A0 dan terug naar A-0 en dan verder met A1 > A2 etc A-0 > toont de applicatie als een activiteit (contextdiagram) A0 > toont diagram met de hoofdactiviteit 348 maandag 19 oktober 2015 Pagina 25 van 61
26 1041 blz c Begrippen en toepassing - horizontal balancing - bij opstellen van A-schema's is het belangrijk dat de activiteiten binnen een schema ten opzicht van elkaar een gelijkwaardige omvang hebben blz d Begrippen en toepassing - level balancing - Bij decompositie is het v belang dat de consistentie met de bovenliggende modellen wordt bewaakt blz a Notatiewijze en conventies - Activiteiten hebben een naam en nummer. Iedere activiteit heeft minimaal één invoer en minimaal één uitvoerstroom! Vuistregel > binnen een A-schema bij voorkeur 3 tot maximaal 6 activiteiten opnemen, deze moeten kwa niveau van gelijke zwaarte zijn (horizontal balancing). Informatiestroom = zelfstandignaamwoord > geeft de inhoud vd informatiestroom weer. BRANCHING/SPLITTING > het splitsen ve hoofdstroom in meerdere deelstromen. JOINING > samenvoegen van meerdere deelstromen tot een deelstroom. REALTIME STROOM > geeft ten allen tijde de actuele informatie aan, pijl met 2 punten. TUNNELING > op een lager abstractie niveau een stroom introduceren die op een hoger niveau niet relevant is. Wordt toegepast bij invoer-, control-, en uitvoerstromen, en wordt tussen haakjes gemodelleerd maandag 19 oktober 2015 Pagina 26 van 61
27 1044 blz a Notatiewijze en conventies - feedback feedback > vanuit een latere activiteit terug gaan naar een eerdere. figuur 355 links > INVOER FEEDBACK (bv bij maken en beoordelen v rontgenfoto's) figuur 355 rechts > CONTROLE FEEDBACK figuur 354 links > voorwaarlijke stroom uit activiteit 1 die als controlestroom geldt voor activiteit 3 figuur 354 rechts > parallele verwerking van activiteit 2 en 3, ze kunnen tegelijkertijd gestart worden. 354 maandag 19 oktober 2015 Pagina 27 van 61
28 1045 Analyse en modellering - *** blz a opstellen A schema's - topdown bedrijfsactiviteitenmodel opstellen > stappen > 1. verzamel de benodigde informatie 2. bepaal het doel vh model 3. bepaal het gezichtspunt vh model 4. *** maak een A0-diagram > is basisdiagram met hoofdactiviteiten. Horizontal balancing is belangrijk. Activiteiten van linksboven naar rechtsonder modelleren en verbinden met informatiestromen. 5. *** maak een A-0 diagram > toont één activiteit met de relevante invoer-, controle en uitvoerstromen. Kan worden afgebeeld als een groot blok om het A0-schema te zetten en dan te beschouwen als een activiteit, daarna moeten de invoer-, uitvoeren controle stromen nog geplaatst worden. 6. *** maak uitgaande vh A0-diagram de benodigde decomposities > per activiteit vaststellen uit welke deelactiviteiten het bestaat, bijvoorbeeld: Deelactiviteit 1 van activiteit 1 > in A1 diagram, > dan weer in A11 diagram Deelactiviteit 2 van activiteit 1 > in A1 diagram, > dan weer in A12 diagram Deelactiviteit 1 van activiteit 2 > in A2 diagram, > dan weer in A21 diagram Deelactiviteit 2 van activiteit 2 > in A2 diagram, > dan weer in A22 diagram etc Level balancing niet uit het oog verliezen, zie figuur review en controle 357 maandag 19 oktober 2015 Pagina 28 van 61
29 1046 blz a Opstellen ve A-schema - top-down Benoem maximaal 4 activiteiten die samen een representatief beeld vormen vd activiteiten. Voeg eerst de externe en interne invoer- en uitvoerstromen toe en bepaal daarna de interne hoofdstroom. Deze stromen vormen samen de workflow of rode draad blz a Opstellen ve A-schema - bottom up stappen > 1. maak een datalijst > invetariseer de informatiestromen (de zelfstandige naamwoorden) 2. maak een activiteitenlijst > (de werkwoorden) 3. leg associaties tussen de datalijst en activiteitenlijst 4. transformeer de datalijst en activiteitenlijst naar een 1e concept A-schema 5. verfijn het A-schema 6. controleer het A-schema HS.1 Hoofdstuk: 3 Informatiemodel maandag 19 oktober 2015 Pagina 29 van 61
30 1048 Informatiemodel - *** blz 101 3a 364 DOEL > is om de informatiebehoefte voor het toepassingsgebied te inventariseren en vast te leggen. Het informatiemodel is een semantisch model, dwz dat er nog geen rekening wordt gehouden met implementatiebeperkingen. Het informatiemodel brengt de informatiebehoefte in kaart en bestaat uit > - informatiestructuurmodel én - informatieregels Het informatiestructuurmodel is een ERD (Entity Relationship Diagram). Entiteiten, attributen en hun onderlinge samenhang is vastgelegd. Functies van het informatiemodel zijn > - inzicht verkrijgen - communicatiemiddel - uitgangspunt voor identificeren en afbakenen v incrementen - uitgangspunt voor afleiden specificatiemodel Informatiemodel kent de volgende informatieregels > - identificatieregels - verplichte en optionele attributen - validatieregels (domeinen) - afhankelijkheidsregels (beschrijving relaties) - afleidingsregels (procesgegevens) - transitieregels (bv statusovergangen) maandag 19 oktober 2015 Pagina 30 van 61
31 1049 Begrippen en toepassing - blz 103 onderdelen ERD - 3.1a ENTITEITTYPE > is het concrete object waarover informatie wordt vastgelegd. De entiteit is de instantie ve entitiettype. ATTRIBUUTTYPE > is een soort kenmerk of de eigenschap vh eintiteitype (veldnaam). Attribuut of attribuutwaarde is een instantie ve attribuuttype. RELATIONSHIPTYPE > is het element waarmee de samenhang tussen entiteittypen wordt gemodelleerd. Geeft de relatie tussen de verschillende objecten weer blz a Begrippen en toepassingen - entiteittype - ZWAK entiteittype > is een entiteittype dat niet zelfstandig beschikt over een uniek identificerend attribuut, het is daarvoor afhankelijk v een andere entiteit. Als er in de primaire sleutel ook een of meerdere vreemde sleutels zitten. SUPERTYPE > is de moeder entiteit met de gemeenschappelijke basisattributen. SUBTYPE > bevat de specifieke attribuuttype die alleen van toepassing zijn op het subtype en via het principe van overerving zijn daarnaast de gemeenschappelijke basis attribuuttypen voor ieder subtype van toepassing Begrippen en toepassing - *** blz a attribuuttypen - SINGLE VALUED attribuuttype > is een attribuuttype dat voor een entiteit maximaal één attribuutwaarde vertegenwoordigt, bv woonplaats. MULTIEVALUED attribuuttype ***> is een attribuuttype dat voor een entiteit op moment x meerdere attribuutwaarden kan bevatten, bv gevolgde opleiding bij student. Dit kan dus ook een samengesteld attribuuttype zijn en vise versa. SAMENGESTELD attribuuttype > WORDT NIET MEER TOEGESTAAN. Is een attribuuttype dat een samenstelling van attribuutwaarden bevat, bv adres is straat+huisnr+toevoeging. ENKELVOUDIG attribuuttype > is een attribuuttype dat voor de entiteit een atomische attribuut waarde bevat, het kan dus niet verder worden opgesplitst, bv huisnummer. SLEUTELattribuut > is het identificerende attribuuttype van de entiteit. Dit is de kleinst mogelijke samenstelling van attribuuttypen die een entiteit uniek identificeert. maandag 19 oktober 2015 Pagina 31 van 61
32 1052 Begrippen en toepassing - *** blz a relationshiptypen of relatie - geeft de associatie aan tussen entiteittypen. We onderscheiden > - CONNECTIVITEIT of FUNCTIONALITEIT > geeft weer of er sprake is van respectivelijk een 1:1, een 1:n of een n:m relatie tussen de geassocieerde entitteiten gelden. Mogelijkheden zijn > 1:1 > één entiteittype hoort bij één ander entiteittype; 1:n > één entiteittype hoort bij meerdere andere entiteittypen; n:m > meerdere entiteittypen horen bij meerdere andere entiteittypen. *** n > noemt men hier de maximale kardinaliteit - AARD > hiermee kan worden aangegeven of een relatie tussen entiteittype optioneel/partioneel of verplicht/totaal is. - GRAAD of DIMENSIE > geeft aan hoeveel entiteittypen aan een relatie deelnemen. De graad kan maximaal N-air zijn. De volgende graden zijn o.a. mogelijk > - uniair > er paticipeert één entiteittype in de relatie; - binair > er paticipeert twee entiteittypen in de relatie; - tertiar > er paticipeert drie entiteittype in de relatie; - N-air > er paticipeert een onbeperkt aantal entiteittypen in de relatie. De connectiviteit/functionaliteit en de aard worden gemodelleerd voor het vastleggen vd kardinaliteiten (hiermee wordt aangegeven hoeveel relaties er mogelijk zijn tussen relaties) Begrippen en toepassing - *** blz a informatieregels - de volgende worden onderkend > - IDENTIFICATIEREGELS > geeft het attirbuut of de combinatie v attributen weer die de entiteit uniek identificeren. - VERPLICHTE en OPTIONELE attributen > geven aan welke attributen van een entiteit minimaal bekend moeten zijn cq minimaal ingevuld moeten zijn. - VALIDATIE (domeinen) > geven een opsomming vd toegestane waarden weer die voor dat attribuut geldig zijn. - AFHANKELIJKHEIDSREGELS > geven de relaties weer tussen attributen van verschillende entiteiten. - ***AFLEIDINGSREGELS (procesgegevens)*** > beschrijven op welke wijze de waarden ve attribuut kan worden afgeleid of berekend op basis van andere attributen. - TRANSITIEREGELS > beschrijven de toegestane statuswijzigingen voor een attirbuut blz a Begrippen en toepassing - occurence en population - OCCURENCE > is de fysieke instantie van een bepaald entiteittype, bv patiënt Janssen. POPULATION > is de verzameling fysieke entiteiten op een willekeurig moment, bv de verzameling van alle patiënten op 12 mei. maandag 19 oktober 2015 Pagina 32 van 61
33 1055 blz 108 syntax a Notatiewijzen en conventies ENTITEIT RELATIE DIAGRAM = ERD (Entity relation ship diagram) > is een schematische weergave vd samenhang tussen entiteittypen. Hierin kunnen de entiteittypen en relatietype worden weergegeven. Hier wordt de notatiewijze zoals in ISO-rapport omschreven, toegepast. Omdat in de praktijk er teveel entiteiten voorkomen worden attributen tekstueel toegevoegd, het model zou anders veel te groot worden. Zie figuur 3.3 voor de notatiewijze blz a Notatiewijzen en conventies - conventies voor het modelleren v entiteittypen - ENTITEITTYPE > is een rechthoek met een naam Bij SUBTYPE en SUPERTYPEN wordt het volgende onderscheid gemaakt: - DISJUNT of EXCLUSIEF > bv een patiënt mag alleen maar bij OF een kaakchirug OF een dermatoloog geregistreerd staan maar niet bij beide. - NIET-DISJUNCT > Bv een patiënt mag bij een dermatoloog en bij een kaakchirurg geregistreerd zijn. Bij een VOLLEDIGE VERZAMELING wordt dit weergegeven met een gevulde zwarte pijl. 235 maandag 19 oktober 2015 Pagina 33 van 61
34 1057 Notatiewijzen en conventies - *** blz conventies voor modelleren v relationshiptypen Een RELATIONSHIPTYPE wordt weergegeven dmv een ovaal met een naam erin. Hier in x zitten altijd de sleutels in van A en B (zie figuur 3.9). De aard en de connectiviteit/functionaliteit worden gemodelleerd aan de hand van kardinaliteiten. De minimum kardinaliteit bepaalt de aard en de maximum kardinaliteit bepaalt de connectiviteit/functionaliteit. De notatie wijze is (min, max). De MINIMUM KARDINALITEIT kan waarde 0 of 1 hebben en betekent dat dit entiteittype optioneel of partieel deelneemt in de relatie. Als de minimum kardinaliteit 1 is > het entiteittype neemt altijd deel in de relatie en dan is de aard verplicht/totaal. De MAXIMUM KARDINALITEIT kan een waarde van 1 of n hebben. *** Als de maximum kardinaliteit = 1 > dit entitteittype neemt maximaal één maal deel in de relatie. Als de maximum kardinaliteit = n > dit entitteittype neemt maximaal n keer deel in de relatie. De GRAAD of DIMENSIE betreft het aantal deelnemende entiteiten in een relatie, maximum is N-air. De volgende graden zijn o.a. mogelijk > - UNIAIR > er paticipeert één entiteittype in de relatie; - BINAIR > er paticipeert twee entiteittypen in de relatie; - TERTIAIR > er paticipeert drie entiteittype in de relatie (T-structuur); *** - N-AIR > er paticipeert een onbeperkt aantal entiteittypen in de relatie. AGGREGATIE > is een abstractie waarbij een relatie met zijn entiteittypen als een entiteit op een hoger niveau wordt weergegeven. Zie figuur *** Fig 3.7, 3.8 en 3.9 *** Hier komen enkele examenvragen over. 237 maandag 19 oktober 2015 Pagina 34 van 61
35 1058 Notatiewijzen en conventies blz 113 notatie volgens ISO ISO-notatie > kenmerkend is het hanteren ve grafische en tekstuele component. De attribuuttypen worden bij het entiteittype in de tekstuele bijlage opgenomen. Hier geldt de volgende syntax, voor de > - tekstuele componenten ve entiteit > - Entity-type : <naam> bv patiënt - Identifier : <naam/namen> pnummer - Description : <attribuuttype namen> pnaam, padres, pte - tekstuele component ve relatie > - Relationshiptype : <naam> bv gebruiken - Dimension : <aantal> 2 - Collection : <namen> patiënt en medicijn - Cardinality : <namen (min,max)> patient 0,n en medicijn 0,n Analyse en modellering blz opstellen ERD volgens gesturctureerd stappenplan - ERD komt met volgende stappen tot stand: 1. bepalen en benoemen vd entiteittypen; 2. bepalen en benoemen v relationshiptypen; 3. maken ve primiair diagram; 4. bepalen vd kardaniliteiten; 5. bepalen en benoemen vd attribuuttypen; 6. bepalen vd identificerende attribuuttypen; 7. bepalen v het type attribuuttypen; 8. onderzoek naar toepasbaarheid van specialisatie/generalisatie; 9. controle vh uitgewerkte ERD. maandag 19 oktober 2015 Pagina 35 van 61
36 1060 Analyse en modellering blz opstellen ve ERD via analytische aanpak deze gaat uit vh tegelijkertijd inventariseren v entiteittypen, relationshiptypen en attribuuttypen. Via een inventarisatiemodel ontstaat een basismodel dat naar een definitieve uitwerking wordt omgezet. Zodra een entiteit wordt gevonden noteert men deze op de entiteitregel, de identificatie wordt de regel eronder genoteerd en vervolgens de attribuuttypen. Daarboven noteert men de relationshiptype. Zo komt men tot een model dat vertaalt kan worden naar ERD's. Daarbij moeten de sub- en supertypes niet vergeten worden. maandag 19 oktober 2015 Pagina 36 van 61
37 1061 Analyse en modellering blz Controleregels voor ERD Een ERD is als het ware het fundament vd database. Bij opstellen ve ERD is hetvolgende van belang > 1. ALGEMENE REGELS > - Binnen één ERD hebben entiteittypen unieke namen; - Binnen één entitetitype heb attributen een uniek naam. 2. FORMELE MODELLERINGSREGELS > - Enkelvoudige attribuuttypen > multivalued attribuuttypen worden in een entiteittype omgezet. - Normalisatie > controleren op > - voorkomen van herhaalde groepen; - voorkomen v attribuuttype die niet afhankelijk zijn van een hele sleutel; - voorkomen v transitieve afhankelijkheden. - Decompositie > als er 3 entiteittypen betrokken zijn > - Tertiair relationshiptype > de functionaliteit vh relationshiptype moet eenduidig zijn met de aangesloten entiteittypen. 3. PRAGMATISCHE MODELLERINGSREGELS > bieden adviezen voor het modelleren van > - entitetitypen zonder relevante attribuuttypen; - impliciete enttiteittypen; - relationshiptypen met attribuuttypen. maandag 19 oktober 2015 Pagina 37 van 61
38 1062 MDD = Multidimensionale Databases blz MDD > Multidimensionale Databases. OLTP > OnLine Transaction Processing > systemen met heel veel invoer. DSS > Decision Support System > is een primaire generiek toepassing van een MDD. DWH > DataWareHouse > is het op een zodanige manier structureren en koppelen van bestanden dat alle informatie via een uniform medium beschikbaar wordt. DWH > DataWareHouse > hoofddoel > om deze gegevens te integreren en optimaliseren voor analysedoeleinden om o.a. in de managementinformatie te kunnen voorzien. Andere toepassingen kunnen zijn > marketing, fraudedetectie, ondersteuning bedrijfsprocessen en financiële dienstverlening. MDD > Multidimensionale Databases > is een vorm v databasetechnologie voor de efficiënte opslag en bevraging van grote hoeveelheden complexe gerelateerde data vanuit verschillende applicaties vanuit verschillende onderdelen vd organisatie, waarbij data worden opgeslagen in een kruistabel waardoor data beter toegankelijk zijn voor analyses vanuit verschillende invalshoeken. Omvat feitelijk een datawarehouse met BI-tool functionaliteit. BI-tool is een software-tool dat bedoelt is voor de presentatie en analyse van grote hoeveelheden data. maandag 19 oktober 2015 Pagina 38 van 61
39 1063 MDD = Multidimensionale Databases - *** blz a functionele toepassingsmogelijkh eden BI-tools/MDD OLAP > On Line Analytical Processing > zijn systemen die snelle analyses maken op grote hoeveelheden data met als doel bruikbare informatie te produceren. Deze zijn over het algemeen te complex om in een gewone SQL omgeving te kunnen doen. Presentatiewijze gebeurt in vorm van kubussen of meerdimensionale kruistabellen. In de matrix zijn de gegevens zo gegroepeerd en gestructureerd dat directe mogelijkheden tot vergelijking ontstaan. De wijze van structerering in de presentatie vergroot direct het inzicht en de toegankelijkheid vd gegevens. De dimensie geeft het perspectief of de invalshoek van waaruit de materie bekeken wordt. De meerdimensionale datamatrix is vooral geschikt voor de onderstaande toepassingsmogelijkheden > - financiële analyse en reporting - butgettering - kwaliteitsbeheersing/controle - productvergelijking - strategische analyses - management en besturingsinformatie verwerking Belangrijk opties voor BI-tool/MDD worden geboden door verder data-analyse zijn > - rotation *** > anders invalshoek/zienswijze > zie figuur 3.25! - ranging > inzoomen - hierarchies - rekentools 383 maandag 19 oktober 2015 Pagina 39 van 61
40 1064 MDD = Multidimensionale Databases - *** blz b rotation of data slicing ROTATION of DATA-SLICING > hiermee is het mogelijk om informatie vanuit meerdere gezichtpunten te kunnen tonen zonder dat er complexe queries aan ten grondslag liggen. De essentie ligt in de mogelijkheid data vanuit verschillende invalshoeken te bekijken door de "kubus" telkens zodanig te draaien dat de gegevens vanuit de gewenste invalshoek beschouwd kan worden. Het draaien ve driedimensionale datamatrix biedt 6 mogelijkheden (de 6 zijden vd kubus), zie figuur 3.27 ***!! > 1. specialisme versus pijnbestrijding met locatie op achtergrond 2. pijnbestrijding versus specialisme met locatie op achtergrond 3. locatie versus pijnbestrijding met specialisme op achtergrond 4. pijnbestrijding versus locatie met specialisme op achtergrond 5. locatie versus specialisme met pijnbestrijding op achtergrond 6. specialisme versus locatie met pijnbestrijding op achtergrond ROTATION of DATA-SLICING > ANDERE ZIENSWIJZE!! Bekijken vanuit een andere hoek *** maandag 19 oktober 2015 Pagina 40 van 61
41 1065 MDD = Multidimensionale Databases - *** blz c ranging of datadicing RANGING of DATA DICING > hier ontstaat een selectiemogelijkheid van de gewenste cellen per dimensie. Dmv ranging is het als ware mogelijk om op een bepaalde positie van een of meedere dimensies in te zoomen. RANGING of DATA DICING > beperktere range aangeven inzoomen op gewenste info 1066 blz d MDD = Multidimensionale Databases - hiërarchisch - De informatiebehoefte binnen een dimensie beweegt zich vaak over verschillende hiërarchische niveau's binnen deze dimensie. De feitelijke informatiebehoefte veranderd niet, maar wel het hiërarchische niveau. Soms moet het meer gedetaillieerd zijn en een andere keer weer geaggregeerd. Via ROLL-UP wordt de informatiebehoefte geaggregeerd en via DRILL-DOWN wordt deze gedetaillieerder tot een lage hiërarchisch niveau. DDD > Drill-Down = gedetaillieerder 390 maandag 19 oktober 2015 Pagina 41 van 61
42 1067 MDD = Multidimensionale Databases - blz 145 rekentools e MDD's bieden ook veel rekentools en bevatten parameters op gebied van begroting, budget e.d. Andere voordelen zijn beschikbaarheid v gereedschappen voor regressie, forcasting en what-ifanalyses en de mogelijkheden voor verschillende meetwaarden. YTD > Year to date > cumulatief totaal binnen het lopende jaar tot de huidige periode. MAT > Moving Anual Total > totaal over de laatste 12 maanden. MDD heeft specifieke eigenschappen > - spreadsheet look-alike (gebruiksvriendelijk) - goede performance bij onsluiting v grote hoeveelheid gegevens - flexibele analyse mogelijkheden met verschillende invalshoeken - heeft ingebouwde hiërarchieën voor verschillende dimensies, bv tijd - biedt uitgebreide rekenmogelijkheden. NA-VELDEN > NOT AVAILEBLE VELDEN > mogelijkheid om aan te geven welke velden nog actief zijn, dit verbeterd de performance blz a MDD = Multidimensionale Databases - kenmerken informatiestructuurm odel DWH/MDD - informatie die is en wordt vastgelegd is beschikbaar voor analysemogelijkheden. OLAP > OnLine Analytical Processing > Componenten ve OLAP omgeving omvat in relationele servers een laadproces dan bestaat uit hybride componenten en een multidimensionale server. RDBMS > bevatten de brongegevens. RAM > Relationele Access Manager > via RAM worden de gegevens bekend gemaakt binnen het MDBMS. Er zijn 3 architecturen mogelijk voor de implementatie van een OLAP > 1. ROLAP > is een RELATIONELE OLAP > alle gegevens blijven in relationele DB, er worden geen gegevens getransformeerd naar MBBMS. Via RAM SQL-statements wordt de analyse rechtstreeks in de relationele DB uitgevoerd. 2. MOLAP > is een MULTIDIMENSIONALE OLAP > de analyseren gegevens worden overgebracht naar het MDBMS en daar worden ook de analyses uitgevoerd. 3. HOLAP > is een HYBRIDE OLAP > hier maakt men gebruik van een combinatie van ROLAP en MOLAP. De keuze welke ROLAP, MOLAP of HOLAP wordt bepaald door > - omvang vd gegevens - beheersaspecten vd gegevens - omvang vd totaal benodigde aggregaties (hiërarchieën) - mate van gebruikersdistributie - vereiste beveiliging Bij een DWH ligt ook een gegevensmodel aan te grondslag, hier moet rekening worden gehouden met analysedoeleinden, dit kan door denormalisatie en bijbehorende redundantie. 391 maandag 19 oktober 2015 Pagina 42 van 61
43 1069 MDD = Multidimensionale Databases - blz 147 sterschema b 392 STERSCHEMA - is een relationeel ontwerp waarbij men vanuit een centrale tabel, de zgn feitentabel, verwijzigngen zijn naar een of meerdere tabellen, deze laatste zijn de zgn dimensietabellen. De feitentabel omvat het onderwerp waarover de gegevens verzameld worden, staat centraal in de "ster" en is gerelateerd aan de verschillende dimensies. HS.1 Hoofdstuk: 4 Specificatiemodel maandag 19 oktober 2015 Pagina 43 van 61
44 1070 Specificatiemodel - *** blz begrippen en toepassing relationeel model - RELATIE > is de tabel en bestaat uit rijen en kolommen (entiteittype). ATTRIBUUT > is het kenmerk of het de eigenschap die van de relatie wordt vastgelegd. INTENSIE > is de definitie vd relatie en wordt weergegeven door een opsomming van de attribuuttypen. *** is de definitie (zoals je het in het informatiemodel opneemt). EXTENSIE > is de populatie vd relatie op een bepaald moment = dus ALLE MOGELIJKE WAARDEN, cq een opsomming ALLE WAARDEN zoals die in op een bepaald moment in de populatie/database voorkomen. ATTRIBUUTWAARDE > betreft een concrete instantie ve attribuut (veldinhoud). TUPEL > record, is de inhoud van een rij uit de relatie. KARDINALITEIT > betreft het aantal rijen. GRAAD > betreft het aantal kolommen. DOMEIN > is de opsomming v toegestane waarden (of formule) voor een bepaalde kolom, cq de definitie ve attribuut. Kenmerken > - één domein kan voor meerdere kolommen gelden. - niet alle voorkomende waarden in een domein hoeven als actuele waarden in een kolom voor te komen. KANDIDAATSLEUTEL > is het attribuut dat of het kleinst mogelijke samenstelling van attributen binnen de relatie, die uniek zijn. Een kandidaat sleutel kan een primaire sleutel worden, maar hoeft het niet te worden. PRIMAIRE SLEUTEL > is de gekozen kandidaatsleutel. Is het attribuut of de kleinste samenstelling v attributen, die een tupel in de relatie uniek maakt. Wordt onderstreept weegegeven. FUNCTIONELE AFHANKELIJKHEID > houdt in dat de primaire sleutel de waarde bepaald vd overige attributen in de relatie. Een attribuut B is funtioneel afhankelik vd attribuut A als bij elke attribuutwaarde A preciés één attribuutwaarde van B hoort. DETERMINANT > is het attribuut waar andere attributen afhankelijk van zijn (valt onder de functionele afhankelijkheid). ENTITEIT-INTEGRITEITSREGEL > bepaald dat elke relatie een uniek primaire sleutel moet hebben, deze moet altijd een waarde bevatten en mag niet leeg zijn. ALTERNATIEVE SLEUTEL > is een mogelijke sleutel van een relatie die naast de primaire sleutel voorkomt. NULL-WAARDE > betekent dat een attribuut voor een bepaalde tupel geen waarde bevat (leeg). VREEMDE SLEUTEL > is een attribuut of combinatie van attributen uit een relatie die in een andere relatie als primaire sleutel gebruikt. Wordt tussen <...> en onderstreept weergegeven als het een onderdeel ve primaire sleutel is. REFERENTIËLE INTEGRITEIT > bewaakt de relatie tussen de primaire en haar vreemde sleutels, deze mag dus ook niet NULL zijn, cq niet leeg zijn. INTEGRITEIT > is de mate waaraan de DB voldoet aan de gestelde regels zodat het een betrouwbare weergave van de werkelijkheid is. REDUNDANTIE > is een vorm van overtolligheid in de DB doordat dezelfde gegevens op meerdere plaatsen worden bijgehouden of doordat de DB afleidbare gegevens bevat. INCONSISTENTIE > is de situatie waarbij het hetzelfde attirbuut op verschillende plaatsen in de DB verschillende waarden hebben. Dit ontstaat vaak ten gevolge van redundantie, de integriteit van de DB is dan aangetast. 366 maandag 19 oktober 2015 Pagina 44 van 61
45 1071 blz Specificatiemodel - algemene conventies - Eisen die aan een relationeel model worden gesteld > - entiteitsintegriteitsregel - referentiële integriteitsregel - geen 2 rijen zijn identiek - iedere kolom heeft een unieke naam - volgorde vd kolommen en rijen is niet van belang - een gegeven in een kolom moet atomair zijn - domeinregels - afleidingsregels - algemene regels 1072 Specificatiemodel - *** blz update & delete regels - hebben tot doel de referentiële integriteit te bewaken. OWNER > is de primaire sleutel. MEMBER > is een vreemde sleutel. Syntax > 1. ON UPDATE/DELETE Restricted 2. ON UPDATE/DELETE Cascades 3. ON UPDATE/DELETE Nulify ad 1. RESTRICTED (NO ACTION) > is standaard. Een tupel mag niet worden verwijderd of we mogen de primaire sleutel niet wijzigen zolang er nog vreemde sleutels zijn die de waarde vd betreffende primaire sleutel hebben. ad 2. CASCADES > betekent waterval. Is als we een de primaire sleutel wijzigen, de vreemde sleutel die hier ook naar verwijst, ook gewijzigd. Als we een primaire sleutel verwijderen, worden alle tupels/records en de wordt ook de foreign key die naar deze primaire key die hierna verwijzen ook (volledig) verwijderd. ad 3. NULIFY / SET NULL / NULL FILES > hierbij worden alle verwijzigingen in een vreemde sleutel leeggemaakt (NULL) Specificatiemodel - analyse en modellering relationeel model - *** blz normaliseren - Grondlegger ve relationeel model is CODD. NORMALISEREN > is een ongestructureerd model in stappen terugbrengen naar een gestructureerd model. Is een acitivteit die het elimeneren van redundantie tot doel heeft. Op deze manier is het mogelijk een complexe brei aan gegevens systematisch op te splitsen en in seperate tabellen waaruit alle vormen van redundantie geëlimineerd zijn. Elke normalisatiestap levert een resultaat, dit heet een NORMAALVORM. De eerste stap is 1NF, de tweede stap 2NF en de enerlaatste 3e stap 3NF, waarin NF = Normal Form is. De laatste vierde stap noemt men BCNF = Boyce-Codd Normal Form. 1NF > meerwaardige attributen (vector) of samengesteld meerwaardige attributen (**repeating group**) zijn niet toegestaan.*** 1R 2NF > Indien er sprake is van een samengestelde primaire sleutel, mag geen enkel attribuut afhankelijk zijn ve deel vd sleutel in plaats vd gehele sleutel. Transitieve afhankelijkheden zijn niet toegestaan. 2S 3NF > Alle attributen moeten volledig afhankelijk zijn vd sleutel en mogen niet functioneel afhankelijk zijn ve ander attribuut uit de relatie. Maw **transitieve** afhankelijkheden zijn niet toegestaan.*** 3T BCBF > het aantal kandidaatsleutels is gelijk aan het aantal determinanten.*** maandag 19 oktober 2015 Pagina 45 van 61
46 1074 blz Specificatiemodel - analyse en modellering relationeel model - normaliseren - eerste normaalvorm - 1NF - De stappen om tot 1NF te komen is als volgt > 1. inventariseer en benoem de elementaire gegevens 2. verwijder de procesgegevens (afleidbare gegevens) 3. verwijder herhalende groepen 3.1 geef de sleutel aan 3.2 geef herhalende deelverzamelingen aan 3.3 maak een tabel van iedere herhalende deelverzameling 3.4 geef de sleutel aan van iedere tabel 1075 blz Specificatiemodel - analyse en modellering relationeel model - normaliseren - tweede normaal vorm - 2NF - De te volgen stappen zijn hier > 1. geef per tabel de niet-sleutel attributen aan, die niet afhankelijk zijn vd gehele primaire sleutel. 2. maak een aparte tabel aan voor ieder deel van de sleutel, waarvan niet sleutelattributen afhankelijk zijn. 3. neem in iedere tabel op: - het betreffende sleuteldeel - de van dit sleuteldeel afhankelijke attributen 4. verwijder de laatstgenoemde attributen uit de oorspronkelijke tabel 1076 blz Specificatiemodel - analyse en modellering relationeel model - normaliseren - derde normaalvorm - 3NF - De te volgen stappen zijn hier > 1. geef aan welke atrributen functioneel afhankelijk zijn van andere attributen 2. maak een tabel voor elk attribuut, waarvan andere attributen functioneel afhankelijk zijn 3. de sleutel van zo'n tabel wordt het attribuut, waarvan de andere attributen afhankelijk zijn. 4. de afhankelijke attributen worden de overige attributen vd betreffende tabel. 5. verwijder de afhankelijke attributen uit de oorspronkelijke tabel. In het BACHMAN DIAGRAM krijgt iedere tabel een rechthoek met de naam van de tabel erin. Iedere vreemde sleutel wordt weergegeven door een pijl die begint bij de rechthoek van de tabel waar de vreemde sleutel oorspronkelijk instaat en wijst naar de rechthoek met de tabel waarin deze vreemde sleutel als vreemde sleutel is opgenomen. Bijv. in figuur 4.4 in de tabel "Ziekenhuis" is de sleutel het veld "Locatienr" en in tabel "Verpleegkundige" wordt het veld "Locatienr" uit "Ziekenhuis" als vreemde sleutel opgenomen. De namen van de velden zie je in dit diagram niet terug. Alleen de tabellen en de onderlinge relaties van hun vreemde sleutels in deze tabellen. 395 maandag 19 oktober 2015 Pagina 46 van 61
47 1077 blz Specificatiemodel - transformatie vh informatiemodel naar het rationele model regels > - elk entiteittype uit het ERD is een relatie in het relationele model - elk attribuuttype uit het ERD is een attribuut in de relatie - elke N:M relatie uit het ERD is een relatie in het relationele model en er geldt dat bij een 1:N of N:1 relatie uit het ERD wordt een vreemde sleutel toegevoegd aan de relatie. 396 maandag 19 oktober 2015 Pagina 47 van 61
48 1078 Specificatiemodel - blz 177 modellering gedrag is gebaseerd op het principe van triggers EVENT TRIGGERED RULES > als zich een bepaalde situatie voordoet (event), zal als dat aan een bepaalde voorwaarde voldoet (conditie) een bepaalde actie (proces) worden uitgevoerd. ON event IF conditie THEN proces De volgende syntax geldt > - ON event > - pre/post change attribute - pre/post update/insert/delete tupel/query/commit - menu option - IF conditie > - statusvalidatie - vergelijking - THEN proces > - waardetoekenning variabele - procedure/proces/query/commit - controle LET OP > bij On event > CHANGE wordt hier alleen gebruikt bij wijziging van een single attribuut en update bij een wijzigen vh hele record. Bij PRE/POST > hiermee wordt aangegeven of het net na of net voor een bewerking moet gebeuren > - vlak NA > een update, delete of insert van een heel record (tupel) > aanduiden met POST-UPDATE, POST-DELETE, POST-INSERT - vlak VOOR > een update, delete of insert van een heel record (tupel) > aanduiden met PRE-UPDATE, PRE-DELETE, PRE-INSERT - vlak NA of vlak VOOR een verandering van een attribuut > aanduiden met POST-CHANGE, PRE-CHANGE HS.1 Hoofdstuk: 5 SQL-Structured Query Language maandag 19 oktober 2015 Pagina 48 van 61
49 1079 SQL - Structures Query Language - blz 190 begrippen DDL > Definieren ( > Dcm) DCL > Controleren ( > dcm) DML > Manipuleren ( > dcm) DATABASE > is een door een DBMS beheerder geintegreerde verzameling v gegevens, waarbij de structuur vd gegevens aan een aantal specifieke eisen voldoen. TABEL > een verzameling v gelijksoortige rijen van gegevens. VIEW > is een virtuele tabel die de uitkomst laat zien ve select opdracht. DOMAIN > is de verzameling toegestane waarden voor een bepaald gegeven. SCHEMA DEFINITION > beschrijving vd structuur en onderlinge samenhang vd binnen de DB gebruikte tabellen. Schema vormt een logische beschrijving en de DB is de fysieke verschijning. TABLE DEFINITION > een beschrijving vd samenstelling v kolommen ve bepaalde tabel uit het relationele schema. Wordt gemaakt met de opdracht CREATE TABLE. TABLE CONSTRAINT DEFINITION > is de definitie vd voor de gecreëerde tabel en kolommen geldende specifieke eisen. COLUMN DEFINITION > de vastlegging vd specifieke eisen waaraan de gegevens in een bepaalde kolom moeten voldoen. VIEW DEFINITION > is de beschrijving ve bepaalde view, wordt gemaakt met de opdracht CREATE VIEW. HOST LANGUAGE > is een programmeertaal waarmee het mogelijk is door specifieke toegevoegde taalelementen de DB te kunnen benaderen vanuit deze programmeertaal. QUERY LANGUAGE > is een taal waarmee het direct mogelijk is toegang tot de DB te krijgen. kolom: een attribuut in z'n domein rij: een tupel of record object / tabel: een relatie of entiteit selectie: deel van de inhoud van de tabel maandag 19 oktober 2015 Pagina 49 van 61
50 1080 blz a SQL - Structures Query Language - DDL > Definieren ( > Dcm) DCL > Controleren ( > dcm) DML > Manipuleren ( > dcm) DDL = DATA DEFENITION LANGUAGE > deze worden gebruikt bij het aanmaken van een DB, is op beheerdersniveau. Het gaat hier om structureren. De basiscommando's zijn: - CREATE (maken) - DROP (verwijderen) - ALTER (wijzigen) DCL = DATA CONTROL LANGUAGE > hiermee kunnen we de rechten van gebruikers en gebruikersgroepen aanpassen, toekennen en afnemen, is op beheerniveau. Het gaat hier om rechten. De basiscommando's zijn: - GRANT (toestemming geven) - REVOKE (intrekken) Hierbij kun je voor de negatieve benadering kiezen, dat is eerst alles intrekken en dan toekennen wat mag. DML = DATA MANIPULATION LANGUAGE > hiermee kun je gegevens uit de DB opvragen, toevoegen, wijzigen en verwijderen, voor beheerder en gebruiker en gebeurt op record/tupel niveau. Het gaat hier om de inhoud, de gegevens. De basiscommando's/opdrachten zijn: - SELECT (keuze maken) - INSERT (invoegen) - UPDATE (bijwerken/wijzigen) - DELETE (verwijderen) Kunnen met de volgende clausules gebruikt worden: - SELECT (selecteer) - SELECT * (selecteer alle attributen) - FROM (van de DB) - WHERE (waarvoor geldt, bij rijen) - AND (en) - OR (of) - NOT (niet) - DISTINCT (uniek) - GROUP BY (groeperen per attribuut) - HAVING: gebruik je bij een aggregatie met voorwaarden, bijvoorbeeld "geef het aantal onderwerpen per module waarbij het aantal onderwerpen minimaal 4 bedraagt: SELECT code, count(*) FROM onderwerp GROUP BY code HAVING count(*) >= 4; - INSERT INTO (invoegen in) - VALUES (waardes,in combinatie met INSERT INTO) - DELETE FROM (verwijder van) - UPDATE (wijzig) - SET (in combinatie met Update) kolom: een attribuut in z'n domein rij: een tupel of record object / tabel: een relatie of entiteit selectie: deel van de inhoud van de tabel maandag 19 oktober 2015 Pagina 50 van 61
51 1081 blz b SQL - Structures Query Language - DDL - DDL-statements - tabellen maken - Gegevenstypen/domeinen (standaarddomeinen, in de praktijk zijn er veel meer) zijn: - INTEGER: gehele getallen - SMALLINT: kleine gehele getallen - DATE: datum (jaar-maand-dag) - TIME: tijd (hh:mm:ss) - CHAR(n): string met vaste lengte n en moet de totale lengte bij ieder veld gevuld zijn. - VARCHAR(n): string met variable lengte, met max lengte n, hele veld hoeft niet gevuld te zijn. Het commando om een tabel te maken ziet er als volgt uit: CREATE TABLE tabelnaam ( kolomnaam1 domein1 [NOT NULL], [kolomnaam2 domein2 [NOT NULL],] [kolomnaam3 domein3 [NOT NULL],] [kolomnaam4 domein4 [NOT NULL],] [primaire sleutel,] [vreemde sleutel], ) tussen [.] is optioneel. Er moet altijd minimaal 1 kolomnaam in een nieuwe tabel worden aangemaakt. Een primaire sleutel moet altijd een waarde hebben en dit veld moet dus altijd met de optie NOT NULL worden aangemaakt. Een primaire sleutel wordt als volgt gedefinieert, moet altijd direct na de attributen/velden worden geplaatst én mag maar één keer voorkomen: PRIMAIRY KEY (kolomnaamx [, kolomnaamy] ) In dit geval zou het veld met naam: kolomnaamx ook met NOT NULL moeten zijn aangemaakt bij de velden. Als er gebruik wordt gemaakt van een vreemde sleutel moet die ook toegewezen worden, dit gebeurd na de toewijzen van de primairy key, als volgt: FOREIGN KEY (kolomnaamx [, kolomnaamy] ) REFERENCES tabelnaam De tabelnaam is de naam vd tabel waar uit de foreign key komt. De naam van de foreign key hoeft niet gelijk te zijn aan de naam die die heeft in de tabel van waar hij uit komt. Door het definiëren ve vreemde sleutel implementeren we de referentiële integriteitsregels. Indien met vreemde sleutels gewerkt wordt, moet natuurlijk eerst de tabel aangemaakt zijn waar de vreemde sleutel uit komt, voordat je de tabel met de koppeling naar die vreemde sleutel aanmaakt. Men kan niets koppelen als het nog niet bestaat. Hier een voorbeeld met een samengestelde vreemde sleutel: CREATE TABLE exameneis ( code VARCHAR(6) NOT NULL, CHECK (CODE IN 'a', 'b', 'c') naam VARCHAR (50) UNIQUE, eisnr SMALLINT NOT NULL, eisomschrijving VARCHAR(50), ISBN CHAR(20), PRIMAIRY KEY (code, nummer, eisnr), FOREIGN KEY (code, nummer) REFERENCES onderwerp, FOREIGN KEY (ISBN) REFERENCES Literatuur ON UPDATE CASCADES ON DELETE NULLIFYING) CHECK > De toevoeging CHECK zorgt ervoor dat alleen de waarden tussen de haakjes mogen worden gebruikt. UNIQUE > deze toevoeging wordt gebruikt bij een alternatieve sleutel waarbij de waarde maandag 19 oktober 2015 Pagina 51 van 61
52 397 uniek moet blijven blz c SQL - Structures Query Language - DDL - tabellen verwijderen - Dat kan met het commando: DROP TABLE tabelnaam Hiermee wordt de tabel volledig inclusief inhoud, definitief verwijderd. De volgorde van verwijderen is van belang als er vreemde sleutels in de tabel zitten blz d SQL - Structures Query Language - DDL - tabellen wijzigen - Kan met het commando: ALTER TABLE tabelnaam daarna komt de regel waarin we de verandering aangeven, bv: ALTER TABLE module RENAME tijd examentijd Hiermee veranderen we bv de kolomnaam tijd naar examentijd. ALTER TABLE tabelnaam ADD kolomnaam gegevenstype Hiermee voegen we een kolom toe aan de tabel ALTER TABLE tabelnaam MODIFY kolomnaam gegeventype Hiermee veranderen we een kolom binnen de tabel. maandag 19 oktober 2015 Pagina 52 van 61
53 1084 blz 195 index e SQL - Structures Query Language - DDL - Nadat een DB is gemaakt, is het vaak gewenst om indexen aan de DB toe te voegen, dit verbetert de performance. Door toepassen ve index hoeven niet alle rijen doorlopen worden aan de hand ve waarde voor een kolom. Keuze is oplopen of aflopend. Bv CREATE [UNIQUE] INDEX indexnaam ON tabelnaam (kolomnaam_1 [ASC DESC]) UNIQUE zorgt ervoor dat er geen dubbele waarde in de index komen. Het DBMS bepaald zelf wanneer er gebruik wordt gemaakt vd index blz f SQL - Structures Query Language - DDL - view - BASE-TABLE > is een table die met CREATE is aangemaakt. VIEW > is een virtuele tabel welke is samengesteld uit zogenaamde base-tables met als doel de gebruiker informatie te verschaffen uit een subset vd database. Opdracht om een view te maken wordt: CREATE VIEW naamview [kolomnaam1, kolomnaam2] AS (SELECT * FROM tabelnaam WHERE vergelijking) Opdracht om een view te verwijderen wordt: DROP VIEW naamview maandag 19 oktober 2015 Pagina 53 van 61
54 1086 blz SQL - Structures Query Language - DCL - DCL = data Control language - DCL = DATA CONTROL LANGUAGE > hiermee kunnen we de rechten van gebruikers en gebruikersgroepen aanpassen, toekennen en afnemen, is op beheerniveau. Het gaat hier om rechten. De basiscommando's zijn: - GRANT (toestemming geven) - REVOKE (intrekken) Hierbij kun je voor de negatieve benadering kiezen, dat is eerst alles intrekken en dan toekennen wat mag. De autorisatie wordt ook al in de praktijk vaak afgedwongen door de applicatie/programma dat van de database gebruik maakt. We kunnen de autorisatie per gebruikers groep of per gebruiker bepalen, voor iedereen te gelijk doet men dat met (PUBLIC). AUTORISEREN toestaan doen we met de opdracht: GRANT wat1 [,wat2].on tabel1 [, tabel2]. TO wie1 [, wie2]. Een voorbeeld van iederen laten selecteren en wijzigen is dus: GRANT SELECT, UPDATE ON tabel1 TO PUBLIC AUTORISEREN intrekken doen we met de opdracht: REVOKE wat1 [,wat2].on tabel1 [, tabel2]. FROM wie1 [, wie2]. Een voorbeeld van iederen laten intrekken is dus: REVOKE SELECT, UPDATE ON tabel1 FROM PUBLIC Sequentie bij autorisatie: - negatieve benadering > eerst alles revoken en daarna onderdelen toestaan (voorkeur). - positieve benadering > eerst alles toestaan en wat niet mag daarna revoken. Bij autorisatie, met name als je GRANT en REVOKE opdrachten door elkaar gebruikt is de volgorde van de commando's van cruciaal belang. Het DBMS voert de opdrachten in volgorde na elkaar uit, en als de volgorde niet juist is, kan het zijn dat bepaalde opdrachten door vervolgopdrachten weer teniet gedaan worden. OPDRACHTEN: - GRANT (toekennen) - REVOKE (afnemen) CLAUSULES (rechten die je kunt toekennen of afnemen): - SELECT (select opdracht uitvoeren) - UPDATE (aanpassen tupel/gebruiker mag kolommen en rijen aanpassen en kolommen definieren) - INSERT (invoegen tupel op tabel/men mag rijen toevoegen) - DELETE (verwijderen tupel/gebruiker mag rijen cq tupels cq records verwijderen) - ALTER (wijzigen tabel/structuur wijzigen, kolommen toevoegen, hernoemen en vewijderen) - ALL (alle rechten) * ON (op de tabel..) * TO (aan de persoon...bij GRANT) * FROM (van de persoon.. bij REVOKE) PUBLIC: algemeen aan iedereen rechten tegelijk toekennen kan met PUBLIC. GRANT {SELECT INSERT DELETE UPDATE [kolomnaam]? INDEX ALTER ALL } ON tabelnaam TO {PUBLIC gebruikernaam? } REVOKE {SELECT INSERT DELETE UPDATE INDEX ALTER ALL } ON tabelnaam FROM {PUBLIC gebruikernaam? }. maandag 19 oktober 2015 Pagina 54 van 61
55 1087 blz 198 SELECT - 5.2a SQL - Structures Query Language - DML - DML = DATA MANIPULATION LANGUAGE > hiermee kun je gegevens uit de DB opvragen, toevoegen, wijzigen en verwijderen, voor beheerder en gebruiker en gebeurt op record/tupel niveau. Het gaat hier om de inhoud, de gegevens. Een van de basiscommando's is: - SELECT (keuze maken) / opvragen gegevens uit de DB enkele voorbeelden van het gebruik van select: SELECT kololmnaam1 [, kolomnaam2].. FROM tabelnaam [WHERE] vrw1 [AND/OR] vrw2] SELECT * FROM tabelnaam SELECT DISTINCT kololmnaam1 FROM tabelnaam DISTINCT > zorgt ervoor dat de DB alleen maar rijen vertoont waarvan de inhoud nog niet is weergeven. Een rij moet volledig gelijk zijn aan een andere rij voordat deze wordt overgeslagen. Clausules / voorwaarden toevoegen doen we als volgt: SELECT kololmnaam1 [, kolomnaam2].. FROM tabelnaam WHERE (voorwaarde1 AND voorwaarde2) of: SELECT kololmnaam1 [, kolomnaam2].. FROM tabelnaam WHERE (voorwaarde1 OR voorwaarde2) bij de WHERE-clausule vergelijken we in de voorwaarden met OPERATORS, hiervan kennen we de volgende soorten: > groter dan < kleiner dan = gelijk aan >= groter dan of gelijk aan <= kleiner dan of gelijk aan <> ongelijk aan AND / OR / NOT > boolean-operatoren BETWEEN-operator IN alle waarden die in een lijst genoemd wordt. NOT IN niet in subquery met [NOT] IN: gebruik je bijvoorbeeld bij de vraag :geef een overzicht van alle docenten die geen modules onderwijzen. Dit kun je niet in één query defineeren, dus moet je subquery maken: SELECT naam FROM docent WHERE nummer NOT IN (SELECT nummer FROM docentmodule); LIKE bv "Er%" is alles weergeven dat begint met "Er" % is een wildcard voor een of meerdere tekens NULL - operator Technisch gezien opent het systeem de tabellen achter FROM, dan wordt er rij voor rij gekeken of deze aan de voorwaarden van de WHERE clausule voldoen, als dat zo is worden ze getoond en anders niet. Voor de duidelijkheid mag men ronde haken plaatsen We kunnen met select ook gegevens uit meerdere tabellen tegelijk opvragen. Deze tabellen kunnen we ook een alias geven (bijnaam voor het gemak), dat doe je door achter de tabelnaam minimaal één spatie te zetten en dan de aliasnaam op te geven. Bijv: SELECT t1.veldtb1, t1.veldtb2, t2.veldtb1, t2.veldtb2 FROM tabel1 t1 tabel2 t2 WHERE t1.veldtb1 = t2.veldtb2 AND t2.veldtb1 = t1.veldtb2 Eerst wordt bij where gekeken of een record meetelt en daarna wordt gekeken welke velden er in het resultaat moeten staan. SELECT {[tabelnaam.]* {[tabelnaam.]kolomnaam1 [,functie1] berekening} [[tabelnaam.]kolomnaam2 [,functie2] berekening]?} FROM tabelnaam1 [alias] [, tabelnaam2 [alias]}? maandag 19 oktober 2015 Pagina 55 van 61
56 [WHERE-clausule] [GROUP BY [tabelnaam.]kolomnaam1 [, [tabelnaam2 ] ] ] [HAVING functievoorwaarde1 [{AND OR} functievoorwaarde2 ] ] ] [WHERE voorwaarde1 [ {AND OR} voorwaarde2 ]?] Voorwaarde {{constante berekening [tabelnaam.]kolomnaam} {= > < >= <= <>} {{constante berekening [tabelnaam.]kolomnaam (subquery1)} [tabelnaam.]kolomnaam {IS [NOT] NULL [NOT] IN (subquery2) [NOT] EXISTS subquery3) } functievoorwaarde {functie constante } {= > < >= <= <>} {functie constante } 1088 blz b SQL - Structures Query Language - DML - JOIN en ALIAS - In een JOIN zijn betrokken tabellen op een zodanige manier samen gevoegd dat de gegevens met elkaar verband houden en de niet relevante rijen zijn weggelaten. Het gaat dus om een koppeling tussen twee tabellen aan de hand van een primaire en vreemde sleutel. Voor een JOIN is van belang dat > - bij de SELECT en/of de FROM worden de betrokken tabellen en kolommen genoemd. - bij de WHERE wordt de koppeling gelegd door de sleuteld te vergelijken. - tabelnaam en kolomnaam moeten als volgt benoemd worden en gescheiden worden door een punt > tabelnaam.kolomnaam We kunnen met select ook gegevens uit meerdere tabellen tegelijk opvragen. Deze tabellen kunnen we ook een alias geven (bijnaam voor het gemak), dat doe je door achter de tabelnaam minimaal één spatie te zetten en dan de aliasnaam op te geven. Bijv: SELECT t1.veldtb1, t1.veldtb2, t2.veldtb1, t2.veldtb2 FROM tabel1 t1 tabel2 t2 WHERE t1.veldtb1 = t2.veldtb2 AND t2.veldtb1 = t1.veldtb2 maandag 19 oktober 2015 Pagina 56 van 61
57 1089 blz c SQL - Structures Query Language - DML - aggregatie en GROUP BY - Als we een query willen maken die iets zegt over de verzameling. Worden gebruikt bij het SELECT commando. AGGREGATIES zijn: - SUM > optellen/totaaltelling > werkt alleen bij numeriek velden - AVG > gemiddelde weergeven > werkt alleen bij numeriek velden - MAX > hoogste waarde weergeven > werkt alleen bij numeriek velden - MIN > laagste waarde weergeven > werkt alleen bij numeriek velden - COUNT > aantal records die voldoen tellen > deze kan altijd gebruikt worden (enige) kan als COUNT(*) of als COUNT(kolomnaam) gebruikt worden. GROUP BY Als we, bij gebruik van aggregaties de geselecteerde gegevens willen groeperen moeten we dit aangeven, dat kan bijvoorbeeld als volgt: SELECT veld1, AVG(veld2) FROM tabel1 GROUP BY veld1 Stelregel is dat niet alle geaggregeerde velden verplicht in een GROUP BY voorkomen. Als we het aantal records willen tellen doen we dat als volgt: SELECT COUNT(*) FROM tabel1 of als het gebruikt moet worden met group by.. SELECT COUNT(*) FROM tabel1 GROUP BY veld3 >> er wordt hier gegroepeerd op veld3 en aangegeven hoeveel records hier tot diezelfde groep horen. GROUP BY. HAVING Bij GROUP BY kunnen we ook HAVING gebruiken en een voorwaarde stellen wat er gegroepeerd moet worden. Bijv: SELECT veld1, COUNT(*) FROM tabel1 GROUP BY veld1 HAVING count(*)>=4 >> Hier worden alleen het aantal records per groep weergegeven als dat aantal groter of gelijk is aan 4. Bij GROUP BY gebruiken we altijd de clausule HAVING voor de voorwaarde in de query en niet de clusule WHERE. maandag 19 oktober 2015 Pagina 57 van 61
58 1090 SQL - Structures Query Language - DML - blz 205 subqueries - 5.2d In een query kun je ook nog een of meerdere subqueries zetten. De subquery wordt als eerste uitgevoerd. De sub-query komt vaak voor als we een vraag stellen met een ontkenning ve primairevreemde sleutel relatie. Sub-queries bouwen we in twee fasen. We maken eerste de subquery en daarna de hoofdquery. Bijvoorbeeld: SELECT veld1 [, veld2].. FROM tabel1 WHERE veld1 NOT IN (SELECT veld3 FROM tabel2) met een subquery maken we een tijdelijke tabel aan met de gewenste resultaten, de query haalt dan weer zijn resultaten uit die tijdelijke tabel. Bij WHERE IN.. Moeten ze wel in de tijdelijke tabel staan en bij WHERE..NOT IN niet. Echter als we in een subquery het gelijk aan (=) teken gebruiken mag het resultaat van die query maar een record opleveren. Binnen een subquery mag geen ORDER BY gebruikt worden. Een selectcomponent van een subquery mag maar één kolomexpressie bevatten, waarbij het datatype moet overeenkomen met datatype vd voorwaarde vd query. De uitkomst ve subquery is bepalend voor het gebruik v operatoren, als > - de uitkomst vd query een tabel is, kan [NOT] IN gebruikt worden. - de uitkomst één numerieke waarde is, kunnen vergelijkings-operatoren worden gebruikt. - niet de uitkomst maar het resultaat van belang is, kan {NOT} EXISTS worden gebruikt. Voordeel ve subquery ipv een JOIN, is dat er bij de suquery minder rijen vergeleken hoeven te worden. Nadeel, alleen kolommen vd buitenste query kunnen in de uitvoer worden opgenomen. maandag 19 oktober 2015 Pagina 58 van 61
59 1091 blz e SQL - Structures Query Language - DML - EXISTS en gecorreleerde subqueries - EXISTS > is een logische operator die de waarden "waar" of "niet waar" kan aannemen welke wordt gebaseerd op de aanwezigheid van uitvoer bij een subquery. Als de subquery een of meer rijen opleverd is EXISTS waar en worden gegevens uit de hoofdquery getoond. Wordt meestal gebruikt om te bepalen of er voor een bepaald object een bepaalde eigenschap voorkomt of niet. Is alleen zinvol in gebruik met gecorreleerde subquery's. Wordt vaak gebruikt in combinatie met de operator NOT. Het is toegestaan een * als asterisk te gebruiken als de enige taak is het kijken of er wel of geen uitvoer is en niet van belang is welke. Het is niet toegestaan in een subuery achter de EXISTS een verzamelfunctie te gebruiken. Bv: SELECT DISCTINCT levplaats FROM zorgaanbieder buiten WHERE EXISTS (SELECT * FROM zorgaanbieder binnen WHERE binnen.levplaats = buiten.levplaats AND binnen.levnr <> buiten.levnr) Deze toont de plaatsen met meerder zorgaanbieders. Bij een GECORRELEERDE SUBQUERY wordt in de subquery verwezen naar een kolom uit de buitenste query. Deze kan dan dus niet uitgevoerd worden, echter dan wordt eerst de eerste regel uit de buitenste qeury verwerkt, deze wordt meegenomen naar de subquery en dan daar uitgevoerd. Daarna wordt de output vd subquery weer in de buitenste query geëvalueerd, dit wordt voor alle records herhaald. MAW Per regel vd hoofdquery wordt de subquery uitgevoerd en daardoor kan per regel een verschillend resultaat ontstaan. Bv: SELECT * FROM zorgaanbieder WHERE IN (SELECT adatum FROM afname WHERE zorgaanbieder.levnr = afname.levnr) Deze query geeft een overzicht van alle zorgaanbieders waarbij op iets besteld is. De gecorrelleerde subquery DIENT ALTIJD te worden gebruikt in situaties waarbij sprake is van vergelijkingen tussen objecten (verzamelingen) waarbij voor de vraagstelling geldt > - net zoveel / evenveel; - meer dan; - minstens. Deze zijn namelijk alleen op te lossen mbv een gecorreleerde subquery en deze heeft altijd het volgende formaat > SELECT WHERE NOT EXISTS. (SELECT.. WHERE NOT IN.. (SELECT..)) maandag 19 oktober 2015 Pagina 59 van 61
60 1092 blz f SQL - Structures Query Language - DML - groeps-groeps vergelijkingen - Bij GROEPS-GROEPS VERGELIJKINGEN worden verschillende verzamelingen met elkaar vergeleken op overeenkomsten. De bovenste subquery dient dan altijd de deelverzameling of groep vd beschouwde verzameling te bevatten (verzameling met de eigenschappen waarvan moet gelden dat ze allemaal moeten voorkomen als de eigenschap in de groep vd onderste subquery). De onderste subquery dient altijd de beschouwde verzamling of groep te bevatten. De plek vd correlatie kan zowel de bovenste als de onderste query zijn. Dit is afhankelijk van de waarde die dienst te variëren per uitkomst. Bv: SELECT * FROM tentamen WHERE NOT EXISTS (SELECT * FROM resultaat WHERE datum = "13 mei 2006" AND vakcode = "A13" AND cusistnr NOT IN (SELECT cursistnr FROM resultaat WHERE tentamen.datum = resultaat.datum AND tentamen.vakcode = resultaat.vakcode)) Een nadere beschouwing leer hier dat de deelverzameling na de NOT EXISTS volgt en de hoofdverzamleing na de NOT IN. De correlatie is opgenomen in de onderste subquery. De uitkomst is de verzameling cursisten die hebben deelgenomen aan het tentamen A13 van 13 mei blz a SQL - Structures Query Language - DML - INSERT TO - DML = DATA MANIPULATION LANGUAGE > hiermee kun je gegevens uit de DB opvragen, toevoegen, wijzigen en verwijderen, voor beheerder en gebruiker en gebeurt op record/tupel niveau. Het gaat hier om de inhoud, de gegevens. De basiscommando's zijn: - INSERT (invoegen)/ toevoegen gegevens in de DB Toevoegen van rijen doen we met > INSERT INTO tabelnaam (kolom(men)) VALUES (waarden) Als we alle kolommen willen vullen is het niet nodig om de kolommen allemaal te benoemen, de tabelnaam is voldoende met de opgave van de waarden. BV: INSERT INTO tabel VALUES ("tekst1", 10, "Tekst2") Er komt met het commando insert altijd een nieuwe rij/nieuw record in de DB. INSERT INTO tabelnaam [ (kolomnaam1 [.kolomnaam2]) ] {VALUES (waarde1 [,waarde2]..) query } 1095 blz b SQL - Structures Query Language - DML - DELETE - DML = DATA MANIPULATION LANGUAGE > hiermee kun je gegevens uit de DB opvragen, toevoegen, wijzigen en verwijderen, voor beheerder en gebruiker en gebeurt op record/tupel niveau. Het gaat hier om de inhoud, de gegevens. Een van de basiscommando's is: - DELETE (verwijderen) Met het commando DELETE verwijderen we records/rijen uit de tabel. Dit gaat als volgt: DELETE FROM tabel Deze opdracht verwijdert alle rijen die er zijn. Als we maar een aantal rijen willen verwijderen die aan een bepaalde voorwaarde voldoen kan dit weer met WHERE, bv: DELETE FROM tabel WHERE veld1=x DELETE FROM tabelnaam [WHERE-clausule] maandag 19 oktober 2015 Pagina 60 van 61
61 1095 SQL - Structures Query Language - DML - blz 211 UPDATE c DML = DATA MANIPULATION LANGUAGE > hiermee kun je gegevens uit de DB opvragen, toevoegen, wijzigen en verwijderen, voor beheerder en gebruiker en gebeurt op record/tupel niveau. Het gaat hier om de inhoud, de gegevens. Een van de basiscommando's is: - UPDATE (bijwerken) Met het commando UPDATE kunnen we gegevens bijwerken in de tabel. Dit gaat als volgt: UPDATE tabel SET veld1 = waarde Ook hier kunnen we weer voorwaarden toevoegen met WHERE, bv: UPDATE tabel SET veld1 = waarde1 WHERE veld2=waarde2 HS.1 Hoofdstuk: 9 Overige Info 1096 Diversen - *** blz Kan een samengesteld attribiittype multivalued zijn? JA - Kan een multivalued attribiittype samengesteld zijn? JA - Een hele rij is een tupel (record) - examen > 21C en 29E 389 INFORMATIE > de kennis die dmv informatiesystemen overgedragen wordt. GEGEVENS > de weergave van die kennis. maandag 19 oktober 2015 Pagina 61 van 61
Structured Information Analysis Advanced
Structured Information Analysis Advanced SIAA Arie Bubberman 12/10/2009 Inhoudsopgave Analyse in het ontwikkelproces... 4 Aspecten van informatieanalyse... 4 Bedrijfsgerichte analyseactiviteiten... 4 Bedrijfsactiviteiten
DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING
DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING Inleiding In dit whitepaper wordt de datamodelleervorm ArchiMate data- & applicatiemodellering beschreven. Deze modelleervorm staat in verhouding
Project Fasering Documentatie Applicatie Ontwikkelaar
Project Fasering Documentatie Applicatie Ontwikkelaar Auteurs: Erik Seldenthuis Aminah Balfaqih Datum: 31 Januari 2011 Kerntaak 1 Ontwerpen van applicaties De volgordelijke plaats van de documenten binnen
Ontwikkelmethoden en technieken DSDM POMT HC3
DSDM Ontwikkelmethoden en technieken DSDM POMT HC3 HC WG rollenspel praktijktoets 1 praktijktoets 2 praktijktoets 3 Mei week 1 week 2 week 3 Week 4 vakantie Inleiding Ontwikkel methodiek DSDM Technieken
RAD Rapid application development. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
RAD Rapid application development Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER...
Checklist basisontwerp SDM II
Organisatie SYSQA B.V. Pagina 1 van 5 Checklist basisontwerp SDM II Documentatie. Zijn de uitgangspunten voor het basisontwerp Is een plan van aanpak Zijn er wijzigingen op het Software Quality Assurance
voorbeeldexamen I-Tracks voorbeeldexamen ISDDF Information Systems Design and Development Foundation uitgave april 2005
voorbeeldexamen Information Systems Design and Development Foundation I-Tracks voorbeeldexamen ISDDF Information Systems Design and Development Foundation uitgave april 2005 inhoud 3 inleiding 4 voorbeeldexamen
DATAMODELLERING ARCHIMATE DATAMODELLERING
DATAMODELLERING ARCHIMATE DATAMODELLERING Inleiding In dit whitepaper wordt de datamodelleervorm ArchiMate datamodellering beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
Functioneel ontwerp. Een introductie. Algemene informative voor medewerkers van SYSQA B.V. Almere
Functioneel ontwerp Een introductie Algemene informative voor medewerkers van SYSQA B.V. Almere Organisatie SYSQA B.V. Pagina 2 van 9 Inhoudsopgave 1 Inleiding... 3 1.1 Algemeen... 3 2 Inleiding... 4 2.1
Opleiding SQL / Systeemanalyse IBK ERD. Hogeschool Rotterdam
Opleiding SQL / Systeemanalyse IBK ERD Hogeschool Rotterdam ERD ERD = Entity Relationship diagram is een model of diagram voor het inzichtelijk te maken van een conceptueel datamodel. Het is een visuele
DATAMODELLERING BASIS UML KLASSEMODEL
DATAMODELLERING BASIS UML KLASSEMODEL Inleiding In dit whitepaper wordt de datamodelleervorm basis UML klassemodel beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
Ontwikkelaar ICT. Context. Doel
Ontwikkelaar ICT Doel Ontwikkelen en ontwerpen van ICT-producten, binnen overeen te komen dan wel in een projectplan vastgelegde afspraken ten aanzien van tijd, budget en kwaliteit, opdat overeenkomstig
VAN USE CASE NAAR TEST CASE ORDINA SMART COMPETENCE CENTER
VAN USE CASE NAAR TEST CASE ORDINA SMART COMPETENCE CENTER Sander Hoogendoorn Versie 1.0 15 april 2002 Documentbeheer Versie Datum Auteur Omschrijving 0.1 15 April 2002 Sander Hoogendoorn 0.2 15 april
Data Governance van visie naar implementatie
make connections share ideas be inspired Data Governance van visie naar implementatie Frank Dietvorst (PW Consulting) deelprogrammamanager Caesar - Vernieuwing Applicatie Landschap Leendert Paape (SAS
Ontwikkelen en testen van e-business: beheerste dynamiek
Ontwikkelen en testen van e-business: beheerste dynamiek Het ontwikkelen en gestructureerd testen van administratieve systemen is gebaseerd het watervalprincipe. Bij het ontwikkelen volgens het watervalprincipe
Functiepuntanalyse. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V.
Functiepuntanalyse Een introductie Algemene informatie voor medewerkers van: SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 8 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER... 3 2 WAT
Tips & Tricks: Tip van de maand januari 2009
Tips & Tricks: Tip van de maand januari 2009 Project Management met Teamcenter 2007 Door: Ramon van Raak Beheert u complexe projecten dan weet u als geen ander dat de projectvoorbereiding de basis legt
Inleiding ontwikkelmethoden
Inleiding ontwikkelmethoden 1 Ontwikkelmethoden en Technieken POMT HC1 2 Ronald de Waal Opleiding TU Delft: industrieel ontwerpen Diverse softwarebedrijven, internet ontwerp vanaf 1994 Docent systeemontwikkeling
DATAMODELLERING DATA MAPPING MODEL
DATAMODELLERING DATA MAPPING MODEL Inleiding In dit whitepaper wordt de datamodelleervorm data mapping model beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil
Agile in Projecten minimalisme of strak pak? Richard Weber PMP
Agile in Projecten minimalisme of strak pak? Richard Weber PMP De Spreker Richard Weber Directeur & oprichter Adviseur & coach Projectmanagement Profile Dynamics ICT & Bedrijfskundige achtergrond Trainer
SDM II - System Development Methodology II. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
SDM II - System Development Methodology II Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 12 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2
DATAMODELLERING BEGRIPPENBOOM
DATAMODELLERING BEGRIPPENBOOM Inleiding In dit whitepaper wordt de datamodelleervorm begrippenboom inclusief de begrippenlijst beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
IV SDM - FASE 2 BASISONTWERP
IV SDM - FASE 2 BASISONTWERP IV.1 Inleiding Zoals reeds besproken onderkent het in Nederland veel gebruikte SDM II (System Development Methodology, versie II), bij de bouw van informatiesystemen de volgende
Archimate risico extensies modelleren
Archimate risico extensies modelleren Notatiewijzen van risico analyses op basis van checklists versie 0.2 Bert Dingemans 1 Inleiding Risico s zijn een extra dimensie bij het uitwerken van een architectuur.
Rapportage Pizzasessie Functioneel-beheer.com Specialisten Managers Adviseurs Algemeen functioneel beheer applicatiebeheer informatiemanagement
Rapportage Pizzasessie Functioneel-beheer.com Alle deelnemers hebben hun functienaam opgegeven. De volgende functienamen zijn gemeld: Specialisten o Functioneel beheerder (9x) o Functioneel applicatiebeheerder
Samenvatting Informatica Module 6 & 7
Samenvatting Informatica Module 6 & 7 Samenvatting door een scholier 2111 woorden 4 november 2011 6,8 43 keer beoordeeld Vak Methode Informatica Fundament Informatica Module 6 H1 Projectmanagement Een
Canonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans
Canonieke Data Modellering op basis van ArchiMate Canonieke Data Modellering op basis van Archimate Bert Dingemans Abstract Modelleren op basis van de open standard ArchiMate is een goed uitgangspunt voor
voorbeeldexamen Information Systems Foundation
voorbeeldexamen Information Systems Foundation I-Tracks voorbeeldexamen ISyF Information Systems Foundation uitgave oktober 2003 inhoud 3 inleiding 4 examenvragen 11 antwoordindicatie eerste uitgave oktober
DATAMODELLERING SIPOC
DATAMODELLERING SIPOC Inleiding In dit whitepaper wordt de datamodelleervorm Sipoc beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld krijgen van
ICT Beheermodel informatiesystemen Drechtsteden Baseline inrichting ICT beheermodel Drechtsteden
Drechtsteden Technische Architectuur (DTA) ICT Beheermodel informatiesystemen Drechtsteden Baseline inrichting ICT beheermodel Drechtsteden Status : Definitief 1.0 Redactie : DTA Datum : 29-08-2007 1 Versiebeheer
voorbeeldexamen I-Tracks Project Participation Foundation (PPF) voorbeeldexamen PPF uitgave oktober 2007
voorbeeldexamen Project Participation Foundation (PPF) I-Tracks Project Participation Foundation (PPF) voorbeeldexamen PPF uitgave oktober 2007 Inhoud inleiding 2 voorbeeldexamen 3 antwoordindicatie 12
Het belang van. Data Modellering. GEMINIT Training. Data Modellering. Frédéric BARBIER
Het belang van Data Modellering Studiedag Informatiemanagement Politeia, 22 februari 2013, Gent Open data en de cloud: een revolutie in de informatiehuishouding van de overheid Training Data Modellering
Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil
Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil eagileagileagileagileagileagileagileagi leagileagileagileagileagileagileagileag
Ant: B Dit is het doel van het proces.
In welk proces vormt het voor aanpassingen in de informatievoorziening beschikbaar gestelde budget een mandaat voor besluitvorming? A: Contractmanagement B: Financieel management C: Transitie D: Wijzigingenbeheer
Informatiemanager. Doel. Context
Informatiemanager Doel Ontwikkelen, in stand houden, evalueren, aanpassen en regisseren van het informatiemanagement, de digitale informatievoorziening en de ICT-facilitering van de instelling en/of de
Eigenschappen van moderne ontwikkelmodellen
overdruk informatie september 00 Eigenschappen van moderne ontwikkelmodellen Vier modellen vergeleken Auteurs: Danny Greefhorst en Mark van Elswijk informatie overdruk1 1 Eigenschappen van moderne ontwikkelmodellen
De beheerrisico s van architectuur
De beheerrisico s van architectuur Een overzicht van de ArChimate Risico Extensie versie 0.2 Bert Dingemans Inleiding Het implementeren van een (enterprise) architectuur brengt altijd risico s met zich
Examen ISyF Information Systems Foundation
Examen ISyF Information Systems Foundation Publicatiedatum Startdatum 1 september 2006 1 juli 2003 Doelgroep Information Systems Foundation richt zich op starters in de IT. De module richt zich op mensen
Model-based Application Development
Model-based Application Development Model Driven Development Modelleren en genereren van informatiesystemen Kees Kranenburg, Ad van Riel Syllabus voor studenten Uitgave 2007 Inhoud Ten geleide...4 1 MAD:
Releases en change-management bij maatwerkapplicaties
Releases en change-management bij maatwerkapplicaties door Wim - 01-26-2011 http://www.itpedia.nl/2011/01/26/releases-en-change-management-bij-maatwerk-applicaties/ Op grote maatwerk informatiesystemen
DATAMODELLERING DATA FLOW DIAGRAM
DATAMODELLERING DATA FLOW DIAGRAM Inleiding In dit whitepaper wordt de datamodelleervorm data flow diagram beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil
Tools voor canonieke datamodellering Bert Dingemans
Tools voor canonieke datamodellering Tools voor canonieke datamodellering Bert Dingemans Abstract Canonieke modellen worden al snel omvangrijk en complex te beheren. Dit whitepaper beschrijft een werkwijze
Cursus Analyse voor Web Applicaties 1. Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML
Cursus Analyse voor Web Applicaties 1 Organisatie Opleiding Module Onderwerp Syntra AB Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML Analyse op basis van SDM en UML
Applicatie Architectuur en ICT-Infrastructuur
Applicatie Architectuur en ICT-Infrastructuur ISBN 978 90 72446 17 6 2010 Uitgeverij Het Glazen Oog Over de uitgave van dit document 2 Deze uitgave Dit document is een digitale versie van een hoofdstuk
Beheerste transformatie met behulp van Enterprise Architectuur
René van der Reijden Business Architect Pensioenfonds Horeca & Catering Beheerste transformatie met behulp van Enterprise Architectuur Voortdurend in verandering Economische Sociale Ontwikkelingen Politieke
SmartScrum: Agile én duurzaam
SmartScrum: Agile én duurzaam SmartScrum: slimmer, sneller, goedkoper! 20% tot 30% snellere time-to-market 20% tot 30% kostenbesparing 100% voorspelbaar 100% duurzaam 100% begrijpelijk PNA Group lanceert
HERGEBRUIK VAN REQUIREMENTS
HERGEBRUIK VAN REQUIREMENTS EEN PRAKTISCHE AANPAK BUSINESS ANALYSE CENTER OF EXCELLENCE - SYNERGIO Inhoudsopgave 1 HERGEBRUIK VAN REQUIREMENTS... 3 1.1 GEBRUIKEN VERSUS HERGEBRUIKEN... 4 2 STRATEGIE...
Ontwerp. <naam applicatie>
Ontwerp Datum Auteur Versie Telefoon Pagina: 0 Inhoudsopgave 1. MANAGEMENT SUMMARY... 1 2. INLEIDING... 1 2.1. DOEL... 1 2.2. STRUCTUUR... 1 2.3. ACHTERGROND... 1 2.4. REVISIE-GESCHIEDENIS...
Richtlijnen voor het ontwerpen een Intranetportal Door Bas Fockens
Richtlijnen voor het ontwerpen een Intranetportal Door Bas Fockens Copyright Datacon www.datacon.nl Wat is een intranetportal? Een intranet is een online gepersonaliseerde en geïntegreerde toegang tot
Ontwikkelmethoden en technieken. Ontwikkelmethoden & Technieken HC 2
Ontwikkelmethoden en technieken 1 Vandaag Een kleine geschiedenis (vervolg) Klein stukje XP Afbakening verwachtingen 2 Werkwijze theorie Lesstof Presentaties Boek Aantekeningen Introductie/overzicht Week
Scrum. Een introductie
Organisatie SYSQA B.V. Pagina 1 van 10 Scrum Een introductie Almere 1999 Proud of it Pagina 1 van 10 Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1 Inleiding... 3 2 Scrum... 4 3 Scrum rollen...
ARE methodiek Het ontwikkelen van Informatie Elementen
ARE methodiek Het ontwikkelen van Informatie Elementen WI1: Het opstarten van het project Milestone 1 WI2: Ontwikkel een Vison WI3: Modelleer het Business Domain WI4: Creëer een Glossary WI7: Beheer wijzigingen
Wie doet wat? 30-5-2013. Gebruik en beheer van applicaties. Een kader VHIC VHIC. Pagina 1. Pagina 2
Gebruik en beheer van applicaties Wie doet wat? Pagina 1 Een kader Pagina 2 Bron: daanrijsenbrij, Elementaire bedrijfsinformatica 1 Functioneel beheer Applicaties worden gebruikt door de gebruikersorganisatie.
Aliens? http://www.youtube.com/watch?v=e5pqleh2hz8
Aliens? http://www.youtube.com/watch?v=e5pqleh2hz8 Ontwikkelmethoden en technieken Kenmerken van ontwikkelmethoden POMT HC2 2 Vorige week 3 Rollenspel Klant is koning Communicatie en afspraken Documentatie
De SolidWorks QuickStart Module
SolidWorks 3D CAD software biedt intuïtieve oplossingen voor alle aspecten van uw designproces. De SolidWorks producten kunnen worden toegepast binnen de hele organisatie. De SolidWorks QuickStart Module
Data Warehouse. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
Data Warehouse Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 9 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER... 3 2 DOEL VAN
Praktijkinstructie Geautomatiseerde informatievoorziening - beheer 3 (CIN02.3/CREBO:50170)
instructie Geautomatiseerde informatievoorziening - beheer 3 (CIN02.3/CREBO:50170) pi.cin02.3.v2 ECABO, 1 september 2003 Alle rechten voorbehouden. Niets uit deze uitgave mag worden vermenigvuldigd, overgenomen,
Socio-technisch systemen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 2 Slide 1
Socio-technisch systemen Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 2 Slide 1 Systeem categoriën Technische op computer gesteunde systemen Systemen die HW en SW bevatten, maar waar
CORA 1.0 Bedrijfs- en ICT-referentiearchitectuur voor woningcorporaties
CORA 1.0 Bedrijfs- en ICT-referentiearchitectuur voor woningcorporaties Hoe zorgen we ervoor dat we nieuwe diensten en producten soepel in onze bedrijfsvoering op kunnen nemen? Hoe geven we betere invulling
Inhoud. Deel een Het ontwikkeltraject 13. Inleiding 11
5 Inhoud Inleiding 11 Deel een Het ontwikkeltraject 13 1 Werken binnen organisaties 15 1.1 Non-profit-organisatie 15 1.2 Profit-organisatie 16 1.3 Doelen 16 1.4 Rechtsvormen 16 Rechtspersoon 17 Persoonlijke
Medewerker administratieve processen en systemen
processen en systemen Doel Voorbereiden, analyseren, ontwerpen, ontwikkelen, beheren en evalueren van procedures en inrichting van het administratieve proces en interne controles, rekening houdend met
DATAMODELLERING CRUD MATRIX
DATAMODELLERING CRUD MATRIX Inleiding In dit whitepaper wordt de datamodelleervorm CRUD Matrix beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld
DSDM (Dynamic System Development Method) is gebaseerd op een aantal principes. Welk van de onderstaande principes hoort niet bij DSDM?
H13_H14 beheeraspecten Wat zijn de beheeraspecten van een project? Product, Promotie, Prijs, Plaats, Personeel Product, Promotie, Prijs, Plaats Tijd, Geld, Product, Kwaliteit, Organisatie Tijd, Geld, Kwaliteit,
Workshop 12 ART-DECOR en Acute overdracht. Michael Tan Kai Heitmann Maarten Ligtvoet
Workshop 12 ART-DECOR en Acute overdracht Michael Tan Kai Heitmann Maarten Ligtvoet 22 november 2012 Topics Aanpak en visie Perinatologie Michael Tan Uitleg Acute Overdracht in ART-DECOR Kai Heitmann Faciliteren
Doel. Context VSNU UFO/INDELINGSINSTRUMENT FUNCTIEFAMILIE ICT FUNCTIONEEL (INFORMATIE) BEHEERDER VERSIE 1 MEI 2012
Functioneel (informatie) beheerder Doel Zorgdragen voor het inrichten, aanpassen, vernieuwen en onderhouden van de informatievoorziening (processen, procedures en/of systemen), passend binnen het informatiebeleid
De strategische keuzes die moeten gemaakt worden zijn als volgt: Interne controle of zelfcontrole/sociale controle
1 Hoofdstuk 1 1.1 Dirigeren en coördineren p43 1.1.1 Dirigeren Dirigeren is een synoniem voor delegeren. Dirigeren houdt in dat bepaalde bevoegdheden overgedragen worden naar een persoon met een lagere
Agile systeemontwikkeling. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
Agile systeemontwikkeling Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. Inleiding... 3 2. Terminologie... 4 3. Uitgangspunten...
Functieprofiel: Projectleider Functiecode: 0302
Functieprofiel: Projectleider Functiecode: 0302 Doel Voorbereiden en opzetten van en bijbehorende projectorganisatie, alsmede leiding geven aan de uitvoering hiervan, binnen randvoorwaarden van kosten,
Evo Evolutionary Project Management. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
Evo Evolutionary Project Management Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. INLEIDING... 3 2. EVO... 4 3. FASERING...
Olde Bijvank Advies Organisatieontwikkeling & Managementcontrol
SAMENVATTING ITIL ITIL is nog steeds dé standaard voor het inrichten van beheerspocessen binnen een IT-organisatie. En dekt zowel applicatie- als infrastructuur beheer af. Indien gewenst kan ITIL worden
DATAMODELLERING ER DIAGRAM
DATAMODELLERING ER DIAGRAM Inleiding In dit whitepaper wordt de datamodelleervorm ER diagram beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld krijgen
Uitwerking toets modelleren voor vwo 6
Uitwerking toets modelleren voor vwo 6 Huub de Beer Schooljaar 2010/2011 Inhoudsopgave 1 DFD: toetsenfabrikant Dub5 1 1.1 Contextdiagram............................ 1 1.2 Gedetailleerd DFD..........................
EXIN Projectmanagement Foundation
EXIN Projectmanagement Foundation Voorbeeldexamen Editie 201608 Copyright 2016 EXIN PRINCE2 is a registered trade mark of AXELOS Limited. All rights reserved. No part of this publication may be published,
B.Sc. Informatica Module 4: Data & Informatie
B.Sc. Informatica Module 4: Data & Informatie Djoerd Hiemstra, Klaas Sikkel, Luís Ferreira Pires, Maurice van Keulen, en Jan Kamphuis 1 Inleiding Studenten hebben in modules 1 en 2 geleerd om moeilijke
Deelprojectplan. Bestuurlijke Informatie Voorziening
Deelprojectplan Bestuurlijke Informatie Voorziening Beheersing van risico s en verbetering van de besturing van de Hogeschool van Utrecht, door middel van effectieve en efficiënte informatiestromen, als
Praktijkinstructie Oriëntatie op de informatie-analyse 4 (CIN08.4/CREBO:50131)
instructie Oriëntatie op de informatie-analyse 4 (CIN08.4/CREBO:50131) pi.cin08.4.v2 ECABO, 1 september 2003 Alle rechten voorbehouden. Niets uit deze uitgave mag worden vermenigvuldigd, overgenomen, opgeslagen
Projectmatig 2 - werken voor lokale overheden
STUDIEDAG Projectmatig werken in lokale overheden LEUVEN 27 oktober 2011 Projectmatig werken in de lokale sector Katlijn Perneel, Partner, ParFinis Projectmatig 2 - werken voor lokale overheden 1 Inhoud
Plan van Aanpak Pilot
Plan van Aanpak Pilot DBK-applicaties Beproeven compatibiliteit DBK-applicaties op innovatieplatform voor de Veiligheidsregio s Status : concept Versienummer : V0.2 Datum : Augustus 2012 Blad : 2 / 6 Inhoudsopgave
PROJECT PLAN VOOR DE IMPLEMENTATIE VAN EEN STANDAARD SITE VOOR DE VERENIGING O3D
PROJECT PLAN VOOR DE IMPLEMENTATIE VAN EEN STANDAARD SITE VOOR DE VERENIGING O3D Auteur : P. van der Meer, Ritense B.V. Datum : 17 juli 2008 Versie : 1.3 2008 Ritense B.V. INHOUD 1 VERSIEBEHEER...1 2 PROJECT
DATAMODELLERING TOEPASSEN DATA ANALYTICS
DATAMODELLERING TOEPASSEN DATA ANALYTICS Inleiding In dit whitepaper wordt een toepassingsgebied beschreven voor datamodellering. Een toepassing is een werkveld op het vlak van architectuur of modellering
Unified Process. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
Unified Process Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. Inleiding... 3 2. Unified Process... 4 3. Fasering... 5 3.1.
BISL Business Information Services Library. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
BISL Business Information Services Library Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 9 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2
Software Test Plan. Yannick Verschueren
Software Test Plan Yannick Verschueren November 2014 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 1 Inhoudstafel 1 Introductie 3 1.1
Informatie analyse. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.
Informatie analyse Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 12 Inhoudsopgave 1 Informatie-analyse... 3 1.1 INFORMATIE ANALYSE ALS ONDERDEEL
Workshop verkrijgen requirements. Draaiboek requirementsontwikkeling sessie. SYSQA B.V. Almere
Workshop verkrijgen requirements Draaiboek requirementsontwikkeling SYSQA B.V. Almere Organisatie SYSQA B.V. Pagina 2 van 6 Titel Workshop verkrijgen requirements Versie 1.1 Onderwerp Datum 16-03-2011
Checklist risicofactoren IT-projecten
Organisatie SYSQA B.V. Pagina 1 van 5 Checklist risicofactoren IT-projecten In onderstaande checklists zijn de factoren die het slagen van een project beïnvloeden opgenomen. Projectomvang Hoe groot is
Project methodiek. Auxilium BV Oude Delft 48 2611 CD Delft. T: 015-261 23 16 F: 015-213 34 83 E: [email protected]
Project methodiek Auxilium BV Oude Delft 48 2611 CD Delft T: 015-261 23 16 F: 015-213 34 83 E: [email protected] Inhoud 1 PROJECTMETHODIEK... 3 1.1 TIME-BOXING... 3 1.2 USER-STORIES EN STORY-POINTS... 3
Projectmanagement De rol van een stuurgroep
Projectmanagement De rol van een stuurgroep Inleiding Projecten worden veelal gekenmerkt door een relatief standaard projectstructuur van een stuurgroep, projectgroep en enkele werkgroepen. De stuurgroep
Proactief en voorspellend beheer Beheer kan effi ciënter en met hogere kwaliteit
Proactief en voorspellend beheer Beheer kan effi ciënter en met hogere kwaliteit Beheer kan efficiënter en met hogere kwaliteit Leveranciers van beheertools en organisaties die IT-beheer uitvoeren prijzen
ORGANISATORISCHE IMPLENTATIE BEST VALUE
ORGANISATORISCHE IMPLENTATIE BEST VALUE EEN ONDERZOEK NAAR DE IMPLEMENTATIE VAN BEST VALUE BINNEN EEN SYSTEMS ENGINEERING OMGEVING STEPHANIE SAMSON BEST VALUE KENNIS SESSIE WESTRAVEN 17 JUNI 09.00 12.00
Definitief 1.0 Handreiking voor toepassen van Agile Scrum binnen Overheidsdiensten april 2012
1 Kennis Agile Scrum 1.1 Inleiding In dit eerste deel wordt de lezer meegenomen in de Agile Scrum methodiek. Binnen DR, onder meer met ondersteuning vanuit Quintor, worden steeds meer projecten op deze
EXIN Ontwerp en Ontwikkeling Informatiesystemen Foundation. Voorbeeldexamen. Editie
EXIN Ontwerp en Ontwikkeling Informatiesystemen Foundation Voorbeeldexamen Editie 201608 Copyright 2016 EXIN All rights reserved. No part of this publication may be published, reproduced, copied or stored
Goed functioneel beheer noodzaak voor effectievere SPI
getronicspinkroccade.nl Goed functioneel beheer noodzaak voor effectievere SPI Machteld Meijer Zeist, 3 oktober 2006 Inhoud Domeinen en modellen Functioneel beheer en BiSL Rol van BiSL in SPI 1 Goed functioneel
SolidWorks QuickStart Algemene informatie
SolidWorks QuickStart Algemene informatie SolidWorks 3D CAD software biedt intuïtieve oplossingen voor alle aspecten van uw designproces. De SolidWorks producten kunnen worden toegepast binnen de hele
Organisatie SYSQA B.V. Pagina 1 van 6 Titel Overzicht Versie 1.0 Onderwerp Overzicht blackbox testtechnieken Datum 15 februari 1996
Organisatie SYSQA B.V. Pagina 1 van 6 Black-Box Test Technieken Er zijn een aantal test specificatie technieken, verder testtechnieken genoemd, die bruikbaar zijn binnen het black-box acceptatietesten.
Sturen met inzicht op basis van managementinformatie. InfoTopics. Agenda. Conferentie bedrijfsvoering VOSABB
Sturen met inzicht op basis van managementinformatie Conferentie bedrijfsvoering VOSABB Eemnes 16 april 2008 InfoTopics Jong bedrijf met veel ervaring Focus op onderwijs Focus op managementinformatievoorziening
Genereren van een webapplicatie op basis van DLA
Genereren van een webapplicatie op basis van DLA ir Bert Dingemans DLA Ontwerp en Software [email protected] Inleiding Bij het ontwikkelen van maatwerk software loopt men al snel tegen het probleem
Naam: Draaiboek decentrale implementatie PAUW en Tridion
Programma Aanpak Universitaire Website (PAUW) Draaiboek decentrale implementatie PAUW en Tridion Inleiding In het kader van het Programma Aanpak Universitaire Website (PAUW) is afgesproken dat alle decentrale
Procesmanagement. Waarom processen beschrijven. Algra Consult
Procesmanagement Waarom processen beschrijven Algra Consult Datum: 22 oktober 2009 Inhoudsopgave 1. INLEIDING... 3 2. WAAROM PROCESMANAGEMENT?... 3 3. WAAROM PROCESSEN BESCHRIJVEN?... 3 4. PROCESASPECTEN...
