Produktrapport. Hovedprosjekt ved Høgskolen i Oslo

Størrelse: px
Begynne med side:

Download "Produktrapport. Hovedprosjekt ved Høgskolen i Oslo"

Transkript

1 Produktrapport Hovedprosjekt ved Høgskolen i Oslo Våren

2 1. Forord Produktrapporten beskriver systemet vi har utviklet i hovedprosjektet Metagen. Hovedprosjektet er et avsluttende prosjekt for bachelorstudiet i dataingeniør og informasjonsteknologi ved Høgskolen i Oslo. Informasjon om prosessen som førte frem til systemet finnes i prosessrapporten. Dokumentet er beregnet på vår oppdragsgiver A-Pressen Interaktiv (API) som skal vedlikeholde og videreutvikle systemet og andre som måtte ha interesse av å sette seg inn i MetaGen. Leseren av dokumentet bør har kjennskap til Java og objektorientert programmering, samt generell kunnskap om faget data, for å få en fullverdig forståelse av dokumentet. 2

3 Innhold Produktrapport 1 Hovedprosjekt ved Høgskolen i Oslo 1 Våren Forord 2 3. Innledning 4 4. Systemet MetaGen Arkitekturdiagrammet for systemet 7 5 Valg og vurdering av verktøy Eclipse (med webtools) SubClipse M2clipse 7 M2clipse er en pluging som gjør det mulig å bruke maven i eclipse. Plugingen er ment å gi Maven-støtte i Eclipse Tomcat Spring Framework Hibernate Ant/Maven Subversion Java SE JDK MySQL 5 (InnoDB, UTF-8) 9 6. Kort innføring av Hibernate Databasen Tabell artikkel Tabell politiker Tabell parti Tabell artikkel_has_politiker XML XML parsing Pakage parse Pakage service Pakage web Package events MetaEx Biblioteker i prosjektet Biblioteker for systemet MetaEx 22 3

4 3. Innledning MetaGen automatisk genererer relevant tilleggsinformasjon til artikler basert på innhold. Dette inkluderer både ekstra informasjon om temaer som tas opp, men også referanser til andre artikler som handler om lignende tema. MetaGen kommuniserer med eksternt system, og gir ut info på forespørsel. Selve kommunikasjonen foregår i et strukturert XML format. Selv om systemet til en viss grad klare å oppdatere seg selv når artikler legges ut, så trengte vi et brukergrensesnitt for manuell overstyring og administrasjon av selve systemet. 4

5 4. Systemet I dette kapittelet beskrives MetaGen og de komponentene rundt systemet. 4.1 MetaGen Metagen er navnet på hovedprosjektet vårt, dette navnet ble født da vi forsto hva systemet skulle gjøre. Nemmelig berike artikkelen ved å generere metainformasjon (tileggsinformasjon) om innholdet. Systemet skal tas i bruk når en bruker skal lese en vilkårlig artikkel i en av APIs nettaviser. Metagen skal hente ekstra informasjon om innholdet til artikkelen uten at brukeren gjør noe ekstra. Informasjonen blir automatisk generert og brukes til å berike artikkelen. Det kan oppstå to situasjoner når systemet kjører. Figurene nedenfor viser situasjonene. Det kan oppstå to situasjoner når systemet kjører. Figurene nedenfor viser situasjonene. Når MetaGen finner artikkel iden i cache databasen skjer det følgende: 5

6 Når MetaGen ikke finner artikkel iden i cache databasen skjer det følgende: 6

7 4.1.2 Arkitekturdiagrammet for systemet Arkitekturdiagrammet viser relasjonene mellom de forskjellige delene i MetaGen og omgivelsen rundt MetaGen. 5 Valg og vurdering av verktøy I dette kapittel tar vi for oss de verktøyene som har blitt brukt under utviklingen av systemet. 5.1 Eclipse (med webtools) Eclipse er et rammeverk for utvikling av Java programmer. Et utviklingsverktøy som har en del nyttige plugings. Eclipse er kompatibel med de fleste platformene. Det ble brukt ulike pluging funksjoner som M2clipse, subclipse, tomcat. Hensikten med Eclipse er å lage et lett miljø for å utvikle programvarer. Eclipse har prosjekthåndtering, støtter versjonskontroller og har integrerte debuggin. 5.2 SubClipse SubClipse er en pluging som muliggjør Subversion tilkobling i Eclipse, noe som ikke er standard. Vi kan si at det er en ekstramodul i Eclipse, som gjør at vi kan lett synkronisere koden mot subversion serveren uten å starte eksterne programmer. 5.3 M2clipse M2clipse er en pluging som gjør det mulig å bruke maven i eclipse. Plugingen er ment å gi Mavenstøtte i Eclipse. 7

8 5.4 Tomcat 6 Tomcat er en en Servlet container og webserver som tolker JSP-kode og Java Servleter. Det er denne webserveren systemet vår kjøres på. 5.5 Spring Framework 2.5 Spring er et gratis rammeverk med mange tjenester og muligheter. Det er en åpen kildekode applikasjon for Java platformer. Vi kan si at Spring er en samling av mindre rammeverk og de fleste av disse rammeverkene er dannet for å fungere uavhengige av hverandre, men de gir bedre funksjonalitet når de blir brukt sammen. Den sørger også for håndteringen mellom objektene og enkler gjør bruken av Hibernate. 5.7 Hibernate Hibernate er en av de mest populære ORM verktøyene for Java, og fungerer veldig bra sammen med Spring Framework. ORM står for Object Relational Mapping, og er et rammeverk som gjør det enklere å kommunisere med en relasjonsdatabase fra et objektorientert miljø. ORM- en tar seg av lagringen av dataene fra objektene i databasen når det er nødvendig, og henter ut dataene og plassere dem i objektet når det er nødvendig. Ved bruk av denne type ORM-teknologi kan man enkelt bytte database på et senere tidspunkt dersom er ønskelig. 5.8 Ant/Maven Maven er et verktøy og rammeverk for automatisert bygging, testing og deployment av Javaapplikasjoner. Maven har også en veldig avansert system for konfigurasjonsstyring av både egen koder og biblioteker. Ant og Maven er byggeprogrammer for å automatisere utrulling av programmet, og for å kjøre unittester. 5.9 Subversion Subversion(SVN) er et versjonkontrollsystem. Altså et system som kan holde orden på forskjellige versjoner av en eller flere filer. Flere personer kan jobbe på den samme filen. 8

9 5.10 Java SE JDK 6 Java er hovedteknologien for hele prosjektet. Java er for det første et objektorientert programmeringsspråk. Javas utvikler er James Gosling og andre utviklere hos Sun Microsystems. Det finnes forskjellige versjoner av Java som kan brukes. Standardutgaven heter Java SE. Java SE inneholder det mest grunnleggende man trenger for å kunne kjøre, samt utvikle Java-kode MySQL 5 (InnoDB, UTF-8) MySQL er en relasjonsdatabase og ordet SQL står for Structured Query Language. En database er enkelt et sted hvor du kan lagre informasjon i. MySQL5 er en type database med versjon 5 som har støtte for avansert funksjonalitet som lagrede prosedyrer, triggere og views. Databasen kjører på de fleste operativsystemene som finnes der ute og kan kobles til mange programmeringsspråk som Java, PHP, C++, Perl og etc. InnoDB er en slags driver eller tabellhåndterer som tar for seg måten data lagres i databasen.utf8 er et tegnsett som kan representere alle tegn i standarden Unicode. UTF-8 representerer nummerte samling av tegn med mellom en og fire byte og er konstruert slik at de første 128 tegnene samsvarer med US-ASCII-standarden.. 9

10 6. Kort innføring av Hibernate Hibernate er et såkalt Objekt/Relasjons Mapping rammeverk som enklere gjør bruken av databaseaksess i et objektorientert miljø. Grunnen til vi valgte dette rammeverket er fordi API hadde tidligere erfaring med det og Hibernate går for å være det beste alternativet for Java og er den mest utbredte rammeverket for java.en utvikler trenger ikke å programmere veldig mye for å aksesserre databasen noe av de største fordelene med Hibernate. Hibernate har også sitt eget query språk, HQL et språk som ligner veldig på SQL, men er spesiallaget for å gjøre spørringer i databaser med persisterte objekter. HQL er blant annet objektorientert, noe som gjør det veldig lett å hente ut ønsket informasjon. 6.1 Databasen Databasen metagen inneholder data som vi har valgt å ta med fra Stortinget og i cache databasen inneholder det kun referanseinfo. Her er Er-diagrammet: Navne på databasen og javabønene vi brukte for aksesssere objektene brukte vi standard navn konvensjon for database vi har nevnt i mer deltaljert i prosessrapporten Tabell artikkel artikkel_artikkel_id: Artikkelens id. Bruker for å søke etter bestemt artikkel, eller hente ut referanseinfo om artikkelen lastupdate: Dette feltet beskriver tiden artikkelen ble sist oppdatert 10

11 6.1.3 Tabell politiker politiker_politiker_id: Poltikerens id. Brukes for unikt identifisere en politiker. fornavn: Poltikerens fornavn etternavn: Politikerens etternavn født: Politikerens bursdag død: For de politikerene som har død initialer: Politikerens initialer parti_parti_id: Identifikatoren til parti for politikeren Tabell parti parti_parti_id: Parti id. Unikt id for hvert parti. navn: Parti navn beskrivelse: Beskrivelse av partiet forkortelse: Forkortelse av partiet, mest brukt for søking Tabell artikkel_has_politiker artikkel_artikkel_id: To femmednøkler blir primærnøkkel kalles composite key politiker_politiker_id: To fremmednøkkel blir primærnøkkel kalles composite key Relasjonen mellom artikkel og politikere var mange-til-mange relasjon. Det samme gjaldt for artikkel og parti. Et artikkel kan inneholdet enten ingen eller mange politikere og det samme gjelder for artikkel og parti. Et artikkel kan inneholdet enten null eller mange partier og vice verca. Dette løses med en toveis-en-til-mange link-tabell mellom entitetene (artikkel_has_politiker),(artikkel_has_parti). Samtidig er det et en-til-mange forhold mellom politiker og et parti fordi en politiker har et felt i politikertabellen som forteller hvilket parti en politiker tilhører. 11

12 6.2 Objektorienterte miljøet Javabønnene vi bruker for å aksesserre databasen er helt ordinær Java klasse med get og set metoder for alle feltene i databasen tabellen samtidig en default konstruktør. Det som skjedde var at objektene ble tolket av Hibernate mapping som sørget for å lese relasjonen mellom objektet og tabellen i databasen. 12

13 Her et eksempel med en Java bønnene vi har brukt som mapper opp mot en tabell i databasen: public class Politiker { private Long id; private String fornavn; private String etternavn; private Date fodt; private String parti; private String initialer; private Set<Artikkel> artikkel = new HashSet(); Politiker(){} public Long getid() { return id; } public void setid(long id) { this.id = id; } public String getfornavn() { return fornavn; ////RESTEN AV METODENE ER UTELATT FOR ENKELHETSSKYLD// public void addtoartikkel(artikkel a){ this.getartikkel().add(a); a.getpolitiker().add(this); } public void removefromartikkel(artikkel a){ this.getartikkel().remove(a); a.getpolitiker().remove(this); 13 }

14 Her er tabellen vi mapper mot Javabønnen legg merke til likheten mellom dem: Her er eksempel på mapping dokumentet som forteller Hibernate om klassen Politiker.java: <hibernate-mapping> <class name="events.politiker" table="politiker"> <id name="id" column="politiker_id"> <generator class="native"/> </id> <property name="fornavn"/> <property name="etternavn"/> <property name="parti"/> <property name="fodt" type="date"/> <property name="initialer" /> <set name="artikkel" table="artikkel_has_politiker"> <key column="politiker_politiker_id"/> <many-to-many column="artikkel_artikkel_id" class="events.artikkel"/> </set> </class> Taggen class forteller hvilken klasse (name) som skal mappes til hvilken tabell (table). I dette eksempelet var klassenavnet Politiker og tabell navnet politiker. 14

15 Taggen id beskriver hvilken rad i tabellen objektet representer. Vi valgte at databasen bestemte id til objektene ved at det stod generator lik nativ. Taggen property forteller hvilken Java klasse som mappes til hvilken kolonne i database raden. Vi har unnlat å ta med column elementet siden Hibernate oftest klarte selv å tolke hvordan databasen typen skulle tolkes til Java typen. Siden det var mange-til-mange relasjon mellom artikkel og politiker og mellom parti og artikkel valgte vi å programmere mappingen i bidirectional som står for at assosiasjonene var toveis og ikke enveis. Det vil si vi trenge å kunne slå opp artikkel ut ifra en politiker og kunne slå opp politiker ut ifra artikkel. For å sørge for at assosiasjonen ble toveis valgte vi å ta med set name lik artikkel og set name lik politiker. Alle mappingene vi brukte har vi tatt med i konfigurasjonsfilen Hibernate.cfg.xml Her er et eksempel på hvordan vi har gjort det: <mapping resource="events/parti.hbm.xml"/> 15

16 7. XML XML står for Extensible Markup Language. Kort sakt er XML for å strukturere data eller beskrive data (metadata) i elementer ved å bruke tekstkoding eller markeringskoder. 7.1 XML parsing Det XML- parsere gjør er å analysere XML- teksten og generere trestruktur(setter teksten inn i objekter). XML-parseren kan også sjekke at dokumentet er i henhold til forhåndsdefinert språk.(validering) I vårt system brukes XML-parsingen når MetaGen ikke finner artikkel iden i cache databasen. Når MetaGen sjekker artikkel iden mot cache databasen, og finner ikke iden fra før, henter den xml representasjonen av artikkelen og representasjonen blir parset av Java og putta i Java objekter. Altså xml filen(representasjonen av artikkelen) blir parset til Java objekter. Vi brukte Jakarta Commons Digester for å lage Java objekter av xml. Commons Digester ble laget slik at koden som trengs for å opprette Java objekter av xml fil skulle bli standardisert, slik at det kunne brukes i mange og forskjellige prosjekter som parser xml filer til Java objekter. 16

17 KODING: Nedenfor ligger det en bit av kode som vi brukte for parsingen. Digester digester = new Digester(); digester.setvalidating( false ); digester.addobjectcreate( "io/article", Article.class ); digester.addobjectcreate( "io/article/field", Field.class ); digester.addsetproperties("io/article/field", "name", "name"); digester.addbeanpropertysetter("io/article/field", "innhold"); digester.addsetnext("io/article/field", "addfield", "parse.field"); digester.addobjectcreate( "io/article/field/p", P.class ); digester.addbeanpropertysetter("io/article/field/p", "inn"); digester.addsetnext("io/article/field/p", "addp", "parse.p"); digester.addobjectcreate( "io/article/field/p/b", B.class ); digester.addbeanpropertysetter("io/article/field/p/b", "inn"); digester.addsetnext("io/article/field/p/b", "addb", "parse.b"); Som det ble nevnt ovenfor er dette standard, det eneste som er annerledes er det som ligger inni i parentesene, det har med navn på attributtene til xml filen å gjøre. Digester koden blir brukt annerledes hvis xml filen er bygd på en annet måte. En liten forklaring av koden: digester.addobjectcreate( "io/article", Article.class ); Denne setningen er for laging av Java objekter. Koden går del for del inn i xml filen. io/article er den øverste delen av xml. Koden finner du i klassen Article. 17

18 Hierarkiet som vi har på xml filen som er ovenfor er: <io> <article> <filed> 'io' 'io/article' 'io/article/field' <name/> 'io/article/field/name' <innhold/> 'io/article/field/innhold' <p> <b/> 'io/article/field/p' 'io/article/field/p/b' </p> </field> </article> </io> I tillegg til å bruke Digester strukturen for parsing har vi en join metode får å samle inn all teksten av xml fila i et streng, metoden ser slikt: public void joinp(){ for(int i=0; i< ps.size();i++){ if(ps.get!= null){ ps.get.joinb(); innhold+= ps.get.getinn(); } 18

19 8. Kort beskrivelse av klasser i MetaGen Her har vi en listet over klasser i MetaGen med en kort forklaring. 8.1 Pakage parse I disse klassene Article.java, Field.java, B.java og P.java bruker man Digester for å parse xml felter med samme navn som klassens objekt har. 8.2 Pakage service FetchXML.java er klassen som kjører Digester klassene. RegexSearch Når man parser alle xml filene alt blir satt inn i en streng. Det klassen sørger for er å gå igjennom alle tabellene i databasen og ser om innholdet matcher med strengen. 8.3 Pakage web AdminController.java beskriver brukergrensesnitt for administrator. AdminCommand.java Klassen fanger parameter som sendes via en url adresse. CommandController.java Klassen tar imot en forespørsel om en artikkel, henter artikkelen og sender forespørselen tilbake. ArtikkelCommand.java fanger parameter artikkel id via en url adresse. 8.4 Package events Artikkel.java Det er en Javabønne som beskriver artikkel som kobler til en database.(pojo) Politiker.java Det er en Javabønne som beskriver politikker som kobler til en database.(plan old Java objekt) 19

20 9. MetaEx MetaEx er lagd for å hente ned informasjon fra nett og generere SQL INSERT setninger på bakgrunn av dette. Programmet bruker pakken HTTPClient for kommunikasjon mot web for å laste ned sider. Kommunikasjonen mot websiden skjer i UTF-8 format, og det er viktig at tekstbehandleren koden skrives i er satt til UTF-8, ellers kan det oppstå feil. For å kunne gjøre søk mot personsøk siden på stortinget er man nødt til å initialisere en slags kontakt først for å få tak i session/cookie og to valideringsvariabler. Etter den første kontakten tar HTTPClient seg av implementeringen av sessions/cookies automatisk bak kulissene. Programmet sender i tillegg med de to valideringsvariablene med hver forespørsel som POST verdier for at stortinget.no skal godkjenne http-requestene ved søk. Sendes det søkekriterium uten disse verdiene vil forespørselen feile. Under testing ble det brukt en intercepting proxy for å lytte til http-kommunikasjonen mellom nettleseren og websiden. Dette ble gjort for at MetaEx skulle kunne etterligne nettleseren best mulig, og det var da enklere å oppdage feil ved testing. For å bruke en proxy for å sjekke forespørslene var nettleseren nødt til å sette tilkoblingen sin til å bruke proxy serveren som var satt opp. I dette tilfellet localhost:8081. Denne endringen ble også gjort i MetaEx under testing for å sammenligne forespørslene. 20

21 10. Biblioteker i prosjektet Vi har brukt en del biblioteker i systemet vårt. Dette er en oversikt over ulike biblioteker vi har tatt i bruk: Hibernate3.jar ant jar ant-antlr jar antlr jar asm.jar asm-attrs.jar commons-collections jar commons-logging jar dom4j jar jta.jar log4j jar commons-beanutils beta.jar commons-digester-1.8.jar mysql-connector-java bin.jar maven-ant-tasks catalina.jar naming-resources.jar 21

22 10.1 Biblioteker for systemet MetaEx Her er det en oversikt over de forskjellige jar filene som brukes til MetaEx systemet: codec.jar commons-httpclient-3.1.jar logging.jar logging-adapt.jar logging.api.jar 22

Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008

Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008 Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008 Skrevet av Ole Myrbakken, Fadima Mohamoud, Orji Okoroafor, Karen Arrendondo Side 1 PRESENTASJON Prosjekt tittel: Prosjektperiode: MetaGen 7.jan

Detaljer

Kravspesifikasjon Hovedprosjekt ved Høgskolen i Oslo Våren 2008

Kravspesifikasjon Hovedprosjekt ved Høgskolen i Oslo Våren 2008 Kravspesifikasjon Hovedprosjekt ved Høgskolen i Oslo Våren 2008 1.Forord I dette dokumentet skal vi gi et bildet av de kravene som er satt til prosjektet. Dokumentet er hovedsakelig beregnet som et styringsdokument

Detaljer

Prosessrapport. Hovedprosjekt ved Høgskolen i Oslo. Våren 2008

Prosessrapport. Hovedprosjekt ved Høgskolen i Oslo. Våren 2008 Prosessrapport Hovedprosjekt ved Høgskolen i Oslo Våren 2008 1 1. Sammendrag A-Pressen Interaktiv (heretter referert til som API) ønsket seg et system for kryssreferanser av metainformasjon. Systemet henter

Detaljer

S y s t e m d o k u m e n t a s j o n

S y s t e m d o k u m e n t a s j o n S y s t e m d o k u m e n t a s j o n Monitorering av produksjonsløyper ved Nasjonalbiblioteket - Project BAKE Utarbeidet av: Einar Wågan Kristian Akerhei Studium: Informasjonssystemer Innlevert: 26.5.2015

Detaljer

Hovedprosjekt i data ved Høgskolen i Oslo våren 2007

Hovedprosjekt i data ved Høgskolen i Oslo våren 2007 Hovedprosjekt i data ved Høgskolen i Oslo våren 2007 Appendiks Høgskolen i Oslo Student: Martin Oppegaard Gruppe: 07-12 Dato: 25. mai 2007 Veileder ved HIO: Eva Vihovde Oppdragsgiver: Bekk Consulting AS

Detaljer

1 Forord. Kravspesifikasjon

1 Forord. Kravspesifikasjon [Type text] [Type text] 3/5 Hovedprosjekt ingeniørutdanningen 09 Kravspesifikasjon Tittel på hovedprosjektet Tarantell Dashboard Gruppe 28 Bjørn Ove Pedersen Stian Dalviken Antall sider 6 Intern veileder

Detaljer

Testsituasjon Resultat Kommentar. Fungerer som det skal!

Testsituasjon Resultat Kommentar. Fungerer som det skal! Test- rapport Testsituasjon Resultat Kommentar Test av PHP-variablene. Sjekke om de er riktig deklarert, og om de kommer med fra form til database Alle variablene som skal leses fra konfigurasjonssiden,

Detaljer

Å bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter

Å bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter Sortering og søking i Java-API-et Tabeller og Arraylister Comaparable Comparator equals() LC9D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc9d.php Høgskolen i Sør-Trøndelag,

Detaljer

Kjøre Wordpress på OSX

Kjøre Wordpress på OSX Kjøre Wordpress på OSX Alt etter hva du ønsker å bruke Webserveren til er det flere måter å gjøre dette på. Ønsker du kun en side som skal dele sider du lager manuelt, med PHP, GD etc eller med server

Detaljer

1. Innføring i bruk av MySQL Query Browser

1. Innføring i bruk av MySQL Query Browser Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Innføring i bruk av MySQL Query Browser Kjell Toft Hansen 28.02.2007 Lærestoffet er utviklet for faget LV338D Databaseadministrasjon 1. Innføring

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 Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Datateknikk Side 1 av 8 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Mandag, 23.05.05, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 3 oppgaver og

Detaljer

Innstallasjon og oppsett av Wordpress

Innstallasjon og oppsett av Wordpress Del 1 - Installasjon og oppsett Innstallasjon og oppsett av Wordpress Wordpress har blitt en veldig populær publiseringsplattform for websider. Uten særlige tekniske ferdigheter kan man sette opp profesjonelle

Detaljer

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider: Fra sist JSP - 2 Installasjon av Web-tjener Et enkelt JSP-script HTML statisk Forms Tags Ønsker dynamiske nettsider: Klientside-script/programmering Javascript, vbscript, applets Tjenerside-script/programmering

Detaljer

IN2000. Gjennomgang av tekniske oppgaver på prøveeksamen. Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge

IN2000. Gjennomgang av tekniske oppgaver på prøveeksamen. Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge IN2000 Gjennomgang av tekniske oppgaver på prøveeksamen Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge Hva er en Data Class i Kotlin? (1p) En data class er en klasse som brukes for å holde

Detaljer

Test Beskrivelse Resultat Innhenting CBIS Programmet mottar data fra CBIS OK, men kun. Innhenting Tellus Programmet mottar data fra Tellus OK

Test Beskrivelse Resultat Innhenting CBIS Programmet mottar data fra CBIS OK, men kun. Innhenting Tellus Programmet mottar data fra Tellus OK Forord Denne testrapporten beskriver testingen som har blitt utført i løpet av prosjektet. Vi har gjennom hele utviklingsprosessen testet koden manuelt ved hjelp av debugging og ved kjøring med sammenligning

Detaljer

Båtforening på nett. Produktrapport

Båtforening på nett. Produktrapport Båtforening på nett Hovedprosjekt våren 2009, Høgskolen i Oslo Prosjektgruppe 36 Vegard Skipnes, Rade Vuckovic & Frode Sørensen Produktrapport 1 Sammendrag Denne rapporten er en del av Hovedprosjektet

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Torsdag 15.06.06, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 1 oppgave

Detaljer

INF5120 Oblig 1c4 - Gruppe 19

INF5120 Oblig 1c4 - Gruppe 19 INF5120 Oblig 1c4 - Gruppe 19 Berge, Kristian, Trond og Fredrik Mapping av domenemodell mot EJB/WEB modell Teknologispesifikke valg PIM Class Model 1 PIM Service Model PIM class model PIM service model

Detaljer

Web fundamentals. Web design. Frontend vs. Backend 17.01.2008. Webdesign 17. januar 2008 3. Monica Strand

Web fundamentals. Web design. Frontend vs. Backend 17.01.2008. Webdesign 17. januar 2008 3. Monica Strand Web fundamentals Webdesign 17. januar 2008 Monica Strand Webdesign 17. januar 2008 1 Web design Fagområdet Web design inneholder flere disipliner Grafisk design Informasjonsdesign Brukergrensesnittdesign

Detaljer

CORBA Component Model (CCM)

CORBA Component Model (CCM) CORBA Component Model (CCM) INF5040 Høst 2005 Erlend Birkedal Jan Erik Johnsen Tore Ottersen Løkkeberg Denne presentasjonen CORBA Svakheter ved CORBA Object Model Komponenter CORBA Component Model Hva

Detaljer

Argumenter fra kommandolinjen

Argumenter fra kommandolinjen Argumenter fra kommandolinjen Denne veiledningen er laget for å vise hvordan man kan overføre argumenter fra kommandolinjen til et program. Hvordan transportere data fra en kommandolinje slik at dataene

Detaljer

Implementering av caching ved hjelp av Spring. Christian Vestøl 27.04.06

Implementering av caching ved hjelp av Spring. Christian Vestøl 27.04.06 Implementering av caching ved hjelp av Spring Christian Vestøl 27.04.06 Agenda Kort introduksjon til Spring med Spring Praktiske eksempler Forskjellige rammeverk for caching April 2006 2 Kort om Spring

Detaljer

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy Kapittel 13 Advanced Hypertext Implementation Martin Lie Ole Kristian Heggøy 08.11.04 Forbedring av arkitektur Problem med alt i ett -løsning: Spredning av forretningslogikk. Avhengighet mellom presentasjonssider

Detaljer

MySQL. Historikk. Nedlasting og installasjon

MySQL. Historikk. Nedlasting og installasjon 1 MySQL MySQL kan lastes ned gratis fra Internett (dev.mysql.com/doc). Vi forklarer hvordan man laster ned og installerer verktøyet, og også hvordan man kommer i gang med å lage databaser i MySQL. Historikk

Detaljer

file:///c:/users/michaelp/sites/dkdm/dw6/dreamweaver6.html

file:///c:/users/michaelp/sites/dkdm/dw6/dreamweaver6.html 1 of 9 15.04.2015 14:15 Spry og behaviours Både Spry and Behaviours er basert på programmeringsspråket Javascript. Javascript kjører i nettleseren og ikke på webserver som PHP og Perl. På en lignende måte

Detaljer

Testing av Noark 5 uttrekk med kdrs-toolboxvalidator og innsyn med kdrs-toolbox-innsyn. Thomas Sødring HiOA

Testing av Noark 5 uttrekk med kdrs-toolboxvalidator og innsyn med kdrs-toolbox-innsyn. Thomas Sødring HiOA Testing av Noark 5 uttrekk med kdrs-toolboxvalidator og innsyn med kdrs-toolbox-innsyn Thomas Sødring HiOA kdrs-toolbox Sammen med Torbjørn Assen har vi begynt utviklingsarbeidet med et sett med verktøy

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

Innledende Analyse Del 1.2

Innledende Analyse Del 1.2 Innledende Analyse Del 1.2 Arianna Kyriacou 1. juni 2004 Innhold 1 Spesifikk beskrivelse 2 1.1 Hovedmål............................... 2 1.2 Mål (mer konkret).......................... 2 1.3 Krav..................................

Detaljer

Produktrapport. Produktrapport. Hjelpemiddel portal for Parkinsonforbundet

Produktrapport. Produktrapport. Hjelpemiddel portal for Parkinsonforbundet Produktrapport Hjelpemiddel portal for Parkinsonforbundet 1 Innhold: Forord ------------------------------------------------------------------------------------------------------2 Planlegging og arbeidsmetode

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

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

Introduksjon til programmering og programmeringsspråk

Introduksjon til programmering og programmeringsspråk Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus https://code.org/ Veldig høy-nivå programmering med Scratch End-user programming Overtone, Tidal, etc., bygger

Detaljer

Forprosjekt gruppe 13

Forprosjekt gruppe 13 Forprosjekt gruppe 13 Presentasjon Tittel: Oppgave: Periode: Gruppemedlemmer: Veileder: Oppdragsgiver: Kontaktperson: Mobilbillett i HTML5 Utvikle en mobil billettautomat innenfor kategorien dedikert web

Detaljer

Obligatorisk oppgave 3 i Databaseadministrasjon.

Obligatorisk oppgave 3 i Databaseadministrasjon. Obligatorisk oppgave 3 i Databaseadministrasjon. Applikasjonsutvikling med databaser Gruppenummer 7 Av Kai Hagali Ole J. Schön Cato Goffeng Høgskolen i Østfold 22. Oktober 2012 Innhold 1 Tilkobling til

Detaljer

Bachelorprosjekt 2015

Bachelorprosjekt 2015 Bachelorprosjekt 2015 Høgskolen i Oslo og Akershus Tam Ha (s171513) Arslan Yousaf (s189135) Gabriel Noraker Alfarrustad (s161910) Eivind Lund (s180381) Phillip Padiernos Næss (s162951) Forprosjekt Prosjektets

Detaljer

Innholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10

Innholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10 1 Innholdsfortegnelse 1. Testing... 3 1.1 Feiltesting av koden... 3 1.2 Funksjonstesting:... 7 2. Kilder.10 2 1. Testing Testing av et system er nødvendig for å finne ut om systemet fungere slik det skal

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

Dette dokumentet er en produktrapport for vårt avsluttende hovedprosjekt våren 2008 ved høgskolen i Oslo, for ingeniør - avdelingen.

Dette dokumentet er en produktrapport for vårt avsluttende hovedprosjekt våren 2008 ved høgskolen i Oslo, for ingeniør - avdelingen. 1 Sammendrag Dette dokumentet er en produktrapport for vårt avsluttende hovedprosjekt våren 2008 ved høgskolen i Oslo, for ingeniør - avdelingen. Vår oppdragsgiver, ABTF hadde et ønske om en større web

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

En lett innføring i foreninger (JOINs) i SQL

En lett innføring i foreninger (JOINs) i SQL En lett innføring i foreninger (JOINs) i SQL Noen ord om forening (JOIN)! 2 JOINs til gjennomgang! 3 1. INNER JOIN! 3 Eksempel på [INNER] JOIN! 4 NATURAL JOIN! 5 Eksempel på NATURAL JOIN! 5 2. LEFT [OUTER]

Detaljer

HVA ER XML? extensible Markup Language En standardisert måte å strukturere ulike typer data Åpent format Enkelt:

HVA ER XML? extensible Markup Language En standardisert måte å strukturere ulike typer data Åpent format Enkelt: HVA ER XML? extensible Markup Language En standardisert måte å strukturere ulike typer data Åpent format Enkelt: Tagger/Noder Attributter Mest kjente XML-versjon er XHTML En mengde datakilder er tilgjengelige

Detaljer

Produktrapport. Utvikling av moduler til CMS for bonefish.no. Gruppe 08-23

Produktrapport. Utvikling av moduler til CMS for bonefish.no. Gruppe 08-23 Utvikling av moduler til CMS for bonefish.no Gruppe 08-23 Produktrapport for hovedprosjektet utvikling av moduler til CMS for bonefish.no ved Høgskolen i Oslo, avdeling for Ingeniørutdanning våren 2008.

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

Databaser kort intro. Tom Heine Nätt

Databaser kort intro. Tom Heine Nätt Databaser kort intro Tom Heine Nätt Agenda Hva er en database? Hva er SQL? Hente ut data fra en database SELECT Behandle data i en database (kort) CREATE TABLE, INSERT, UPDATE, DELETE Databaser med flere

Detaljer

Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet.

Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet. Produktrapport Forord Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet. Dataansvarlig eller supporter trenger informasjon om

Detaljer

Kravspesifikasjon MetaView

Kravspesifikasjon MetaView Kravspesifikasjon MetaView BACHELOROPPGAVE VÅREN 2014 1. Presentasjon Tittel: MetaView Oppgave: Lage en applikasjon og api som skal kommunisere med MetaVision slik at det skal bli enklere for leger og

Detaljer

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP.

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. 1 Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. (Læreboka kapittel 2-5) Legg merke til den første blokken,

Detaljer

SQL: Systemaspekter. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21

SQL: Systemaspekter. Evgenij Thorstensen V18. Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21 SQL: Systemaspekter Evgenij Thorstensen V18 Evgenij Thorstensen SQL: Systemaspekter V18 1 / 21 Oversikt Hvordan et DBMS er organisert (med psql som eksempel) Trelagsarkitektur og impedance mismatch Databasetilgangsmåter

Detaljer

Innhold Forord...3 Begreper og akronymer...4 Systembeskrivelse...5 Generelt...5 Funksjonelle krav...7 Ikke-Funksjonelle krav...9 Prioritering...

Innhold Forord...3 Begreper og akronymer...4 Systembeskrivelse...5 Generelt...5 Funksjonelle krav...7 Ikke-Funksjonelle krav...9 Prioritering... Innhold Forord...3 Begreper og akronymer...4 Systembeskrivelse...5 Generelt...5 Funksjonelle krav...7 Ikke-Funksjonelle krav...9 Prioritering...9 2 Forord Denne kravspesifikasjonen har blitt utviklet i

Detaljer

Oppgave 1 (Opprett en database og en tabell)

Oppgave 1 (Opprett en database og en tabell) Oppgave 1 (Opprett en database og en tabell) 1) I «Object Explorer» (i «SQL Server Management Studio»), høyreklikk over Databases : 1 2 2) Skriv så databasenavnet og klikk OK: 3) Plasser så kursoren på

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

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

Enkle generiske klasser i Java

Enkle generiske klasser i Java Enkle generiske klasser i Java Oslo, 7/1-13 Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Del 1: Enkle pekere Før vi tar fatt på det som er nytt i dette notatet, skal vi repetere litt

Detaljer

Artist webside. Gruppe medlemmer Joakim Kartveit. Oppdragsgiver Tetriz Event & Management. Frode Mathiesen. Gry Anita Nilsen.

Artist webside. Gruppe medlemmer Joakim Kartveit. Oppdragsgiver Tetriz Event & Management. Frode Mathiesen. Gry Anita Nilsen. Artist webside Innhold Artist webside...1 Gruppe medlemmer...1 Oppdragsgiver...1 Kontaktperson...2 Veileder...2 Oppgaven...2 Muligheter...2 Sammendrag...2 Dagens situasjon...2 Mål og rammebetingelser...3

Detaljer

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19 Prosedyrer Lars Vidar Magnusson October 26, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 26, 2011 1 / 19 Repetisjon om triggere og prosedyrer Triggere og prosedyrer ligner på hverandre

Detaljer

ADDML. Archival Data Description Markup Language. Generell del. Versjon PA 0.07 Sist oppdatert: TPD. ADDML_8_2.doc 03/03/2011 1(12)

ADDML. Archival Data Description Markup Language. Generell del. Versjon PA 0.07 Sist oppdatert: TPD. ADDML_8_2.doc 03/03/2011 1(12) ADDML Archival Data Description Markup Language Generell del Versjon PA 0.07 Sist oppdatert: 2010-09-16 TPD ADDML_8_2.doc 03/03/2011 1(12) Innledning... 4 Mål... 4 Historie... 4 Hvordan benytte ADDML...

Detaljer

Vårt system kan kjøres ved å skrive. STUD1 konto fredo 37 (holdeplass)

Vårt system kan kjøres ved å skrive. STUD1 konto fredo 37 (holdeplass) 1 Vårt system kan kjøres ved å skrive STUD1 konto fredo 37 (holdeplass) Holdeplass er frivillig. Dersom man kun sender linjenr finner systemet den nærmeste holdeplassen. Systemet returnerer de 3 neste

Detaljer

Forord Dette er testdokumentasjonen skrevet i forbindelse med hovedprosjekt ved Høgskolen i Oslo våren 2010.

Forord Dette er testdokumentasjonen skrevet i forbindelse med hovedprosjekt ved Høgskolen i Oslo våren 2010. TESTDOKUMENTASJON Forord Dette er testdokumentasjonen skrevet i forbindelse med hovedprosjekt ved Høgskolen i Oslo våren 2010. Dokumentet beskriver hvordan applikasjonen er testet. Dokumentet er beregnet

Detaljer

Final Projectreport. 091214 - Gry Skårbø

Final Projectreport. 091214 - Gry Skårbø Final Projectreport 091214 - Gry Skårbø December 2, 2009 Contents 1 Forord 5 2 Terminologi 6 2.1 Begreper................................ 6 2.2 Forkortelser.............................. 6 3 Innledning

Detaljer

Tjenestebeskrivelse Webhotelltjenester

Tjenestebeskrivelse Webhotelltjenester Tjenestebeskrivelse Webhotelltjenester Sist endret: 2004-12-01 Innholdsfortegnelse 1 INTRODUKSJON... 3 1.1 GENERELT... 3 1.2 NYTTEVERDI WEBHOTELLTJENESTER FRA TELENOR... 3 2 FUNKSJONALITET... 4 2.1 INNHOLD

Detaljer

3 Filstruktur. Slik ser filstrukturen til applikasjonen ut når den er lagt ut på server eller når den er deployet.

3 Filstruktur. Slik ser filstrukturen til applikasjonen ut når den er lagt ut på server eller når den er deployet. Driftsmanual - BAKE 1 Innledning Denne applikasjonen er skrevet i Spring framework og kjører på tomcat 7, og er avhengig av å ha kontakt med REST-tjenesten til produksjonsdatabasen. Det er lagt inn en

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

BOKMÅL Side 1 av 7. KONTINUASJONSEKSAMEN I FAG TDT4100 Objektorientert programmering / IT1104 Programmering, videregående kurs

BOKMÅL Side 1 av 7. KONTINUASJONSEKSAMEN I FAG TDT4100 Objektorientert programmering / IT1104 Programmering, videregående kurs BOKMÅL Side 1 av 7 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap KONTINUASJONSEKSAMEN

Detaljer

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8 PLANIA 8 SYSTEM KRAV Plania 8 Systemkrav.docx 27.04.2015 1 av 8 INNHOLD 1 INNLEDNING... 1-3 1.1 Generell beskrivelse... 1-3 1.1.1 Plania DESKTOP og Plania WEB... 1-3 2 SYSTEMKRAV... 2-4 2.1 Krav til ulike

Detaljer

SPARQL. Daniel Reinholdt. Trondheim Daniel Reinholdt (NTNU) SPARQL Trondheim / 17

SPARQL. Daniel Reinholdt. Trondheim Daniel Reinholdt (NTNU) SPARQL Trondheim / 17 SPARQL Daniel Reinholdt Trondheim 30.09.16 Daniel Reinholdt (NTNU) SPARQL Trondheim 30.09.16 1 / 17 Oversikt 1 SPARQL Hva er SPARQL? Fordeler med et språk som SPARQL 2 Grunnleggende informasjon Joseki

Detaljer

Http- og WebServices funksjoner

Http- og WebServices funksjoner Http- og WebServices funksjoner Side 1 Innholdsfortegnelse Innholdsfortegnelse Introduksjon Hvordan bruke HTTP(S) POST/GET funksjonene i TakeCargo Sende meldinger Motta meldinger (get) Oversikt over WebServices

Detaljer

Testrapport. Aker Surveillance. Gruppe 26. Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, 24.5.2013. Public 2013 Aker Solutions Page 1 of 5

Testrapport. Aker Surveillance. Gruppe 26. Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, 24.5.2013. Public 2013 Aker Solutions Page 1 of 5 Testrapport Aker Surveillance Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus Oslo, 24.5.2013 Public 2013 Aker Solutions Page 1 of 5 Innledning I denne rapporten vil vi skrive om testingen som

Detaljer

Dagbok. Januar. Uke 2 ( ) Uke 3 ( ) Uke 3 (17.01, 12:45-14:00)

Dagbok. Januar. Uke 2 ( ) Uke 3 ( ) Uke 3 (17.01, 12:45-14:00) Dagbok Januar Uke 2 (7.1-11.1) Vi har lest halvveis på standard dokumentasjon og jobbet med forprosjektrapport. Vi har hatt vårt første møte med den interne veilederen vår Tor Hasle. Vi fortalte om at

Detaljer

Pedagogisk regnskapssystem

Pedagogisk regnskapssystem av Benjamin Dehli og Jørgen Tellnes Innhold 1 Innledning 2 Om forprosjektet 2.1 Forprosjektgruppen 2.2 Målsetninger med forprosjektet 3 Beskrivelse av hovedprosjektet 3.1 Arbeidstittel 3.2 Prosjektgruppe

Detaljer

Eksamen i Internetteknologi Fagkode: IVA1379

Eksamen i Internetteknologi Fagkode: IVA1379 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: IVA1379 Tid: Mandag, 07.06.04, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 4 oppgaver

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

Test 2 OOP. - Prøveeksamen

Test 2 OOP. - Prøveeksamen Test 2 OOP - Prøveeksamen 2007 - Viktig: Jobb med oppgavene som om det var eksamen Ikke snakk med sidemann, ta korte pauser, benytt kun skriftlige hjelpemidler du hadde tenkt til å hatt med på eksamen.

Detaljer

1. NetBeans IDE: Lage en enkel mobilapplikasjon

1. NetBeans IDE: Lage en enkel mobilapplikasjon Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag NetBeans IDE: Lage en enkel mobilapplikasjon Mildrid Ljosland/Lene Hoff 09.09.2008 Lærestoffet er utviklet for faget SO350D J2ME for programmering

Detaljer

KRAVSPESIFIKASJON. Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni.

KRAVSPESIFIKASJON. Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni. KRAVSPESIFIKASJON Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni. Prosjektgruppe: 27 Prosjektmedlem: Ole Almenning Stenhaug Veileder.

Detaljer

Dagens tema. Hva er kompilering? Anta at vi lager dette lille programmet doble.rusc (kalt kildekoden): Hva er kompilering?

Dagens tema. Hva er kompilering? Anta at vi lager dette lille programmet doble.rusc (kalt kildekoden): Hva er kompilering? Dagens tema Dagens tema Kildekode Hva er kompilering? Hva er kompilering? Hvordan foreta syntaksanalyse av et program? Hvordan programmere dette i Java? Hvordan oppdage feil? Anta at vi lager dette lille

Detaljer

Eksamen Objektorientert Programmering 2013

Eksamen Objektorientert Programmering 2013 Eksamen Objektorientert Programmering 2013 Høgskolen i Østfold 2013-01-07 Emnekode Emne ITF10611 Dato 2013-01-07 Eksamenstid 09:00-13:00 Hjelpemidler Faglærer Objektorientert Programmering To A4-ark (fire

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

INF1000 HashMap. Marit Nybakken marnybak@ifi.uio.no 2. november 2003

INF1000 HashMap. Marit Nybakken marnybak@ifi.uio.no 2. november 2003 INF1000 HashMap Marit Nybakken marnybak@ifi.uio.no 2. november 2003 Dette dokumentet skal tas med en klype salt og forfatteren sier fra seg alt ansvar. Dere bør ikke bruke definisjonene i dette dokumentet

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Gaustadbekkdalen, januar 22 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår i primærlageret når

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

3. Kravspesifikasjon. Experior - rich test editor for FitNesse -

3. Kravspesifikasjon. Experior - rich test editor for FitNesse - 3. Experior - rich test editor for FitNesse - 3.1. Forord Dette dokumentet inneholder krav til funksjonalitet i Experior og hvordan denne skal integreres inn i selve FitNesse. I tillegg spesifiseres krav

Detaljer

Automatisering av uttrekk fra bevarte databaser

Automatisering av uttrekk fra bevarte databaser Automatisering av uttrekk fra bevarte databaser Arne-Kristian Groven, Fagdag om Noark5 og RDF, Riksarkivet, Oslo, 17.06 2014 Om meg Har 20 års bakgrunn innen IT-forskning Snart 3 år i Riksarkivet Arbeider

Detaljer

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet "TGA"

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet TGA Et større programeksempel Hvordan løse et reelt problem med en objektorientert fremgangsmåte En større problemstilling I uke 4 skrev vi et program for å sjekke om et gen (en tekstfil) inneholdt ordet "TGA"

Detaljer

Introduksjon til objektorientert programmering

Introduksjon til objektorientert programmering Introduksjon til objektorientert programmering Samt litt mer om strenger og variable INF1000, uke6 Ragnhild Kobro Runde Grunnkurs i objektorientert programmering Strategi: Splitt og hersk Metoder kan brukes

Detaljer

- analyse og implementasjon

- analyse og implementasjon - analyse og implementasjon Hvem er vi? Vi heter Anders S Finnerud Dennis JMJ Lundh studerer til bachelorgraden i ingeniørfag for data ved Høgskolen i Oslo. Oppgaven Lage et lett system som kan utføre

Detaljer

Publisering av statiske og dynamiske websider til klasserom.net fra Dreamweaver og MySQL

Publisering av statiske og dynamiske websider til klasserom.net fra Dreamweaver og MySQL Publisering av statiske og dynamiske websider til klasserom.net fra Dreamweaver og MySQL 1. Om klassersom.net: Klasserom.net er en webhotell-løsning for skoler, hvor formålet er å gi elevene hvert sitt

Detaljer

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus Kategorisering av programmeringsspråk? Deklarativ vs. imperativ Lav nivå vs. høy nivå Kompilert vs. tolket

Detaljer

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49 Innhold Forord...5 1 Det første programmet...15 1.1 Å kommunisere med en datamaskin 16 1.2 Programmeringsspråk 17 1.3 Et program som skriver på skjermen 18 1.4 Kompilering og kjøring 19 1.5 Kommentarer

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

Gruppe prosjekt del 3. INFO134 Klientprogrammering Vår 2017 Kandidatnummer: 304, 298

Gruppe prosjekt del 3. INFO134 Klientprogrammering Vår 2017 Kandidatnummer: 304, 298 Gruppe prosjekt del 3 INFO134 Klientprogrammering Vår 2017 Kandidatnummer: 304, 298 Del 1 Forholdet mellom HTML, JavaScript og MongoDB HTML, er et markeringsspråk for hypertekst. HTML benyttes for å strukturere

Detaljer

MARE NOSTRUM. Del 4 Brukermanual

MARE NOSTRUM. Del 4 Brukermanual MARE NOSTRUM Del 4 Forord Denne delen av rapporten er ment å forklare alle som bruker systemet, det mest nødvendige de trenger for å bruke systemet. Det bør også merkes at som nevnt i kapittel 11 i produktrapporten,

Detaljer

Kravspesifikasjon Gruppe nr ABTF

Kravspesifikasjon Gruppe nr ABTF 1 Presentasjon Tittel: Web-løsning for ABTF Utvikle en Web-løsning helt fra bunnen av, samt med en Oppgave: plattform som gir underviseren muligheten til å veilede og følge opp sine elever gjennom kurset.

Detaljer

KRAVSPESIFIKASJON v.1.2

KRAVSPESIFIKASJON v.1.2 KRAVSPESIFIKASJON v.1.2 PROKAP Prosjektstyringsverktøy for kapasitetsplanlegging G r u p p e 2 6 A n d r é S t e n e r s e n B j a r t e A u n e O l s e n C h r i s t i a n S t r å t h H e n r i k H o

Detaljer

Gruppenavn. Beskrivelse av arkitektur For Navn på systemet. Versjon <1.0>

Gruppenavn. Beskrivelse av arkitektur For Navn på systemet. Versjon <1.0> Gruppenavn Beskrivelse av arkitektur For Navn på systemet Versjon Revisjonshistorie Dato Versjon Beskrivelse av endring Forfatter Innhold 1. Innledning 4 1.1

Detaljer

Presentasjon av gruppe 7: Erik Østensen, Henning Østensen og Kenneth Ådalen

Presentasjon av gruppe 7: Erik Østensen, Henning Østensen og Kenneth Ådalen Presentasjon av gruppe 7: Erik Østensen, Henning Østensen og Kenneth Ådalen Hva er ibatis Rammeverk laget for: Forenkling av database oppkoblinger Separering av SQL kode fra kildekode Data access objects

Detaljer

Konfigurasjonsstyring

Konfigurasjonsstyring INF1050: Systemutvikling 28. mars 2017 Konfigurasjonsstyring Yngve Lindsjørn ynglin@ifi.uio.no INF1050 Systemutvikling ->Konfigurasjonsstyring 1 Temaer i dagens forelesning Versjonshåndtering Systembygging

Detaljer

einnsyn PoC: Demo for tredje sprint

einnsyn PoC: Demo for tredje sprint einnsyn PoC: Demo for tredje sprint Dette dokumentet beskriver det som er utviklet og testet i den tredje sprinten fra 8. til 15. mars 2016. Leveransen i forhold til arkitekturforslaget I sprint 3 har

Detaljer