Object-Relational Mapping

Størrelse: px
Starte visningen fra side:

Download "Object-Relational Mapping"

Transkript

1 Databaser for udviklere () Datamatiker TietgenSkolen Underviser: Allan Helboe

2 Problemformulering Denne opgave er et forsøg på at beskrive problemerne der opstår ved anvendelsen af en relationel database som persistenslag, for en objektorienteret applikation. Først og fremmest vil jeg undersøge hvorfor man egentlig anvender relationelle databaser frem for objektorienterede databaser, når de umiddelbart fremstår som et bedre alternativ. Jeg vil derefter undersøge hvordan man kan løse de problemer som objektorienteret data giver i forhold til en relationel database, og vil især gå i dybden med NHibernate som en færdig løsning på problemet. Under dette afsnit vil jeg undersøge hvad der egentlig ligger bag værktøjet, mht. dets historie samt de mønstre der anvendes. Til sidst vil jeg forsøge at anvende NHibernate i en simpel applikation, og hermed få et indblik i processen at arbejde med et ORM-værktøj. Indledning Langt de fleste enterprise applikationer har behov for en løsning til persistent lagring af data. Oftest er det også et krav for disse applikationer, at det samme lager kan anvendes af op til flere samtidige instanser af applikationen, hvilket kan føre til en række af problemer. Dette løses ofte ved at anvende en database til lagring af data, hvilket også medvirker til at der kommer kontrol over samtidigheden i systemet. Nu til dags anvendes der oftest relationelle databaser, men ved anvendelsen af en sådan database indføres dog endnu et stort problem for programmøren: Objektorienterede programmer og relationelle databaser er to ting, der i praksis kan være svære at kombinere. Jeg vil i denne rapport forsøge at finde ud af hvorfor man egentlig ønsker at anvende relationelle databaser, frem for de objektorienterede. Jeg vil derudover undersøge hvilke problemer det medfører at anvende en relationel database, samt hvordan man kan løse disse problemer. Objektorienteret data I den objektorienterede verden anvendes objekter flittigt til opbygningen af en arkitektur med indkapsling af de enkelte kodeelementer. Der er mange fordele ved at programmere objektorienteret, men de største fordele må være følgende: Overskueligheden af koden bliver øget væsentligt ved at ansvaret bliver delt ud. Man har mulighed for at reducere mængden af kode der skal vedligeholdes ved at anvende koncepter som f.eks. nedarvning mellem klasser. Det er muligt at lave en lag-deling af koden som gør refaktorering af eksisterende kode, og tilføjelse af ny funktionalitet sideløbende med det eksisterende, væsentlig lettere. Databaser for udviklere 2

3 Alt i alt har objektorienteret programmering givet meget i forhold til at gøre kodebasen mere overskuelig, håndterbar og udbygningsvenlig. Styrken i OOP er dog samtidig den største ulempe. Alle data lagres i variabler på objekter, hvilket er meget bekvemt når disse data skal bearbejdes i hukommelsen for en kørende applikation. Når denne applikation skal lukkes ned opstår der dog et problem. Vi ønsker ikke at smide objekterne ud og dermed miste de ændringer der er foretaget, men tværtimod ønsker vi at få persisteret disse objekter sådan at de kan indlæses næste gang applikationen starter. Dette er muligt ved f.eks. en serialisering af det samlede objekt-træ til en fil, men da dette umiddelbart kun fungerer for en enkeltstående applikation, er det ret få enterprisesystemer der kan bruge denne løsning. Vi ønsker i stedet at anvende en database. Databaser Databaser har igennem mange år været anvendt til håndtering af data, både indenfor forretnings- og forskersegmentet. Når vi ser på databaser og objektorienteret data, lyder det meget logisk at man ville anvende en objektorienteret database som persistenslag for en objektorienteret applikation. DBMS en på en OODB er bygget til at håndtere mange af de ting man kunne få brug for når man programmer objektorienteret. Det vil sige at man som udgangspunkt har mulighed for at lagre sine objekter i databasen, samt anvende OO-koncepter, som f.eks. nedarvning mellem klasser, direkte i databasen. En objektorienteret database er derfor umiddelbart, en rigtig god løsning som persistenslag for OO-applikationer. Objektorienterede databaser blev dog først opfundet noget senere end behovet for lagring af data opstod, og derfor har det primært kun været forskerverdenen som har taget dem i brug. Den objektorienterede database er meget velegnet til lagring af komplicerede objekter, da den navigerer og behandler disse objekter væsentlig hurtigere end man ville kunne i en relationel database. Dette er meget velegnet til netop forskerverdenen, men derimod nærmest irrelevant i forhold til enterprise-applikationer. Her anvendes databaser normalt til lagring af væsentlig simplere datastrukturer, hvorfor en relationel database er mere anvendelig. I modsætning til den konceptuelle datamodel man anvender i objektorienterede databaser, findes den relationsbaserede datamodel 1 som anvendes i relationelle databaser. Relationsbaseret data består af data med interne relationer mellem de forskellige dele af dataene. Databaserne har en del fordele ved bl.a. ved at være hurtige at søge i, man kan lave meget specifikke forespørgsler på kryds og tværs af tabeller og en korrekt normaliseret relationel database gør det endda muligt at opdatere dele af det samlede data uden at låse uberørte dele af databasen. Den relationelle databasemodel blev opfundet i 1969 og har siden hen dannet grundlag for langt de fleste enterprise-systemer. Det er uden tvivl indenfor forretningsverdenen at der er 1 Relationel Model (se kildeangivelse side 7) Databaser for udviklere 3

4 flest penge at tjene, hvilket også har ført til at der gennem tiden er blevet fokuseret meget på udviklingen indenfor dette segment. Optimeringerne af databaserne er sket både ydelsesmæssigt f.eks. i form af optimerede algoritmer og indeks-strukturer, samt sikkerhedsmæssigt hvor transaktionsstyringen bliver bedre og bedre til at sikre mod inkonsistens under samtidige operationer i databasen. Det at de relationelle databaser har et så kraftigt segment i ryggen, gør altså at de på mange punkter, er de objektorienterede databaser overlegne. Det er derfor også meget attraktivt at kunne anvende de relationelle databaser, selvom man faktisk anvender objektorienteret programmering. De relationelle databaser og den konceptuelle datamodel er dog to ting der ikke umiddelbart kan kombineres. Nedenfor ses et klassediagram over klasserne Skole og Elev. Der kan under en skole tilknyttes et vilkårligt antal elever. Dette ville i en konceptuel model oftest implementeres ved hjælp af en collection af Elev på Skole klassen. Ser vi på samme eksempel oprettet i en relationel database ville det fremstå som nedenstående. Første tabel vil indeholde alle skolerne i systemet. Derudover ville man skulle bruge en tabel til elevernes data. For at indikere tilknytningen til den enkelte skole, er det nødvendigt at lave en fremmednøgle til Skoler-tabellen. Denne oprettes som en ekstra attribut på Elever-tabellen og man vil derefter så kunne joine Skoler-tabellen på Elever-tabellen. Som ovenstående eksempel illustrerer, er det to vidt forskellige måder at arbejde på, selv når man taler om opbevaring af simple datastrukturer. Hvis man så begynder at tænke på koncepter som f.eks. lagring af nedarvede objekter, bliver problemet kun endnu større. Data mapping For at løse problemet med forskellen fra den relationelle model til den konceptuelle model, har man gennem tiden opfundet forskellige løsninger. Fælles for dem alle er, at det arbejde der udføres, er en mapning mellem databasens tabeller og de objekter man arbejder med i hukommelsen. Disse løsninger betegnes som data abstraktions lag, og placeres mellem domænelaget og selve databasen. Man kan betegne data abstraktions laget som en tolk der kan arbejde med objekter i applikationen, og med et vilkårligt sprog i den underliggende datakilde. Databaser for udviklere 4

5 Mapning går derfor ud på at man laver et led imellem værdierne som gemmes på objekterne i hukommelsen, ned i de tilsvarende tabeller i databasen. Selvom denne mapning lyder ret simpel, har den også potentiale til at give virkelig meget arbejde. Afhængigt af hvor kompliceret en domæne-model man arbejder med, kan vedligehold af ens mapninger til databasen hurtigt blive et utroligt omfattende og uoverskueligt stykke arbejde. Det kan desuden være svært at få anvendt begreber som transaktionsstyring og lazy-loading, hvis man selv programmerer ens SQL kald direkte i data abstraktions laget. Heldigvis er det et kendt problem, og der er derfor kommet adskillige værktøjer som har til formål at hjælpe med at få gjort mapningen mellem modellen og databasen, altså udarbejdelsen af data abstraktions laget, så smertefri som muligt for udvikleren. Disse værktøjer bliver betegnet som ORM-værktøjer (). Et af de mere kendte værktøjer er Hibernate-frameworket til Java, som blev udgivet i første udgave i Dette værktøj er et framework til at indbygge i applikationer, som gør det muligt at få mappet rækker i tabellen over til data der kan arbejdes med i applikationen. Hibernate frameworket blev hurtigt ret populært idet det er open source, og selvom der findes utallige alternativer må Hibernate anses som værende en af de mest kendte. Da Hibernate er baseret på Java, er det ikke muligt at anvende det i.net miljøet. Heldigvis er projektet dog blevet porteret til.net platformen under navnet NHibernate. Udviklingen er på nuværende tidspunkt drevet af et meget aktivt community, hvilket vil sige at der konstant bliver lavet forbedringer og rettelser, når der opdages fejl eller nye gode ideer. NHibernate anses derfor som værende et af de førende ORM værktøjer til.net platformen, ved siden af produkter som SubSonic, Persistor, Linq-2-SQL og Microsofts Entity Framework. Bag om NHibernate NHibernate blev udgivet i 2005, af Tom Barrett. Det er efterfølgende blevet kastet lidt frem og tilbage mellem en række forskellige udviklere som har været ansvarlige for projektet, for til sidst at ende som et community-drevet open-source projekt. Værktøjet består af en række.dll-filer man indlejrer i sit projekt og herefter har man et framework til data adgang man kan programmere op imod. NHibernate understøtter en række forskellige databaser, hvilket faktisk gør det muligt at have den samme kodebase til at understøtte forskellige databaser uden at skulle ændre i programkoden. Man programmerer imod NHibernate-laget og NHibernate klarer så adgangen til databasen via de konfigurationer man angiver. NHibernate er baseret på XML-filer til både konfiguration og mapning, hvilket for nye brugere kan virke en smule uoverskueligt at komme i gang med. Det er også et af de meget store kritikpunkter for NHibernate, at indlæringskurven kan virke rimelig stejl. Som alternativ til XML-filerne kan man hente Fluent NHibernate 2, der gør det muligt at konfigurere NHibernate 2 Fluent NHibernate (se kildeangivelse på side 8) Databaser for udviklere 5

6 direkte i stærkt typet kode, med en mere programmør-venlig syntaks. Denne tilgang er noget mere overskuelig og fleksibel, hvilket har gjort det til praksis at man ofte anvender Fluent i begyndelsesfasen hvor man har mange ændringer i arkitekturen, for så at skifte til den XMLbaserede konfiguration, når arkitekturen er fastlagt. Der findes en række forskellige mønstre der kan anvendes, når man taler om database mapning. De to mest brugte er Active Record 3 og Repository 4. Det er derfor også de to typiske løsninger der bruges med NHibernate. Repository kan anses som værende en database-controller som sørger for al kommunikation med databasen. Den adskiller i høj grad modellen fra selve datalaget, da man har en hel separat klasse der arbejder med objekter på den ene side, og persistenslaget (via NHibernate) på den modsatte side. Ønsker man at gemme data i databasen, sendes dette objekt til Repository et som så tager sig af resten. Det er også igennem Repository et at updates og deletes foretages. Ønsker man at hente data ud af databasen, kalder man Repository et med de kriterier ens query har. Repository et udfører så et query via NHibernate og sender objekter retur til kalderen. Active Record er en smule anderledes, da man i dette mønster gør de enkelte objekter ansvarlige for at opdatere sig selv i databasen. Det vil sige at foretages der en ændring, er det objektet selv der kender til databasen og hermed er ansvarlig for at ændringen persisteres. Når objekter indlæses, indeholder de også selv koden til at indlæse deres attributter direkte fra databasen. Forskellen mellem de to mønstre er primært hvor man placerer kendskabet til persistenslaget. Repository fremlægges af Martin Fowler som værende bedre til større og mere komplicerede systemer, hvor Active Record er fint til mindre systemer. Jeg finder det dog mere overskueligt at anvende Repository selv i mindre systemer, og med NHibernate som en hjælp til udarbejdelsen af koden, er det virkelig ikke meget mere arbejde man lægger i at få en væsentlig mere overskuelig løsning. Transaktioner er også væsentlig lettere at implementere i en Repository-baseret løsning frem for en Active Record løsning. Begge dele er muligt, men eftersom man under Repository, samler alle databaseoperationer i én klasse, er det noget nemmere at implementere transaktioner ved udførsel af flere handlinger, i dette mønster. Anvendelse af NHibernate Under sammenligningen mellem den konceptuelle og den relationelle model, anvendte jeg et eksempel med skoler og elever. Dette er et godt eksempel til at demonstrere brugen af NHibernate, da det har relationer mellem data, og samtidig kan laves uden at der behøver programmeres andet end skelettet af en model samt selve datalaget. Jeg har valgt at 3 Martin Fowler Patterns of Enterprise Application Architecture (s. 160) 4 Martin Fowler Patterns of Enterprise Application Architecture (s. 322) Databaser for udviklere 6

7 programmere en løsning 5 baseret på Repository-pattern, da denne virker som den mest anvendte løsning, samt den der formår at give den mest klare adskillelse af datalag og model. Til løsningen bruger jeg Fluent NHibernate tilføjelsen, da den gør det væsentligt lettere for nybegyndere at starte med NHibernate. De grundlæggende klasser der arbejdes ud fra er Skole og Elev, hvor methods bliver erklæret som virtual så de senere kan overrides. Når disse klasser er defineret, oprettes der mapninger som beskriver hvordan værdierne på klasserne, skal gemmes i databasen. Her defineres ved hjælp af lambda udtryk at der skal oprettes et ID som svarer til ID et på objektet, samt at der oprettes mapninger til de enkelte attributter. I mapningen for Skoleobjektet defineres desuden en 1-til-mange relation på Elever, hvilket hjælper NHibernate til at vurdere hvordan tabellerne skal opbygges. Jeg anvender i denne løsning Eager-loading da der ikke umiddelbart er et behov for lazy-loading. De klasser vi har nu, fortæller NHibernate hvordan objekterne skal gemmes. Det eneste der så umiddelbart mangler er selve konfigurationen til NHibernate som beskriver hvor vi ønsker at den skal arbejde. Dette gøres i repository klassens constructor, hvor vi både opretter en konfiguration samt et session factory. 5 Den færdige løsning kan hentes via link i kildeangivelsen (side 9) Databaser for udviklere 7

8 Da Repository et har til formål at være ansvarlig for adgangen til databasen, er det desuden nødvendigt at der er implementeret funktioner til at lave CRUD 6 -operationer. Disse er ret simple og anvender en session fra Session Factory et til at oprette en transaktion hvori der så bliver udført de nødvendige operationer. Idet der anvendes using sætninger, lukkes både transaktionen og sessionen ned igen. Vælger man ikke at bruge using, er det vigtigt at huske at lukke forbindelserne igen, da forbindelser til serveren er dyre og bør lukkes ved endt brug. Vi har nu defineret selve data adgangen, og der er derfor kun tilbage at anvende repository et. Jeg har lavet en simpel test hvori jeg opretter en række objekter og derefter anvender instanser af repository-klassen til at gemme disse objekter i databasen. En instans af repository-klassen er ansvarlig for at gemme en bestemt slags objekt i databasen, og det er derfor nødvendigt at oprette et repository både for Skole og Elev. Repository-klassen er dog generisk og kan derfor anvendes med vilkårlige klasser som arbejdsobjekter, uden at der skal ændres i den. Til sidst oprettes der nye objekter i modellen, som oprettes via et query gennem repositoryklassen og man kan dermed konstatere at NHibernate har hentet objekterne fra databasen. Hvis man tager et kig på databasen via Management Studio ser man også at NHibernate automatisk har oprettet tabeller meget lig de tidligere nævnte i rapporten, med de korrekte data. 6 Create-Read-Update-Delete basis funktioner for et datalag. Databaser for udviklere 8

9 Konklusion Jeg har gennem udarbejdelsen af rapporten fået øget mit kendskab til de problemer der kan opstå under anvendelse af objektorienteret programmering og relationelle databaser. Jeg har desuden fået læst om de tilgængelige værktøjer til afhjælpning af denne problematik og konkluderet at NHibernate angiveligt virker som det mest anvendte ORM-værktøj indenfor.net verdenen. Dette værktøj valgte jeg at afprøve for at se hvordan det virkede samt om det var til at finde ud af, eller om der var hold i de kritikpunkter der har været nævnt mht. sværhedsgraden. Efter at have arbejdet med værktøjet kan jeg konkludere at det ved hjælp af Fluent NHibernate faktisk er rimelig overskueligt at komme i gang med at bruge NHibernate. Det virker som det skal, og løser rigtig meget af det manuelle arbejde der ville være i at skrive en database-mapper selv. Desuden er det rigtigt nemt at omkonfigurere Fluent NHibernate hvis der opstår en ændring i opbygningen af databasen, hvilket ville være et større stykke arbejde med en manuel datamapper. Min konklusion er at NHibernate bestemt er besværet værd da det løser utrolig mange af de problemer der måtte være. Det kan være svært at komme i gang med, men når man først har fået fat i det, virker det som et rigtig godt og gennemført værktøj. Databaser for udviklere 9

10 Kildeangivelser Anvendelse af NHibernate (NHibernateEksempel.zip) Patterns of Enterprise Application Architecture Martin Fowler (Addison Wesley) ISBN-13: Relationel Model Wikipedia NHibernate Forge Fluent NHibernate NHibernate Wikipedia ADO.NET Entity Framework - Wikipedia Databaser for udviklere 10

Object-Relational Mapping

Object-Relational Mapping Object-Relational Mapping Skriftligt arbejde i forbindelse med eksamen i Databaser for udviklere Studerende: Henrik Rossen Jakobsen Vejleder: Allan Helboe 07-06-2010 Indhold Indledning... 2 Problemformulering...

Læs mere

Database for udviklere. Jan Lund Madsen PBS10107

Database for udviklere. Jan Lund Madsen PBS10107 Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated

Læs mere

Hvorfor skal vi bruge objekt orienteret databaser?

Hvorfor skal vi bruge objekt orienteret databaser? OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal

Læs mere

Tietgenskolen - Nørrehus. Data warehouse. Database for udviklere. Thor Harloff Lynggaard DM08125

Tietgenskolen - Nørrehus. Data warehouse. Database for udviklere. Thor Harloff Lynggaard DM08125 Tietgenskolen - Nørrehus Data warehouse Database for udviklere Thor Harloff Lynggaard DM08125 Juni 2010 Indhold Beskrivelse... 3 Data warehouse... 3 Generelt... 3 Sammenligning... 3 Gode sider ved DW...

Læs mere

Casper Fabricius http://casperfabricius.com. ActiveRecord. O/RM i Ruby on Rails

Casper Fabricius http://casperfabricius.com. ActiveRecord. O/RM i Ruby on Rails Casper Fabricius http://casperfabricius.com ActiveRecord O/RM i Ruby on Rails Casper Fabricius Freelance webudvikler - casperfabricius.com 9 års erfaring med webudvikling 6 år med ASP/ASP.NET/C# 3 år med

Læs mere

Arkitektur principper og design mønstre til realisering af enterprise applikationer baseret på rige domænemodeller (og.net)

Arkitektur principper og design mønstre til realisering af enterprise applikationer baseret på rige domænemodeller (og.net) Arkitektur principper og design mønstre til realisering af enterprise applikationer baseret på rige domænemodeller (og.net) Kim Harding Christensen EOS A/S Margrethepladsen 3 8000 Århus TLF: 8732 8787

Læs mere

Studieordning del 3-2014

Studieordning del 3-2014 Studieordning del 3-2014 Valgfag Datamatiker AP Graduate in Computer Science Version 1.1 Revideret august 2014 Side 0 af 6 del 3 Valgfag 1. Valgfrie uddannelseselementer...2 2. Valgfaget Android...2 3.

Læs mere

IT-arkitektur. IT-arkitektur Arkitektur på forskellige niveauer. Efter denne lektion skal du:

IT-arkitektur. IT-arkitektur Arkitektur på forskellige niveauer. Efter denne lektion skal du: IT-arkitektur IT-arkitektur Arkitektur på forskellige niveauer Slide no.: 1 Efter denne lektion skal du: Kunne gøre rede for de centrale elementer der kan indgå i en IT-arkitektur Kunne gøre rede for IT-arkitektur

Læs mere

Procesbeskrivelse - Webprogrammering

Procesbeskrivelse - Webprogrammering Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...

Læs mere

Data Warehouse Knowledge is Power - Sir Francis Bacon -

Data Warehouse Knowledge is Power - Sir Francis Bacon - Data Warehouse 4. sem. datamatiker uddannelse Tietgen Skolen Odense Skrevet af Troels Markvard Andersen (DM08228) Knowledge is Power - Sir Francis Bacon - Troels Markvard Andersen Side 1 af 8 Forord /

Læs mere

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5 Databaser og SQL Introduktion til SQL Kap 1-5 1 Dagens gang Databaser Database begreber Mapning af klasser til relationel model Normalisering Opgaver til næste gang 2 Databasebegreber A database is a:

Læs mere

Udfordringer og problemstillinger. En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling

Udfordringer og problemstillinger. En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling Java og JEE 1 2 Udfordringer og problemstillinger En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling 3 Generelt om Java og JEE 4 Generelt, I Man undervurderer hvor mange

Læs mere

Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder.

Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder. .NET UDVIKLER NATIONALITET: DANSK PROFIL Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder. Stor erfaring omkring databasedesign, datahåndtering og MS

Læs mere

Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Hassansalem.dk/delpin User: admin Pass: admin BACKEND Hassansalem.dk/delpin User: admin Pass: admin BACKEND 1/10 Indledning Dette projekt er den afsluttende del af web udvikling studiet på Erhvervs Lillebælt 1. semester. Projektet er udarbejdet med Del-pin

Læs mere

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet.

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet. MOX og APOS2 Forord Dette dokument er en del af APOS version 2 manualerne. APOS version 2 (APOS2 herefter) er et organisation, klassifikation og personale system baseret på Sag & Dokument standarderne.

Læs mere

OPC Access 3.0 opdatering via Stored Procedure

OPC Access 3.0 opdatering via Stored Procedure OPC Access 3.0 opdatering via Stored Procedure Dette dokument gennemgår et eksempel på, hvordan OPC Access 2.0 kan konfigureres til at opdatere en database via en stored procedure. OPC ACCESS 2.0 OPDATERING

Læs mere

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning: Introduktion til EA3 Mit navn er Marc de Oliveira. Jeg er systemanalytiker og datalog fra Københavns Universitet og denne artikel hører til min artikelserie, Forsimpling (som også er et podcast), hvor

Læs mere

Sammenligning af Objekt-orienteret databaser og Relationelle databaser.

Sammenligning af Objekt-orienteret databaser og Relationelle databaser. Sammenligning af Objekt-orienteret databaser og Relationelle databaser. Af Louis Fleron Databaser OODBMS og RDBMS PBS10101 Louis Fleron Side 2 Af 11 Indholdsfortegnelse 1. Forord....3 2. Hvad er et OODBMS?...3

Læs mere

Indholdsfortegnelse. Systembeskrivelse kapitel 8 Administrationsdatabase

Indholdsfortegnelse. Systembeskrivelse kapitel 8 Administrationsdatabase Indholdsfortegnelse 5. Administrationsdatabase... 2 5.1 Metadata... 2 5.2 Administrationsdata... 3 5.2.1 Indstillingsmuligheder... 3 5.2.2 Webside... 4 5.2.3 Klikafgift (Udgået)... 4 5.2.4 Modtageboks...

Læs mere

Database "opbygning"

Database opbygning Database "opbygning" Dette områder falder mest under en DBA's ansvarsområde. Det kan sagtens tænkes at en database udvikler i nogle situationer vil blive nød til at oprette produktions og test) databaser,

Læs mere

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4

IT opgave. Informationsteknologi B. Vejleder: Karl. Navn: Devran Kücükyildiz. Klasse: 2,4 IT opgave Informationsteknologi B Vejleder: Karl Navn: Devran Kücükyildiz Klasse: 2,4 Dato:03-03-2009 1 Indholdsfortegnelse 1. Indledning... 3 2. Planlægning... 3 Kommunikationsplanlægning... 3 Problemstillingen...

Læs mere

Internet Information Services (IIS)

Internet Information Services (IIS) Internet Information Services (IIS) Casper Simonsen & Yulia Sadovskaya H1we080113 06-11-2013 Indholdsfortegnelse Problemformulering... 2 Hvorfor:... 2 Hvad:... 2 Hvordan:... 2 Problembehandling... 3 Introduktion...

Læs mere

PHP kode til hjemmeside menu.

PHP kode til hjemmeside menu. PHP kode til hjemmeside menu. Home Hovedmenu 1 Hovedmenu 2 Hovedmenu 3 Hovedmenu 4 Undermenu 1 Breadcrumb Her vises indholdet af den valgte side Undermenu 2 Undermenu 3 Undermenu 4 Evt. en mulighed for

Læs mere

Software Projekt NoSQL vs RMDB

Software Projekt NoSQL vs RMDB Software Projekt NoSQL vs RMDB Skrevet af Carsten Sørensen, Hans Jørgen Frandsen, Peter Haislund Department of Computer Science, University of Aarhus Aabogade 34, 8200 Arhus N, Denmark 201200089, 19960442,

Læs mere

PHP Quick Teknisk Ordbog

PHP Quick Teknisk Ordbog PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,

Læs mere

Skriftlig opgave. Designtanker i database-nære systemer

Skriftlig opgave. Designtanker i database-nære systemer Skriftlig opgave til eksamen for faget»databaser«designtanker i database-nære systemer Martin Ancher Holm Juni 2010 1 Intro Denne skriftlige opgave indeholder kort de daglige tanker jeg har omkring design

Læs mere

2. Systemarkitektur... 2

2. Systemarkitektur... 2 Indholdsfortegnelse 2. Systemarkitektur... 2 2.1 Præsentationsserverarkitektur... 3 2.2 Applikationsserverarkitektur... 7 Version 7.0 Side 1 af 7 5. Systemarkitektur Arkitekturen for Nyt BBR bygger på

Læs mere

Tidsregistrering. Jacob E., Jacob H., Mathias, Mads H., Jonatan og Dan 3.4. Informationsteknologi B. Roskilde Tekniske Gymnasium 25-11-2014

Tidsregistrering. Jacob E., Jacob H., Mathias, Mads H., Jonatan og Dan 3.4. Informationsteknologi B. Roskilde Tekniske Gymnasium 25-11-2014 2014 Tidsregistrering Jacob E., Jacob H., Mathias, Mads H., Jonatan og Dan 3.4 Informationsteknologi B Roskilde Tekniske Gymnasium 25-11-2014 Indholdsfortegnelse 1 Indledning... 3 2 User stories... 3 3

Læs mere

Curriculum Vitae. Type År Sidst Niveau Type År Sidst Niveau

Curriculum Vitae. Type År Sidst Niveau Type År Sidst Niveau Curriculum Vitae Personoplysninger Navn: Søren Hvidkjær Andersen Adresse: Solbærmarken 5 By: 8641 Sorring Mobil: +45 24 82 98 87 E-mail: soren@hvidand.dk Født: 16. Juli 1971 Civilstand: Introduktion Gift

Læs mere

Udvikling af DOTNET applikationer til MicroStation i C#

Udvikling af DOTNET applikationer til MicroStation i C# Udvikling af DOTNET applikationer til MicroStation i C# Praktiske tips for at komme i gang. Gunnar Jul Jensen, Cowi Hvorfor nu det? Mdl og Vba kan det hele Fordelene er : udviklingsmiljøet er eksternt

Læs mere

DATABASE - MIN MUSIKSAMLING

DATABASE - MIN MUSIKSAMLING DATABASE - MIN MUSIKSAMLING I dette forløb skulle vi lære om databaser, som bruger sproget SQL. SQL står for Structured Query Language. Det bruges til at vise og manipulere data, gemt i en database. I

Læs mere

15. oktober. Maskine Udlejning. Jacob Weng, Jeppe Boese og Mads Anthony. Udlejningsvirksomhed. Roskilde Tekniske Gymnasium 3.4

15. oktober. Maskine Udlejning. Jacob Weng, Jeppe Boese og Mads Anthony. Udlejningsvirksomhed. Roskilde Tekniske Gymnasium 3.4 Maskine Udlejning 15. oktober 2010 Jacob Weng, Jeppe Boese og Mads Anthony Roskilde Tekniske Gymnasium Udlejningsvirksomhed 3.4 Indholdsfortegnelse Problemformulering:... 2 Planlægning:... 2 Analyse af

Læs mere

Web CMS kontra Collaboration

Web CMS kontra Collaboration Web CMS kontra Collaboration Sammenligning mellem Sitecore og Sharepoint Lars Fløe Nielsen, Evangelism ln@sitecore.net Page 1 Sitecore har dyb integration til Microsoft Sitecore har integration til mange

Læs mere

ITWIN1. Afsluttende projekt. PhotoDays. Benjamin Sørensen (02284) Tomas Stæhr Berg (03539)

ITWIN1. Afsluttende projekt. PhotoDays. Benjamin Sørensen (02284) Tomas Stæhr Berg (03539) ITWIN1 Afsluttende projekt PhotoDays Benjamin Sørensen (02284) Tomas Stæhr Berg (03539) ITWIN1 - AFSLUTTENDE PROJEKT PhotoDays Benjamin Sørensen & Tomas Stæhr Berg 02284 & 03539 1 1 Underskrifter Rapporten

Læs mere

ADIS, WS og Meta Service

ADIS, WS og Meta Service ADIS, WS og Meta Service Om ADIS, Web Services, Værktøjer og Meta Service. Michael Jacobsen Technology Network Management Agenda ADIS og dens udvidelse ISOagriNET Web Service med eller uden fuldt objektmodel

Læs mere

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6 Side 1 af 6 Indholdsfortegnelse INDHOLDSFORTEGNELSE 1 INTRO 3 STARTEN AF SPECIALISERINGEN 3 ANKOMST TIL SKOTLAND 4 DATABASER 5 NETVÆRK 5 INTERAKTION 5 AFSLUTNING AF SPECIALISERINGEN 5 KONKLUSION 6 Side

Læs mere

Optimering af fraværsregistrering

Optimering af fraværsregistrering Journal Optimering af fraværsregistrering Eksamensprojekt i Programmering C, klasse 3.4, 2011 AFLEVERET 09-05-2014 Indhold Abstract... Fejl! Bogmærke er ikke defineret. Problemformulering... 2 Produktet...

Læs mere

Der er forsøgt skrevet en lille notits hver gang der er lavet noget, dog kan der være nogle ting som ikke er blevet kommenteret.

Der er forsøgt skrevet en lille notits hver gang der er lavet noget, dog kan der være nogle ting som ikke er blevet kommenteret. Indhold 1 Logbog 2 1.1 Log den 01-02-10.................................. 2 1.2 Log den 02-02-10.................................. 2 1.3 Log den 08-02-10.................................. 2 1.4 Log den

Læs mere

Notat ang. visning af dagsordener og referater på hjemmesiden ved skift til SBSYS esdh system.

Notat ang. visning af dagsordener og referater på hjemmesiden ved skift til SBSYS esdh system. Notat ang. visning af dagsordener og referater på hjemmesiden ved skift til SBSYS esdh system. I dette notat gøres rede for Hvordan visning af dagsordener og referater teknisk set kører i dag, Valg af

Læs mere

Videregående Programmering for Diplom-E Noter

Videregående Programmering for Diplom-E Noter Videregående Programmering for Diplom-E Noter 1. Uddelegering Ét af de væsentlige principper i objektorienteret programmering er, at enhver klasse selv skal kunne "klare ærterne". Enhver klasse skal altså

Læs mere

EG Data Inform. Byggebasen. WCF og webservices. Jens Karsø

EG Data Inform. Byggebasen. WCF og webservices. Jens Karsø EG Data Inform Byggebasen WCF og webservices Jens Karsø 10 Indholdsfortegnelse Byggebasen Services indledning... 2 Målsætning... 2 Valg af teknologier... 3 Kommunikationsmodel for byggebasen... 3 Services.byggebasen.dk...

Læs mere

EasyIQ Opdatering 5.2.3 -> 5.4.0

EasyIQ Opdatering 5.2.3 -> 5.4.0 EasyIQ Opdatering 5.2.3 -> 5.4.0 Kunde: Forfatter: Thomas W. Yde Systemtech A/S Side: 1 af 17 1 Indholdsfortegnelse 2 GENERELT OMKRING FORUDSÆTNINGEN OG OPDATERINGS FORLØBET... 3 2.1 FORUDSÆTNINGER...

Læs mere

Installation og Drift. Aplanner for Windows Systemer Version 8.15

Installation og Drift. Aplanner for Windows Systemer Version 8.15 Installation og Drift Aplanner for Windows Systemer Version 8.15 Aplanner for Windows løsninger Tekniske forudsætninger Krav vedr. SQL Server SQL Server: SQL Server 2008 Express, SQL Server 2008 R2 eller

Læs mere

Indholdsfortegnelse for kapitel 1

Indholdsfortegnelse for kapitel 1 Indholdsfortegnelse for kapitel 1 Forord.................................................................... 2 Kapitel 1.................................................................. 3 Formål............................................................

Læs mere

Indholdsfortegnelse for kapitel 3

Indholdsfortegnelse for kapitel 3 Indholdsfortegnelse for kapitel 3 Kapitel 3 Design............................................................ 2 Database........................................................... 3 ER-diagram.................................................

Læs mere

Bypassing the. Brian Marick

Bypassing the. Brian Marick Bypassing the GUI Brian Marick Problemer med GUI GUI er designet for mennesker, ikke automatisering Automatiseret test af GUI kræver specialiseret værktøjer Har tildens til at bryde ned når der sker ændringer

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Abstrakte datatyper C#-version

Abstrakte datatyper C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype

Læs mere

Introduktion til OPC Access

Introduktion til OPC Access Introduktion til OPC Access OPC Access anvendes til at kommunikere med jeres produktionsudstyr via OPC. OPC Access kombinerer en SQL Server med OPC, således at jeres produktionsudstyr kobles sammen med

Læs mere

APEX i Praksis Martin B. Nielsen. Navn. MBNDATA Emne

APEX i Praksis Martin B. Nielsen. Navn. MBNDATA Emne APEX i Praksis Martin B. Nielsen Navn MBNDATA Emne Foredragsholderen Oracle/APEX Arkitekt/udvikler/DBA Siden Oracle v.5 (1988) APEX Siden 2007, men før (Database provider, HTMLDB) MBNDATA siden 1996 MBNDATA

Læs mere

Hvad er Objekter - Programmering

Hvad er Objekter - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som

Læs mere

STS Designdokument. STS Designdokument

STS Designdokument. STS Designdokument STS Designdokument i STS Designdokument STS Designdokument ii REVISION HISTORY NUMBER DATE DESCRIPTION NAME 0.3 2013-01 N STS Designdokument iii Indhold 1 Introduktion 1 2 Arkitekturoverblik 1 2.1 Eksterne

Læs mere

Installation og Drift. Aplanner for Windows Systemer Version 8.15.12

Installation og Drift. Aplanner for Windows Systemer Version 8.15.12 Installation og Drift Aplanner for Windows Systemer Version 8.15.12 Aplanner for Windows løsninger Anbefalet driftsopsætning Cloud løsning med database hos PlanAHead Alle brugere, der administrer vagtplaner

Læs mere

Microsoft Pinpoint Guide

Microsoft Pinpoint Guide Microsoft Pinpoint Guide Indhold: 01 Kom på Pinpoint Opret en ny profil Rediger din profil 02 Opret en annonce 03 Brug dit dashboard 04 Optimer din Pinpoint profil Kundevurderinger 05 Søgning på Pinpoint

Læs mere

DB Flow. fra prototype til forretningsplan

DB Flow. fra prototype til forretningsplan DB Flow fra prototype til forretningsplan ii Institut for Datalogi Selma Lagerlöfs Vej 300 9220 Aalborg Øst Telefon: (45) 9635 8080 Telefax: (45) 9815 9889 http://www.cs.aau.dk Titel: DB Flow fra prototype

Læs mere

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0 SmartFraming Et vindue til nationale sundhedssystemer Version 3.0 Infrastruktur i dagens sundheds IT Det sundhedsfaglige personale benytter sig i dag af en række forskellige systemer i forbindelse med

Læs mere

Opret ODBC datakilde Vejledning

Opret ODBC datakilde Vejledning Vejledning V. 1 APRIL 2011 FOR KUNDESERVICE Indholdsfortegnelse 1 Indledning... 3 1.1 Formål... 3 1.2 Målgruppe... 3 1.3 Krav... 3 2 Opret ODBC Datakilde (Open Database Connectivity)... 3 2.1 Forbindelse

Læs mere

Opsætning af udviklerversion af Microsofts open source XDS.b fra Codeplex Projekt: Net4Care Version: V0.1, 2012-06-12

Opsætning af udviklerversion af Microsofts open source XDS.b fra Codeplex Projekt: Net4Care Version: V0.1, 2012-06-12 XDS Konfigurationsvejledning Opsætning af udviklerversion af Microsofts open source XDS.b fra Codeplex Projekt: Net4Care Version: V0.1, 2012-06-12 Indholdsfortegnelse Indledning... 2 Miljø... 2 Opsætning

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2014 HTX

Læs mere

SQL ny front-end

SQL ny front-end SQL 2016 - ny front-end Overblik De største nyheder i SQL Server 2016 finder vi på front-enden, hvor en helt ny og redesignet rapporteringsplatform i Reporting Services er den fremadrettede grundstamme

Læs mere

Curriculum vitae. Personlige oplysninger. Præsentation. Projekterfaring

Curriculum vitae. Personlige oplysninger. Præsentation. Projekterfaring Curriculum vitae Personlige oplysninger Navn: Michael Sig Adresse: Hesseløgade 4, 3.th. 2100 København Ø Telefonnr.: 40 97 50 49 www: www.sig-logik.dk Email: michael@sig-post.dk Alder: 32 år (født d. 21.9.1974)

Læs mere

KIH Database. Systemdokumentation for KIH Databasen. 1. maj 2013. Side 1 af 13

KIH Database. Systemdokumentation for KIH Databasen. 1. maj 2013. Side 1 af 13 KIH Database Systemdokumentation for KIH Databasen 1. maj 2013 Side 1 af 13 Indholdsfortegnelse Indholdsfortegnelse... 2 Indledning... 3 Systemoverblik... 3 KIH Database applikationsserver... 5 Forudsætninger

Læs mere

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Kursusgang 11 Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Design af brugerflader 11.1 Samme sted Forskellige steder Sidste kursusgang Samtidigt

Læs mere

PID2000 Archive Service

PID2000 Archive Service PROLON CONTROL SYSTEMS Herstedvesterstræde 56 DK-2620 Albertslund Danmark Tlf.: (+45) 43620625 Fax: (+45) 43623125 PID2000 Archive Service Bruger vejledning Juni 2002 Denne manual beskriver brugen af softwaren

Læs mere

AARHUS UNIVERSITET. Økonomi 17. maj 2016

AARHUS UNIVERSITET. Økonomi 17. maj 2016 Vejledning til opdatering af excel ark i forbindelse med overgang til ny LDV AU skal overgå til en ny version af LDV, så AU er på niveau med resten af staten mht. til versionen af LDV. Excel ark som er

Læs mere

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE Fact sheet Indholdsfortegnelse Fact Sheet Gantt kort Valgt af virksomhed Brainstorm Attribut tabel ER-diagram Skitse MySQLWorkbench

Læs mere

Identifikation af planer der ikke findes i PlansystemDK vha. datasættet... 9

Identifikation af planer der ikke findes i PlansystemDK vha. datasættet... 9 Vejledning i brug af Tingbogsudtrækket Version 1.0 af 1. juli 2009 Indhold Indledning... 1 Planer i Tingbogen... 2 Planer i PlansystemDK... 3 Sammenhæng mellem Tingbogen og PlansystemDK... 3 Datastruktur...

Læs mere

educasoft - en professionel samarbejdspartner med speciale i uddannelse!

educasoft - en professionel samarbejdspartner med speciale i uddannelse! Velkommen til educasoft's hjemmeside educasoft - en professionel samarbejdspartner med speciale i uddannelse! Professionelle undervisere Undervisning i virksomheden Undervisning dag/aften eller week-end

Læs mere

Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge:

Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge: Side 1 af 5 Ide med Diff. Min ide med differenertierings modulet er at lave et program som kan vise 3d objekter, og få lavede en konverter som kan konventer 3ds filer over til noget som flash kan bruge.

Læs mere

Studieordning del 4-2014

Studieordning del 4-2014 Studieordning del 4-2014 Fagbeskrivelser Datamatiker AP Graduate in Computer Science Version 1.2 Revideret januar 2015 Side 0 af 10 Indhold del 4 Fagbeskrivelser 1. Faget Programmering (PRO)...2 2. Faget

Læs mere

IT projekt uge 4 9. Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013

IT projekt uge 4 9. Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013 PHP-Projekt IT projekt uge 4 9 Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013 4-3-2013 Indholdsfortegnelse Indledende afsnit... 2 Brainstorm... 2 User stories... 2 Problemformulering...

Læs mere

HOSTINGPLANER DDB CMS HOS DBC

HOSTINGPLANER DDB CMS HOS DBC HOSTINGPLANER DDB CMS HOS DBC Indhold Hostingplaner DDB CMS hos DBC... 1 1 Hostingplaner... 3 2 Definitioner... 4 2.1 Miljøer... 4 2.2 Support... 4 2.2.1 DDB CMS - 1. line support... 4 2.2.2 DDB CMS -

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2013 HTX

Læs mere

Studieordning del 3-2015

Studieordning del 3-2015 Studieordning del 3-2015 Valgfag, PBA i økonomi og informationsteknologi Bachelor of Business Economics and Information Technology Version 1.0 Revideret december 2014 Side 0 af 4 Indhold del 3 Valgfag

Læs mere

STUDIEORDNING. professionsbachelor i softwareudvikling

STUDIEORDNING. professionsbachelor i softwareudvikling STUDIEORDNING for professionsbachelor i softwareudvikling Revideret 9. juni 2017 Indhold 1. Uddannelsens mål for læringsudbytte... 2 2. Uddannelsen indeholder fire nationale fagelementer... 3 2.1. Udvikling

Læs mere

Grundlæggende OOA - OOD

Grundlæggende OOA - OOD Grundlæggende OOA - OOD Dette kursus henvender sig til personer, der har lille eller ingen erfaring med softwareudvikling. Med udgangspunkt i UML opbygges et solidt kendskab til softwareudviklingens kunst

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 29. februar, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

GEONIS Spildevand. fact sheet. Planlæg, dokumentér og vedligehold

GEONIS Spildevand. fact sheet. Planlæg, dokumentér og vedligehold JUNE 2015 Planlæg, dokumentér og vedligehold understøtter alle krav for planlægning, dokumentation og vedligeholdelse af et spildevandssystem. Data model Data modellen fra GEONIS spildevands løsning supportere

Læs mere

TEKNISKE FORHOLD VEDR. ADGANG TIL VP.ONLINE. Brugervejledning

TEKNISKE FORHOLD VEDR. ADGANG TIL VP.ONLINE. Brugervejledning TEKNISKE FORHOLD VEDR. ADGANG TIL VP.ONLINE vp.online 2011 01-10-2011 Indholdsfortegnelse 1 PROBLEMER MED AT SE VP.ONLINE... 3 2 BROWSER KONFIGURATION... 6 3 SKRIVEADGANG TIL DREV... 7 4 SESSION TIMEOUT

Læs mere

Christian Becker GIS konsulent. Figurer og indhold i dette oplæg, er inspireret af og gengivet fra diverse White papers og PowerPoints fra ESRI.

Christian Becker GIS konsulent. Figurer og indhold i dette oplæg, er inspireret af og gengivet fra diverse White papers og PowerPoints fra ESRI. Slotsgade 22 6000 Kolding Tlf. 75 53 73 93 Fax 75 53 72 93 http://www.artogis.dk ArcGI S Server GEODATABASE struktur Christian Becker GIS konsulent Figurer og indhold i dette oplæg, er inspireret af og

Læs mere

IT-Basecamp 2013. Real World Java EE Patterns Adam Bien. Real World Java EE Patterns, Adam Bien Copyright Lund&Bendsen A/S

IT-Basecamp 2013. Real World Java EE Patterns Adam Bien. Real World Java EE Patterns, Adam Bien Copyright Lund&Bendsen A/S IT-Basecamp 2013 Real World Java EE Patterns Adam Bien 1 Indhold Lidt om mig Baggrund for valg af emnet Bogens opbygning Fra J2EE til JEE 5/6 Overflødiggjorte patterns Fremhæve et par patterns 2 Kenneth

Læs mere

Erfaringer med CPR-replikering

Erfaringer med CPR-replikering Erfaringer med CPR-replikering Dette dokument beskriver en række overvejelser vi har gjort os i forbindelse med at vi har udviklet en Proof of Concept (PoC) af en CPR-replikeringstjeneste for KOMBIT. CPRs

Læs mere

Studieordning del 4-2014

Studieordning del 4-2014 Studieordning del 4-2014 Fagbeskrivelser Datamatiker AP Graduate in Computer Science Version 1.1 Revideret august 2014 Side 0 af 8 Indhold del 4 Fagbeskrivelser 1. Faget Programmering (PRO)...2 2. Faget

Læs mere

Advanceret dokument- og sagshåndtering med SharePoint Server 2007. Michael Ekegren Manager - Netcompany A/S

Advanceret dokument- og sagshåndtering med SharePoint Server 2007. Michael Ekegren Manager - Netcompany A/S Advanceret dokument- og sagshåndtering med SharePoint Server 2007 Michael Ekegren Manager - Netcompany A/S Omkring denne session.. Bruger du SharePoint til reel dokumenthåndtering? Bruger du SharePoint

Læs mere

Det Nye Testamente lyd-app. v. Stefan Lykkehøj Lund

Det Nye Testamente lyd-app. v. Stefan Lykkehøj Lund Det Nye Testamente lyd-app v. Stefan Lykkehøj Lund Indledning For nogle år siden, fik jeg Det Nye Testamente som lydbog på USB. I starten lyttede jeg en del med tiden blev det dog til mindre og mindre.

Læs mere

CLR Integration. Af Torsten Holtse, pbs Indhold

CLR Integration. Af Torsten Holtse, pbs Indhold CLR Integration Af Torsten Holtse, pbs10104 Indhold Opgavebeskrivelse... 2 Introduktion... 2 CLR Integrations muligheder... 2 Stored Procedures, Functions og Triggers... 2 Aggregates og User-defined Types...

Læs mere

Integrationer imellem AX2012 og Winformatik Økonomisystem vers. 3.0

Integrationer imellem AX2012 og Winformatik Økonomisystem vers. 3.0 Integrationer imellem AX2012 og Winformatik Økonomisystem vers. 3.0 Indhold Dokumenthistorik... 1 Baggrund... 1 Oversigt over valgt løsning... 2 Proof of Concept: tre-trins raket... 3 Trin 1... 3 Opgaver

Læs mere

Roskilde Tekniske Gymnasium. Eksamensprojekt. Programmering C niveau

Roskilde Tekniske Gymnasium. Eksamensprojekt. Programmering C niveau Roskilde Tekniske Gymnasium Eksamensprojekt Programmering C niveau Andreas Sode 09-05-2014 Indhold Eksamensprojekt Programmering C niveau... 2 Forord... 2 Indledning... 2 Problemformulering... 2 Krav til

Læs mere

Styring af testmiljøer almindelig god praksis

Styring af testmiljøer almindelig god praksis White paper Styring af testmiljøer almindelig god praksis Søren Beyer Nielsen Ph.D., M.Sc. Pragmatic Consult A/S v. 1.2 Pragmatic Consult A/S Stadagervej 42 2730 Herlev Danmark Tel: 44 92 23 77 Fax: 44

Læs mere

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt.

Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Merging og hashing Mål Målet for disse slides er at beskrive nogle algoritmer og datastrukturer relateret til at gemme og hente data effektivt. Dette emne er et uddrag af kurset DM507 Algoritmer og datastrukturer

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2013 HTX

Læs mere

Jan Hansen, AMP CMDB Specialist

Jan Hansen, AMP CMDB Specialist Jan Hansen, AMP CMDB Specialist Hansen@ampartner.com Hvad er en CMDB? Et register over enheder (ITIL sk: Configuration Items eller CIs) CIs indeholder relevante oplysninger: attributter Sammenhænge eller

Læs mere

DM531 - Softwarearkitektur Projekt - TaxaTracer, Statisk Kort. Martin Dissing-Hansen 251088 Alexander Poopeiko 090288 Jens Riise Danielsen 100267

DM531 - Softwarearkitektur Projekt - TaxaTracer, Statisk Kort. Martin Dissing-Hansen 251088 Alexander Poopeiko 090288 Jens Riise Danielsen 100267 DM531 - Softwarearkitektur Projekt - TaxaTracer, Statisk Kort Martin Dissing-Hansen 251088 Alexander Poopeiko 090288 Jens Riise Danielsen 100267 December 17, 2009 3.1 Valg at brugsmønster til udvidelse

Læs mere

Installation af kalibreringsprogrammet. (BDE versionen)

Installation af kalibreringsprogrammet. (BDE versionen) Installation af kalibreringsprogrammet. (BDE versionen) Installationen består egentlig af to (3) dele: 1 del der vedrører selv programmet med tilhørende filer ( det kan opdateres ) 2 en del der vedrører

Læs mere

Design dit eget computerspil med Kodu

Design dit eget computerspil med Kodu Design dit eget computerspil med Kodu I sensommeren var vi to CFU-konsulenter ude i SFO en på Borup Ris Skolens Grønbro-afdeling. Her var vi sammen med børnene for at få erfaringer i arbejdet med platformen

Læs mere

Langtved Data A/S Nyhedsbrev

Langtved Data A/S Nyhedsbrev Langtved Data A/S Nyhedsbrev Nr. 2 Indledning I denne udgave af nyhedsbrevet har vi valgt at sætte fokus på interessante faciliteter som allerede benyttes af nogle af vores kunder og som kunne være interessante

Læs mere

Anvend dine SAS -programmer som SAS Stored Processes

Anvend dine SAS -programmer som SAS Stored Processes Anvend dine SAS -programmer som SAS Stored Processes Christina Johansson & Thomas Bjerggaard SAS Institute A/S indicates USA registration. Emner Hvad er en STP? Hvordan danner man en STP? Hvem kan bruge

Læs mere

Softwareløsninger til dit netværk

Softwareløsninger til dit netværk www.draware.dk Softwareløsninger til dit netværk Overvågning Side 4 Analyse Side 11 Sikkerhed Side 14 Administration Side 21 Asset management Side 27 Dokumentation Side 30 Kundecitater Side 35 Bedre overblik

Læs mere

Database optimering - Indeks

Database optimering - Indeks Database optimering - Indeks Alle kender til dette irritations moment, hvor programmet man sidder og arbejder med, bare ikke er hurtigt nok. Selvom det kun drejer sig om få sekunder man sidder og venter,

Læs mere