Metrikker og målte størrelser. Vi måler fakta for å bestemme systemets egenskaper

Størrelse: px
Begynne med side:

Download "Metrikker og målte størrelser. Vi måler fakta for å bestemme systemets egenskaper"

Transkript

1 Metrikker og målte størrelser Vi måler fakta for å bestemme systemets egenskaper

2 Hva vil vi vite? Hvor stort er programmet? Hvor godt er programmet? Hvor lett er det å vedlikeholde? Hvor mange feil er det i programmet? Hva vil testingen koste? Hvor lang tid tar det å utvikle et lignende program?

3 Grunnlaget for å bruke metrikker Behov for på en objektiv måte kunne Beskrive funksjonalitet Sammenligne systemer Evaluere systemer Forutsi Programkompleksitet Utviklingstider Utviklingskostnader

4 Hva er en metrikk? En metrikk er en målbar egenskap både for et system eller en prosess målbar egenskap eller størrelse i en eller flere deler av et informasjonssystem beregnet eller komponert indikator basert på to eller flere målinger karakteristikk av et produkt eller prosess En metrikk bør være en objektiv størrelse som ikke påvirkes av personen som utfører målingene

5 Krav til en metrikk - en metrikk skal Måle, ikke beskrive egenskaper Være enkel og lett å definere og måle Være objektiv og ikke avhengig av situasjonen Lett og billig å måle Ikke være påvirkelig av program eller målemetode Ha verdier som er forståelige for alle

6 Typer av metrikker Produktmetrikker Antall kodelinjer Størrelse på installert program Mengden av dokumentasjon Prosessmetrikker Utviklingstid, Planlagt og virkelig Ressursbruk, Planlagt og virkelig Produktivitet, Kodelinjer, funksjonspoeng Kvalitet, feil/kodelinjer Metode for utviklingen Kompetanse til utviklingsteamet

7 Flere typer metrikker Objektive Antall kodelinjer - alle teller på samme måte Subjektive Enkel eller komplisert programstruktur - kompetanseavhengig Enkle Antall kodelinjer lett å telle Kompliserte Antall kodelinjer pr. personmåned - kan ikke måles direkte men er avledet av andre metrikker Mest nyttige til å evaluere prosesser

8 Måling av en metrikk Fire typer målinger Programtype Database, personalsystem Tallverdier Rangere mellom forskjellige størrelser Intervallverdier Kompleksitet 4-6, kompleksitet Forholdstall Et program på 1000 linjer er dobbelt så stort som ett på 2000

9 Utfordringer Mange i bruk, lite standardisert Ulik bruk i ulike organisasjoner Vanskelig å sammenligne mellom forskjellige organisasjoner Samme metrikk kan måles på forskjellig måte Metrikkverdi kan avhenge av metode antall kodelinjer avhenger av utviklingsspråk assembly, tradisjonelt utviklingsspråk, 4GV effektiv kode

10 Produktmetrikker Størrelsesmål Antall kodelinjer Antall funksjonspunkter Input, output Kompleksitetsmål McCabes sykliske tall antall definisjoner og antall kall dybde i nøsting av if-setninger fan-in / fan-out Mål for antall funksjoner som kaller en annen funksjon

11 McCabes sykliske tall Mål for testoppgaven Antall noder 13 Antall kanter 17 McCabes sykliske tall = = 6 < 10 er OK

12 Halstead s tall - Programvolumet n1 = Antall unike operatorer i programmet. n2 = Antall unike operander i programmet. operator er språkets nøkkelord operand er variabler og konstanter vokabularet n = n1 + n2, N1 = Totale antall operatorer i programmet. N2 = Totale antall operander i programmet programlengden N = N1 + N2. Da et program bare består av operatorer og operander blir Halstead s tall = Programvolumet = N log2 n

13 Antall funksjonspoeng Brukes til å estimere utviklingstid og ressursbehov bygd på erfaringsdata Vekter (vist nedenfor) 14 påvirkningsfaktorer Innflytelse av faktorene 0-5 Parameter Enkel Middels kompleks Antall inndata Antall utdata Antall forespørsler Antall filer Antall eksterne grensesnitt

14 Kvalitetsmetrikker Antall endringer i designfasen feil funnet ved kodeinspeksjon feil funnet ved testing Nødvendige endringer i kodingen

15 Enkle og komplekse målinger Enkle målinger Antall kodelinjer i programmet Antall sider brukerdokumentasjonen Antall mottatte feilrapporter Antall timer programmet er blitt testet Komplekse målinger Antall feilrapporter \ antall feil funnet i test Antall kodelinjer \ antall utviklingstimer Antall feil funnet i test \ antall testtimer Antall beregninger \ antall kodelinjer Antall måter å kalle en module på

16 Metrikker for ikke-funksjonelle krav Egenskap Hastighet Størrelse Brukbarhet Brukskvalitet (Usability) Pålitelighet Robusthet Portabilitet Mål Utførte transaksjoner per sekund, Behandlede hits/s Bruker/hendelsesresponstid, Skjermoppfriskningstid kb, MB Treningstid, Antall hjelpesider Gjennomsnittlig betjeningstid per transaksjon MTBF Gjennomsnittstid mellom svikt Oppetid MTTR Gjenstarttid etter svikt Andel av hendelser som fører til svikt Andel av målavhengige setninger Antall mål

Repetisjon av testing. Vi undersøker om systemet virker slik det skal

Repetisjon av testing. Vi undersøker om systemet virker slik det skal Repetisjon av testing Vi undersøker om systemet virker slik det skal Test av software For å teste om alle kravene er oppfylt må kravspesifikasjon og utviklingsdokumenter gjennomgås. Hvordan programmet

Detaljer

Repetisjon av testing. Vi undersøker om systemet virker slik det skal

Repetisjon av testing. Vi undersøker om systemet virker slik det skal Repetisjon av testing Vi undersøker om systemet virker slik det skal Test av software For å teste om alle kravene er oppfylt må kravspesifikasjon og utviklingsdokumenter gjennomgås. Hvordan programmet

Detaljer

Statisk testing. Testing uten datamaskin, men med vår egen evne til å vurdere og analysere

Statisk testing. Testing uten datamaskin, men med vår egen evne til å vurdere og analysere Statisk testing Testing uten datamaskin, men med vår egen evne til å vurdere og analysere Hva er statisk testing Analyser som utføres på skrevne dokumenter Hensikten er å finne avvik fra spesifikasjonene

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

Kvalitet og programvare. Når bare det beste er godt nok. Produktet prosessen eller begge deler?

Kvalitet og programvare. Når bare det beste er godt nok. Produktet prosessen eller begge deler? Kvalitet og programvare Når bare det beste er godt nok. Produktet prosessen eller begge deler? To nøtter Hva forbinder du med et IT-system som har (høy) kvalitet? Formuler 3 kriterier for (høy) kvalitet

Detaljer

Eksamen TTM4120 Pålitelige systemer 18. mai 2004 LØSNINGSSKISSE

Eksamen TTM4120 Pålitelige systemer 18. mai 2004 LØSNINGSSKISSE Side 1 av 6 Eksamen TTM4120 Pålitelige systemer 18. mai 2004 LØSNINGSSKISSE a Det skal etableres en transportforbindelse fra node 1 til node 3. Anta at C [ ij, ] = for alle [ i, j] Ω L. Denne forbindelsen

Detaljer

Livsløpstesting av IT-systemer

Livsløpstesting av IT-systemer Livsløpstesting av IT-systemer Testing, validering og evaluering Teste Undersøke ved hjelp av tester om systemet fungerer slik det er beskrevet Validere Bekrefte hvordan systemet virkelig fungerer, om

Detaljer

Python: Valg og betingelser. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Python: Valg og betingelser. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Valg og betingelser TDT4110 IT Grunnkurs Professor Guttorm Sindre Læringsmål og pensum Mål Kunne forstå og bruke if-setninger sammenlikning av strenger nøstede beslutningsstrukturer betingelser

Detaljer

Algoritmer - definisjon

Algoritmer - definisjon Algoritmeanalyse Algoritmer - definisjon En algoritme er en beskrivelse av hvordan man løser et veldefinert problem med en presist formulert sekvens av et endelig antall enkle, utvetydige og tidsbegrensede

Detaljer

Algoritmeanalyse. (og litt om datastrukturer)

Algoritmeanalyse. (og litt om datastrukturer) Algoritmeanalyse (og litt om datastrukturer) Datastrukturer definisjon En datastruktur er den måten en samling data er organisert på. Datastrukturen kan være ordnet (sortert på en eller annen måte) eller

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

Oversikt Kodegenerering Variable Setninger Uttrykk While-setningen Oppsummering

Oversikt Kodegenerering Variable Setninger Uttrykk While-setningen Oppsummering Dagens tema Dagens tema: Kodegenerering Introduksjon Enkle variable Uttrykk Tilordning Litt mer kompliserte setninger med betingelser (Alt om kodegenerering unntatt funksjoner og array-er.) Prosjektoversikt

Detaljer

Krav. Beskriver tjenestene produktet skal håndtere Kravene kan testes

Krav. Beskriver tjenestene produktet skal håndtere Kravene kan testes Krav og terminologi Krav Et utsagn som gjelder produktet vi skal teste og evaluere. Vi skal vurdere graden av sannhet i kravet opp mot funksjonen i produktet Funksjonelle krav Beskriver tjenestene produktet

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

Hva er en algoritme? INF HØSTEN 2006 INF1020. Kursansvarlige Ragnar Normann E-post: Dagens tema

Hva er en algoritme? INF HØSTEN 2006 INF1020. Kursansvarlige Ragnar Normann E-post: Dagens tema va er en algoritme? Vanlig sammenligning: Oppskrift. nput lgoritme NF1020 - ØSTEN 2006 Kursansvarlige Ragnar Normann E-post: ragnarn@ifi.uio.no Output Knuth : tillegg til å være et endelig sett med regler

Detaljer

Betinget eksekvering og logiske tester i shell

Betinget eksekvering og logiske tester i shell Betinget eksekvering og logiske tester i shell Betinget eksekvering *? Programmet utfører operasjon(er) bare hvis en logisk betingelse er sann Bash tilbyr to kontrollstrukturer for å kunne gjøre betinget

Detaljer

Utførelse av programmer, metoder og synlighet av variabler i JSP

Utførelse av programmer, metoder og synlighet av variabler i JSP Utførelse av programmer, metoder og synlighet av variabler i JSP Av Alf Inge Wang 1. Utførelse av programmer Et dataprogram består oftest av en rekke programlinjer som gir instruksjoner til datamaskinen

Detaljer

INF Algoritmer og datastrukturer. Hva er INF2220? Algoritmer og datastrukturer

INF Algoritmer og datastrukturer. Hva er INF2220? Algoritmer og datastrukturer Praktiske opplysninger INF2220 - Algoritmer og datastrukturer HØSTEN 2007 Institutt for informatikk, Universitetet i Oslo Tid og sted: Mandag kl. 12:15-14:00 Store auditorium, Informatikkbygningen Kursansvarlige

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

Eksamen i SLI 5 høsten 1993

Eksamen i SLI 5 høsten 1993 1 Eksamen i SLI 5 høsten 1993 Tid: Mandag 29.november 1993 kl. 9-15 (6 timer). Det er ikke tillatt med trykte eller skrevne hjelpemidler. Som siste ark i dette eksamenssettet er det lagt ved en liste over

Detaljer

Estimeringsmetoder. I dag. Kostnadsestimering. Kostnader og prisfastsettelse. Ulike estimeringsmetoder. Måling av programvare. Estimeringsteknikker

Estimeringsmetoder. I dag. Kostnadsestimering. Kostnader og prisfastsettelse. Ulike estimeringsmetoder. Måling av programvare. Estimeringsteknikker Estimeringsmetoder. Kirsten Ribu I dag Estimeringsteknikker Ekspertestimering, estimering ved analogi, estimering ved bruk av algoritmer Prosjektplanen med akrivitetetsdiagram HiO - Kirsten Ribu 2005 1

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

Estimeringsmetoder. Kirsten Ribu. HiO - Kirsten Ribu

Estimeringsmetoder. Kirsten Ribu. HiO - Kirsten Ribu Estimeringsmetoder. Kirsten Ribu HiO - Kirsten Ribu 2005 1 I dag Estimeringsteknikker Ekspertestimering, estimering ved analogi, estimering ved bruk av algoritmer Prosjektplanen med akrivitetetsdiagram

Detaljer

Akseptansetesten. Siste sjanse for godkjenning Etter Hans Schaefer

Akseptansetesten. Siste sjanse for godkjenning Etter Hans Schaefer Akseptansetesten Siste sjanse for godkjenning Etter Hans Schaefer Akseptansetesting Formell testing med hensyn til brukerbehov, krav, og forretningsprosesser som utføres for å avklare om et system oppfyller

Detaljer

YouTube-kanal ITGK. Læringsmål og pensum

YouTube-kanal ITGK.  Læringsmål og pensum 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner - 3rd edition: Kapittel 5.1-5.6 Professor Alf Inge Wang 2 YouTube-kanal ITGK Professor Guttorm Sindre (foreleser den andre Python-parallellen

Detaljer

Debugging. Tore Berg Hansen, TISIP

Debugging. Tore Berg Hansen, TISIP Debugging Tore Berg Hansen, TISIP Innhold Innledning... 1 Å kompilere og bygge et program for debugging... 1 Når debugger er i gang... 2 Symbolene i verktøylinjen... 3 Start på nytt... 3 Stopp debugging...

Detaljer

Måling Hvordan ta beslutninger Estimeringsteknikker

Måling Hvordan ta beslutninger Estimeringsteknikker Tradisjonelle estimeringsmetoder Estimering med use case modeller Måling Hvordan ta beslutninger Estimeringsteknikker Ekspertestimering, estimering ved analogi, estimering ved bruk av algoritmer Kirsten

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner - 3rd edition: Kapittel 5.1-5.6 Professor Alf Inge Wang 2 YouTube-kanal ITGK Professor Guttorm Sindre (foreleser den andre Python-parallellen

Detaljer

Både føre vár og etter snar. Om Shift Right og Forebyggende Vedlikehold

Både føre vár og etter snar. Om Shift Right og Forebyggende Vedlikehold Både føre vár og etter snar Om Shift Right og Forebyggende Vedlikehold oredragsholdere Håkon D. Bjørgen M.sc. i teoretisk fysikk Jobbet for Accenture siden 2010 Vedlikeholdsansvarlig Teamlead og Løsningsarkitekt

Detaljer

Kom i gang med micro:bit

Kom i gang med micro:bit Kom i gang med micro:bit Kenneth Fossland, Brundalen skole 2019 Bilde: flickr.com makecode.microbit.org https://docs.google.com/document/d/1rjglb2tczwjhzcrklfyxhhn6vguuj-1jdt9ivuvbpu0/edit#heading=h.7s5hifmcog5y

Detaljer

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Denne uka Vi trenger å Støttes av Hente data fra bruker Vise data til bruker Lagre data i minnet for bruk videre i programmet Fra tastatur:

Detaljer

Designed Sounds - File Name Size

Designed Sounds - File Name Size Designed Sounds - File Name Accent_Stroke_Cellos_05.wav Atmospheric_Cello_Stroke_01.wav String_Bending&Tympani_01a.wav Atmospheric_Cello_Stroke_02.wav Accent_Stroke_Cellos_07.wav Accent_Stroke_Cellos_08.wav

Detaljer

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

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

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 3

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 3 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 3 Terje Rydland - IDI/NTNU 2 if (be): else (not_to_be): 3 Læringsmål og pensum

Detaljer

https://goo.gl/susrr5 GRUPPE 5, UKE 11 EVALUERING IN1050

https://goo.gl/susrr5 GRUPPE 5, UKE 11 EVALUERING IN1050 GRUPPE 5, UKE 11 EVALUERING IN1050 1 Planen for i dag Gruppetimene videre Repetisjon fra forelesning Begynne med oblig Tankekart 2 Datainnsamling Design Evaluering IDENTIFISERE ETABLERE DESIGNUTFORMING

Detaljer

Verdien av god leverandørtesting i konstruksjonsfasen i smidige prosjekter

Verdien av god leverandørtesting i konstruksjonsfasen i smidige prosjekter Verdien av god leverandørtesting i konstruksjonsfasen i smidige prosjekter FOREDRAGSHOLDERE Kristian Bjerke-Gulstuen Accenture siden 1999 Fra utvikler til Testleder og Kvalitetsansvarlig Leder Accenture

Detaljer

if (be): else (not_to_be): TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap.

if (be): else (not_to_be): TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk Utgave 3: Kap. 3 Terje Rydland - IDI/NTNU 2 if (be): else (not_to_be): 3 Læringsmål og pensum

Detaljer

Evaluering av brukskvalitet for et Web-grensesnitt

Evaluering av brukskvalitet for et Web-grensesnitt Evaluering av brukskvalitet for et Web-grensesnitt Brukergrensesnitt Dørhåndtak - elektronisk kodelås Reflektere hvem som gjør hva Program som gjør det mulig for en bruker å kommunisere med datamaskinen

Detaljer

Forelesning 30: Kompleksitetsteori

Forelesning 30: Kompleksitetsteori MAT1030 Diskret Matematikk Forelesning 30: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 30: Kompleksitetsteori 19. mai 2009 (Sist oppdatert: 2009-05-19

Detaljer

Lærerveiledning - Straffespark

Lærerveiledning - Straffespark Lærerveiledning - Straffespark Skrevet av: Geir Arne Hjelle Kurs: Scratch Tema: Blokkbasert, Spill Fag: Matematikk, Programmering Klassetrinn: 1.-4. klasse, 5.-7. klasse, 8.-10. klasse Om oppgaven I denne

Detaljer

Læringsmål og pensum. if (be): else (not_to_be):

Læringsmål og pensum. if (be): else (not_to_be): 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk - 3rd edition: Kapittel 3 Professor Alf Inge Wang 2 if (be): else (not_to_be): 3 Læringsmål og pensum Mål Lære å bruke og

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk. - 3rd edition: Kapittel 3. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk. - 3rd edition: Kapittel 3. Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk - 3rd edition: Kapittel 3 Professor Alf Inge Wang 2 if (be): else (not_to_be): 3 Læringsmål og pensum Mål Lære å bruke og

Detaljer

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering Etter uke 6 skal du Kjenne til motivasjonen for objektorientert programmering Introduksjon til objektorientert programmering INF1001 Høst 2016 Forstå hva en klasse er, og forskjellen på klasse og objekt

Detaljer

Oversikt Kodegenerering Variable Setninger Uttrykk While-setningen

Oversikt Kodegenerering Variable Setninger Uttrykk While-setningen Dagens tema Dagens tema: Kodegenerering Introduksjon Enkle variable Uttrykk Tilordning Litt mer kompliserte setninger med betingelser (Alt om kodegenerering unntatt funksjoner.) Prosjektoversikt Del-0

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

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Litt mer om løkker, prosedyrer, funksjoner, tekst og innlesing fra fil INF1000, uke4 Geir Kjetil Sandve 1 Tilbakeblikk Dere bør nå beherske det sentrale fra uke 1 og 2: Uttrykk, typer,

Detaljer

Innlevering 2a i INF2810, vår 2017

Innlevering 2a i INF2810, vår 2017 Innlevering 2a i INF2810, vår 2017 Hovedtematikken denne gang er Huffman-koding, som ble dekket i 6. forelesning (23. februar) og i seksjon 2.3.4 i SICP. Det er viktig å ha lest denne seksjonen før dere

Detaljer

Kort om evaluering og testing av It-systemer. Hvordan vurdere, verdsette, velge og teste?

Kort om evaluering og testing av It-systemer. Hvordan vurdere, verdsette, velge og teste? Kort om evaluering og testing av It-systemer Hvordan vurdere, verdsette, velge og teste? Evaluere - Bokmålsordboka Evaluere Vurdere, verdsette, gi karakter for. Vurdere Bedømme, verdsette. Bedømme Dømme

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

Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen.

Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen. IN1000 - Seminaroppgaver til uke 1 Nyttig å vite: PEP 8 -- Style Guide for Python Code. Dersom det som undervises i IN1000 ikke samstemmer med PEP, så skal dere følge den stilen som undervises og ikke

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

Hvordan en prosessor arbeider, del 1

Hvordan en prosessor arbeider, del 1 Hvordan en prosessor arbeider, del 1 Læringsmål Kompilator, interpret og maskinkode CPU, registre Enkle instruksjoner: de fire regnearter Mer informasjon om temaet Internett Lokalnett (LAN) Mitt program

Detaljer

Øvingsforelesning TDT4105 Matlab

Øvingsforelesning TDT4105 Matlab Øvingsforelesning TDT4105 Matlab Øving 2. Pensum: Funksjoner, matriser, sannhetsuttrykk, if-setninger. Benjamin A. Bjørnseth 8. september 2015 2 Innhold Funksjoner Matriser Matriseoperasjoner Sannhetsuttrykk

Detaljer

3. obligatoriske innlevering, høsten 2014

3. obligatoriske innlevering, høsten 2014 3. obligatoriske innlevering, høsten 2014 {Jonathan Feinberg, Joakim Sundnes} {jonathf,sundnes}@simula.no November 3, 2014 Innleveringskrav Denne skal følge malen gitt på emnesidene Legges ut 2. september.

Detaljer

INF109 - Uke 1b 20.01.2016

INF109 - Uke 1b 20.01.2016 INF109 - Uke 1b 20.01.2016 1 Variabler Et program er ikke til stor hjelp hvis det er statisk. Statisk betyr at programmet bare bearbeider faste data som er lagt inn i programkoden. For å gjøre programmer

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs

TDT4105 Informasjonsteknologi, grunnkurs 1 TDT4105 Informasjonsteknologi, grunnkurs Matlab: Sortering og søking Anders Christensen (anders@idi.ntnu.no) Rune Sætre (satre@idi.ntnu.no) TDT4105 IT Grunnkurs 2 Pensum Matlab-boka: 12.3 og 12.5 Stoffet

Detaljer

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java INF høsten 2 Uke 4: 3. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Mål for uke 4: Innhold uke 4 Repetisjon m/ utvidelser:

Detaljer

Indikatorprosjekter om internasjonalisering - Tilnærmingsmåter, metoder og resultater

Indikatorprosjekter om internasjonalisering - Tilnærmingsmåter, metoder og resultater Indikatorprosjekter om internasjonalisering - Tilnærmingsmåter, metoder og resultater Rapport innenfor rammen av det europeiske prosjektet Indicators for Mapping & Profiling Internationalisation (IMPI)

Detaljer

BlackBox, WhiteBox og andre testmetoder. Etter ønske fra studentene 26. november 2009

BlackBox, WhiteBox og andre testmetoder. Etter ønske fra studentene 26. november 2009 BlackBox, WhiteBox og andre testmetoder Etter ønske fra studentene 26. november 2009 Hva er testing? Testing er å undersøke IT-systemer eller deler av det for å vurdere om kravene til det som testes er

Detaljer

Brukskvalitet. Bruk og nytte av systemet

Brukskvalitet. Bruk og nytte av systemet Brukskvalitet Bruk og nytte av systemet Fem grunner til at systemer er vanskelige å bruke Systemet er tilpasset maskinen og arbeidsoppgaven - ikke brukeren Brukerenes arbeidsoppgaver endres raskt, mens

Detaljer

Oversikt Kodegenerering Variabler Setninger Uttrykk While-setningen

Oversikt Kodegenerering Variabler Setninger Uttrykk While-setningen Dagens tema Dagens tema: Kodegenerering Introduksjon Enkle variabler Uttrykk Tilordning Litt mer kompliserte setninger med betingelser (Alt om kodegenerering unntatt funksjoner.) Prosjektoversikt Del 0

Detaljer

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Referansegruppe MTTK: havardmellbye@gmail.com MTMT: Daniel.Vadseth@hotmail.com MTDESIGN 9valinn@gmail.com MTKOM: jonbs@stud.ntnu.no MLREAL:

Detaljer

Usability testing Brukertester

Usability testing Brukertester Usability testing Brukertester Håkon Tolsby 13.01.2017 Håkon Tolsby 1 Usability-testing (brukertest) Representative brukere utfører typiske oppgaver. Mest mulig kontrollerte omgivelser, i form av eksperimenter.

Detaljer

Brukskvalitet. Lett å bruke og samtidig nyttig

Brukskvalitet. Lett å bruke og samtidig nyttig Brukskvalitet Lett å bruke og samtidig nyttig Fem grunner til at systemer kan være vanskelige å bruke Systemet er ikke tilpasset brukeren, men maskin og arbeidsoppgave Arbeidsoppgaver endres raskt - systemer

Detaljer

INF2810: Funksjonell Programmering. En metasirkulær evaluator

INF2810: Funksjonell Programmering. En metasirkulær evaluator INF2810: Funksjonell Programmering En metasirkulær evaluator Stephan Oepen & Erik Velldal Universitetet i Oslo 26. april 2013 Tema 2 Forrige uke Strømmer og utsatt evaluering Memoisering Kort om makroer

Detaljer

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk Innhold uke 7 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2017 uke 7 Siri Moe Jensen Lite tilbakeblikk: Prosedyrer og funksjoner Objektorientert programmering Introduksjon: Hvorfor,

Detaljer

INF uke 2. Inputt, beslutninger, kontrollflyt og prosedyrer

INF uke 2. Inputt, beslutninger, kontrollflyt og prosedyrer INF1001 - uke 2 Inputt, beslutninger, kontrollflyt og prosedyrer Repetisjon fra forrige uke Lese inn fra tastaturet Beslutninger Kontrollflyt Prosedyrer Outline: Repetisjon fra forrige uke Lese inn fra

Detaljer

INF3430/4430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer

INF3430/4430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer INF3430/4430 Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer 2005-10-26 Agenda Funksjoner og operatorer Prosedyrer Begrepet overload Biblioteker Package/package body Standard

Detaljer

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11

Forelesning 33. Repetisjon. Dag Normann mai Innledning. Kapittel 11 Forelesning 33 Repetisjon Dag Normann - 26. mai 2008 Innledning Onsdag 21/5 gjorde vi oss ferdige med det meste av den systematiske repetisjonen av MAT1030. Det som gjensto var kapitlene 11 om trær og

Detaljer

Diskusjonsoppgaver Hvilke fordeler oppnår man ved analytisk evaluering sammenliknet med andre tilnærminger?

Diskusjonsoppgaver Hvilke fordeler oppnår man ved analytisk evaluering sammenliknet med andre tilnærminger? Definisjonsteori Hva er de tre hovedtilnærmingene til evaluering? Nevn de seks stegene i DECIDE. (blir gjennomgått neste uke) Gi et eksempel på en måte å gjøre indirekte observasjon. Hva ligger i begrepene

Detaljer

Objektorientert programmering i Python

Objektorientert programmering i Python Objektorientert programmering i Python IN1000 Høst 2019 uke 8 Siri Moe Jensen Læringsmål uke 8 Repetisjon fra forrige uke Definere en klasse, opprette og arbeide med objekter: How-to

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

MAT1030 Diskret matematikk

MAT1030 Diskret matematikk MAT1030 Diskret matematikk Forelesning 33: Repetisjon Dag Normann Matematisk Institutt, Universitetet i Oslo 26. mai 2008 Innledning Onsdag 21/5 gjorde vi oss ferdige med det meste av den systematiske

Detaljer

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon Innledning MAT1030 Diskret matematikk Forelesning 33: Repetisjon Dag Normann Matematisk Institutt, Universitetet i Oslo 26. mai 2008 Onsdag 21/5 gjorde vi oss ferdige med det meste av den systematiske

Detaljer

63,4. $QDO\VHRJSUHVHQWDVMRQDYPnOHGDWD 6RIWZDUH 3URFHVV,PSURYHPHQW IRUEHWWHU4XDOLW\

63,4. $QDO\VHRJSUHVHQWDVMRQDYPnOHGDWD 6RIWZDUH 3URFHVV,PSURYHPHQW IRUEHWWHU4XDOLW\ 63,4 6RIWZDUH 3URFHVV,PSURYHPHQW IRUEHWWHU4XDOLW\ SAMMENSTILL ANALYSER GJENNOMFØR KARAKTERISER SETT MÅL PLANLEGG $QDO\VHRJSUHVHQWDVMRQDYPnOHGDWD 9HUVMRQ 9 'DWR 6WDWXV,DUEHLG )RUIDWWHU.DUL-XXO:HGGH 7LOJMHQJHOLJKHW

Detaljer

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Page 1 Page 2 [Kurssidene] [ JBI] [ ] Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Introduksjon til kontrollstrukturer Michael Preminger (michaelp@hio.no) 07/09-06 I denne forelesningen

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

MAT1030 Diskret Matematikk

MAT1030 Diskret Matematikk MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo 13. mai 2009 (Sist oppdatert: 2009-05-17 22:38) Forelesning 29: Kompleksitetsteori

Detaljer

Kap. 4 del I Top Down Parsering INF5110 v2006. Stein Krogdahl Ifi, UiO

Kap. 4 del I Top Down Parsering INF5110 v2006. Stein Krogdahl Ifi, UiO Kap. 4 del I Top Down Parsering INF5110 v2006 Stein Krogdahl Ifi, UiO 1 Innhold First og Follow-mengder Boka ser på én parseringsmetode først, uten å se på First/Follow-mengder. Vi tar teorien først To

Detaljer

Forelesning 29: Kompleksitetsteori

Forelesning 29: Kompleksitetsteori MAT1030 Diskret Matematikk Forelesning 29: Kompleksitetsteori Roger Antonsen Institutt for informatikk, Universitetet i Oslo Forelesning 29: Kompleksitetsteori 13. mai 2009 (Sist oppdatert: 2009-05-17

Detaljer

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme INF2810: Funksjonell Programmering En Scheme-evaluator i Scheme Erik Velldal Universitetet i Oslo 19. april 2016 Tema 2 Forrige uke Strømmer og utsatt evaluering Kort om makroer I dag Kap. 4 Metasirkulær

Detaljer

Løpende strekmann Erfaren Videregående Python PDF

Løpende strekmann Erfaren Videregående Python PDF Løpende strekmann Erfaren Videregående Python PDF Introduksjon I denne oppgaven skal du lage et spill der du styrer en strekmann som hopper over hindringer. Steg 1: Ny fil Begynn med å lage en fil som

Detaljer

Forslag til ny læreplan for informatikk studieretningsfag

Forslag til ny læreplan for informatikk studieretningsfag Forslag til ny læreplan for informatikk studieretningsfag Jens Kaasbøll, undervisningsleder, Institutt for Informatikk Foredrag på Faglig-pedagogisk dag Universitetet i Oslo, 4. januar 2000 1 Behov for

Detaljer

Python: Variable og beregninger, input og utskrift. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Python: Variable og beregninger, input og utskrift. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Variable og beregninger, input og utskrift TDT4110 IT Grunnkurs Professor Guttorm Sindre Læringsmål og pensum Mål for denne uka: Vite litt om design av programmer (2.1, 2.2, 2.4) Kunne skrive ut

Detaljer

SolidPlant er perfekt for deg som jobber med design av rørsystemer og anlegg, og er kjent med SolidWorks.

SolidPlant er perfekt for deg som jobber med design av rørsystemer og anlegg, og er kjent med SolidWorks. SolidPlant, det eneste virkelig spesifikasjonsstyrte anleggsdesign programmet for SolidWorks. Ved å kombinere intuitive parametrisk styrte SolidWorks med en sofistikert database for å generere alle komponenter

Detaljer

Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)!

Repetisjon: Binære. Dagens plan: Rød-svarte trær. Oppgave (N + 1)! Repetisjon: Binære søketrær Dagens plan: Rød-svarte trær (kap. 12.2) B-trær (kap. 4.7) bstrakte datatyper (kap. 3.1) takker (kap. 3.3) For enhver node i et binært søketre gjelder: lle verdiene i venstre

Detaljer

Innhold Innledning 1. 5 Løkke som kontrollstruktur 131 5-1 Et program med løkke som kontrollstruktur 132. vii

Innhold Innledning 1. 5 Løkke som kontrollstruktur 131 5-1 Et program med løkke som kontrollstruktur 132. vii Innledning 1 1 Datamaskiner og programmer 5 1-1 Datamaskiner, programmer og programmering 6 1-2 Fra kildekode til kjørbart program 12 1-3 Elementene i et C++-program 15 1-4 Livsløpet til programmer 24

Detaljer

Guide. Valg av regnskapsprogram

Guide. Valg av regnskapsprogram Guide Valg av regnskapsprogram Trenger du et regnskapsprogram for din bedrift? Det er mye å tenke på når man sammenligner ulike tilbud. Hva er dine faktiske behov, hva er sluttprisen for en løsning, og

Detaljer

Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist

Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist Stack Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist Et nytt element legges alltid på toppen av stakken Skal vi ta ut et element, tar

Detaljer

Når programmet har nok opplysninger beregner det alle resterende data. Programmet tegner atumatisk opp T-s og P-v diagram for syklusen.

Når programmet har nok opplysninger beregner det alle resterende data. Programmet tegner atumatisk opp T-s og P-v diagram for syklusen. ... 5... 6... 7 Cyclepad er et grafisk basert beregnings program for termodynamiske beregninger. Du kan bruke det både til å beregne termodynamiske størrelser over enkelt elementer i et åpent, eller et

Detaljer

Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist

Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist Stack Hva er en stack? En lineær datastruktur der vi til enhver tid kun har tilgang til elementet som ble lagt inn sist Et nytt element legges alltid på toppen av stakken Skal vi ta ut et element, tar

Detaljer

Forsøkslæreplan i valgfag programmering

Forsøkslæreplan i valgfag programmering Forsøkslæreplan i valgfag programmering Gjelder bare for skoler som har fått innvilget forsøk med programmering valgfag fra 1.8.2016 Formål Valgfagene skal bidra til at elevene, hver for seg og i fellesskap,

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 10/5-2011, Stein Krogdahl Oversikt over Javas class-filer og byte-kode Disse formatene ble planlagt fra start

Detaljer

Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den.

Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den. PXT: Stein, saks, papir Skrevet av: Bjørn Hamre Kurs: Microbit Introduksjon Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den. Steg 1: Velge tilfeldig

Detaljer

Estimeringsmetoder. I dag. Estimering = måling. Kostnader og prisfastsettelse

Estimeringsmetoder. I dag. Estimering = måling. Kostnader og prisfastsettelse Estimeringsmetoder. Tradisjonelle estimeringsmetoder Estimering med use case modeller I dag Måling Hvordan ta beslutninger Estimeringsteknikker Ekspertestimering, estimering ved analogi, estimering ved

Detaljer

INF1000 undervisningen INF 1000 høsten 2011 Uke september

INF1000 undervisningen INF 1000 høsten 2011 Uke september INF1000 undervisningen INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Forelesningene: Første

Detaljer

UNN KIS Samlet pris og prisbestemmelser

UNN KIS Samlet pris og prisbestemmelser UNN KIS Samlet pris og prisbestemmelser Bilag K7 til Kjøpsavtale UNN KIS 1 Samlet pris og prisbestemmelser Alle priser og nærmere betingelser for det vederlaget Oppdragsgiver skal betale for Leverandørens

Detaljer

INF 1000 høsten 2011 Uke september

INF 1000 høsten 2011 Uke september INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus 1 INF1000 undervisningen Forelesningene: Første

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 8/5-2012, Stein Krogdahl Byte-koden for Java og.nett (C#) http://en.wikipedia.org/wiki/java_bytecode_instruction_listings

Detaljer