Characteristics of a good design

Størrelse: px
Begynne med side:

Download "Characteristics of a good design"

Transkript

1 Characteristics of a good design (PPT. side 1) Innledning Høykvalitetsdesign bør ha visse karakteristikker for å oppnå kvalitetsprodukter, dvs.: enkelt å forstå enkelt å implementere enkelt å teste enkelt å modifisere riktig oversettelse fra kravspesifikasjonen

2 (PPT. side 2) Vi skal se nærmere på noen forhold som påvirker designkvaliteten (el kvalitetsdesign?) Komponent uavhengighet Unntaksbehandling Feiltoleranse Vi begynner med å se på komponent uavhengighet

3 (PPT. side 3) Komponent uavhengighet I de fleste designtyper streber vi etter størst mulig komponentuavhengighet. Årsaker til dette er blant annet: lettere å vite hvordan en komponent virker hvis den ikke er (intricately: vrien - floket) bundet opp til andre lettere å modifisere en uavhengig komponent uavhengige komponenter hjelper oss til å isolere og rette feil hvis systemfeil spores tilbake gjennom koden

4 (PPT. side 4) For å oppdage og måle graden av komponentuavhengighet i design, har vi tatt for oss to konsepter: Kobling (coupling) Samhørighet (cohesion)

5 (PPT. side 5) Kobling Her er det snakk om koblingen mellom komponenter. Graden av kobling kan deles i flere nivåer: Ukoplet Ingen avhengigheter mellom komponentene Lett kobling Noe avhengighet, men forbindelsen mellom komponentene er svak Høy kobling Dette vi si mange avhengigheter mellom komponentene I praksis vil som regel en total komponentuavhengighet være så å si umulig. Målet er derfor ikke nødvendigvis total uavhengighet, men heller å holde graden av kobling så lav som mulig. Hvorfor lav kobling? Tillater oss å forandre en del av system designet med minst mulig grad av forstyrrelse Lettere å bytte ut komponenter Færre komponenter påvirkes eller må forandres ved forandring/modifikasjon av en annen komponent

6 (PPT. side 6) Koblingen kan måles på en skala av avhengighet som strekker seg fra total uavhengighet til total avhengighet. Content coupling Høy Common coupling Control coupling Stamp coupling Lett Data coupling Uncoupled Lav Typer kobling: Content coupling Den minst ønskelige koblingen. Her modifiserer en komponent en annen. Den modifiserte komponenten blir totalt avhengig av den andre. Common coupling Dette er organisert slik at data er tilgjengelig fra en felles datakilde. Avhengighet eksisterer fortsatt. Det kan være vanskelig å oppdage hvilken komponent som er ansvarlig for å ha gitt en variabel en spesiell verdi. Control coupling Her sender en komponent parametrere for å kontrollere aktiviteten til en annen komponent. Den kontrollerte komponenten kan ikke fungere uten hjelp av den andre. Stamp coupling Her brukes en datastruktur for å sende informasjon fra en komponent til en annen. Det er selve datastrukturen som sendes, og dataverdier, format og organisering må stemme mellom de samarbeidende komponenter. Data coupling Her sendes bare data mellom komponentene. Denne er enklere og gir mindre rom for feil fordi det er lettere å spore data samt å gjøre forandringer. Uncoupled Ingen kobling mellom komponentene. I praksis umulig?

7 (PPT. side 7) Samhørighet (cohesion) Det er slik at mens kobling tar for seg avhengigheten mellom komponenter, så tar samhørigheten for seg den interne måten en komponent er konstruert på. En komponent er samhørende hvis alle elementene i den er rettet mot, og essensielle for, utfører samme gjøremål. Det finnes flere nivåer av samhørighet: Functional (funksjonell) Høy Sequential (sekvensiell) Communicational Procedural Temporal (temporær) Logical (logisk) Coincidental (tilfeldig) Lav Beskrivelse av typene: Coincidental (tilfeldig) Dette er den verste graden, og finnes i en komponent der delene er urelatert til hverandre. Urelaterte funksjoner, prosesser eller data finnes i samme komponent fordi dette tilfeldigvis gjør arbeidet lettere for utvikler. (eks. en komponent som både sjekker en brukers sikkerhetsklassifisering og skriver ut denne ukes lønningsliste) Logical (logisk) Her er flere logisk relaterte funksjoner eller dataelementer plassert i samme komponent. De er ikke funksjonelt relatert til hverandre. (eks. komponent som leser inn alle typer input (fra bånd, disker el. kom. porter) uavhengig av formålet med dataene) Temporal (temporær) Noen ganger brukes en komponent for å initialize et system eller ett sett av variabler. En slik komponent utfører flere funksjoner i sekvens, men funksjonene er kun relatert av involvert timing.?

8 Procedural (rekkefølge) Funksjoner som blir gruppert i en komponent bare for å sikre en bestemt rekkefølgen. (eks. tar imot data dataene sjekkes dataene blir manipulert) Communicational (kommunikasjon) Funksjoner som samles i en komponent fordi de opererer på, eller produserer, det samme datasettet. (eks. har kun en disk- eller tapetilgang: urelaterte data hentes sammen) (Dårlig forklaring) Sequential (sekvensiell) I en slik komponent er output fra en del input til neste del. (Ikke konstruert basert på funksjonell relasjon. Er derfor mulig at komponenten ikke vil constrain tvinge/legge bånd på all prosessering relatert til en funksjon.? Functional (funksjonell) Idealet! Alle funksjoner i komponenten er essensielle for utførelsen av en enkelt funksjon. Komponenten utfører bare funksjonen den er konstruert for å utføre og ingenting annet.

9 (PPT. side 8) Exception handling Når vi driver med design bør vi forsøke å forutse situasjoner som kan føre til problemer med systemet. Dette er ikke lett fordi kravspesifikasjonen, som gjør det klart hva systemet skal gjøre, ikke nødvendigvis forteller hva det ikke skal gjøre. Derfor er det viktig å inkludere exception handling i våres design. Typiske exceptions inkluderer: Klarer ikke å utføre tjeneste Skaffer feil data eller tjeneste Ødelagte data Virkelige eksempler: - harddisken har ikke mer lagringsplass - systemets minne er fult For hver identifisert exception kan vi handle på en av tre måter: Forsøke på nytt Gjenoppretter systemets tilstand slik det var før unntaket inntraff, og forsøker å utføre tjenesten på nytt ved bruk av en annen strategii Rette Gjenoppretter systemet, retter noen aspekter ved det og forsøker igjen å utføre tjenesten ved bruk av samme strategi Rapportere Gjenoppretter systemet, rapporterer problemet og utfører ikke tjenesten. Definisjoner: En exception En uvanlig hendelse som forstyrrer et programs normale flyt Exception handling Prosessen som går ut på å oppdage og handle på exceptions på en konsistent og pålitelig måte Exception vs feil Uttrykket exception brukes istedenfor feil fordi exceptions representerer unormale eller uvanlige forhold som nødvendigvis ikke er feil.

10 (PPT. side 9) DERFOR: For hver tjeneste vi ønsker at vårt system skal utføre må vi identifisere måter det kan feile finne måter å redde det fra feil Her finnes det teknikker som brukes for å hjelpe oss å identifisere disse unntaksforholdene. Dette vil bli gjennomgått i senere presentasjoner. o fault tree analysis (neste kapittel/gruppe) o failure mode analysis (kapittel 9) Det finnes flere teknikker som kan brukes i design for å fange exceptions mens koden kjøres: Checksums og sjekk av tall For å dobbeltsjekke riktigheten til og utregninger Timere

11 (PPT. side 10) Fault Tolerance Systemets evne til å reagere fornuftig på uventede hardware- eller softwarefeil Design skal forsøke å forutse feil og behandle dem på måter som minimaliserer forstyrrelse og maksimerer sikkerhet. Målet er å lage koden så feilfri som mulig ved å legge feilforebygging og feilbehandling inn i designet. En karakteristikk på god design er måten den forhindrer eller tolererer feil. I stedet for å vente på at systemet skal feile og så fikse problemet kan designerne: forutse hva som kan skje og konstruere systemet slik at det reagerer på en akseptabel måte. Det vil si at man inntar en aktiv rolle for å oppdage feil. (Fault correction (Rette feil)) Når feil oppdages må de rettes. Normalt skal feilretting: fikse skadene som feilen førte til forandre produktet slik at feilen fjernes Vår design må inkludere en strategi for behandle feil. To forskjellige strategier er: stoppe systemet når en feil affiserer systemet registrere feilen og systemets status når feilen oppsto, slik at man kan gå tilbake og rette skaden senere Hvor kritisk systemet er avgjørende for valg av strategi. Innenfor områder i luftfart vil for eksempel den første strategien passe svært dårlig. Fault tolerance (Feil toleranse) Mange ganger vil retting av feil bli for dyrt, risikabelt eller upassende. Forsøk har også vist at det praktisk talt er umulig å produsere 100 % feilfri software. Derfor trengs noe for å: hindre at feil i software forårsaker systemkatastrofe maskere softwarefeil hvis mulig Vår design må minimalisere skaden som feilen førte til og så fortsette med liten forstyrrelse for brukerne. Et eksempel kan være et banksystem som svitsjer over til en backup-prosessor, eller lager dobbelt kopi av data og transaksjoner, hvis en prosessor feiler.

12 (PPT. side 11) Det finnes flere strategier for feiltoleranse. Eksempler kan være: Strategier som avhenger av evnen til å forutse hvor feil vil oppstå og når de vil kunne inntreffe. Designerne må være i stand gjette hva som kan gå galt. Strategier som isolerer områder hvor det er sannsynlig at feil kan inntreffe. Neste gruppe vil se på teknikker som skal hjelpe til å lage designet feiltolerant uten å tilføye risiko.

13 (PPT. side 12) Webside Takk for oss J

STE6221 Sanntidssystemer Løsningsforslag

STE6221 Sanntidssystemer Løsningsforslag HØGSKOLEN I NARVIK Avdeling for teknologi MSc.-studiet EL/RT Side 1 av 3 STE6221 Sanntidssystemer Løsningsforslag Tid: Fredag 02.03.2007, kl: 09:00-12:00 Tillatte hjelpemidler: Godkjent programmerbar kalkulator,

Detaljer

GJENNOMGANG UKESOPPGAVER 9 TESTING

GJENNOMGANG UKESOPPGAVER 9 TESTING GJENNOMGANG UKESOPPGAVER 9 TESTING INF1050 V16 KRISTIN BRÆNDEN 1 A) Testing viser feil som du oppdager under kjøring av testen. Forklar hvorfor testing ikke kan vise at det ikke er flere gjenstående feil.

Detaljer

Systemutviklingen er ferdig når et system er operativt. Med operativt menes når systemet blir brukt av brukerne på et faktisk arbeidssted.

Systemutviklingen er ferdig når et system er operativt. Med operativt menes når systemet blir brukt av brukerne på et faktisk arbeidssted. Presentasjon nummer 5 The changing system and the nature of maintenance Silde 1 Gruppen introduseres Slide 2 The changing system and the nature of maintenance The Changing system Systemutviklingen er ferdig

Detaljer

Grunnleggende testteori

Grunnleggende testteori 1 Grunnleggende testteori Industri - og software produkt Industriprodukt: Fysisk produkt Testes under produksjon og til slutt om produktet oppfyller kravene Tilpasses, endres, redesignes, og justeres så

Detaljer

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære å bruke unntak (Exceptions)

Detaljer

Kompleksitetsanalyse Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder

Kompleksitetsanalyse Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder Helge Hafting 25.1.2005 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO117D Algoritmiske metoder Innhold 1 1 1.1 Hva er en algoritme?............................... 1 1.2

Detaljer

INF2270. Input / Output (I/O)

INF2270. Input / Output (I/O) INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen

Detaljer

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Læringsmål og pensum Mål Vite hva et

Detaljer

Grunnleggende testteori

Grunnleggende testteori 1 Grunnleggende testteori Error-Fault-Failure 2 Error : når en programmerer koder feil eller utelater kode (evt. miljøpåvirkning) årsaken til en fault Fault (defect eller bug): feil i kode kan lede til

Detaljer

SIE 4005, 8/10 (3. Forelesn.)

SIE 4005, 8/10 (3. Forelesn.) SIE 4005, 8/10 (3. Forelesn.) Andre forelesning: litt repetisjon 7.7 Arithmetic / Logic unit 7.8 The Shifter 7.9 Datapath representation 7.10 The control word 7.11 Pipelined datapath Tredje forelesning:

Detaljer

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG INF1050 V16 HVA ER EN SYSTEMUTVIKLINGSPROSESS? De aktivitetene som utføres for å utvikle et IT-system Eksempler på aktiviteter:

Detaljer

KTN1 - Design av forbindelsesorientert protokoll

KTN1 - Design av forbindelsesorientert protokoll KTN1 - Design av forbindelsesorientert protokoll Beskrivelse av A1 A1 skal tilby en pålitelig, forbindelsesorientert tjeneste over en upålitelig, forbindelsesløs tjeneste A2. Det er flere ting A1 må implementere

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

Hash-funksjoner. Introduksjon. Steg 1: Strekkoder. Eksempel. Skrevet av: Martin Strand

Hash-funksjoner. Introduksjon. Steg 1: Strekkoder. Eksempel. Skrevet av: Martin Strand Hash-funksjoner Skrevet av: Martin Strand Kurs: Python Tema: Tekstbasert, Kryptografi Fag: Matematikk, Programmering Klassetrinn: 8.-10. klasse, Videregående skole Introduksjon Tidligere har vi sett hvordan

Detaljer

Forelesning 14. Rekursjon og induksjon. Dag Normann februar Oppsummering. Oppsummering. Beregnbare funksjoner

Forelesning 14. Rekursjon og induksjon. Dag Normann februar Oppsummering. Oppsummering. Beregnbare funksjoner Forelesning 14 og induksjon Dag Normann - 27. februar 2008 Oppsummering Mandag repeterte vi en del om relasjoner, da spesielt om ekvivalensrelasjoner og partielle ordninger. Vi snakket videre om funksjoner.

Detaljer

A. På tapen ligger det spor med informasjon lagret som en bølgeform. Et spor per linje med video(fig1)

A. På tapen ligger det spor med informasjon lagret som en bølgeform. Et spor per linje med video(fig1) Formålet med denne rapporten er å utrede om det finnes en mulighet for å modernisere arkivering av analoge tapeformater til en digital råkopi av tapen. Dette er lett å forveksle med digitalisering av bildet

Detaljer

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache Dagens temaer Dagens emner er hentet fra Englander kapittel side 338-35 (gammel utgave). Mer om design av cache. Kort repetisjon er en spesiell type rask hukommelse som inneholder et subsett av det som

Detaljer

oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO

oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO oppgave 1 Hvorfor har vi operativsystemer? Portable programmer Enklere å programmere

Detaljer

INF2270. Input / Output (I/O)

INF2270. Input / Output (I/O) INF2270 Input / Output (I/O) Hovedpunkter Innledning til Input / Output Ulike typer I/O I/O internt i datamaskinen I/O eksternt Omid Mirmotahari 3 Input / Output En datamaskin kommuniserer med omverdenen

Detaljer

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6. Terje Rydland - IDI/NTNU

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6. Terje Rydland - IDI/NTNU 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6 Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære bruk av inn- og ut-operasjoner

Detaljer

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk MAT1030 Diskret matematikk Forelesning 14: Rekursjon og induksjon Dag Normann Matematisk Institutt, Universitetet i Oslo 27. februar 2008 Oppsummering Mandag repeterte vi en del om relasjoner, da spesielt

Detaljer

NB: Det er mulig å tegne figurer for hånd på egne ark. Disse må merkes godt og leveres til eksamensvaktene.

NB: Det er mulig å tegne figurer for hånd på egne ark. Disse må merkes godt og leveres til eksamensvaktene. To av tre oppgaver skal besvares Oppgavene vektes likt NB: Det er mulig å tegne figurer for hånd på egne ark. Disse må merkes godt og leveres til eksamensvaktene. Oppgave 1 Resilience Engineering er et

Detaljer

Repetisjon. MAT1030 Diskret Matematikk. Oppsummering. Oppsummering. Forelesning 15: Rekursjon og induksjon. Roger Antonsen

Repetisjon. MAT1030 Diskret Matematikk. Oppsummering. Oppsummering. Forelesning 15: Rekursjon og induksjon. Roger Antonsen MAT1030 Diskret Matematikk Forelesning 15: og induksjon Roger Antonsen Institutt for informatikk, Universitetet i Oslo Repetisjon 11. mars 2009 (Sist oppdatert: 2009-03-10 20:38) MAT1030 Diskret Matematikk

Detaljer

Mengder, relasjoner og funksjoner

Mengder, relasjoner og funksjoner MAT1030 Diskret Matematikk Forelesning 15: og induksjon Dag Normann Matematisk Institutt, Universitetet i Oslo Mengder, relasjoner og funksjoner 9. mars 2010 (Sist oppdatert: 2010-03-09 14:18) MAT1030

Detaljer

Steg 1: Lag en figur som bytter drakt

Steg 1: Lag en figur som bytter drakt Enarmet banditt Skrevet av: Oversatt fra Code Club UK (//codeclub.org.uk) Oversatt av: Gudbrand Tandberg og Anne-Marit Gravem Kurs: Scratch Tema: Blokkbasert, Spill, Animasjon Fag: Matematikk, Programmering

Detaljer

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er: Dagens temaer! Ulike kategorier input/output! Programmert! Avbruddstyrt! med polling.! Direct Memory Access (DMA)! Asynkrone vs synkrone busser! Med! Fordi! -enheter menes de enheter og mekanismer som

Detaljer

Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process

Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process INF 329 Web-teknologier Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process Navn: Bjørnar Pettersen bjornarp.ii.uib.no Daniel Lundekvam daniell.ii.uib.no Presentasjonsdato:

Detaljer

Evaluering av IT-systemer Introduksjon. Monica Kristiansen

Evaluering av IT-systemer Introduksjon. Monica Kristiansen Evaluering av IT-systemer Introduksjon Monica Kristiansen 1 Bruk av programvare i kritiske systemer En spennende verden! 2 Avanserte løfteraketter (Ariane 5) 3 Avanserte flyegenskaper 4 Avanserte flyegenskaper

Detaljer

Oppsummering fra sist

Oppsummering fra sist 1 av 34 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Terje Rydland - IDI/NTNU 2 av 34 Oppsummering fra sist Betingelser i Python: ,

Detaljer

Generelt om operativsystemer

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

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Øving 3 Frist: 2014-02-07 Mål for denne øvinga:

Detaljer

Oversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models

Oversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models Oversikt UNIX 1 UNIX Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 2 Linux 3 Process 4 Process models 5 Hvordan kjøre operativsystemet 6 Prosesshåndtering i UNIX SVR4 Lars Vidar

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum 1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum 2 Læringsmål Mål Introduksjon til filer (som inndata og utdata) Å bruke

Detaljer

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål.

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål. 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5 Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære om begrepet løkker

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

INTELLIGENT SERVICE FOR EN ENKLERE HVERDAG KONE 24/7 CONNECTED SERVICES

INTELLIGENT SERVICE FOR EN ENKLERE HVERDAG KONE 24/7 CONNECTED SERVICES INTELLIGENT SERVICE FOR EN ENKLERE HVERDAG KONE 24/7 CONNECTED SERVICES KONE har i samarbeid med IBM gjort heiser smartere. Ved å koble heiser til skyen kan vi samle inn store mengder data ved hjelp av

Detaljer

Kravspesifikasjon. Aker Surveillance. Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo,

Kravspesifikasjon. Aker Surveillance. Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, Kravspesifikasjon Aker Surveillance Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus Oslo, 12.01.2013 Public 2013 Aker Solutions Page 1 of 7 Table of Contents Forord... 3 Om bakgrunnen... 3 Presentasjon...

Detaljer

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Intro til funksjoner TDT4110 IT Grunnkurs Professor Guttorm Sindre Snart referansegruppemøte Viktig mulighet for å gi tilbakemelding på emnet Pensumbøker Forelesninger Øvingsforelesninger Veiledning

Detaljer

Oppgave: BOW Bowling. Regler for Bowling. norwegian. BOI 2015, dag 1. Tilgjengelig minne: 256 MB. 30.04.2015

Oppgave: BOW Bowling. Regler for Bowling. norwegian. BOI 2015, dag 1. Tilgjengelig minne: 256 MB. 30.04.2015 Oppgave: BOW Bowling norwegian BOI 0, dag. Tilgjengelig minne: 6 MB. 30.04.0 Byteasar er glad i både bowling og statistikk. Han har skrevet ned resultatene sine fra noen av gangene han har spilt bowling.

Detaljer

Evaluering av It-systemer i et forvaltningsperspektiv. Drift, vedlikehold og videreutvikling av IT-systemet

Evaluering av It-systemer i et forvaltningsperspektiv. Drift, vedlikehold og videreutvikling av IT-systemet Evaluering av It-systemer i et forvaltningsperspektiv Drift, vedlikehold og videreutvikling av IT-systemet Bakgrunnen IT-systemer har ofte lenger levetid enn forventet er ofte forretningskritiske utvikler

Detaljer

Oppsummering. Thomas Lohne Aanes Thomas Amble

Oppsummering. Thomas Lohne Aanes Thomas Amble Oppsummering Thomas Lohne Aanes Thomas Amble 14.11.04 Kapittel 2: Data Modell Mål: Data som skal brukes av applikasjonen blir spesifisert på en formell og likevel intuitiv måte. Resultat: Vi får et konseptuelt

Detaljer

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11 Konfigurasjonsstyring INF1050: Gjennomgang, uke 11 Kompetansemål Konfigurasjonsstyring Hva og hvorfor? I en smidig sammenheng Endringshåndtering Versjonhåndtering Systembygging Release -håndtering Del

Detaljer

PRESENTASJON NORDIG OKTOBER Alle skal kunne teste alt - overalt

PRESENTASJON NORDIG OKTOBER Alle skal kunne teste alt - overalt PRESENTASJON NORDIG OKTOBER 2017 Alle skal kunne teste alt - overalt Det eksistensielle - Arkivverkets oppgaver Vår oppgave er - - - å dokumentere samtid for ettertid - i den tro at det er nyttig for ettertiden

Detaljer

Oppgaver til kodegenerering etc. INF-5110, 16. mai, 2014

Oppgaver til kodegenerering etc. INF-5110, 16. mai, 2014 Oppgaver til kodegenerering etc. INF-5110, 16. mai, 2014 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet, side 539 a) Se på detaljene i hvorfor

Detaljer

Verden. Steg 1: Vinduet. Introduksjon

Verden. Steg 1: Vinduet. Introduksjon Verden Introduksjon Processing Introduksjon Velkommen til verdensspillet! Her skal vi lage begynnelsen av et spill hvor man skal gjette hvilke verdensdeler som er hvor. Så kan du utvide oppgava til å heller

Detaljer

IEC 61508. Hovedprinsipper og veiledning

IEC 61508. Hovedprinsipper og veiledning IEC 61508 Hovedprinsipper og veiledning Stein Hauge SINTEF Tlf: 75 17 33 70 / 930 18 395 haustein@online.no / stein.hauge@sintef.no 1 Bare måtte bruke IEC 61508 1 2 3 4 5 6 7 8 9 1010 1 1212 1313 1414

Detaljer

Concurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17

Concurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17 Concurrency Lars Vidar Magnusson September 20, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 20.09.2011 September 20, 2011 1 / 17 Oversikt Concurrency 1 Concurrency Beskrivelse Prinsipper

Detaljer

Definisjon av prosess

Definisjon av prosess Prosesser og tråder Definisjon av prosess Enkel definisjon: En prosess er et program som kjører på datamaskinen Mer presis definisjon: En prosess er en samling av ressurser som er nødvendige for å utføre

Detaljer

ØVINGER 2017 Løsninger til oppgaver. Øving 1

ØVINGER 2017 Løsninger til oppgaver. Øving 1 ØVINGER 017 Løsninger til oppgaver Øving 1.1. Frekvenstabell For å lage en frekvenstabell må vi telle antall observasjoner av hvert antall henvendelser. Siden antall henvendelser på en gitt dag alltid

Detaljer

Enarmet banditt Nybegynner Scratch Lærerveiledning

Enarmet banditt Nybegynner Scratch Lærerveiledning Enarmet banditt Nybegynner Scratch Lærerveiledning Introduksjon Dette er et spill med tre figurer som endrer utseende. Din oppgave er å stoppe figurene én etter én, slik at alle tre blir like. Steg 1:

Detaljer

Hva er det? Steg 1: Få flere ting til å vise seg på tavlen. Sjekkliste. Test prosjektet. Introduksjon

Hva er det? Steg 1: Få flere ting til å vise seg på tavlen. Sjekkliste. Test prosjektet. Introduksjon Hva er det? Introduksjon Et bilde av en tilfeldig ting vises på tavlen. Men bildet er forvrengt, slik at du må gjette hva det er ved å klikke på et av alternativene som vises under. Desto raskere du gjetter

Detaljer

TDT4102 Prosedyreog objektorientert programmering Vår 2016

TDT4102 Prosedyreog objektorientert programmering Vår 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 4 Frist: 2016-02-12 Mål for denne øvingen:

Detaljer

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse INF3140/4140: Programanalyse Uke 4, side 1. Hvordan sjekke egenskaper ved programmer? Testing eller debugging øker tilliten til programmet ved prøving, men gir ingen garanti for korrekthet Operasjonell

Detaljer

Oppgaver til kodegenerering etc. INF-5110, 12. mai, 2015

Oppgaver til kodegenerering etc. INF-5110, 12. mai, 2015 Oppgaver til kodegenerering etc. INF-5110, 12. mai, 2015 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet, side 539 a) (repetisjon fra forelesningene)

Detaljer

Kapittel 7 & 8. Kravspesifikasjoner & Data design. Thomas Tjøstheim og Thomas Edvinsen. 20 September Kapittel 7 & 8 p.1/20

Kapittel 7 & 8. Kravspesifikasjoner & Data design. Thomas Tjøstheim og Thomas Edvinsen. 20 September Kapittel 7 & 8 p.1/20 Kapittel 7 & 8 p.1/20 Kapittel 7 & 8 Kravspesifikasjoner & Data design Thomas Tjøstheim og Thomas Edvinsen 20 September 2004 Kapittel 7 & 8 p.2/20 Introduksjon Kravspesifikasjoner består av to underdeler:

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

Grunnleggende testteori. Etter Hans Schaefer

Grunnleggende testteori. Etter Hans Schaefer Grunnleggende testteori Etter Hans Schaefer Industri- og softwareprodukt Industriprodukt Fysisk produkt Testes under produksjon og til slutt om produktet oppfyller kravene Tilpasses, endres, redesignes,

Detaljer

Kompleksitet og Beregnbarhet

Kompleksitet og Beregnbarhet Kompleksitet og Beregnbarhet 16. September, 2019 Institutt for Informatikk 1 Dagens plan Avgjørelsesproblemer. P EXPTIME NP Reduksjoner NP-kompletthet Uavgjørbarhet UNDECIDABLE DECIDABLE PSPACE NPC NP

Detaljer

Innhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki. 02.04.2001 Hukommelseshierarki-2 1

Innhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki. 02.04.2001 Hukommelseshierarki-2 1 Innhold Virtuelt minne Paging i mer detalj Felles rammeverk for hukommelseshierarki 02.04.200 Hukommelseshierarki-2 Virtuelt minne Lagringskapasiteten i RAM må deles mellom flere ulike prosesser: ûoperativsystemet

Detaljer

Forelesning 11. Relasjoner. Dag Normann februar Oppsummering. Relasjoner. Relasjoner. Relasjoner

Forelesning 11. Relasjoner. Dag Normann februar Oppsummering. Relasjoner. Relasjoner. Relasjoner Forelesning 11 Dag Normann - 18. februar 2008 Oppsummering Vi har gjort oss ferdige med innføringen av Boolesk mengdelære. Bruk av Venn-diagrammer er et av læringsmålene i dette emnet. Vi så kort på digital

Detaljer

INF2810: Funksjonell Programmering. Tilstand og verditilordning

INF2810: Funksjonell Programmering. Tilstand og verditilordning INF2810: Funksjonell programmering INF2810: Funksjonell Programmering Tilstand og verditilordning Erik Velldal Universitetet i Oslo 26. februar 2015 Forrige gang 2 I dag Vi blar om til kapittel 3 i SICP.

Detaljer

IT Service Management

IT Service Management IT Service Management Forelesning uke 3 Innhold Repetisjon fra forrige uke. Service Operation: Incident Management Repitisjon Service Operation: Finne rette balansen Event Management: Få oversikt over

Detaljer

Hvordan skrive Flok og Flass kode? I mange tilfelle er det svært enkelt:

Hvordan skrive Flok og Flass kode? I mange tilfelle er det svært enkelt: Hvordan skrive Flok og Flass kode? I mange tilfelle er det svært enkelt: inchar INC inint INI Tegnet eller tallverdien kommer i I registeret. outchar OUTC outint (n) OUTI n outline OLIN I Flink maskinen

Detaljer

Styring av feil. Hva vet vi om feil og forhold som gir feil? Hvilke forhold fremmer feil? Hva kjennetegner barrierer vi har mot feil?

Styring av feil. Hva vet vi om feil og forhold som gir feil? Hvilke forhold fremmer feil? Hva kjennetegner barrierer vi har mot feil? Styring av feil Hva vet vi om feil og forhold som gir feil? Hvilke forhold fremmer feil? Hva kjennetegner barrierer vi har mot feil? Tiltak mot feil STYRING AV FEIL Feil Det er menneskelig å feile. Det

Detaljer

FILMDRAMATURGI Forelesning 9. november, Medieparken Gjesteforeleser: Eric R. Magnusson 1. årskull DMPro

FILMDRAMATURGI Forelesning 9. november, Medieparken Gjesteforeleser: Eric R. Magnusson 1. årskull DMPro FILMDRAMATURGI Forelesning 9. november, Medieparken Gjesteforeleser: Eric R. Magnusson 1. årskull DMPro INNHOLD Filmproduksjon Klassisk design Aristoteles Historien Karakterer Object of desire Undertekst

Detaljer

Kompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon

Kompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon Kompleksitet IN2010 - algoritmer og datastrukturer Plenumstime / repetisjon Dagens agenda Kompleksitet - hva er det? Avgjørelsesproblemer Kompleksitetsklassene P og NP Reduksjoner - å redusere et problem

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs (ITGK)

TDT4105 Informasjonsteknologi, grunnkurs (ITGK) 1 TDT4105 Informasjonsteknologi, grunnkurs (ITGK) Introduksjon til programmering i Matlab Rune Sætre satre@idi.ntnu.no 2 Læringsmål og pensum Mål Lære om programmering og hva et program er Lære å designe

Detaljer

Teknisk dokumentasjon for Ludosphaera

Teknisk dokumentasjon for Ludosphaera Teknisk dokumentasjon for Ludosphaera Av Gameguru ved Nikolas Ebbesberg, Silje Helene Lund, Vanessa Storøy Merine, Erik Nystad og Maria Løvland Johansson IN1060 - Vår 2019 Institutt for Informatikk Matematisk-Naturfaglige

Detaljer

Verden. Introduksjon. Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide

Verden. Introduksjon. Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide Verden Skrevet av: Kine Gjerstad Eide og Ruben Gjerstad Eide Kurs: Processing Tema: Tekstbasert Fag: Matematikk, Programmering, Samfunnsfag Klassetrinn: 8.-10. klasse, Videregående skole Introduksjon Velkommen

Detaljer

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas Prosjekt nr. 2011 22 Testrapport Hovedprosjektets tittel Implementering av plugin og utvikling av wizard for Det Norske Veritas Prosjektdeltakere Magnus Strand Nekstad s156159 Jørgen Rønbeck s135779 Dato

Detaljer

Hasardidentifikasjon. Hvordan finne ut hva som kan gå GALT FØR det går galt.

Hasardidentifikasjon. Hvordan finne ut hva som kan gå GALT FØR det går galt. Hasardidentifikasjon Hvordan finne ut hva som kan gå GALT FØR det går galt. 1 Hasard (trussel, uønsket hendelse) 2 Hendelse/situasjon som potensielt kan medføre skade på mennesker eller miljø. Bilkollisjon,

Detaljer

Obligatorisk oppgave 1 INF1050 Foranalyse og kravhåndtering. av Andreas Johansen Alexander Storheill Martin Dørum Nygaard Tobias Langø Aasmoe

Obligatorisk oppgave 1 INF1050 Foranalyse og kravhåndtering. av Andreas Johansen Alexander Storheill Martin Dørum Nygaard Tobias Langø Aasmoe Obligatorisk oppgave 1 INF1050 Foranalyse og kravhåndtering av Andreas Johansen Alexander Storheill Martin Dørum Nygaard Tobias Langø Aasmoe Oppgave 1: Bakgrunn for systemet a) Fordeler ved å integrere

Detaljer

INF2810: Funksjonell Programmering. Mengder og lokal tilstand

INF2810: Funksjonell Programmering. Mengder og lokal tilstand INF2810: Funksjonell Programmering Mengder og lokal tilstand Stephan Oepen & Erik Velldal Universitetet i Oslo Kvinnedagen, 2013 Forrige gang 2 Dagens dont 3 Del 1 Litt mer om hierarkisk data. Representasjon

Detaljer

TDT4110 IT Grunnkurs Høst 2014

TDT4110 IT Grunnkurs Høst 2014 TDT4110 IT Grunnkurs Høst 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 1 Navn: Linje: Brukernavn (blokkbokstaver): Oppgavesettet

Detaljer

Marine Propulsion Control Systems 9000 Series Processor Feilsøking

Marine Propulsion Control Systems 9000 Series Processor Feilsøking Marine Propulsion Control Systems 9000 Series Processor Feilsøking System Components Sections B1-2 & B3 Processor(er) Kontroll Spak(er) Push-Pull kabler Elektriske kabler og kontakter Spenning De sju spørsmålene

Detaljer

UML-Unified Modeling Language

UML-Unified Modeling Language UML-Unified Modeling Language Use case realisering Designmodellering 21.01.2004 Kirsten Ribu Use Case diagram Klassediagram Oppførselsdiagrammer: Sekvensdiagram Kollaborasjonsdiagram Tilstandsdiagram Aktivitetsdiagram

Detaljer

INF2810: Funksjonell Programmering. Tilstand og verditilordning

INF2810: Funksjonell Programmering. Tilstand og verditilordning INF2810: Funksjonell Programmering Tilstand og verditilordning Stephan Oepen Universitetet i Oslo 2. mars 2017 Forrige gang 2 I dag 3 Vi blar om til kapittel 3 i SICP. Tilstand og verditilordning. Destruktive

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære bruk av inn- og utoperasjoner i Python

Detaljer

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære bruk av inn- og utoperasjoner i Python

Detaljer

INF2810: Funksjonell Programmering. Tilstand og verditilordning

INF2810: Funksjonell Programmering. Tilstand og verditilordning INF2810: Funksjonell Programmering Tilstand og verditilordning Erik Velldal Universitetet i Oslo 1. mars 2018 Forrige gang 2 Kode som trær 3 Ved evaluering oversettes kildekoden i et språk først til et

Detaljer

Diskret matematikk tirsdag 13. oktober 2015

Diskret matematikk tirsdag 13. oktober 2015 Eksempler på praktisk bruk av modulo-regning. Tverrsum Tverrsummen til et heltall er summen av tallets sifre. a = 7358. Tverrsummen til a er lik 7 + 3 + 5 + 8 = 23. Setning. La sum(a) stå for tverrsummen

Detaljer

SIE 4005, 9/10 (4. Forelesn.)

SIE 4005, 9/10 (4. Forelesn.) SIE 4005, 9/10 (4. Forelesn.) Tredje forelesning: 8.1 The control unit 8.2 Algorithmic state machines 8.3 Design example: Binary multiplier 8.4 Hardwired Control Fjerde forelesning: litt repetisjon 8.4

Detaljer

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Et større case. Terje Rydland - IDI/NTNU. Lære å lage større og sammensatte programmer

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Et større case. Terje Rydland - IDI/NTNU. Lære å lage større og sammensatte programmer 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Et større case Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære å lage større og sammensatte programmer Pensum Kapitlene

Detaljer

Modulo-regning. hvis a og b ikke er kongruente modulo m.

Modulo-regning. hvis a og b ikke er kongruente modulo m. Modulo-regning Definisjon: La m være et positivt heltall (dvs. m> 0). Vi sier at to hele tall a og b er kongruente modulo m hvis m går opp i (a b). Dette betegnes med a b (mod m) Vi skriver a b (mod m)

Detaljer

Ta kontakt i pausen. Viktig at vi kommer i gang med dette arbeidet!

Ta kontakt i pausen. Viktig at vi kommer i gang med dette arbeidet! 1 Kunnskap for en bedre verden TDT4105 Informasjonsteknologi, grunnkurs Mer om funksjoner. Logiske betingelser og betinget programutførelse (valg). Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget

Detaljer

Steg 1: JafseFisk følger musepekeren

Steg 1: JafseFisk følger musepekeren JafseFisk Introduksjon Vi skal nå lage et JafseFisk-spill! Målet i spillet er å hjelpe JafseFisk med å spise alle byttedyrene som svømmer rundt i havet. Steg 1: JafseFisk følger musepekeren Først skal

Detaljer

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk MAT1030 Diskret Matematikk Forelesning 11: Relasjoner Roger Antonsen Institutt for informatikk, Universitetet i Oslo 25. februar 2009 (Sist oppdatert: 2009-03-03 11:37) Kapittel 5: Relasjoner MAT1030 Diskret

Detaljer

Oppsummering Assemblerkode Hopp Multiplikasjon Kode og data Array Oppsummering

Oppsummering Assemblerkode Hopp Multiplikasjon Kode og data Array Oppsummering Uke 34 Uke 35 Uke 36 Uke 37 Uke 38 Uke 39 Uke 40 Uke 41 Uke 42 Uke 43 Uke 44 Uke 45 Uke 46 Uke 47 sikkerhet datanett programvare digitale kretser Prosessoren II Kort oppsummering Løkker og tester Mer om

Detaljer

Tell sekunder. Steg 0: Hva er forskjellig fra før? Introduksjon. I denne oppgaven skal vi lage vårt eget spill!

Tell sekunder. Steg 0: Hva er forskjellig fra før? Introduksjon. I denne oppgaven skal vi lage vårt eget spill! Tell sekunder Erfaren Elm Introduksjon I denne oppgaven skal vi lage vårt eget spill! Vi lært mye allerede! Her er en oppsummering: Verktøy til Elm-utvikling: Bruke Try Elm til å lage programmer Bruke

Detaljer

Hashing. INF Algoritmer og datastrukturer HASHING. Hashtabeller

Hashing. INF Algoritmer og datastrukturer HASHING. Hashtabeller Hashing INF2220 - Algoritmer og datastrukturer HØSTEN 200 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning : Hashing Hashtabeller (kapittel.) Hash-funksjoner (kapittel.2) Kollisjonshåndtering

Detaljer

Kapittel 5: Relasjoner

Kapittel 5: Relasjoner MAT1030 Diskret Matematikk Forelesning 11: Relasjoner Roger Antonsen Institutt for informatikk, Universitetet i Oslo Kapittel 5: Relasjoner 25. februar 2009 (Sist oppdatert: 2009-03-03 11:37) MAT1030 Diskret

Detaljer

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc 1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 2 https://www.youtube.com/watch? v=nkiu9yen5nc 3 Læringsmål og pensum Mål Lære om

Detaljer

Pong. Oversikt over prosjektet. Steg 1: En sprettende ball. Plan. Sjekkliste. Introduksjon

Pong. Oversikt over prosjektet. Steg 1: En sprettende ball. Plan. Sjekkliste. Introduksjon Pong Introduksjon Pong er et av de aller første dataspillene som ble laget, og det første dataspillet som ble en kommersiell suksess. Selve spillet er en forenklet variant av tennis hvor to spillere slår

Detaljer

Steg 2: La løvinnen og papegøyen bevege seg

Steg 2: La løvinnen og papegøyen bevege seg Ørkenløp Introduksjon Dette er et spill for to, der en papegøye og en løvinne kjemper om å komme først gjennom ørkenen. Hver spiller må trykke en tast så fort og ofte som mulig for å flytte figuren sin,

Detaljer

EKSAMEN I FAG SIF8040 - MMI OG GRAFIKK Lørdag 16. august 2003 Tid: kl. 0900-1400

EKSAMEN I FAG SIF8040 - MMI OG GRAFIKK Lørdag 16. august 2003 Tid: kl. 0900-1400 Side 1 av 6 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Dag Svanæs, Tlf: 73 59 18 42 EKSAMEN I FAG SIF8040 - MMI OG GRAFIKK

Detaljer

Oppsummering av digitalteknikkdelen

Oppsummering av digitalteknikkdelen Oppsummering av digitalteknikkdelen! Følgende hovedtemaer er gjennomgått! Boolsk Algebra! von Neuman-arkitektur! Oppbygging av CPU! Pipelining! Cache! Virtuelt minne! Interne busser 09.05. INF 1070 1 Boolsk

Detaljer

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case?

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? 1/15/2004 1 Use case modellen Use case modellering i analysefasen Metode for å identifisere og beskrive de funksjonelle kravene til et system Kapittel 3 i UML Distilled Kapittel 8 i Gurholt og Hasle Kirsten

Detaljer

Forelesning ISA-nivået Kap 5.1

Forelesning ISA-nivået Kap 5.1 TDT4160 Datamaskiner Grunnkurs Forelesning 10.11 ISA-nivået Kap 5.1 Dagens tema Instruksjonssettarkitektur (5.1) Hva er ISA? Bakoverkompatibilitet Hva omfatter ISA? Minnemodeller Registre Instruksjoner

Detaljer

IN uke 1. Komme i gang med programmering

IN uke 1. Komme i gang med programmering IN1000 - uke 1 Komme i gang med programmering Plan for forelesingen Hva er programmering? Skrive og kjøre våre første program Variabler Feilmeldinger Innlesing fra tastatur Beslutninger (if) Plan for forelesingen

Detaljer