Struktureret system udvikling

Størrelse: px
Starte visningen fra side:

Download "Struktureret system udvikling"

Transkript

1 Struktureret system udvikling Minimodul 15: Testdesign og planlægning af test Rasmus L. Olsen, 6. April, 2011 Tak til Ulrik Nyman for inspiration til eksempelslides 1

2 Dagens program Generelt omkring test og testudførsel Test behov Planlægning SPU test metode Modultest Integrationstest Test metoder Black box test White box test Test dokumentation Opgaver 2

3 Generelt om test Er det ikke testet virker det ikke! Alle laver fejl (men der forskel på antallet) Fejl skal findes så tidligt som muligt Test debugging Test: påviser fejl - kan i visse tilfælde udføres af personer uden kendskab til programmet Debugging: lokaliserer fejl (og inkluderer ofte også fejlretning) - kræver detaljeret kendskab til programmet 3

4 Testbehov er forskellige Hvordan gik det ved afleveringen af det sidste system? 'Vi havde lovet at aflevere den 15. september. Det gjorde vi, så vi måtte rejse over og rette alle de fejl, der blev fundet bagefter!' 'Det betød ikke noget, om det varede en måned mere eller mindre. 'Kunden ville ikke betale, før systemet virkede, som han mente, der var aftalt.'. Er en fejl kritisk i det endelige system? Ja, du godeste, der er jo menneskeliv på spil! Ja, produktionsstop koster kr. pr. time. Ja, tænk på firmaets gode rygte og markedsandel. Nej, den retter vi bare. 4

5 Testbehov er forskellige #2 Vil en eventuel fejl være svær (dyr!!) at rette? 'Ja, vores system er i kredsløb om Jorden.' Ja, vi sælger apparater om året, og vi kan ikke rette, når først apparatet er på markedet. Nej, udstyret står jo blot i vores laboratorium. Skal der bygges/testes videre på programmet? 'Ja, vi forventer at sælge et stort antal af dette program i mange variationer.' Ja, og vi ønsker ikke, at Søren skal hænge på vedligeholdelse i al fremtid. Nej, det er kun et demo-program. 5

6 Hvorfor planlægge tests? Blot det at planlægge test reducerer antallet af fejl! Formål med testning: Forhindre og finde fejl Dokumentere funktionalitet og mangler Eftervise funktionalitets- og ydelseskrav Tests kan ske på forskellige planer Design - Kan det designede system håndtere de angivne scenarier? Program inspektion - Inspektion af program og diagrammer etc. Kodning - Kan det kompileres Program test Kan programmet køre som forventet? Funktionalitet - Kommer der sort røg ud når vi tænder for strømmen? Kravspec. Programdesign Procesdesign Moduldesign Implementation Modultest Modulintegration Accepttest Procesintegration 6

7 Et eksempel på rigtig dårlig planlægning af tests Chernobyl, 26. April, 1986 : - En beslutning var taget om at teste værkets evne til at producere elektricitet nok til at drive værkets sikkerhedssystem i det tilfælde den eksterne el forsyning forsvandt. - En lang række af omstændigheder ikke taget i betragtning under testen, ledte til nedsmeltningen af reaktor 4 på kraftværket - Konsekvenserne ses stadig i dag og er meget virkelige på mange mennesker. En del er også døde som direkte og indirekte følgevirkning 7

8 Test parakdokser Pesticide paradokset: Enhver metode til at forhindre eller finde fejl efterlader fejl, som metoden er ineffektiv overfor Kompleksitets paradokset: Software kompleksiteten øges konstant til grænsen af vores formåen (tilsvarende mere komplekse fejl) Og husk - If there is a possibility of several things going wrong the one that will cause the most damage will be the one to go wrong. 8

9 Test principper Princip: veldefineret input forventet output Reproducérbare test = veldokumenteret test miljø Interaktiv/manuel test: Billig og enkel udvikling Tidskrævende Automatiske test: Udviklingskrævende Tidsbesparende ved gentagende testudførsel, generering af data med hensyn til senere statistisk undersøgelse ved mange parameter ændringer/stort parameter rum 9

10 Dagens program Generelt omkring test og testudførsel Test behov Planlægning SPU test metode Modultest Integrationstest Test metoder Black box test White box test Test dokumentation Opgaver 10

11 SPU-tests Modultest Modulintegration Procesintegration Accepttest Test planlægning Test udførelse 11

12 Modultest Formål: At sikre at modulet virker som beskrevet i modulspecifikationen Indhold: Test af grænsefladen og interne, logiske struktur af programmet Udarbejdelse af test stubbe Automatiseret test Generering af test data Gyldig data Ugyldig data Test af interface 12

13 The Big Bang Trinvis integration Integrationstests Trinvis: Enheder tilføjes én efter én med en integrationstest ved hver tilføjelse Samlet integration (The Big Bang): Individuelle enheder testes Alt samles derefter i én ombæring System 13

14 Eksempel på hvad man ikke skal gøre - Ariane 5 4. Juni jomfruflyvning af den nye Ariane 5 - Ariane 4 havde været en aldeles stabil raket, og derfor genanvendte man softwaren fra 4 eren i 5 eren! - Ariane 5 accellerede dog hurtigere end 4 eren. - Et sted i koden, skulle en 64 bit float værdi konverteres til en 16 bit integer - Man antog at 16 bit var nok, men pga. forskellen mellem Ariane 4 og 5, tog man fejl. - Det kostede $

15 Trinvis integration For et givet modul hieraki er der to principielle metoder: Bottom up integration Top down integration 15

16 Integrationsretning Bottom-up integration Sikrer at de overordnede funktioner virker som forventet Kræver dog at underliggende funktioner er færdige Sekventielt udvikling/integrationsforløb 16

17 Integrationsretning Top-down integration Tillader parallelle udviklingsforløb Kræver at interface og funktionalitet er korrekt emuleret af stubbe 17

18 I praksis er det en blandet landhandel Kompromis mellem bottom-up og top-down afhængigt af: Hvilke ydre enheder der er tilknyttet Hvilke enheder der er færdige Hvilke hardware dele der er færdige eller givet på forhånd Kan der testes hvis nogle enheder mangler Er der noget der skal demonstreres tidligt (kritisk) 18

19 Procesintegration Planlægning af aktiviteter Hvornår er modul X og Y klar til integrering? Hvad afhænger af hvad? Hvor kan der med fordel benyttes stubbe? Alle involverede skal være klar over tids- og afhængighedslinjer 19

20 Procesintegrations-test Først lidt debugning Vær beredt: Uforudsete fejl dukker normalt altid op! Typiske fejl er mistilpassede interfaces (som kan grunde i funktionsmisforståelse!) Dernæst testning af proces Udfører processen sin dedikerede opgave? Resulterer et givet input i forventet output? Opfører modulet som forventet over tid?. 20

21 Accepttest 21

22 Ups... Therac 25 The Therac-25 radiation therapy machine was a medical device that used beams of electrons or photons to kill cancer cells. Between , at least six people got very sick after Therac-25 treatments. Four of them died. The manufacturer was confident that their software made it impossible for the machine to harm Patients, however (among other bad things) The equipment control task did not properly synchronize with the operator interface task, so that race conditions occurred if the operator changed the setup too quickly. This was missed during testing, since it took some practice before operators were able to work quickly enough to trigger this failure mode. 22

23 Dagens program Generelt omkring test og testudførsel Test behov Planlægning SPU test metode Modultest Integrationstest Test metoder Black box test White box test Test dokumentation Opgaver 23

24 Testforberedelse- og udførelse Forberedelse Specificerer testemner. Hvad skal testes? Design testen. Hvordan skal testen udføres? Udførelse Implementer testen; Skriv testdrivere/stubbe. Klargør testdata Kør test Evaluér testforløb 24

25 Testmetoder 25

26 Black-Box vs. White-Box Black-Box Ingen kendskab til intern struktur Ikke nødvendigt med kendskab til softwaren Primært de øverste trin i V-modellen White-Box Tester interne strukturer Kendskab til softwaren nødvendig Primært de nederste test trin i V-modellen Kravspec. Accepttest Programdesign Procesintegration Procesdesign Modulintegration Moduldesign Modultest Implementation 26

27 Black box test 27

28 Black-Box testing Black-box dækker test af funktion/system opførsel Baseret på en dedikeret specifikation Test uden kendskab til systemets interne struktur Eksempler på black-box teknikker: IO analyse Domæne-analyse, f.eks. Frekvensrespons Tidsrespons Statistisk analyse etc. 28

29 Kombinatorisk problem For et program med flere inputs skal der tages stilling til hvilke kombinationer der skal testes med Det sikreste ville være at test med alle mulige kombinationer men det kan være umuligt pga. antallet! X 1 X 2 X 3... X n Program P Hvis n = 10 og der vælges 10 test værdier for hver variabel vil der i alt være kombinationer!!!! 29

30 Kombinatorisk problem Ved kombinatorisk black-box testing opstår der let flere test-cases end der er ressourcer til at udføre (selv for automatiserede tests!) Hvordan reduceres antallet at test-cases uden at mindske sandsynligheden for at finde fejl? Fra uoverskueligt. Til overskueligt 30

31 Domæne-test - Black-Box test 1. Identificér muligt in- og output 2. Identificér gyldigt og ugyldigt in- og output 3. Opdel det gyldige og ugyldige område i klasser Eks. gyldigt input: 0 X 999 klasse 1: X<0 klasse 2: X>999 klasse 3: 0 X 10 klasse 4: 11 X 999 (ugyldigt input) (ugyldigt input) (gyldigt input) (gyldigt input) 4. Design testscenarier med gyldigt input som dækker flest mulige klasser 5. Design en testscenarier for hver klasse med ugyldigt input 31

32 Black-Box test 6. Supplér med grænseværdier, eks.: Første element Sidste element Max/min værdi En over/under grænsen. 7. For hver grænseværdi genereres en ny test-case som dækker én og kun én grænseværdi 8. Fejlgætning; hvis vi kan indse/gætte fejlagtige værdier der kan give anledning til bekymring, f.eks. Tomt input 9. Til både gyldige og ugyldige test-cases specificeres det forventede output 32

33 Black-Box test - eksempel 33

34 U.S.S. Yorktown A SmartShip?!?! Krigskibet USS Yorktown af Essex klassen fra 1943 er løbende blevet moderniseret siden krigen. På et tidspunkt får skibet installeret SmartShip system der skal afhjælpe sømænd med trivielle opgaver. Et indtastet 0 i et datafelt ledte til en division by zero fejl. Den efterfølgende fejl spredte sig efterhånden til skibets motorstyring og stoppede motoren. Skibet lå dødt hen i vandte i flere timer godt det ikke var i fjendeland. The Smart Ship program is still in development, and officials said glitches are to be expected, but in this case the problem appeared to be more political than technical. Using Microsoft's Windows NT operating system in such a critical environment, some engineers said, was a bad move. 34

35 Testdokumentation Vigtigt af hensyn til: Bedre overblik Grundlag for forbedringer Gentagelse af test Grundlag for godkendelse etc. 35

36 Testspecifikation 1. Indledning Formål Referencer Tekstens omfang og begrænsninger Godkendelse 2. Test emner 3. Test design 4. Test implementation 5. Udførelse af test 6. Bilag 36

37 Test rapport 1. Indledning Referencer Identifikation 2. Test resultater 3. Afvigelser og kommentarer Afvigelser fra normal afvikling Problemer/ændringsforslag 4. Konklusion 37

38 Testaktiviteter og testdokumentation 38

39 White box test 39

40 Eksempel fra den kolde krig: Russerne angriber?!?! The United States established the Ballistic Missile Early Warning System (BMEWS) during the Cold War to detect a Soviet??? missile attack. On October 5, 1960 the BMEWS radar at Thule, Greenland detected something. Its computer control system decided the signal was made by hundreds of missiles coming toward the US. The radar had actually detected the Moon rising over the horizon. Unfortunately, the B M E W S c o m p u t e r h a d n o t b e e n programmed to understand what the moon looked like as it rose in the eastern sky, so it interpreted the huge signal as Soviet missiles. Luckily for all of us, the mistake was realized in time. 40

41 White-Box Testing Også kendt som Structural test Glass-Box test Test af implementering Instruktioner Forgreninger Tilstande etc 41

42 White-Box tests Team baserede ( human testing ): Code Inspection Walk Through Ikke nødvendigvis team baserede: Path Testing Loop Testing Domain Testing 42

43 Path testing Antagelser ved Path Testing: Specifikationerne er korrekte Data er til rådighed og tilgås korrekt De eneste bugs i programmet er dem der har indflydelse på kontrol flow et 43

44 Path testing cases Instruktionsdækning alle instruktioner gennemløbes min. én gang Forgreningsdækning alle forgreninger gennemløbes min. én gang Betingelsesdækninger alle sammensatte betingelses afprøves indtil alle betingelser er dækket Umuligt at teste selv et simpelt program fuldstændigt!!! Eksempel Tre mulige stier gennem programmet Hvis løkken gennemløbes 20 gange er der i alt 3 20 forskellige sekvenser 44

45 Path testing Procedure: 1. Vælg en sti gennem softwaren 2. Bestem data der giver den pågældende sti 3. Kør softwaren med data fra 2) 4. Observér output 5. Sammenlign 4) med forventet output 45

46 Flowgraph - bestanddele En forgrening = et sted hvor der kan ske en ud af flere efterfølgende handlinger, f.eks., If/then/else case statements En samling = et sted hvor handlinger (risikere at) samles, f.eks. end if end loop goto label En procesblok = en sekvens af handlinger som ikke afbrydes af forgreninger eller samlinger. En proces blok har én indgang og én udgang Programmet hopper hverken ind eller ud af en proces blok 46

47 Eksempel 1 INPUT X,Y Z:=X+Y V:=X-Y 3 IF Z>=0 GOTO SAM 4 JOE: Z:=Z+V 5 SAM: Z:=Z+V U:=0 6 LOOP B(U),Q(V):=(Z+V)*U 7 IF B(U)=0 GOTO JOE Z:=Z-1 8 IF Z=0 GOTO ELL U:=U+1 9 UNTIL U=Z B(U-1):=B(U+1)+Q(V-1) 10 ELL:B(U+Q(V)):=U+V 11 IF U=V GOTO JOE 12 IF U>V THEN U := Z 13 YY: Z:=U 14 END 47

48 Eksempel I flowgraph version Node Link 1 INPUT X,Y Z:=X+Y V:=X-Y 3 IF Z>=0 GOTO SAM 4 JOE: Z:=Z+V 5 SAM: Z:=Z+V U:=0 6 LOOP B(U),Q(V):=(Z+V)*U 7 IF B(U)=0 GOTO JOE Z:=Z-1 8 IF Z=0 GOTO ELL U:=U+1 9 UNTIL U=Z B(U-1):=B(U+1)+Q(V-1) 10 ELL:B(U+Q(V)):=U+V 11 IF U=V GOTO JOE 12 IF U>V THEN U := Z 13 YY: Z:=U 2 END 48

49 Begreber Path: en sekvens af statements (instruktioner) Node: entry, junction, decision eller exit Link: forbindelsen mellem to nodes Path længde: antallet af links Entry/exit path eller complete path: en path der begynder og slutter ved hhv. rutinens start og slutpunkt (dvs. ingen spring ind/ud midt i rutinen) 49

50 Path Testing Kriterier Tre path testing kriterier (blandt uendeligt mange) 1) Statement Testing (P 1 ): 100% statement dækning Udfør alle statements i programmet mindst én gang 2) Branch Testing (P 2 ): 100% branch dækning Udfør test som sikrer at alle branches har været gennemløbet min. én gang. 3) Path Testing (P ): 100% path dækning Gennemløb samtlige stier gennem programmet Sikrer også at kriterie 1) og 2) er dækket 50

51 Eksempler på Branch og Statement testning 1 a b c d e F T i h g f F T 10 l T k j F T F m 51

52 Branch and Statement dækning Spørgsmål: Har hver forgrening et T (true) og et F (false) i den pågældende søjle? Svar: Hvis ja, så har vi branch dækning. Spørgsmål: Er alle links dækket min. én gang? Svar: Hvis ja, så har vi statement dækning. 52

53 Path Predicates Hver path svarer til en sekvens af True og False værdier Path Predicate Expression: et boolsk udtryk som tvinger programmet gennem en veldefinert path. Multiway branches (f.eks. case/switch statements) behandles som ifthen-else statements. Eksempel Input {X1,,X6} if (X5 > 0 X6 < 0) /* predicates A,B */... if(x1 + 3 * X >= 0) /* predicate C */... if(x3 == 17) /* predicate D */... if(x4 - X1 >= 14 * X2) /* predicate E */... Path Predicate udtryk: ACDE + BCDE = (A+B)CDE 53

54 Nogle vigtige begreber Path sensitization: Det at finde en løsning til et path predicate udtryk. Et path predicate kan være reachable eller unreachable Reachable hvis der findes et input vektor der fører programmet af den givne path predicate Unreachable hvis der ikke findes noget input der kan føre programmet gennem den givne path predicate Desværre findes der ingen generel algoritme til at finde ud af hvorvidt en path predicate er reachabel eller ej Process Independent: hvis et predicate ikke afhænger af processeringen i rutinen (Un)Correlated Predicates: hvis resultatet afhænger af hinanden 54

55 Eksempel: ukorreleret & uafhængig a T b c F d e f l A 4 C F g T 4 binære beslutninger medfører: h i j k B T 4 2 = 16 mulige paths. F F T 9 D l m 55

56 Eksempel: korrellerede & uafhængige b e F a l A 4 d A 6 2 F g T T c f Paths abdeg og acdfg synes at give dækning, men er ikke muligt!! Kun 2 paths er mulige: abdfg og acdeg. 56

57 Rekursive algoritmer/uendelige løkker... Pga. Loop har vi stadig mange muligheder Hvis løkken gennemløbes 20 gange er der i alt 3 20 forskellige sekvenser Derfor, alternativt Bryd loopet og test som normalt med path/branch test med fokus på 1. Ugyldigt input 2. Produktion af ugyldigt output/input 57

58 Hvad kan et flowgraph ellers bruges til? Typiske kode fejl sker i forbindelse med forgreninger og beslutninger. Path predikater kan være et godt redskab til at opdage inkonsistens mellem designet kode og implementeret kode. Hvad vil i helst? 1) Få en (evt. automatisk) til at oversætte jeres assembly kode til et flowgraph, og sammenlign med det udtænkte 2) Sidst på natten inden aflevering, spørge jeres medstuderende i desperation: Vil du ikke lige se mit assembly kode igennem, jeg kan simpelthen ikke finde den #! #= bug! 58

59 Test resultater Test resultater skal være som forventet Generelt Kør test Observér aktuel resultat Sammenlign det aktuelle resultat med det forventede. Spørgsmål: Hvis det aktuelle og det forventede output stemmer overens er testen så bestået? Svar: Nej! Resultatet kan være opnået ved en tilfældighed!! - Måske endda via fejlagtige paths!! - Derfor: Log den fulgte vej gennem programmet 59

60 To eksempler på path testing Funktionen int Abs(int x) Funktionen Count(file *textfile) 60

61 Using Path Testing to Test Function ABS Betragt følgende funktion: /* ABS This program function returns the absolute value of the integer passed to the function as a parameter. INPUT: An integer. OUTPUT: The absolute value if the input integer. */ 1 int ABS(int x) 2 { 3 if (x < 0) 4 x = -x; 5 return x; 6 } 61

62 The Flowgraph for ABS /* ABS This program function returns the absolute value of the integer passed to the function as a parameter. INPUT: An integer. OUTPUT: The absolute value if the input integer. */ 1 int ABS(int x) 2 { 3 if (x < 0) 4 x = -x; 5 return x; 6 }

63 Statement Testdækning Paths Process links Test cases abc adc a b c d Input Output A negative integer, x A positive integer, x -x x d F a b c T 63

64 Branch Testing Paths Decisions Test cases Input abc T A negative integer, x adc F A positive integer, x Output -x x F T 64

65 Funktionen Count(file *fp) /* COUNT This program counts the number of characters and lines in a text file. INPUT: Text File OUTPUT: Number of characters and number of lines. */ 1 main(int argc, char *argv[]) 2 { 3 int numchars = 0; 4 int numlines = 0; 5 char chr; 6 FILE *fp = NULL; 7 8 if (argc < 2) 9 { 10 printf( \nusage: %s <filename>, argv[0]); 11 return (-1); 12 } 13 fp = fopen(argv[1], r ); 14 if (fp == NULL) 15 { 16 perror(argv[1]); /* display error message */ 17 return (-2); 18 } 19 while (!feof(fp)) 20 { 21 chr = getc(fp); /* read character */ 22 if (chr == \n ) /* if carriage return */ 23 ++numlines; 24 else 25 ++numchars; 26 } 27 printf( \nnumber of characters = %d, numchars); 28 printf( \nnumber of lines = %d, numlines); 29 } 65

66 The Flowgraph for COUNT (a) Flowgraph til statement dækning g j i a b c d e k h f L F F F 1 8 T T T 22 T F (b) Flowgraph til branch dækning 66

67 Statement Testdækning PATHS PROCESS LINKS TEST CASES a b c d e f g h i j k l INPUT OUTPUT ab None Usage: COUNT <filename> agc aghd jkli aghd efli Invalid Input Filename Input File with one character and no Carriage Return at the end of the line Input file with no characters and one carriage return Error Message Number of characters = 1 Number of lines = 0 Number of characters = 0 Number of lines = 1 67

68 Branch Testdækning PATHS DECISIONS TEST CASES INPUT OUTPUT ab T None Usage: COUNT <filename> agc F T Invalid Input Filename Error Message aghdjkli F F T, F F Input File with one character and no Carriage Return at the end of the line Number of characters = 1 Number of lines = 0 aghdefli F F T, F T Input file with no characters and one carriage return Number of characters = 0 Number of lines = 1 68

69 Effektivitet af path testing Ca. 65% af alle fejl kan fanges i forbindelse med modultest. Path testing metoder er væsentlige værktøjer til modultest. Statement og branch testing er de dominerende path testing metoder. Undersøgelser har vist, at path testing fanger ca. 50% af alle de fejl der findes ved modultest Path testing er mere effektiv for ustruktureret kodning Erfarne programmører kan springe over flow-graphs og vælge paths direkte fra koden. 69

70 Begrænsninger ved Path Testing Path testing kan ikke stå alene som test metode eftersom: Fejl i interfaces ikke fanges Ikke alle initialiseringsfejl fanges Specifikationsfejl fanges ikke Manglende funktionalitet 70

71 Opfølgning af dagens program Husk at: Hvis IKKE det er testet, så VIRKER DET IKKE!!! Test løbene og i forhold til V modellen Black box test Mest anvendt i forhold til accepttest Dokumenterer om input/output forhold er I overensstemmelse med det specificerede Bestemmelse af test input/input område yderst vigtigt White box test Path test: Formålet med path testing er at udføre et tilstrækkeligt antal tests til at sikre statement og branch dækning Find input data der tvinger programmet igennem den ønskede path (path sensitization) Check at programmet følger forventet path (path instrumentation) Sammenlign aktuelt og forventet output 71

72 72

73 Dagens program Generelt omkring test og testudførsel Test behov Planlægning SPU test metode Modultest Integrationstest Test metoder Black box test White box test Test dokumentation Opgaver 73

Struktureret system udvikling Minimodul 5: Testdesign og planlægning af test

Struktureret system udvikling Minimodul 5: Testdesign og planlægning af test Struktureret system udvikling Minimodul 5: Testdesign og planlægning af test Rasmus L. Olsen, 9 April, 2008 Kursusoversigt og tidsplan Mm1: Introduktion til kursus, UML og use cases (13/2, 2008) Mm2: Kravspecifikation

Læs mere

Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest

Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest Rasmus L. Olsen, 27 februar 2008 Kursusoversigt og tidsplan Mm1: Introduktion til kursus, UML og use cases (13/2, 2008) Mm2: Kravspecifikation

Læs mere

PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU

PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU OUTLINE INEFFICIENCY OF ATTILA WAYS TO PARALLELIZE LOW COMPATIBILITY IN THE COMPILATION A SOLUTION

Læs mere

Processer og tråde. dopsys 1

Processer og tråde. dopsys 1 Processer og tråde dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne) hhv. små systemer: Multiprogrammering og time-sharing (fra 60 erne og frem): dopsys

Læs mere

Hvor er mine runde hjørner?

Hvor er mine runde hjørner? Hvor er mine runde hjørner? Ofte møder vi fortvivlelse blandt kunder, når de ser deres nye flotte site i deres browser og indser, at det ser anderledes ud, i forhold til det design, de godkendte i starten

Læs mere

Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest

Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest Struktureret system udvikling Minimodul 2: Kravspecifikation og accepttest Rasmus L. Olsen, 18 februar 2009 Kursusoversigt og tidsplan Mm1: Introduktion til kursus, UML og use cases (11 Februar, 2008)

Læs mere

Flowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller.

Flowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller. Flowchart Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller. Et godt program til at tegne flowcharts med er, EDGE-Diagrammer, eller Smartdraw.

Læs mere

The River Underground, Additional Work

The River Underground, Additional Work 39 (104) The River Underground, Additional Work The River Underground Crosswords Across 1 Another word for "hard to cope with", "unendurable", "insufferable" (10) 5 Another word for "think", "believe",

Læs mere

Struktureret system udvikling Minimodul 1: Introduktion, UML og use cases

Struktureret system udvikling Minimodul 1: Introduktion, UML og use cases Struktureret system udvikling Minimodul 1: Introduktion, UML og use cases Rasmus L. Olsen, 27 februar 2008 Introduktion Kursets hjemmeside http://www.kom.aau.dk/~rlo/ Kursus holder Rasmus L. Olsen Færdiguddannet

Læs mere

Bias Reducing Operating System - BROS -

Bias Reducing Operating System - BROS - Bias Reducing Operating System - BROS - Accepttestspecifikation Projektgruppe 3: Rasmus Lund Jensen (11111) Nicolai Glud(11102) Jacob Roesen(10095) Mick Holmark(11065) Johnny Kristensen(10734) 1 Versionshistorik

Læs mere

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Testspecifikation

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Testspecifikation Udgave 1 2. SEMESTERPROJEKT Gruppe 5 Secure O matic Testspecifikation Benjamin Sørensen, 02284 Tomas Stæhr Hansen, 03539 Stefan Nielsen, 02829 Mubeen Ashraf, 9279 Hussein Kleit, 9281 SECURE O MATIC Testspecifikation

Læs mere

extreme Programming Kunders og udvikleres menneskerettigheder

extreme Programming Kunders og udvikleres menneskerettigheder extreme Programming Software Engineering 13 1 Kunders og udvikleres menneskerettigheder Kunder: At sætte mål og få projektet til at følge dem At kende varighed og pris At bestemme softwarefunktionalitet

Læs mere

Project Step 7. Behavioral modeling of a dual ported register set. 1/8/ L11 Project Step 5 Copyright Joanne DeGroat, ECE, OSU 1

Project Step 7. Behavioral modeling of a dual ported register set. 1/8/ L11 Project Step 5 Copyright Joanne DeGroat, ECE, OSU 1 Project Step 7 Behavioral modeling of a dual ported register set. Copyright 2006 - Joanne DeGroat, ECE, OSU 1 The register set Register set specifications 16 dual ported registers each with 16- bit words

Læs mere

Start på Arduino og programmering

Start på Arduino og programmering Programmering for begyndere Brug af Arduino Start på Arduino og programmering EDR Hillerød Knud Krogsgaard Jensen / OZ1QK 1 Start på Arduino og programmering Sidste gang (Introduktion) Programmeringssproget

Læs mere

Accepttest Specifikation For. Gruppen

Accepttest Specifikation For. Gruppen Accepttest Specifikation For Gruppen Indholdsfortegnelse 1. INDLEDNING...3 1.1 FORMÅL...3 1.2 REFERENCER...3 1.3 TESTENS OMFANG OG BEGRÆNSNINGER...3 2. TESTEMNER...3 2.1 CENTRAL ENHEDEN...3 2.2 ADGANGS

Læs mere

Plan for præsentationen

Plan for præsentationen Rejsen på vej til Test Drevet Udvikling i Uddannelses- og Forskningsministeriet Præsenteret af Klaus Olsen Willy Kofoed kontorchef i Uddannelses- og Forskningsministeriet Kenneth B Andersen IT Minds På

Læs mere

Black Jack --- Review. Spring 2012

Black Jack --- Review. Spring 2012 Black Jack --- Review Spring 2012 Simulation Simulation can solve real-world problems by modeling realworld processes to provide otherwise unobtainable information. Computer simulation is used to predict

Læs mere

Design by Contract. Design and Programming by Contract. Oversigt. Prædikater

Design by Contract. Design and Programming by Contract. Oversigt. Prædikater Design by Contract Design and Programming by Contract Anne Haxthausen ah@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark Design by Contract er en teknik til at specificere

Læs mere

Terese B. Thomsen 1.semester Formidling, projektarbejde og webdesign ITU DMD d. 02/11-2012

Terese B. Thomsen 1.semester Formidling, projektarbejde og webdesign ITU DMD d. 02/11-2012 Server side Programming Wedesign Forelæsning #8 Recap PHP 1. Development Concept Design Coding Testing 2. Social Media Sharing, Images, Videos, Location etc Integrates with your websites 3. Widgets extend

Læs mere

ArbejsskadeAnmeldelse

ArbejsskadeAnmeldelse ArbejsskadeAnmeldelse OpretAnmeldelse 001 All Klassifikations: KlassifikationKode is an unknown value in the current Klassifikation 002 All Klassifikations: KlassifikationKode does not correspond to KlassifikationTekst

Læs mere

Struktureret Test og Værktøjer Appendiks til bogen Struktureret Test

Struktureret Test og Værktøjer Appendiks til bogen Struktureret Test Struktureret Test og Værktøjer Appendiks til bogen Struktureret Test Struktureret Test og Værktøjer... 1 Appendiks til bogen Struktureret Test... 1 1. Definition og formål... 2 2. Kategorisering... 2 2.1

Læs mere

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen Studiepraktik Thomas Bøgholm boegholm@cs.aau.dk Mikkel Hansen mhan@cs.aau.dk Jacob Elefsen jelefs12@student.aau.dk 1 Studiepraktik -- program Program onsdag 10.00 10.15 Registrering af fremmøde og gennemgang

Læs mere

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00 Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed

Læs mere

Basic statistics for experimental medical researchers

Basic statistics for experimental medical researchers Basic statistics for experimental medical researchers Sample size calculations September 15th 2016 Christian Pipper Department of public health (IFSV) Faculty of Health and Medicinal Science (SUND) E-mail:

Læs mere

Algoritmedesign med internetanvendelser ved Keld Helsgaun

Algoritmedesign med internetanvendelser ved Keld Helsgaun Algoritmedesign med internetanvendelser ved Keld Helsgaun 1 Analyse af algoritmer Input Algoritme Output En algoritme er en trinvis metode til løsning af et problem i endelig tid 2 Algoritmebegrebet D.

Læs mere

ECE 551: Digital System * Design & Synthesis Lecture Set 5

ECE 551: Digital System * Design & Synthesis Lecture Set 5 ECE 551: Digital System * Design & Synthesis Lecture Set 5 5.1: Verilog Behavioral Model for Finite State Machines (FSMs) 5.2: Verilog Simulation I/O and 2001 Standard (In Separate File) 3/4/2003 1 ECE

Læs mere

Softwaretest. - også af "ikke testbar" software. DAPUG erfamøde 7. marts 2012 Thomas Vedel, Thomas Vedel Consult email: thomas@veco.

Softwaretest. - også af ikke testbar software. DAPUG erfamøde 7. marts 2012 Thomas Vedel, Thomas Vedel Consult email: thomas@veco. Softwaretest - også af "ikke testbar" software DAPUG erfamøde 7. marts 2012 Thomas Vedel, Thomas Vedel Consult email: thomas@veco.dk Hvorfor softwaretest? Software er sjældent fejlfri Test sikrer at softwaren

Læs mere

NetLogo-simuleringen. Simuleringer og fysiske modeller (henfaldsloven)

NetLogo-simuleringen. Simuleringer og fysiske modeller (henfaldsloven) NetLogo-simuleringen Simuleringer og fysiske modeller (henfaldsloven) Hvad er en simulering? For at kunne arbejde med en simulering er der to vigtige elementer, man må have en grundlæggende forståelse

Læs mere

Lær Python dag 1 - modul 1

Lær Python dag 1 - modul 1 Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen

Læs mere

PUT og INPUT funktionerne

PUT og INPUT funktionerne PUT og INPUT funktionerne Af: Peter Kellberg Danmarks Statistik Sejrøgade 11 DK-2100 København Ø pke@dst.dk PUT og INPUT-funktionerne Denne artikel er foranlediget af en henvendelse til vores interne SAS

Læs mere

Netværksalgoritmer 1

Netværksalgoritmer 1 Netværksalgoritmer 1 Netværksalgoritmer Netværksalgoritmer er algoritmer, der udføres på et netværk af computere Deres udførelse er distribueret Omfatter algoritmer for, hvorledes routere sender pakker

Læs mere

Software Dokumentation

Software Dokumentation Software Dokumentation Jan Boddum Larsen Teknologi B og A på HTX Dokumentation af software i Teknologi I samfundet sker der en bevægelse mod mere digitale løsninger i teknologi. Det betyder at software

Læs mere

Sikkerhedsvejledning

Sikkerhedsvejledning 11-01-2018 2 Sikkerhedsvejledning VIGTIGT! Venligst læs disse instruktioner inden sengen samles og tages i brug Tjek at alle dele og komponenter er til stede som angivet i vejledningen Fjern alle beslagsdele

Læs mere

#AlleKanKode. Lektion 4 - Kontrol flow

#AlleKanKode. Lektion 4 - Kontrol flow #AlleKanKode Lektion 4 - Kontrol flow Disclaimer / Ansvarsfraskrivelse Alt du deler og siger mm bliver optaget. Lad være med at dele privat oplysninger, adgangskoder, kreditkort oplysninger osv. Andre

Læs mere

dfgfdhsjfgdghjghfkfhgkfhjsrt Test som praktisk håndværksdisciplin Sara Stürup Willer

dfgfdhsjfgdghjghfkfhgkfhjsrt Test som praktisk håndværksdisciplin Sara Stürup Willer dfgfdhsjfgdghjghfkfhgkfhjsrt Test som praktisk håndværksdisciplin Sara Stürup Willer Agenda Præsentation af Sara Stürup Willer og Kamstrup Test begreber Testerens mange roller Test typer Test aktiviteter

Læs mere

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Accepttest-specifikation

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Accepttest-specifikation Udgave 2 2. SEMESTERPROJEKT Gruppe 5 Secure O matic Accepttest-specifikation Benjamin Sørensen, 02284 Tomas Stæhr Hansen, 03539 Stefan Nielsen, 02829 Mubeen Ashraf, 9279 Hussein Kleit, 9281 SECURE O MATIC

Læs mere

DM536. Rapport og debug

DM536. Rapport og debug DM536 Rapport og debug Kilder Vigtig.it (Felix Palludan Hargreaves) http://vigtig.it/dm502/howto_report.pdf http://vigtig.it/blog/teaching/#toc-relevant-tips Peter Schneider-Kamp http://imada.sdu.dk/~petersk/dm536/project2.pdf

Læs mere

Programmering for begyndere Lektion 2. Opsamling mm

Programmering for begyndere Lektion 2. Opsamling mm Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger

Læs mere

FRA USECASE TIL TESTCASE HP TEST BRUGERKONFERENCE, 10. APRIL 2014

FRA USECASE TIL TESTCASE HP TEST BRUGERKONFERENCE, 10. APRIL 2014 FRA USECASE TIL TESTCASE HP TEST BRUGERKONFERENCE, 10. APRIL 2014 LIDT OM MIG SELV Erfaring NIELS-HENRIK HANSEN 35+ års samlet IT erfaring 15+ år som test manager Certificeret Inspection Leader ISEB Foundation

Læs mere

Heuristics for Improving

Heuristics for Improving Heuristics for Improving Model Learning Based Testing Muhammad Naeem Irfan VASCO-LIG LIG, Computer Science Lab, Grenoble Universities, 38402 Saint Martin d Hères France Introduction Component Based Software

Læs mere

Brug sømbrættet til at lave sjove figurer. Lav fx: Få de andre til at gætte, hvad du har lavet. Use the nail board to make funny shapes.

Brug sømbrættet til at lave sjove figurer. Lav fx: Få de andre til at gætte, hvad du har lavet. Use the nail board to make funny shapes. Brug sømbrættet til at lave sjove figurer. Lav f: Et dannebrogsflag Et hus med tag, vinduer og dør En fugl En bil En blomst Få de andre til at gætte, hvad du har lavet. Use the nail board to make funn

Læs mere

Nye testteknikker fra ISTQB - direkte fra hylderne. Ole Chr. Hansen

Nye testteknikker fra ISTQB - direkte fra hylderne. Ole Chr. Hansen Nye testteknikker fra ISTQB - direkte fra hylderne Ole Chr. Hansen TestExpo 29. Januar 2015 Præsentation Ole Chr. Hansen Managing Consultant Fellow SogetiLabs Global Innovation Team Blog - http://ochansen.blogspot.com

Læs mere

Generelt om faget: (Eventuelle kommentarer til højre) - Givet målbeskrivelsen ovenfor, hvordan vurderer du så pensum?

Generelt om faget: (Eventuelle kommentarer til højre) - Givet målbeskrivelsen ovenfor, hvordan vurderer du så pensum? Generelt om faget: (Eventuelle kommentarer til højre) - Givet målbeskrivelsen ovenfor, hvordan vurderer du så pensum? Meget Godt 4 20,0% Godt 12 60,0% Gennemsnitligt 4 20,0% Dårligt 0 0,0% Meget Dårligt

Læs mere

DK - Quick Text Translation. HEYYER Net Promoter System Magento extension

DK - Quick Text Translation. HEYYER Net Promoter System Magento extension DK - Quick Text Translation HEYYER Net Promoter System Magento extension Version 1.0 15-11-2013 HEYYER / Email Templates Invitation Email Template Invitation Email English Dansk Title Invitation Email

Læs mere

Vurdering af kvalitet en note af Tove Zöga Larsen

Vurdering af kvalitet en note af Tove Zöga Larsen Vurdering af kvalitet en note af Tove Zöga Larsen Kvalitet... 2 Test... 2 Hvordan finder man testdata?... 2 Dokumentation af test... 3 Review... 3 Vurderingskriterier... 3 Gennemførelsen af et review...

Læs mere

Idekatalog. Så vidt jeg husker fremgik det ret tydeligt hvad der skulle være i ansøgningen. Der var bare virkelig mange informationer der skulle med.

Idekatalog. Så vidt jeg husker fremgik det ret tydeligt hvad der skulle være i ansøgningen. Der var bare virkelig mange informationer der skulle med. Ansøgning Yderligere bemærkninger til ansøgningen Det var fedt at rammerne var så åbne, som jeg så det var der kun to krav til projektet: Det skulle være open source og det skulle have det offentliges

Læs mere

Engineering of Chemical Register Machines

Engineering of Chemical Register Machines Prague International Workshop on Membrane Computing 2008 R. Fassler, T. Hinze, T. Lenser and P. Dittrich {raf,hinze,thlenser,dittrich}@minet.uni-jena.de 2. June 2008 Outline 1 Motivation Goal Realization

Læs mere

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 1 8. september 2009 Målgruppe Motivation Indhold Form Materiale 2 / 47 Kursusintroduktion 1 Målgruppe 2 Motivation 3 Indhold 4 Form 5 Materiale Målgruppe Motivation Indhold Form

Læs mere

Koordinering. dopsys

Koordinering. dopsys Koordinering At indføre flertrådethed (1) når tråde tages i brug opstår typisk konflikter (et velkendt eksempel er errno ) 2 At indføre flertrådethed (2) en del konflikter kan afhjælpes med thread-local

Læs mere

Processer og koordinering. dopsys 1

Processer og koordinering. dopsys 1 Processer og koordinering dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne): Multiprogrammering og time-sharing (60 erne): dopsys 2 Motivation.. parallelle

Læs mere

Privat-, statslig- eller regional institution m.v. Andet Added Bekaempelsesudfoerende: string No Label: Bekæmpelsesudførende

Privat-, statslig- eller regional institution m.v. Andet Added Bekaempelsesudfoerende: string No Label: Bekæmpelsesudførende Changes for Rottedatabasen Web Service The coming version of Rottedatabasen Web Service will have several changes some of them breaking for the exposed methods. These changes and the business logic behind

Læs mere

Standardisering af PLC Programmering. SESAM Præsentation 2. November 2016

Standardisering af PLC Programmering. SESAM Præsentation 2. November 2016 Standardisering af PLC Programmering SESAM Præsentation 2. November 2016 1 Agenda Introduktion TC Skjern Historien bag standardisering Hvad indeholder standarden? Struktureret Tekst programmering Uddannelse

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

3. Har du oplevet blackout, mens du har styret skibet? Have you ever been steering the vessel, when a blackout have happened?

3. Har du oplevet blackout, mens du har styret skibet? Have you ever been steering the vessel, when a blackout have happened? Blackout på Orateca -Interview med styrmand Name Aleksander Andrzejczak Rank 1. officer / mate Years of navigator 3 years 1 year at Orateca 2 maybe 1 time during sea passage Open sea, average weather,

Læs mere

CHAPTER 8: USING OBJECTS

CHAPTER 8: USING OBJECTS Ruby: Philosophy & Implementation CHAPTER 8: USING OBJECTS Introduction to Computer Science Using Ruby Ruby is the latest in the family of Object Oriented Programming Languages As such, its designer studied

Læs mere

16/04/12 50% 50% Waveform Chart Waveform Graph XY Graph Indicator Graph 33% 17% 88% 13%

16/04/12 50% 50% Waveform Chart Waveform Graph XY Graph Indicator Graph 33% 17% 88% 13% Samuel Alberg Thrysøe, PhD, PostDoc, Kontakt info: Email: sat@iha.dk, Tlf: +45 25533552 2 4. 5 Waveform Chart Waveform Graph XY Graph Indicator Graph 4. 33% Waveform Chart Waveform Graph XY Graph Indicator

Læs mere

WT-1011RC Programmer User Guide

WT-1011RC Programmer User Guide WT-1011RC Programmer User Guide Firmware Version 1.9 Note: 1. Information in this manual is subject to change without notice and does not represent a commitment of manufacturer. 2. Manufacturer shall not

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Business Rules Fejlbesked Kommentar

Business Rules Fejlbesked Kommentar Fejlbeskeder i SMDB Validate Business Request- ValidateRequestRegi stration ( :1) Business Fejlbesked Kommentar the municipality must have no more than one Kontaktforløb at a time Fejl 1: Anmodning En

Læs mere

Chapter. Information Representation

Chapter. Information Representation Chapter 3 Information Representation (a) A seven-bit cell. Figure 3. Figure 3. (Continued) (b) Some possible values in a seven-bit cell. Figure 3. (Continued) 6 8 7 2 5 J A N U A R Y (c) Some impossible

Læs mere

Breaking Industrial Ciphers at a Whim MATE SOOS PRESENTATION AT HES 11

Breaking Industrial Ciphers at a Whim MATE SOOS PRESENTATION AT HES 11 Breaking Industrial Ciphers at a Whim MATE SOOS PRESENTATION AT HES 11 Story line 1 HiTag2: reverse-engineered proprietary cipher 2 Analytic tools are needed to investigate them 3 CryptoMiniSat: free software

Læs mere

#AlleKanKode. Lektion 2 - Konstanter og Variabler

#AlleKanKode. Lektion 2 - Konstanter og Variabler #AlleKanKode Lektion 2 - Konstanter og Variabler Disclaimer / Ansvarsfraskrivelse Alt du deler og siger mm bliver optaget. Lad være med at dele privat oplysninger, adgangskoder, kreditkort oplysninger

Læs mere

Programmering i C Videre med C (2 af 4) 19. marts 2007

Programmering i C Videre med C (2 af 4) 19. marts 2007 Programmering i C Videre med C (2 af 4) 19. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan i dag Brush-up fra sidst Videre med C Kontrolløkker (while, for, ) Conditional Execution (if, if/else) Funktioner

Læs mere

Linear Programming ١ C H A P T E R 2

Linear Programming ١ C H A P T E R 2 Linear Programming ١ C H A P T E R 2 Problem Formulation Problem formulation or modeling is the process of translating a verbal statement of a problem into a mathematical statement. The Guidelines of formulation

Læs mere

program fibomain(input,output); var i, j,result : integer; var x, y: integer;

program fibomain(input,output); var i, j,result : integer; var x, y: integer; program fibomain(input,output); var i, j,result : integer; procedure fib(n : integer); var x, y: integer; begin if (n=0) or (n=1) then result := 1 else begin fib(n-1); x:= result; fib(n-2); y:= result;

Læs mere

SOFTWARE PROCESSES. Dorte, Ida, Janne, Nikolaj, Alexander og Erla

SOFTWARE PROCESSES. Dorte, Ida, Janne, Nikolaj, Alexander og Erla SOFTWARE PROCESSES Dorte, Ida, Janne, Nikolaj, Alexander og Erla Hvad er en software proces? Et struktureret sæt af AKTIVITETER, hvis mål er udvikling af software. En software proces model er en abstrakt

Læs mere

3. PROJEKT, 2 SEMESTER

3. PROJEKT, 2 SEMESTER 3. PROJEKT, 2 SEMESTER Bruger undersøgelse, af sociale medie. KENDSKAB TIL OG BRUG AF ONLINE SOCIALE MEDIER FORENINGEN AF DANSKE INTERAKTIVE MEDIER, FÅET TIL OPGAVE AT AFDÆKKE DANSKERNES BRUG AF SOCIALE

Læs mere

Exceptions i Delphi. Try except

Exceptions i Delphi. Try except Exceptions i Delphi Exceptions er en teknik til at fange fejl under programafviklingen. Ikke programmeringsfejl, men fejl der opstår i forskellige situationer, f.eks. en fil der mangler en fil der er skrivebeskyttet,

Læs mere

Succesfuld implementering af automatiseret test

Succesfuld implementering af automatiseret test Succesfuld implementering af automatiseret test Forudsætningerne og faldgruberne John Fodeh john.fodeh@hp.com 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject

Læs mere

Fra Computer til Virkelighed. TPE-kursus Elektroniske Systemer P1

Fra Computer til Virkelighed. TPE-kursus Elektroniske Systemer P1 Fra Computer til Virkelighed TPE-kursus Elektroniske Systemer P1 Fra Computer til Virkelighed En kort introduktion til kurset Systems Engineering Projektfaser Opsamling og opgave Om kurset Mål: at I lærer

Læs mere

Boolsk algebra For IT studerende

Boolsk algebra For IT studerende Boolsk algebra For IT studerende Henrik Kressner Indholdsfortegnelse 1 Indledning...2 2 Logiske kredsløb...3 Eksempel:...3 Operatorer...4 NOT operatoren...4 AND operatoren...5 OR operatoren...6 XOR operatoren...7

Læs mere

Lovkrav vs. udvikling af sundhedsapps

Lovkrav vs. udvikling af sundhedsapps Lovkrav vs. udvikling af sundhedsapps Health apps give patients better control User Data Social media Pharma Products User behaviour Relatives www Self monitoring (app) data extract Healthcare specialists

Læs mere

Fejlbeskeder i SMDB. Business Rules Fejlbesked Kommentar. Validate Business Rules. Request- ValidateRequestRegist ration (Rules :1)

Fejlbeskeder i SMDB. Business Rules Fejlbesked Kommentar. Validate Business Rules. Request- ValidateRequestRegist ration (Rules :1) Fejlbeskeder i SMDB Validate Business Rules Request- ValidateRequestRegist ration (Rules :1) Business Rules Fejlbesked Kommentar the municipality must have no more than one Kontaktforløb at a time Fejl

Læs mere

Spar tid med struktureret programmering! Om PLC programmering

Spar tid med struktureret programmering! Om PLC programmering Spar tid med struktureret programmering! Om PLC programmering 1 MITSUBISHI PLC programmerings software Ved systemtekniker Helge Gulstad Tlf. Direkte: 46 74 01 61 Mob: 21 19 25 64 Mail: hgd@beijer.dk 2

Læs mere

Arduino Programmering

Arduino Programmering Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået

Læs mere

A Comparative Analysis of Three Different Priority Deques af: Søren Skov & Jesper Holm Olsen

A Comparative Analysis of Three Different Priority Deques af: Søren Skov & Jesper Holm Olsen A Comparative Analysis of Three Different Priority Deques af: Søren Skov & Jesper Holm Olsen Agenda: Hvad er en Priority Deque? Hvad kan det bruges til? De tre datastrukturer: MinMax-heap The Deap (påpeget

Læs mere

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3

University of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3 DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget

Læs mere

DM507 Algoritmer og datastrukturer

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

Læs mere

PEMS RDE Workshop. AVL M.O.V.E Integrative Mobile Vehicle Evaluation

PEMS RDE Workshop. AVL M.O.V.E Integrative Mobile Vehicle Evaluation PEMS RDE Workshop AVL M.O.V.E Integrative Mobile Vehicle Evaluation NEW - M.O.V.E Mobile Testing Platform Key Requirements for Measuring Systems Robustness Shock / vibrations Change of environment Compact

Læs mere

How Long Is an Hour? Family Note HOME LINK 8 2

How Long Is an Hour? Family Note HOME LINK 8 2 8 2 How Long Is an Hour? The concept of passing time is difficult for young children. Hours, minutes, and seconds are confusing; children usually do not have a good sense of how long each time interval

Læs mere

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 2 14. september 2009 Kontrolstrukturer Udvælgelse Gentagelse Eksempler Kommentarer Format - scanf og printf 2 / 27 Fra sidst 1 Kontrolstrukturer 2 Udvælgelse 3 Gentagelse 4 Eksempler

Læs mere

UNISONIC TECHNOLOGIES CO.,

UNISONIC TECHNOLOGIES CO., UNISONIC TECHNOLOGIES CO., 3 TERMINAL 1A NEGATIVE VOLTAGE REGULATOR DESCRIPTION 1 TO-263 The UTC series of three-terminal negative regulators are available in TO-263 package and with several fixed output

Læs mere

PMDK PC-Side Basic Function Reference (Version 1.0)

PMDK PC-Side Basic Function Reference (Version 1.0) PMDK PC-Side Basic Function Reference (Version 1.0) http://www.icpdas.com PMDK PC-Side Basic Function Reference V 1.0 1 Warranty All products manufactured by ICPDAS Inc. are warranted against defective

Læs mere

Design by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater

Design by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater Design by Contract Bertrand Meyer 1986 Design and Programming by Contract Michael R. Hansen & Anne Haxthausen mrh@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark Design

Læs mere

Recollections about the Development of Pascal. Niklaus Wirth ACM, 1993

Recollections about the Development of Pascal. Niklaus Wirth ACM, 1993 Recollections about the Development of Pascal Niklaus Wirth ACM, 1993 1 Niklaus Wirth, 73 Født i Schweiz, 1934 Ph.D., University of California, Berkeley, 1963 Assistant Professor of CS, Stanford University,

Læs mere

WT-1011RC Programmer User Guide

WT-1011RC Programmer User Guide WT-1011RC Programmer User Guide Firmware Version 1.9 Note: 1. Information in this manual is subject to change without notice and does not represent a commitment of manufacturer. 2. Manufacturer shall not

Læs mere

Trolling Master Bornholm 2012

Trolling Master Bornholm 2012 Trolling Master Bornholm 1 (English version further down) Tak for denne gang Det var en fornøjelse især jo også fordi vejret var med os. Så heldig har vi aldrig været før. Vi skal evaluere 1, og I må meget

Læs mere

Boligsøgning / Search for accommodation!

Boligsøgning / Search for accommodation! Boligsøgning / Search for accommodation! For at guide dig frem til den rigtige vejledning, skal du lige svare på et par spørgsmål: To make sure you are using the correct guide for applying you must answer

Læs mere

26 Programbeviser I. Noter. PS1 -- Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler.

26 Programbeviser I. Noter. PS1 -- Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler. 26 Programbeviser I. Bevis kontra 'check af assertions' i Eiffel. Betingelser og bevisregler. Hvad er programverifikation? Bevisregel for 'tom kommando'. Bevisregel for assignment. Bevisregler for selektive

Læs mere

Øg sporbarhed og produktivitet gennem integration

Øg sporbarhed og produktivitet gennem integration Øg sporbarhed og produktivitet gennem integration Hvem er jeg? De næste 40 minu4er DevOps hos TestHuset En normal case - Problemstillinger - Hvordan vi arbejder med kunden - Løsning Q&A DevOps DevOps is

Læs mere

IBM WebSphere Operational Decision Management

IBM WebSphere Operational Decision Management IBM WebSphere Operational Decision Management 8 0 29., WebSphere Operational Decision Management 8, 0, 0. Copyright IBM Corporation 2008, 2012. ........... 1 :......... 1 1: Decision Center....... 3 1

Læs mere

Resource types R 1 1, R 2 2,..., R m CPU cycles, memory space, files, I/O devices Each resource type R i has W i instances.

Resource types R 1 1, R 2 2,..., R m CPU cycles, memory space, files, I/O devices Each resource type R i has W i instances. System Model Resource types R 1 1, R 2 2,..., R m CPU cycles, memory space, files, I/O devices Each resource type R i has W i instances. Each process utilizes a resource as follows: request use e.g., request

Læs mere

Vores mange brugere på musskema.dk er rigtig gode til at komme med kvalificerede ønsker og behov.

Vores mange brugere på musskema.dk er rigtig gode til at komme med kvalificerede ønsker og behov. På dansk/in Danish: Aarhus d. 10. januar 2013/ the 10 th of January 2013 Kære alle Chefer i MUS-regi! Vores mange brugere på musskema.dk er rigtig gode til at komme med kvalificerede ønsker og behov. Og

Læs mere

Fejlbeskeder i Stofmisbrugsdatabasen (SMDB)

Fejlbeskeder i Stofmisbrugsdatabasen (SMDB) Fejlbeskeder i Stofmisbrugsdatabasen (SMDB) Oversigt over fejlbeskeder (efter fejlnummer) ved indberetning til SMDB via webløsning og via webservices (hvor der dog kan være yderligere typer fejlbeskeder).

Læs mere

MultiProgrammer Manual

MultiProgrammer Manual MultiProgrammer Manual MultiProgrammeren bruges til at læse og skrive værdier til ModBus register i LS Controls frekvensomformer E 1045. Dansk Version side 2 til 4 The MultiProgrammer is used for the writing

Læs mere

DM13-3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode

DM13-3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode - 3. Obligatorisk opgave E.05 Håndoptimering af SPARC assembler-kode Jacob Aae Mikkelsen - 191076 12. december 2005 1 Indhold 1 Opgave beskrivelse 2 2 Muligheder for optimering 2 2.1 efter branch.........................

Læs mere

Programmering C RTG - 3.3 09-02-2015

Programmering C RTG - 3.3 09-02-2015 Indholdsfortegnelse Formål... 2 Opgave formulering... 2 Krav til dokumentation af programmer... 3 ASCII tabel... 4 Værktøjer... 5 Versioner af ASCII tabel... 6 v1.9... 6 Problemer og mangler... 6 v2.1...

Læs mere

GDS installation vs Alien ONT. 2 december 2016 Erik Bisgaard Jensen

GDS installation vs Alien ONT. 2 december 2016 Erik Bisgaard Jensen GDS installation vs Alien ONT 2 december 2016 Erik Bisgaard Jensen 1 GDS installation vs Alien ONT Emner Ny funktionalitet fra Nokia Indsamlet erfaringer fra en række samarbejdspartner Undersøgt mulighederne

Læs mere

Struktureret system udvikling Minimodul 3: Kravspecifikation og accepttest

Struktureret system udvikling Minimodul 3: Kravspecifikation og accepttest Struktureret system udvikling Minimodul 3: Kravspecifikation og accepttest Rasmus L. Olsen, 7 februar 2011 1 Dagens program Introduktion Kravspecifikation Gennemgang af hvad der karakteriserer en god/dårlig

Læs mere

Operation Manual SMS Air Conditioner Remote Controller Model No.: SR-001

Operation Manual SMS Air Conditioner Remote Controller Model No.: SR-001 Operation Manual SMS Air Conditioner Remote Controller Model No.: SR-001 Ls venligst denne instruktions manual igennem inden brug af produktet Thank you for purchasing our product. This smart unit is not

Læs mere