Databaser: Introduksjon til databaser og filsystemer

Størrelse: px
Begynne med side:

Download "Databaser: Introduksjon til databaser og filsystemer"

Transkript

1 Fjernundervisning fra AITeL - HiST Databaser: Introduksjon til databaser og filsystemer 27. juni 2002, Kjell Toft Hansen, TISIP Kursleksjonene er forfatters eiendom. Som kursdeltaker kan du fritt bruke leksjonene til eget personlig bruk. Kursdeltakere som ønsker å bruke leksjonene til undervisning eller kursformål må ta kontakt med forfatter for nærmere avtale. Copyright: Kjell Toft Hansen/TISIP HVOR BRUKES DATABASESYSTEM...2 FILBASERTE SYSTEM...2 PROBLEMENE VED FILBASERTE SYSTEM...4 DATABASER...4 DATABASESYSTEM...5 HVA INNEHOLDER ET DBMS...6 Programvare og applikasjoner...6 Hvilke personer er involverte i DBMS...7 Datauavhengighet...7 Prøve å unngå dataduplikasjon...8 Effektive søk etter data...8 SQL...8 DATABASEARKITEKTUR...8 Det eksterne nivå...10 Det konseptuelle nivå...10 Det interne nivå...10 DATAMODELLER OG KONSEPTUELL MODELLERING...11 POSTBASERTE DATAMODELLER...11 Relasjonsmodellen...11 OBJEKTBASERTE DATAMODELLER...12 Entity-Relationship modellen...12 FLERBRUKER DBMS-ARKITEKTUR...13 DISTRIBUERT DATABEHANDLING...13 Distribuert bearbeiding...15 LITTERATURLISTE...16 filnavn: leksjon_01

2 Hvor brukes databasesystem Databaser og databasesystem har blitt en viktig del av hverdagen i et moderne samfunn. I løpet av én dag vil mange av oss utføre aktiviteter som involverer en samhandling med en database. Det kan være bruk av kreditt- eller debetkort ved varekjøp på supermarkedet eller uttak av kontanter i en minibank, ved bestilling av en fly- eller togreise via et reisebyrå, låne bøker på biblioteket, tegne forsikring på vår nye bil eller ved immatrikulering på universitet. Databaser brukes over alt der det er behov for å lagre en viss mengde data og der det er behov for å hente ut disse dataene til forskjellige formål. Tenk bare på alle registrene som du selv er ført opp i: Folkeregister, førekortregister, register over ansatte, bokklubber, abonnementer på tidsskrifter og aviser, banker, forsikringsselskaper etc. Alle disse registrene er laget ved hjelp av et databasesystem. Mindre bedrifter og enkeltpersoner kan også ha behov for å lage et databasesystem som holder oversikt over personer eller gjenstander. Det kan f.eks. være firmaets produkter eller et idrettslags sine medlemmer. Men det kan også være at det er du som ønsker å lage en oversikt over alle objektene i samlingen din, enten det er grammofonplater eller frimerker. Det å lage en database er ikke noe nytt som kun er knytt til vår elektroniske tidsalder. Det å lagre data systematisk på kartotekkort var en vanlig teknikk lenge før vi fikk datamaskinen. Senere, når den teknologiske utviklingen gjorde det mulig for større organisasjoner å lagre og behandle store datamengder, fikk vi de såkalte filbaserte systemene. Disse systemene overtok for de manuelle kartoteksystemene. Filbaserte system Kjennetegnet på filbaserte system er at de består av en samling applikasjonsprogram som utfører tjenester slik som for eksempel produksjon av rapporter for sluttbrukeren. Hvert program definerer og behandler sine egne data. De var det vi kan kalle for desentraliserte system, hver avdeling hadde sine egne data og sine egne program og system. Copyright: Kjell Toft Hansen 2

3 Figur 1 viser en skjematisk beskrivelse av et filbasert system. Ordreavdeling Regnskapsavdeling Progam A Progam B Progam C Progam A Progam B Ordresystem Fakturasystem Kunde-fil Varelager_pris-fil Ordre-fil Varelager-fil Kunde-fil Figur 1: (Fritt oversatt fra McFadden s. 8) Fra disse systemene fikk vi begrepene data, felt, post og fil som er beskrevet i tabellen under. Data Felt Post Fil Et tegn, d.v.s. en bokstav, tall 0 til 9 eller et symbol (?,+,-,*,&, o.l.). Inneholder et sett med tegn som gir en viss logisk mening. F.eks. et navn, tall, dato, klokkeslett, kode o.a. Sier noe om tings egenskaper. Et sett med felt som hører sammen. Relaterte poster som naturlig hører sammen. F.eks. alle medlemmene i en sportsklubb, ansatte i en bedrift, alle varene på et lager. En fil er altså en samling poster som inneholder logiske data. Hver post består av et logisk sett tilknyttete felt. Hvert felt representerer karakteristiske egenskaper som tilhører objekter fra den virkelige verden. Copyright: Kjell Toft Hansen 3

4 Filstrukturen for en sportsklubb kan se ut som tabellen under: Navn Adresse Telefon Alder Bet_kont Hagen Nina Grønnergata Holm Grethe Oslogata Larsen Eva Brattgata Nilsen Gunnar Bakkegata Nilsen Per Bakkegata Olsen Ole Grønnegata Problemene ved filbaserte system I et filbasert system er data isolerte i separate filer og det er vanskelig å hente dem fram og kombinere dem. Det kan også oppstå duplisering av data også kalt redundans, dvs. at samme data kan være lagret flere plasser. Dette kan igjen lett føre til at data blir inkonsistente. Vi endrer data ett sted, men kan glemme å endre de samme data som er lagret på en annen fil. Definisjonen av data ligger inne i applikasjonsprogrammet og er ikke lagret uavhengig og separat. Dermed blir data avhengig av programmet. Ofte er det også slik at disse programmene også inneholder faste spørringer. Og for hver ny spørring må et nytt applikasjonsprogram utvikles. Det er ingen kontroll over tilgang og behandling av data ut over det som er implementert i applikasjonsprogrammet. Ofte kan data ligge på ulike filformat; det kan være brukt ulike programmeringsspråk som oppretter ikke-kompatible filformat. Databaser Databasene erstattet de filbaserte systemene. Teknologisk sett er de en langt mer avansert løsning. En database kan defineres som en samling av logiske data som hører sammen og som er en beskrivelse av disse data, designet for å møte informasjonskravene i en organisasjon. En database er et enhetlig lager av data som blir definert én gang og blir brukt samtidig av mange avdelinger og brukere. Dataene i databasen er kjente fakta som kan lagres og som kan si noe om en organisasjon, dvs. ha en mening eller rolle i denne. Et ikke-elektronisk eksempel på en database med data er et kartotek over f.eks. medlemmene i en sportsklubb. En kan tenke seg at hvert kort i kartoteket inneholder opplysninger om et medlem. Aktuelle opplysninger kan være navn, adresse, telefonnummer, medlemsnummer, alder og om vedkommende har betalt medlemskontingent for inneværende år. Copyright: Kjell Toft Hansen 4

5 Databasesystem 1 Et DBMS er en samling programmer som gjør det mulig å lage og bruke en database og som sørger for en kontrollert tilgang til databasen. DBMS holder rede på tabellene 2 for oss, samt databasens struktur. DBMS, som er brukerens grensesnitt til databasen, er en samling av programvare som tar seg av all tilgang til databasen. Framgangsmåten er som følger: 1. En bruker kommer med en forespørsel vha. et spørrespråk DBMS oppfanger forespørselen og analyserer den. 3. DBMS undersøker det eksterne skjema 4, utfører mappingen 5 mellom det eksterne skjema og de andre skjemaene ned til definisjonen av den lagrede strukturen. 4. DBMS utfører de nødvendige operasjonene på den lagrede databasen. Denne framgangsmåten er framstilt skjematisk i Figur 2. Databaseadministrasjons-lag Applikasjons-lag Brukergrensesnitt-lag Applikasjon 1 Databaseadministrasjon 1 Applikasjon 2 Brukergrensesnitt 1 Databaseadministrasjon 2 Brukergrensesnitt 2 Brukergrensesnitt 3 Figur 2: En tre-lags arkitektur som klart og tydelig skiller dataadministrasjon, applikasjonslogikk og brukergrensesnitt fra hverandre (Blaha, p. 21). 1 DBMS (Database Management System) 2 Data ligger lagret i tabeller i databasen - forklares senere 3 SQL: Structured Query Language 4 Brukerens grensesnitt mot databasen - forklares mer detaljert senere 5 Koble sammen skjemaene og definere samsvaret mellom skjemaene Copyright: Kjell Toft Hansen 5

6 Hva inneholder et DBMS DBMS inneholder et Data Definition Language (DDL). Dette er et språk som brukes til blant annet å spesifisere databaseskjemaet 6. DDL er et beskrivende språk som gir DBA og superbrukere muligheten til å beskrive og navngi tabeller og sammenhengen mellom tabellene som er nødvendige for applikasjonen. Videre inneholder DBMS et Data Manipulation Language (DML). DML er et språk som inneholder et sett av operasjoner som støtter grunnleggende datamanipulerende operasjoner på dataene i databasen som for eksempel det å legge data inn i databasen, endre data og hente ut data. Et DBMS må også inneholde en datakatalog, dvs. en metadatabase som består av definisjoner av andre objekter enn selve rådataene som for eksempel tabellene, skjemaene, mappingene 7 og informasjon om adgang. I tillegg må et DBMS inneholde komponenter som ivaretar dataintegritet, datasikkerhet, berging av data, ytelse: en effektiv gjennomføring av de ulike funksjonene, tilslutninger og dataabstraksjoner. Programvare og applikasjoner DBMS gir et grensesnitt mot såkalte applikasjoner. En applikasjon er et program som bruker data lagret i en gitt database. Typisk for en applikasjon er at den har et grafisk brukergrensesnitt 8 tilpasset behov hos én bestemt gruppe sluttbrukere. Brukerne kan via brukergrensesnittet få for eksempel de ønskete opplysninger om en ansatt i bedriften opp på dataskjermen. Tradisjonelt er applikasjoner implementert utenfor selve DBMS ved hjelp av programmeringsspråk som C++, Java eller Visual Basic. Men de fleste DBMS i dag 9 tilbyr muligheter for å lage applikasjoner direkte i selve DBMS. En lager da såkalte skjema hvor brukere kan få ønskete data opp på skjermen ved å klikke på knapper eller velge i nedtrekksmenyer. En annen løsning er bruk av World Wide Web som et grensesnitt mot en database. Selv om WWW i dag gir visse begrensninger i hvor avanserte brukergrensesnitt kan lages, er det mulig å lage relativt fine skjema i WWW-språket HTML. Dersom dette skal fungere mot en database, brukes ofte en bestemt type kobling, et såkalt CGI 10, mellom Webtjeneren og DBMS. I dag finnes det CGI-løsninger for alle kjente DBMS. Det finnes en rekke informasjonsdatabaser på WWW, som er mer eller mindre åpne for alle brukere av Internett. Slike løsninger kan også brukes til såkalte elektroniske betalingstjenester ved at en kan bestille varer fra et sentralt vareregister via WWW. Et problem med CGIløsninger er sikkerhetsrisikoen. Det kan være vanskelig å kontrollere bruken av en slik åpen tilgang til en database. På den andre siden gir DBMS også et grensesnitt mot databasestrukturen, som logisk sier hvordan data i databasen faktisk er lagret på filer på det fysiske mediet. Tabeller er en kjent måte å betrakte denne logiske strukturen på. Vi kan logisk betrakte databasen 6 Definere en database, tabeller og utsnitt 7 Samsvaret mellom de ulike skjemaene 8 GUI 9 Bl.a. MS-Access 10 Common Gateway Interface Copyright: Kjell Toft Hansen 6

7 som en mengde tabeller med data, uten å tenke på hvordan dataene fysisk er lagret på filer. DBMS tar seg altså av filbehandlingen, noe som er en stor fordel både for de som utvikler sine egne databaser og vanlige brukere av databaser. Hvilke personer er involverte i DBMS DBA 11 er ansvarlig for den totale kontrollen av systemet på teknisk nivå. I jobben med å implementere datastrategien vil følgende momenter være viktige: Definere det konseptuelle skjema 12. DBA bestemmer eksakt hvilken info databasen skal inneholde. Dette kalles logisk eller konseptuell databasedesign. Definere det interne skjema. DBA må også bestemme hvordan data skal være representert i den lagrede databasen, såkalt fysisk databasedesign. Kommunisere med brukere; konsultasjon, utdanning, hjelp til å skaffe opplysninger om hvilke data brukeren trenger. Definere sikkerhets- og integrasjonskontroller. Definere sikkerhetskopi og beregningsprosedyrer. Overvåke ytelse og reagere på endrede krav. Andre som er involverte er dataadministrator 13, databasedesigner, applikasjonsprogrammerere og sluttbrukere. Datauavhengighet Det vil ofte være slik at flere applikasjoner bruker en del av de samme dataene. En bedrift kan ha en applikasjon for å regne ut lønn til de ansatte (et lønnssystem), en annen applikasjon som registrerer hvor mange timer overtid ansatte jobber og en applikasjon for å regne ut bonus til de ansatte som er selgere. Alle disse applikasjonene bruker lagrede personopplysninger om de ansatte. Fordelen med et DBMS er at generelle data om de ansatte kan fysisk være lagret på én fil. Vi unngår derfor dobbeltlagring av data. I tillegg vil alle brukerne av databasen vite om endringer som er gjort av en applikasjon. En database kan være et såkalt flerbrukersystem, med mange applikasjoner som bruker mye av de samme dataene. Dette må administreres, og det er en stor trøst at databasesystemet tar seg av dette. 11 Databaseadministrator 12 Se kapittlet: Databasearkitektur 13 DA Copyright: Kjell Toft Hansen 7

8 Prøve å unngå dataduplikasjon Et problem i et filsystem er at samme data kan lagres flere plasser. Læreboka nevner såkalt data redundans, det vil si at samme felt forekommer i flere tabeller. Videre kan de oppstå problemer knyttet til dataintegritet (samme person har to ulike telefonnummer i to forskjellige tabeller). Det kan også oppstå problemer ved endringer og slettinger av data i en tabell dersom for eksempel en selger slutter. Hva da med alle kundene til den selgeren? Dette er vanskelige begreper å forstå innledningsvis. Alt dette kommer vi tilbake til senere i kurset. Poenget nå er at når vi skal designe databaser, er dette problemer vi må ta hensyn til. Ved å bruke et DBMS på en fornuftig måte, vil en kunne unngå mange av de ovennevnte problemene. Effektive søk etter data En viktig egenskap ved DBMS er at de har optimaliserte rutiner for å lagre og ikke minst søke etter data på det fysiske mediet. Dette betyr at et DBMS vil, under en del gitte forutsetninger, hente ut data raskt og effektivt. Dersom du lager ditt eget filsystem, må du selv lage rutiner (algoritmer) for å søke etter data på filene. Hvis du for eksempel er en profesjonell C++ programmerer, vil du sikkert kunne lage raske søkerutiner som kan konkurrere med DBMS sin rutine. Men å lagre data i en database er en enklere løsning i de fleste tilfellene. SQL En annen viktig egenskap ved de aller fleste DBMS er på markedet i dag, er at de gir støtte for spørrespråket SQL. Det gir muligheten til å aksessere og endre på data i databasen på en relativt enkel måte. Har man først lært SQL, vil en kunne hente data ut fra databaser i ulike DBMS er. En slik standard finnes ikke blant vanlige programmeringsspråk. Databasearkitektur Den databasearkitekturen vi skal bruke i dette kurset bygger på ANSI/SPARC 14 - arkitekturen. Denne arkitekturen representerer en abstrakt og generell måte å betrakte data på. Behandlingen av data er uavhengig av lagringsstruktur. Brukeren trenger ikke å vite noe om organiseringen av data for å behandle de samme data. En tenker her på fysisk rekkefølge, om vi utvider med nye kolonner eller rekker i databasen og enhver annen omorganisering av databasen. ANSI/SPARC skiller mellom lagringsstruktur og logisk struktur. Vi oppnår med dette logisk og fysisk datauavhengighet. Dette er en meget ressurskrevende arkitektur. 14 American National Standard Institute/Standard Planning and Requirements Committee Copyright: Kjell Toft Hansen 8

9 ANSI/SPARC-arkitekturen, er delt i tre nivåer: Internt nivå: Dette nivået representerer det nærmest vi kommer den fysiske lagringen av data. Sier noe om hvordan dataene er lagret fysisk. Eksternt nivå: Dette nivået ligger nærmest brukeren. Beskriver den måten dataene sees av brukerne. Konseptuelt nivå: En kobling av de to andre nivåene. Her representeres databasen på modellnivå - en abstrakt framstilling av hele databasen. Applikasjons program Applikasjons program Spørregenerator Bruker/Eksternt skjema A Bruker/Eksternt skjema B Bruker/Eksternt skjema C "Mapper" eksternt skjema A med konseptuelt skjema "Mapper" eksternt skjema B med konseptuelt skjema "Mapper" eksternt skjema C med konseptuelt skjema Konseptuelt skjema "Mapper" konseptuelt og internt skjema Internt/Fysisk skjema Database Figur 3: ANSI/SPARC arkitekturen (Beynon-Davis s. 38) Samlet blir de tre lagene kalt arkitekturens skjema Den totale beskrivelsen av databasen de tre nivåene. Copyright: Kjell Toft Hansen 9

10 Det eksterne nivå Det eksterne nivå er databasen slik den ser ut for en enkelt sluttbruker. Utsnittet kan bestå av sammensatte forekomster av ulike typer av logiske data. Hver sluttbruker har sitt språk til rådighet. Det kan være et spørrespråk eller et spesialtilpasset språk som er skreddersydd brukerens krav og støttet av et online program. Språket blir ofte kalt et Data Sub Language 16 og tar seg av databaseoperasjoner. Hvert DSL vil minst bestå av et DDL for deklarasjon av databaseobjekter og et DML for manipulering med objektene. Det kan være mange ulike eksterne utsnitt av deler av den totale databasen. Det eksterne nivå er uavhengig av det konseptuelle. En kan derfor utføre endringer i det konseptuelle nivå som vil gjenspeile seg i det eksterne nivå. Det konseptuelle nivå Det konseptuelle nivå viser hele informasjonsinnholdet i databasen. Det viser databasen slik den virkelig er, men allikevel mer abstrakt enn den måten dataene er fysisk lagret på. Her ser brukeren data som entitetstyper og tabeller, attributter og kolonner og sammenhengstyper og referanseintegritet. Sikkerhets- og integritetskontroller klargjøres også på det konseptuelle nivået. Brukeren på dette nivået er DBA. Om man skal oppnå datauavhengighet må det ikke være referanser i det konseptuelle skjemaet 17 til fysisk datastruktur eller tilgangsmetoder. De samme objektene kan gjerne ha ulike navn på hvert nivå. Den konseptuelle/interne mappingen definerer samsvaret mellom det konseptuelle nivået og den lagrede databasen på interne nivå. Tilsvarende er det mellom eksternt og konseptuelt nivå. Det interne nivå Det interne skjemaet, som beskriver det interne nivået, definerer de ulike typer av lagrede poster, indekser som finnes, hvordan lagrede poster er representert, den fysiske rekkefølgen til postene som skal lagres etc. Det interne nivå er et skritt unna det fysiske nivå hvor en definerer sider, blokker eller størrelsen på spor og sylindrer for en post. 16 DSL 17 Dokument som inneholder definisjoner av det konseptuelle nivået. Copyright: Kjell Toft Hansen 10

11 Datamodeller og konseptuell modellering En datamodell er en integrert samling av begreper som beskriver data, sammenhengen mellom data og regler som er knytt til data i en organisasjon. Den prøver å gi en abstraksjon over den virkeligheten vi ønsker å lagre data om. Virkeligheten er så kompleks, at den informasjonen vi klarer å lagre i en database vil uansett bli en forenkling av den. Men jo bedre informasjonen er strukturert, jo enklere er det å nyttiggjøre seg de mulighetene en database gir til for eksempel søk og analyse av data. Derfor er det lurt å ha en oversikt over hvilke typer informasjon vi ønsker å ha med i databasen. En datamodell er ment å gi en slik oversikt. Det er to datamodeller dette kurset omhandler, nemlig relasjonsmodellen og Entity-Relationship-modellen 18. Det ligger i navnene at disse to modellene har en del fellestrekk. Relasjonsmodellen er et resultat av en bestemt matematisk algebra, og er den modellen MS-Access og de fleste andre DBMS ene på markedet i dag bygger på. Dette er en såkalt postbasert datamodell. Modellen består av følgende komponenter: strukturdel, manipuleringsdel og integritetsregler. ER-modellen er en såkalt objektbasert datamodell, og brukes til datamodellering uavhengig av hvilket DBMS vi ønsker å realisere databasen i. Postbaserte datamodeller Følgende datamodeller regnes som postbaserte datamodeller: Nettverksdatamodeller, hierarkisk datamodeller og relasjonsmodellen. Relasjonsmodellen STUDENT STED Studnr Etternavn Fornavn Adresse Postnr Postnr Poststed primærnøkkel fremmednøkkel primærnøkkel 18 ER-modellen Copyright: Kjell Toft Hansen 11

12 Denne modellen er basert på matematiske relasjoner 19. Data og relasjoner blir presentert som tabeller og bare tabeller. Tabellene knyttes sammen ved hjelp av primærnøkkel / fremmednøkkel. Objektbaserte datamodeller Entity-Relationship, semantiske-, funksjonsorienterte- og objektorienterte datamodeller tilhører objektbaserte datamodeller. Entity-Relationship modellen Enhver datamodell som brukes i databasesammenheng sier noe om entiteter. En entitet er et objekt som vi ønsker å lagre informasjon om. Et eksempel er entiteten Eva Hansen i Figur 4. En entitet vil ha en del egenskaper, representert som en mengde med attributtverdier. Tradisjonelt er dette rene fakta om entiteten som for eksempel etternavn, fornavn, adresse etc. I tillegg vil en entitet ha en eller flere sammenhenger til andre entiteter i databasen. Det er for eksempel en sammenheng mellom entiteten Eva Hansen og entiteten 7000 Trondheim. Vi skal senere i kurset komme tilbake til hvordan dette kan designes både i relasjonsmodellen og ER-modellen. Entitet: Eva Hansen Attributt verdier: Hansen Eva Prinsens gt. 10 Sammenheng til andre entiteter: 7000 Trondheim Figur 4 Det er viktig å skille mellom entitetstyper og entiteter. En entitetstype sier noe om hvilke data vi kan lagre i attributtene, hvilke sammenhenger vi tillater og hvordan dette skal identifiseres i databasen. Figur 4 illustrerer svært overfladisk sammenhengen mellom definisjonen av attributtene og verdiene til entiteten Eva Hansen. Deretter kan vi si at Eva Hansen er en entitet av en bestemt entitetstype. Denne entitetstypen kan vi kalle Student. Dette er illustrert i Figur 5 som er en liten ER-modell Tabeller 20 Symbolbruken kommer vi tilbake til i en senere leksjon. Copyright: Kjell Toft Hansen 12

13 Student +student_nr {PK} +etternavn +fornavn +adresse * +bor på 1 Sted +postnr {PK} +poststed Figur 5 Flerbruker DBMS-arkitektur Denne arkitekturen bruker kapasiteten som finnes i arbeidsstasjoner og tjenere, ved at disse blir benyttet som intelligente, programmerbare enheter, noe som gjør at all den prosesseringskraften som er tilgjengelig, blir utnyttet. Dette gjøres ved å dele opp en oppgave i to prosesser; en klientdel og en tjenerdel. Klientdelen, som normalt vil være et standard PC-program, presenterer og manipulerer data på arbeidsstasjonen, mens tjenerdelen lagrer, henter og beskytter data på samme måte som på stormaskin. Distribuert databehandling I de siste årene har en gått mer og mer over til såkalte klient/tjener-løsninger og distribuerte løsninger. Ikke minst gjelder dette i databasesammenheng. Klient/tjener modellen splitter applikasjonen i en klientapplikasjon og en tjenerkomponent. Klientapplikasjonen samler spørsmål/data fra brukeren, forbereder dem for tjeneren, og gjør deretter en forespørsel 21 til tjeneren. Tjenerkomponenten venter på sin side på forespørsler fra sine klienter. Når dette skjer, prosesserer tjeneren forespørselen, og returnerer resultatet til klienten. Klienten presenterer til slutt dataene for brukeren gjennom sitt eget brukergrensesnitt. Det mest vanlige er at selve DBMS og det fysiske lageret er en integrert del av database-tjeneren, mens en sprer applikasjonene rundt på mindre maskiner i et datanett. Disse applikasjonene kalles da klienter. De ulike brukerne kan kjøre applikasjoner på sine lokale maskiner, mens selve databasen kan være lagret på en UNIX-maskin i et nett PC ene er tilkoblet. Dette betyr at brukerne ikke trenger å være logget på tjenermaskinen hele tiden, noe som ofte gir en mer effektiv løsning. En annen fordel er at klientene kan tilpasses ulike brukergruppers behov til både programvare og maskinvare. 21 Ved bruk av SQL Copyright: Kjell Toft Hansen 13

14 Figur 6 illustrerer en klient/tjener-arkitektur. Database Databaseadministrasjon Administrasjon av regler Klient Mellomvare Programvare for kommunikasjon LAN Internett Programvare for kommunikasjon Mellomvare Tjener Applikasjonslogikk Presentasjonslogikk Figur 6: Klient-tjener (Beynon-Davis s. 333) Med en klient/tjenerløsning menes det m.a.o. at flere maskiner knyttes sammen i et kommunikasjonsnettverk slik at databearbeiding kan foretas ved flere maskiner 22. En situasjon med bare én tjenermaskin og flere klientmaskiner er altså kjent som et klient/tjener system. Tjeneren fordeler arbeidsoppgavene utover nettet. Denne arkitekturen kan ha flere fordeler: Vi er ikke bundet til en bestemt maskinvare. Vi sparer trafikk på nettverket. Bare resultatet av en ev. spørring blir sendt tilbake. Sortering etc. foregår bare på tjeneren. Database- og applikasjonsprosesseringen kan kjøres parallelt. Tjeneren kan være spesialtilpasset DBMS et som igjen gir økt ytelse. Klientmaskinen kan være tilpasset brukerens behov. En database kan deles av flere ulike klientapplikasjoner. Reduserte utviklingskostnader: alle prosedyrer deles av alle applikasjoner. Redusert vedlikehold: regler endres bare et sted, i tjeneren. Større pålitelighet: logikken og foretningsreglene er uavhengige av klientapplikasjonen. Større sikkerhet: regler og data beskyttes fra uautorisert bruk. 22 Parallel prosessering Copyright: Kjell Toft Hansen 14

15 I databasesammenheng kjøres både DBMS og alle applikasjonene på tjeneren, og alle brukere må logge seg inn på denne for å kjøre applikasjoner eller hente data direkte fra DBMS. Dette kalles en sentralisert løsning, og fører til at belastningen på denne ene maskinen blir stor, dersom flere brukere er logget på samtidig. Distribuert bearbeiding Det er også mulig at en klient kan få tilgang til flere tjenere, maskinene er både klienter og tjenere. Dette kan gjøres på to måter: Et klientprogram kan få tilgang til bare et tjenersystem av gangen. Brukeren må vite hvem av tjenersystemene som har de ønskede dataene. Et klientprogram kan få tilgang til flere tjenersystem samtidig. Det vil se ut for brukeren som ett system og det er ikke nødvendig å vite hvor dataene er. Dette kalles et distribuert databasesystem. Copyright: Kjell Toft Hansen 15

16 Litteraturliste Beynon-Davis, P. (2001): Database Systems, Second Edition, Macmillan. Blaha, M.R. (2001): A Manager s Guide to Database Technology, Building and Perchasing Better Applications, Prentice Hall. Date, C. J. (1995): Introduction to Database Systems, Sixth Edition, Addison-Wesley. Elmasri, R., Navathe, S. (1999): Fundamentals of Database Systems, Third Edition, Addison-Wesley. Conolly, T., Begg, C., Strachan, A. (1998): Database Systems, A Practical Approach to Design, Implementation, and Management, Addison-Wesley. Mallaug, Tore (1998): Introduksjon til databaser og filsystemer, TISIP. McFadden, F.R., Hoffer, J.A., Prescott, M.B. (1999): Modern Database Management, Fifth Edition, Addison-Wesley. Rob, P., Coronel, C. (1997): Database Systems, Design, Implementation and Management, Third Edition, Course Technologies. Copyright: Kjell Toft Hansen 16

1. SQL server. Beskrivelse og forberedelse til installasjon

1. SQL server. Beskrivelse og forberedelse til installasjon Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL server. Beskrivelse og forberedelse til installasjon Stein Meisingseth 15.10.2014 Lærestoffet er utviklet for faget IDRI2001 Drift av

Detaljer

Introduksjon til fagfeltet

Introduksjon til fagfeltet LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side

Detaljer

Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem

Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem Innhold Forord....................................................... 5 Innledning.................................................... 15 Databaser som basis i grunnopplæringen....................... 15

Detaljer

1. Relasjonsmodellen. 1.1. Kommentarer til læreboka

1. Relasjonsmodellen. 1.1. Kommentarer til læreboka Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Relasjonsmodellen Tore Mallaug 2.9.2013 Lærestoffet er utviklet for faget Databaser 1. Relasjonsmodellen Resymé: Denne leksjonen gir en kort

Detaljer

OM DATABASER DATABASESYSTEMER

OM DATABASER DATABASESYSTEMER OM DATABASER DATABASESYSTEMER Begrepet database brukes på flere måter, og det er ikke uvanlig å bruke det for å angi en total samling av data (i dette tilfellet lagrede opplysninger) uavhengig av hvordan

Detaljer

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen Databaser Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen Tema for dagen Relasjonsmodellen Hvorfor relasjoner? Fra ER diagram til relasjoner 22.09.2008

Detaljer

1. Introduksjon til databaser

1. Introduksjon til databaser Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Introduksjon til databaser Tore Mallaug 1.9.2008 Lærestoffet er utviklet for faget Databaser 1. Introduksjon til databaser Resymé: Denne

Detaljer

1. Introduksjon og bakgrunn

1. Introduksjon og bakgrunn Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Introduksjon til Databaser 2 Tore Mallaug 28.8.2012 Lærestoffet er utviklet for faget Databaser 2 1. Introduksjon og bakgrunn Resymé: I denne

Detaljer

1. Datamodellering. 1.1. Kommentarer til læreboka

1. Datamodellering. 1.1. Kommentarer til læreboka Tore Mallaug 20.10.2009 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for fagene LN323D Databaser 1. Datamodellering Resymé: Denne leksjonen viser et par eksempler på ER-modellering

Detaljer

Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller

Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller LC238D http://www.aitel.hist.no/fag/_dmdb/ Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller ER-modellen, intro.

Detaljer

1. SQL datadefinisjon og manipulering

1. SQL datadefinisjon og manipulering Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL datadefinisjon og manipulering Tore Mallaug 7.10.2008 Lærestoffet er utviklet for faget Databaser 1. SQL datadefinisjon og manipulering

Detaljer

Del 1: ER-modellering og databaseteori

Del 1: ER-modellering og databaseteori Del 1: ER-modellering og databaseteori (a) ER-modellering Oppgavens del 1a er delt i tre deler. I første del skal det lages et ER-diagram for databasen til firmaet Sjokoladeland. Deretter skal det lages

Detaljer

2. Beskrivelse av mulige prosjektoppgaver

2. Beskrivelse av mulige prosjektoppgaver Avanserte databaser (øving 9, 10, 11 & 12) Tore Mallaug 25.01.2008 Opphavsrett:Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO326D Avanserte Databaser INNLEVERINGSFRISTER (Obligatorisk

Detaljer

Generelt om operativsystemer

Generelt om operativsystemer Generelt om operativsystemer Operativsystemet: Hva og hvorfor Styring av prosessorer (CPU), elektronikk, nettverk og andre ressurser i en datamaskin er komplisert, detaljert og vanskelig. Maskinvare og

Detaljer

Kunnskapsorganisasjon og gjenfinning 1

Kunnskapsorganisasjon og gjenfinning 1 Kunnskapsorganisasjon og gjenfinning 1 Normalisering Tine Lodberg Frost Normalisering 14.10.2014 Dagens forelesning Pensum Berget, G. (2010). Relasjonsdatabaser og datamodellering (3. utg.). Oslo: Høgskolen

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG AVDELING FOR TEKNOLOGI Institutt for databehandling Kandidat nr.: Eksamensdato: 09.05.2005 Varighet: 0900-1200 (3 timer) Fagnummer: LO323D Fagnavn: Databaser Klasse(r): NETT 2006V

Detaljer

Datamodellering 101 En tenkt høgskoledatabase

Datamodellering 101 En tenkt høgskoledatabase Datamodellering 101 En tenkt høgskoledatabase Spesifikasjoner for databasen vi skal modellere: Oversikt over studenter med: Fullt navn Klasse Studium Avdeling Brukernavn Fødselsdag Adresse Telefonnummer

Detaljer

Generelt om permanent lagring og filsystemer

Generelt om permanent lagring og filsystemer Generelt om permanent lagring og filsystemer Filsystem Den delen av OS som kontrollerer hvordan data lagres på og hentes frem fra permanente media Data deles opp i individuelle deler, filer, som får hvert

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

1. Introduksjon til databaser

1. Introduksjon til databaser Institutt for informatikk og e-læring, Høgskolen i Sør-Trøndelag Introduksjon til databaser Tore Mallaug 8.9.2015 Lærestoffet er utviklet for faget Databaser 1. Introduksjon til databaser Resymé: Denne

Detaljer

Læreplan i informasjonsteknologi - programfag i studiespesialiserende utdanningsprogram

Læreplan i informasjonsteknologi - programfag i studiespesialiserende utdanningsprogram Læreplan i informasjonsteknologi - programfag i studiespesialiserende utdanningsprogram Fastsatt som forskrift av Utdanningsdirektoratet 3. april 2006 etter delegasjon i brev 26. september 2005 fra Utdannings-

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut Informasjonssystem bygd på et databasehåndteringssystem Brukergrensesnitt! inn ut Oppfatning av interesseområdet Flere samtidige brukere gir databasehåndteringssystemet store

Detaljer

1. SQL spørringer mot flere tabeller

1. SQL spørringer mot flere tabeller 1. SQL spørringer mot flere tabeller Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL spørringer mot flere tabeller Tore Mallaug 29.9.2008 Lærestoffet er utviklet for faget Databaser

Detaljer

Kurskategori 3: Utvikling av IKT- systemer. høsten

Kurskategori 3: Utvikling av IKT- systemer. høsten Kurskategori 3: Utvikling av IKT- systemer høsten Gjennom kurs i denne kategorien skal studentene opparbeide kunnskaper om og ferdigheter i å lage nettsteder, utvikle programvare og tilrettelegge for nettbasert

Detaljer

Kunnskapsorganisasjon og gjenfinning 1.1. Introduksjon til databaseteori. Tine L. Frost, Jørn Helge B. Dahl og Kim Tallerås

Kunnskapsorganisasjon og gjenfinning 1.1. Introduksjon til databaseteori. Tine L. Frost, Jørn Helge B. Dahl og Kim Tallerås Kunnskapsorganisasjon og gjenfinning 1.1 Introduksjon til databaseteori Tine L. Frost, Jørn Helge B. Dahl og Kim Tallerås Dagens forelesning Overblikk over emnet Praktisk informasjon Høstens temaer Hvorfor

Detaljer

Tom Røise 2/28/2007. IMT2243 : Systemutvikling 1. Forelesning IMT2243 1. mars 2007. Tema : Litteratur : Strukturert analyse. Strukturert analyse

Tom Røise 2/28/2007. IMT2243 : Systemutvikling 1. Forelesning IMT2243 1. mars 2007. Tema : Litteratur : Strukturert analyse. Strukturert analyse Forelesning IMT2243 1. mars 2007 Tema : Litteratur : Art.saml. Punkt 9 : Kap. 9. SASD - modellen, E. Andersen Metoden går ut på å anvende et sett teknikker i arbeidet med å lage gode systemmodeller /beskrivelser

Detaljer

Oppgaver Oppgave a: Sett opp mulige relasjoner

Oppgaver Oppgave a: Sett opp mulige relasjoner Løsningsforslag til øving 4: Relasjonsmodellen Kjell Toft Hansen 18.09.2008 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1: databaser Oppgaver Oppgave a: Sett opp

Detaljer

Programvare arkitekturer

Programvare arkitekturer Programvare arkitekturer 14. oktober 2001, Tore Berg Hansen, TISIP Kursleksjonene er forfatters eiendom. Som kursdeltaker kan du fritt bruke leksjonene til eget personlig bruk. Kursdeltakere som ønsker

Detaljer

INF130: Datahåndtering og analyse

INF130: Datahåndtering og analyse INF130: Datahåndtering og analyse Modellering 1.1 Temaer Kapittel 7 Modellering 2 Datamodellering med E/R Fasene i systemutvikling og databasedesign E/R (Entity/Relationship) Entitet Attributt Identifikator

Detaljer

1. Intro om SharePoint 2013

1. Intro om SharePoint 2013 Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Intro om SharePoint 2013 Stein Meisingseth 09.08.2013 Lærestoffet er utviklet for faget LO205D Microsoft SharePoint 1. Intro om SharePoint

Detaljer

Databaser & objektorientering.

Databaser & objektorientering. Databaser & objektorientering. Noen grunnbegreper innen objektorientering. Klasser og forekomster klasser beskriver strukturen for noe. Beskrivelsen inneholder: et navn attributter /egenskaper / tilstander

Detaljer

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse Huldt & Lillevik Ansattportal - en tilleggsmodul til Huldt & Lillevik Lønn Teknisk beskrivelse Huldt & Lillevik er trygghet Trygghet er å vite at løsningen du bruker virker, hver eneste dag, enkelt og

Detaljer

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING Prosjekt 18 Jørgen Mobekk Sørensen Morten Evje Tor Andreas Baakind Anders Gabrielsen Side 1 1 FORORD Dette dokumentet er brukerveiledningen, og skal være en veiledning

Detaljer

8. ASP med databasekopling, del I

8. ASP med databasekopling, del I Else Lervik 16.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 8. Resymé: Leksjonen begynner med en generell introduksjon til databaser

Detaljer

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

Detaljer

Eksamen i IBE 210 - Databaser H 2008

Eksamen i IBE 210 - Databaser H 2008 Avdeling for økonomi, informatikk og samfunnsfag Eksamen i IBE 210 - Databaser H 2008 Eksamensdag : 5 desember 2008 Tid : 9.00 13.00 Faglærer/telefonnummer : Arne Løkketangen 99690939 Hjelpemidler : Alle

Detaljer

AlgDat 12. Forelesning 2. Gunnar Misund

AlgDat 12. Forelesning 2. Gunnar Misund AlgDat 12 Forelesning 2 Forrige forelesning Følg med på hiof.no/algdat, ikke minst beskjedsida! Algdat: Fundamentalt, klassisk, morsomt,...krevende :) Pensum: Forelesningene, oppgavene (pluss deler av

Detaljer

Grunnkurs i. Windows Utforsker. Nordre Land kommune IKT-avdelingen

Grunnkurs i. Windows Utforsker. Nordre Land kommune IKT-avdelingen Grunnkurs i Windows Utforsker Nordre Land kommune IKT-avdelingen - 2 - Fil- og mappehåndtering med Windows Utforsker Innholdsfortegnelse Introduksjon...- 3 - Generelt om filbehandling...- 3 - Filbehandling...-

Detaljer

Datamodellering med E/R

Datamodellering med E/R Datamodellering med E/R Fasene i systemutvikling og databasedesign E/R (Entity/Relationship) Entitet Attributt Identifikator Forhold og roller Kardinaliteter: 1:1, 1:M, M:N Oppløsing av mange-til-mange

Detaljer

Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen

Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen Databaser Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen Tema for dagen Hva er relasjonsalgebra? Seleksjon Projeksjon Produkt Indre forening Ytterforening Settoperasjoner: union, snitt, differanse

Detaljer

FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON...

FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON... FORORD...III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE...VII DEL I SQL OG RELASJONSDATABASER...1 1 INTRODUKSJON... 3 1.1 DATABASESYSTEMER...3 1.1.1 Anvendelser...3 1.1.2 Oppgaver og arkitektur...4 1.1.3

Detaljer

Filer i Linux og Bourne-again shell

Filer i Linux og Bourne-again shell Filer i Linux og Bourne-again shell Filbegrepet En fil * er en grunnleggende lagringsenhet i et OS Brukes for alle data som: Lagres utenfor RAM (primærminnet) På permanente media (sekundærminne) Definisjoner

Detaljer

BRUKERMANUAL. Telsys Online Backup

BRUKERMANUAL. Telsys Online Backup BRUKERMANUAL Telsys Online Backup TELSYS AS - 06.08.2009 Innhold Generelt... 3 Kom i gang... 4 Installasjon av Telsys Online Backup Proff/Standard... 4 Start opp klienten for første gang!... 10 Logg inn...

Detaljer

Objektorientering i ER-modeller EER-modeller Enhanced Entity Relationship Models

Objektorientering i ER-modeller EER-modeller Enhanced Entity Relationship Models LC238D Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ Objektorientering i ER-modeller EER-modeller Enhanced Entity Relationship Models Oppsummering: Å oversette fra ER- til relasjonsmodell

Detaljer

FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 11 INTRODUKSJON...

FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 11 INTRODUKSJON... Innholdsfortegnelse FORORD... III KAPITTELOVERSIKT... VI INNHOLDSFORTEGNELSE... VII DEL I SQL OG RELASJONSDATABASER... 1 1 INTRODUKSJON... 3 1.1 DATABASESYSTEMER... 3 1.1.1 Anvendelser... 3 1.1.2 Oppgaver

Detaljer

Transaksjonshåndtering. Skalerbarhet.

Transaksjonshåndtering. Skalerbarhet. Else Lervik 13.04.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 11. Resymé: Vi skali denne leksjonen se litt på hva vi må ta hensyn

Detaljer

Fakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4190 Distribuerte systemer Onsdag 4. august 2004, 0900 1300

Fakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4190 Distribuerte systemer Onsdag 4. august 2004, 0900 1300 Side 1 av 9 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsning på kontinuasjon

Detaljer

Brukermanual for Quizbuilder

Brukermanual for Quizbuilder Brukermanual for Quizbuilder 1. juni 2010 Innhold 1 Installasjon av Quizbuilder 2 1.1 Installasjon fra Kildekode........................ 2 1.2 Installasjon fra Zip-fil.......................... 2 2 Quizbuilder

Detaljer

Scan Secure GTS 5.1 + PAS

Scan Secure GTS 5.1 + PAS Scan Secure GTS 5.1 + PAS Installasjonsmanual For versjon 5.1.7 og nyere Denne installasjonsmanualen er konfidensiell Den er kun ment til bruk for system administrator Den skal ikke benyttes av brukere

Detaljer

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Sentralisert Node

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Sentralisert Node PRODUKTBESKRIVELSE INFRASTRUKTUR NRDB Sentralisert Node Versjon 3.0 11/10/04 Nasjonal referansedatabase AS 14/10/04 Page 1 of 10 Innholdsfortegnelse 1 INNLEDNING...3 1.1 NUMMERPORTABILITET...3 1.2 VIDERESALG

Detaljer

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004 Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004 Oppgave 1 RMI-tjenerobjekt (databasewrapper) A Sentral tjenermaskin med database, RMi-register og RMI-tjenerprogram vis kart gjør bestilling

Detaljer

Hurtigstartveiledning

Hurtigstartveiledning Hurtigstartveiledning Microsoft Access 2013 ser annerledes ut enn tidligere versjoner, så vi har laget denne veiledningen for å gjøre det enklere for deg å bli kjent med Access. Endre skjermstørrelsen,

Detaljer

Hva gjøres i design? 19. september 2002, Tore Berg Hansen, TISIP

Hva gjøres i design? 19. september 2002, Tore Berg Hansen, TISIP Hva gjøres i design? 19. september 2002, Tore Berg Hansen, TISIP Kursleksjonene er forfatters eiendom. Som kursdeltaker kan du fritt bruke leksjonene til eget personlig bruk. Kursdeltakere som ønsker å

Detaljer

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Internett

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Internett PRODUKTBESKRIVELSE INFRASTRUKTUR NRDB Internett Versjon 3.0 11/10/04 Nasjonal referansedatabase AS 15/10/04 Page 1 of 10 Innholdsfortegnelse 1 INNLEDNING...3 1.1 NUMMERPORTABILITET...3 1.2 VIDERESALG TELEFONI...3

Detaljer

Produktrapport Gruppe 9

Produktrapport Gruppe 9 Forord Dette dokumentet er ment for personer som skal vedlikeholde, endre eller utvikle systemet. Produktdokument innholder informasjoner om programmets funksjoner og hvordan de fungerer. Før bruk av dette

Detaljer

Brukerdokumentasjon for LabOra portal - forfattere

Brukerdokumentasjon for LabOra portal - forfattere Brukerdokumentasjon for LabOra portal - forfattere Skin: Dnnbest-Grey-Skin1024 Skin: Metro7 Custom LabOra web-portal er et web-basert publiseringsprogram for publisering av informasjon på hjemmesider.

Detaljer

Tabeller og enkle spørringer

Tabeller og enkle spørringer Tabeller og enkle spørringer Database, relasjonsdatabase Databasehåndteringssystem (DBHS) Databasesystem Tabell, kolonne, rad, datatype, verdi, primærnøkkel Utvalgsspørringer i SQL Velge ut rader Velge

Detaljer

INF130 Databehandling og analyse

INF130 Databehandling og analyse 28.01.15 INF130 Databehandling og analyse Introduksjon Knut Kvaal 28.01.15 1.1 Administrasjon Gruppearbeid og øvinger Du skal registere deg for gruppe etc https://docs.google.com/spreadsheets/d/1n4vqedksrkflh6273wk5zqd852me_mtshunh6dfzzma/edit?usp=sharing

Detaljer

Dagens forelesning. Java 13. Rollefordeling (variant 1) Rollefordeling (variant 2) Design av større programmer : fordeling av roller.

Dagens forelesning. Java 13. Rollefordeling (variant 1) Rollefordeling (variant 2) Design av større programmer : fordeling av roller. Dagens forelesning Java 13 Design av større programmer : fordeling av roller INF 101-13. mars 2003 Flere eksempler på bruk av objekter MVC-prinsippet MVC-prinsippet Flere eksempler på programmer med objekter

Detaljer

Kravspesifikasjon. Leserveiledning Kravspesifikasjonen består av følgende deler: Presentasjon Om bedriften

Kravspesifikasjon. Leserveiledning Kravspesifikasjonen består av følgende deler: Presentasjon Om bedriften Kravspesifikasjon Presentasjon Hovedprosjektet gjennomføres ved Høgskolen i Oslo, avdelingen for ingeniørutdanning. Målet med oppgaven er å utvikle en online webshop for bestilling av postkasser. Dette

Detaljer

Maestro Klientadministrasjon

Maestro Klientadministrasjon Maestro Klientadministrasjon 17.11.2011 12:41 Side 1 av 32 Innhold Installasjon av Maestro Klientadministrasjon Kravspesifikasjon Systemoversikt og installasjon i korte trekk Installasjon punktvis 1 Nedlasting

Detaljer

Notat om Norge digitalt og Norvegiana

Notat om Norge digitalt og Norvegiana mai 2015 Notat om Norge digitalt og Norvegiana Rammer og forutsetninger Dette notatet tar for seg problemstillinger som er aktuelle for samhandling mellom Norvegiana og Norge digitalt i et fremtidig digitalt

Detaljer

Innholdsfortegnelse: Resymé: Denne leksjon gir en kort og enkelt oversikt over hvilke oppgaver som skal utføres i design- og programmeringsfasen.

Innholdsfortegnelse: Resymé: Denne leksjon gir en kort og enkelt oversikt over hvilke oppgaver som skal utføres i design- og programmeringsfasen. Kort innføring i design og programmeringsfasen Jarle Larsen/Tore Berg Hansen 2.11.04 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO314 Prosjektrettet systemarbeid Resymé:

Detaljer

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk Produktdokumentasjon Madison Møbler Administrasjonsside og Nettbutikk 1 1. Forord 1.1 Dokumentasjonen Dette er en teknisk dokumentasjon på produktet som er utviklet. Denne er tiltenkt personer med teknisk

Detaljer

Dokumentstyring og Maler

Dokumentstyring og Maler Arbeide med : Dokumentstyring og Maler i Fenistra Eiendom Dokument kontroll Versjon 1.0 Release dato 28.10.2003 Sist Endret dato 28.10.2003 Innhold 1. Forutsetninger... 3 2. Hensikt... 3 3. MS Word Maler

Detaljer

1. Mer om oppbyning av XML-dokument

1. Mer om oppbyning av XML-dokument Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Mer om oppbyning av XML-dokument Lene Hoff 2.9.2013 Lærestoffet er utviklet for faget XML Teknologi 1. Mer om oppbyning av XML-dokument Resymé:

Detaljer

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Oblig 5 Webutvikling. Av Thomas Gitlevaag Oblig 5 Webutvikling Av Thomas Gitlevaag For oppgave 1 og 2 skal dere levere en funksjonell webside på deres hjemmeområde. Dere skal også levere alle phps-filene slik at man for en hver side kan slenge

Detaljer

1. Generelt. FM-OA, Kompletterende undervisning. 1.1. Innledning. 1.2. Stikkord. 1.3. Prosessen. Spec 2, datert 12.12.2005

1. Generelt. FM-OA, Kompletterende undervisning. 1.1. Innledning. 1.2. Stikkord. 1.3. Prosessen. Spec 2, datert 12.12.2005 1. Generelt 1.1. Innledning Det skal utvikles en databasert løsning for å lette arbeidet rundt tilskudd til kompletterende undervisning i fagene norsk, samfunnsfag og kristendomskunnskap med religions-

Detaljer

Mamut Open Services. Mamut Kunnskapsserie. Kom i gang med Mamut Online Survey

Mamut Open Services. Mamut Kunnskapsserie. Kom i gang med Mamut Online Survey Mamut Open Services Mamut Kunnskapsserie Kom i gang med Mamut Online Survey Kom i gang med Mamut Online Survey Innhold MAMUT ONLINE SURVEY... 1 KOM I GANG MED MAMUT ONLINE SURVEY... 3 MAMUT-BRUKERE: OPPRETT

Detaljer

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING 1 Word 1.1 Gjør ting raskt med Fortell meg det Du vil legge merke til en tekstboks på båndet i Word 2016 med teksten Fortell meg hva du vil gjøre.

Detaljer

Flere design mønstre. 19. september 2002, Tore Berg Hansen, TISIP

Flere design mønstre. 19. september 2002, Tore Berg Hansen, TISIP Flere design mønstre 19. september 2002, Tore Berg Hansen, TISIP Kursleksjonene er forfatters eiendom. Som kursdeltaker kan du fritt bruke leksjonene til eget personlig bruk. Kursdeltakere som ønsker å

Detaljer

Kravspesifikasjon. Magne Rodem og Jan-Erik Strøm. 18. juni 2006

Kravspesifikasjon. Magne Rodem og Jan-Erik Strøm. 18. juni 2006 Kravspesifikasjon Magne Rodem og Jan-Erik Strøm 18. juni 2006 Innhold 1 Introduksjon 3 2 Overordnet systembeskrivelse 4 2.1 Bakgrunn for prosjektet................................. 4 2.2 Funksjoner og

Detaljer

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Lokal Node (VPN)

PRODUKTBESKRIVELSE INFRASTRUKTUR. NRDB Lokal Node (VPN) PRODUKTBESKRIVELSE INFRASTRUKTUR Lokal Node (VPN) Versjon 3.0 11/10/04 Nasjonal referansedatabase AS 14/10/04 Page 1 of 11 Innholdsfortegnelse 1 INNLEDNING...3 1.1 NUMMERPORTABILITET...3 1.2 VIDERESALG

Detaljer

HiOA TDK. Ingeniørfag data. DATS1600 Programutvikling. Eva Hadler Vihovde. Prosjektoppgaven 2015. - Prosessdokumentasjon - Alternativ 1

HiOA TDK. Ingeniørfag data. DATS1600 Programutvikling. Eva Hadler Vihovde. Prosjektoppgaven 2015. - Prosessdokumentasjon - Alternativ 1 HiOA TDK Ingeniørfag data DATS1600 Programutvikling Eva Hadler Vihovde Prosjektoppgaven 2015 - Prosessdokumentasjon - Alternativ 1 - Forsikring - Gruppe #14 Studentnavn Marius Alexander Skjolden Hans Christian

Detaljer

Arne Maus, Ifi. delvis lån av gamle foiler

Arne Maus, Ifi. delvis lån av gamle foiler Typer av systemer, Arkitektur og Databaser Arne Maus, Ifi med takk til Dag Lorås(Visma) og Ian Sommerville for delvis lån av gamle foiler INF 1050 Systemutvikling v2010 1 Dagens forelesning 1. Ulike typer

Detaljer

2. Beskrivelse av installasjon av SQL Server 2005 og hvordan lage databasen som trengs av administrasjonsprogrammet:

2. Beskrivelse av installasjon av SQL Server 2005 og hvordan lage databasen som trengs av administrasjonsprogrammet: Workaround for DFS Administrasjonssystem og Windows Vista NB! Dette er IKKE en installasjon av systemet, men en måte for å få det til å virke på Windows Vista. Denne veiledningen er laget for litt avanserte

Detaljer

Brukermanual for nettpublisering. frivilligsentral.no

Brukermanual for nettpublisering. frivilligsentral.no Brukermanual for nettpublisering frivilligsentral.no Innholdsfortegnelse Introduksjon 3 1 - Innlogging 4 1.1 - Logge inn 4 1.1 - Logge ut 4 2 - Grensesnitt 5 2.1 - Menyfelt 5 2.2-3 - Opprette, lagre og

Detaljer

Satsvise, interaktive, sanntids/innbakte systemer. Arne Maus, Ifi. Oppdeling av både program og data på flere maskiner

Satsvise, interaktive, sanntids/innbakte systemer. Arne Maus, Ifi. Oppdeling av både program og data på flere maskiner Typer av systemer, Arkitektur og Databaser Arne Maus, Ifi med takk til Dag Lorås(Visma) og Ian Sommerville for delvis lån av gamle foiler Dagens forelesning. Ulike typer systemer Satsvise, interaktive,

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

Brukerveiledning Webline Portal for E-post Bedrift/E-post Basis

Brukerveiledning Webline Portal for E-post Bedrift/E-post Basis Brukerveiledning Webline Portal for E-post Bedrift/E-post Basis Innholdsfortegnelse 1 PÅLOGGING...4 1.1 Ny bruker...6 1.2 Endre bruker...9 1.2.1 Endre produkttype fra E-post basis til E-post bedrift...10

Detaljer

my good friends uke 41 2015-10-05

my good friends uke 41 2015-10-05 uke 41 2015-10-05 nettskyen sikkerhet synkronisering Det er vanskelig for 60+ å forstå at når vi nå tenker på og snakker om data må vi tenke på nettskyen og ikke på PC'en. Er det sikkert å lagre data i

Detaljer

Fakultet for informasjonsteknologi, Kontinuasjonsløsning på SIF8037 Distribuerte systemer og ytelsesvurdering (Distribuerte systemer kun)

Fakultet for informasjonsteknologi, Kontinuasjonsløsning på SIF8037 Distribuerte systemer og ytelsesvurdering (Distribuerte systemer kun) Side 1 av 5 NTNU Norges teknisk naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Kontinuasjonsløsning

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 21.mai 2007 Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: 6 09.00 13.00 (4 timer) LN116D Programmering

Detaljer

Prosjektoppgave. i «IMT1082 - Objekt-orientert programmering» våren 2016

Prosjektoppgave. i «IMT1082 - Objekt-orientert programmering» våren 2016 Prosjektoppgave i «IMT1082 - Objekt-orientert programmering» våren 2016 Frister: Tirsdag 19.april 2016 kl.14.00 NB: Fredag 18.mars kl.09.00 (1.delinnlevering) Arbeidsform: Arbeidsinnsats: Torsdag 7.april

Detaljer

JavaScriptbibliotek. Introduksjon MVVC. Informasjonsteknologi 2. Gløer Olav Langslet Sandvika VGS

JavaScriptbibliotek. Introduksjon MVVC. Informasjonsteknologi 2. Gløer Olav Langslet Sandvika VGS MVVC JavaScriptbibliotek Gløer Olav Langslet Sandvika VGS Knockout.js Informasjonsteknologi 2 Introduksjon I dag skal vi se nærmere på et JavaScriptbibliotek som heter Knockout. Knockout og andre biblioteker,

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 10.desember 2008 Varighet: 0900 1200 Fagnummer: Fagnavn: LO346D Java EE og distribuerte systemer Klasse(r): NETT

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Forelesere: Obligsjef: Naci Akkök, Ragnar Normann Norun Sanderson Mål: Kjennskap til databasesystemer Oppgaver og moduler Virkemåte Implementasjon Teoretiske og praktiske problemer

Detaljer

PROSESSDOKUMENTASJON

PROSESSDOKUMENTASJON PROSJEKT NR.: 10-30 Studieprogram: Anvendt Datateknologi Postadresse: Postboks 4 St. Olavs plass, 0130 Oslo Besøksadresse: Holbergs plass, Oslo TILGJENGELIGHET: Papir og elektronisk Telefon: 22 45 32 00

Detaljer

Design og dokumentasjon

Design og dokumentasjon Design og dokumentasjon Information Architecture Peter Morville& Louis Rosenfeld Kapittel 12 29.01.2015 Håkon Tolsby 1 Ny fase i prosjektet Fokusskifte: Fra planlegging til produksjon Fra overordnet arkitektur

Detaljer

Kapittel 1: Datamaskiner og programmeringsspråk

Kapittel 1: Datamaskiner og programmeringsspråk Kapittel 1: Datamaskiner og programmeringsspråk Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen

Detaljer

Innsending av timelister. Timeliste. Innsending

Innsending av timelister. Timeliste. Innsending Innsending av timelister Timeliste Innsending 2 Hva? Manpower benytter timeregistrering og kundeattestasjon via Internett for sine eksterne medarbeidere og kunder. Det følgende er en kort presentasjon

Detaljer

Et forsøk på definisjon. Eksempel 1

Et forsøk på definisjon. Eksempel 1 Et forsøk på definisjon [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michael.preminger@hioa.no) 19/08-15 Engelsklignende språk, med rigid syntaks, som kan brukes til å skrive instruksjoner

Detaljer

Introduksjon til nettverksteknologi

Introduksjon til nettverksteknologi Avdeling for informatikk og e- læring, Høgskolen i Sør- Trøndelag Introduksjon til nettverksteknologi Olav Skundberg og Boye Holden 23.08.13 Lærestoffet er utviklet for faget IFUD1017- A Nettverksteknologi

Detaljer

Oppgave 3 - normalisering

Oppgave 3 - normalisering Oppgave 3 - normalisering Løsningsforslag Oppgave 3 - løsning 22.10.2014 Øvelsesoppgave 3 1. Normaliser logisk skjema fra oppgave 1 og 2 (Læringssenter) 2. Normaliser logisk skjema fra seminarøvelsen (Nøsteelskere)

Detaljer

9. ASP med databasekopling, del II

9. ASP med databasekopling, del II Else Lervik 23.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 9. Resymé: I forrige leksjon så vi hvordan ASP kunne brukes til å vise

Detaljer

Funksjonalitet og oppbygning av et OS (og litt mer om Linux)

Funksjonalitet og oppbygning av et OS (og litt mer om Linux) Funksjonalitet og oppbygning av et OS (og litt mer om Linux) Hovedfunksjoner i et OS OS skal sørge for: Styring av maskinvaren Deling av maskinens ressurser Abstraksjon vekk fra detaljer om maskinvaren

Detaljer

Konvertere fra System 4. Innhold

Konvertere fra System 4. Innhold Innhold Konvertere fra System 4... 2 Installere konverteringsprogrammet... 2 Laste ned fra våre hjemmesider... 2 Installere fra CD... 2 Forberedelser i System 4... 3 Overføre data fra System 4... 4 Kontrollere

Detaljer

4.1. Kravspesifikasjon

4.1. Kravspesifikasjon 4.1. Kravspesifikasjon Dette delkapittelet beskriver nærgående alle deler av systemet, hvordan det er tenkt ferdigutviklet med fokus på oppdragsgivers ønsker. 4.1.1. Innledning Informasjon om hvordan kravspesifikasjonens

Detaljer

Tor-Eirik Bakke Lunde torebl@stud.cs.uit.no

Tor-Eirik Bakke Lunde torebl@stud.cs.uit.no Obligatorisk oppgave 1 INF-3200 12. oktober 2003 Tor-Eirik Bakke Lunde torebl@stud.cs.uit.no Oppgavebeskrivelse: Designe og implementere en distribuert ray-tracing applikasjon, med basis i kontroller-

Detaljer