Software arkitektur. Tobias Brixen Q2-2012

Størrelse: px
Starte visningen fra side:

Download "Software arkitektur. Tobias Brixen Q2-2012"

Transkript

1 Software arkitektur Tobias Brixen Q

2 Contents 0.1 Diverse defs Test-driven development Motivation Koncepter Rythm Values Principles s Systematic black-box testing Koncepter Definitions EC partitionering Variability management Koncepter The four techniques s Test stubs and unit/integration testing Koncepter Design patterens Koncepter Compositional design Koncepter Hvad er et objekt? The four techniques Frameworks Koncepter Page 2

3 0.1 Diverse defs Reliability Evnen til at opretholde et niveau af performance når brugt under specificerede betingelser Flexibility Change by addition, not by modification. Evnen for softwaren at blive tilføjet/enhanced funktionalitet rent ved tilføjelse af softwareunits og ikke ved modifikation af eksisterende Failure En fejl er når opførslen af programmet afviger fra det forventede Defect En defect er den algoritmiske grund til en fejl: noget kodelogik der er forkert implementeret Unit Under Test helhed. Law of Demeter En unit unit test et en del af et system vi ser som en Lad være med at lave en lang commandchain. Coupling Hvor stærkt koblede softwareunits er ifht. til hinanden. Man går normalt efter en lav kobling. Cohesion Being organized. Kohærens/sammenhæng. Høj kohærens betyder at have de rigtige skuffer, og putte de rigtige ting i de skuffer. 1 Test-driven development Emphasis on applying the rhythm and using/understanding the values and TDD principles. 1.1 Motivation TDD fokuserer på at skabe reliable og maintainable (sek 1.4) software. Tag små skridt og holde fokus for at koncentrere sig om at implementere en ting ad gangen, og tage små skridt for ikke at implementere kode der ikke bliver brugt. Der bliver brugt en rytme for hver iteration, og undervejs bruges nogle principper for at holde koden reliable og maintainable. Fordele er tiltro til ens kode når alle tests passer; høj fokus på reliability og maintainability af koden, samt rytmen og principperne der hjælper til at strukturere koden. 1.2 Koncepter Rythm Values Maintainability (s. 30) Analysability Page 3

4 Principles Refactoring... Changeability Stability Testability Clean code that works Fast feedback gives the programmer confidence Strong focus on reliable software Playing with the interface from the client s side (Morvirker at man implementere kode der ikke bliver brugt) Testcases er en form for dokumentation af klasser og større softwareunits Ingen driver kode Struktureret programmerings process 1.3 Rythm 1 Quickly add a test. 2 Run all tests and see the new test fail. 3 Make a little change 4 Run all tests and see them all succeed 5 Refactor to remove dublication Man tilføjer en test fra sin testlise, og kører alle tests for at sikre sig at den uimplementerede test fejler. Man laver mindst mulig kode for at få koden til at passe. Så refaktoriserer man for at få clean code, og kører test igen for at sikre sig at man ikke har ødelagt noget. Def: Refactoring Refaktorering er processen hvor man modificerer og rekonstruerer kildekoden for at forbedre maintainabiliy og fleksibiliteten uden af ændre i systemes eksterne opførsel. Page 4

5 1.4 Values Simplicity Keep focus Take small steps Maintainability (s. 30) - Evnen til af et stykke software kan ændres. Analysability - Understandig the software Changeability - Add, modifying the software without large cost. e.g. no constants Stability - Avoid unexpected errors from minor changes. Testability - Enable a modified system to be tested 1.5 Principles s. 51 Test first Skriv test s før koden bliver skrevet Automated Test Vi tester vha. automatiske tests Test list Skriv en liste over alle de tests du ved du skal lave. Tilføj til den når der er potentielt nye tests One step test Vælg den test som vil lære dig noget og som du føler dig sikker på du kan implementere. Fake it (until you make it) Retuner en konstant. Triangulering Pas - måske: gå kun videre når du har lavet 2-3 tests og dermed fået fjernet fake it implementationne Isolated test Evident Data De forskellige tests skal ikke påvirke hinanden Formålet med testdata skal være evident/klar Representative Data som uniten udfører. Vælg data så de rammer forskellige dele af konceptet Evident Test Hvordan undgår vi at skrive defekte tests? Ved at holde testkoden læselig og så simpel som mulig. Assert First Når testsignaturen er skrevet, skriv da asserts. Du ved hvad du vil teste, og herefter hjælper IDE en med at sætte fake-it klasser op. Hvad gør vi med simple operationer? Vi imple- Obvious Implementation menterer dem bare Page 5

6 Break Hvad gør vi når vi føler os trætte og ramt? Holder en pause 2 Systematic black-box testing Emphasis on applying and understanding equivalence partitioning techniques and boundary value analysis. Motivation 2.1 Koncepter Start 2.2 Definitions A failure is the situration where the system s behaviour deviates from the expected, and is caused by a defect in the production code. Vi har derfor en teknik der hedder systematisk testing til at finde defects. Def: Systematic testing Systematisk testing er en planlagt og systematisk process med det præcise formål at finde defects i en veldefineret del af systemey Def: Black-box testing Unit under test (UUT) er som en sort box. Det eneste som kan guide for testing er specifikationen af UUT en, og generel kendskab til almindelige programmerings teknikker, algoritmiske kontruktioner, og almindelige fejl lavet af programmører. Def: White-box testing Vi kender den fulde implementation er UUT en; altså koden kan blive inspiceret for at generere tests. Testingstrategier: 1) No testing - Simple metoder: Accessor metoder; testkoden vil blive længere end implementationen 2) Eksplorativ testing - mavefornemmelse. Til mediumkomplekse units. Low cost. TDD er basically eksplorativ testing 3) Systematic testing - Til højkomplekse units eller systemer hvor reliability er vigtig. Her følges en metode for at højne sandsynligheden for at finde en defect. High cost. Def: Equivalence class (EC) Et subset af alle input, hvor det antages at et element i dette subset demonstrerer samme defekt som alle andre elementer i sættet. Valid EC er de elementer som bliver proceseret normalt Page 6

7 Invalid EC er de element som kræver specialbehandling, som kaster exceptions, returnerer en udefineret value, eller på anden måde resultere i abnormal processering Soundness For at en ECer sound, skal den opfylde coverage, representation og disjointness. Coverage Alle mulige input elementer tilhører en EC Representation Hvis en defekt er demonstreret af et medlem af en klasse, bliver den samme defekt demonstreret af alle andre elementer i samme klasse. Disjointness Intet input tilhører mere end én EC Boundary value En value der ligger tæt på kanten af en EC Range: Tag en over imellem og over. Sæt: Et EC for hver value, og en udenfor. Boolean: En EC for hhv true og false. 2.3 EC partitionering Equivalance class table Condition Invalid ECs Valid ECs From Position < 0[1]; > worldsize[2] 0 worldsize[3] To Position < 0[4]; > worldsize[5] 0 worldsize[6]; Extended test case table EC s Covered Test Case Expected output [3], [6], [8] (1, 1, 2, 1) and Plains legal [3], [6], [7] (1, 1, 2, 1) and Butter illegal [1], [6], [8] ( 1, 1, 1, 1) and Plains illegal [2], [6], [8] (16, 17, 16, 16) and Plains illegal [3], [4], [8] (1, 1, 1, 1) and Plains illegal [3], [5], [8] (16, 16, 16, 17) and Plains illegal Masking Meyers er til for at undgå masking. Her passer den testen med (, 0), hvor implementationen burde have været row < 1. public class ChessBoard { public boolean v a l i d ( char column, int row ) { i f ( column < a ) { return f a l s e ; } i f ( row < 0 ) { return f a l s e ; } return true ; } } Page 7

8 3 Variability management Emphasis on applying the four different techniques for handling variability and analysing their benefits and liabilities. Motivation Variabilitet er mange gange et krav til software. Enten fra fra kunders krav, og selv der til sælge forskellige varianter af software, eller at vi skal have mulighed for at teste på hardware vi ikke kan teste på (test stubs). Det er her vigtig at genbruge kode. Løsningen plejer at komme fra processen. 3.1 Koncepter GoF 1 Program to an interface, not an implementation 2 Favor object composition over class inheritance 3 Consider what should be variable in your design (or: Encapsulate the behaviour that varies) : Identificér variabilitetspunktet. 2: abstrahér ansvaret ud til et interface. 3: Delegerer ud, for at compose den fulde opførsel. Def: Variability Point Et variabilitetspunkt er en veldefineret sektion af produktionskoden hvis opførsel skulle kunne variere. Def: Change by modification er opførselsændring der er introduceret i eksiterende produktionskode. Def: Change by addition er opførselsændring introduceret ved at tilføje nye produktionskode i stedet for at ændre eksisterende. 3.2 The four techniques s. 111 Source Code Copy Fordele Hastighed Lav en kopi af hele sourcen. Simpel - Det er nemt at forklare medprogrammører Ingen indblanding - Hvis man laver en fejl i den ene, er den anden ikke affected. Ulemper Multiple maintenance problem Page 8

9 Parametric Fordele En parameter med if-statements der brancher Simpelt - Nemt at forstå; alle programmører kender if s Ingen multiple maintenance - Én kodebase Ulemper Polymorphic Fordele Reliability - Det er change by modification = introduktion af nye defects Analyzability concern - Des flere variabilitetspunter, des mindre overblik Responsibility erotion (God class) - PayStationImpl skal nu også handle udregningsstrategier. Jeg nedarver og overrider metoden der skal variere. Ingen multiple maintenance problemer - Kun én kodebase Reliability - Kodebasen er én gang for alle blevet forberedt til variabilitet Code analyzability - 43ende giver ikke codebloat. Ulemper Højt antal af klasser Vi har brugt vores eneste nedarvning (i hvert fald i java) Codereuse i varianter svært Compile-time binding Compositional Jeg beskriver det varierene i et interface, og lader min paystation kalde på interfacet. Fordele Reliability: Koden er, én gang for alle, gjort klar nye variabiliteter Run-time binding Seperation of responsibilities Seperation of testing - rateudregning og core paystation kan blive testet hver for sig. Variant selection in one place - Det er kun når man kalder paystaion at det bliver bestemt Combinatorisk - Vi kan implementere flere interfaces, ie. strategier; modsat nedarvning. Ulemper Højt antal klasser Clienter skal kender strategier - Variant seelction er flyttet til client objekter. Page 9

10 4 Test stubs and unit/integration testing Emphasis on applying test stubs and understanding the testing levels of unit/integration/system testing. Motivation Når vi skal teste ting vi ikke har kontrol over (e.g. Math.rand, hardwaremotor) kan vi bruge teststubbe (el. doubles fra Meszaros s. 192). Teststubbe implementerer samme interface som vores DOU, og alt efter om det er testing eller produktion kan vi parse det rigtige objekt med. 4.1 Koncepter Unit test (Vi tester en unit på en returværdi / testing software in isolation) UUT (Unit under test) DOU (Dependent on unit - e.g. systemclock, math.rand) Integrationtesting (Vi tester sammenhængen af units) Direct input - Input vi (testkoden) kan kontrollere, e.g. parametre, feltvariabler sat af testkoden. Indirect input - Input vi ikke kan (el. svært) e.g. hardware. 5 Design patterens Emphasis on finding the proper design pattern for a problem at hand and applying it. Motivation Vi bruger patterens til at have en guideline for best-practe for hvordan man løser et bestemt problem inden for et problemområde. Patterens er et kommunikationsmiddel. 5.1 Koncepter Behaviour, Responsibility, Role, og protkol under sektion 6.2 Def: Design Patteren (Gamma et al.) Patterens er beskrivelse af kommunikerende objekter der er skræddersyet til at løbe et generelt problem i en kontekst. Def: Design Patteren (Beck et al.) Et design patteren en et tekstuel repræsentation af designinformation, om et design der har virket, og som kan bruges til en lignende situation i fremtiden. I den her model bruges 4 dele: Navn: Et navn så man kan snakke om den, Problem: Problemet der bliver løst, Løsning: I software bliver den beskrevet vha. tekst og diagrammer, Consequences Hvile trade-offs er der? Page 10

11 Def: Design Pattern (Roadmap View) Et design patteren strukturere, dokumenterer, og giver et overblik over de roller og protokoller i et komplekse, compositionele designs. Et desigpattern er er et landkort over dele af designet Design patteren (Role View) Et designpattern er defineret ved et sæt af roller, hver med specifik ansvarsområde, og ved at have en veldefineret protokol mellem disse roller. Pattern fragility Et patteren kan kun vise alle sine fordele hvis implementeret korrekt. (e.g. hvis man i STRATEGY bruger konkrete strategier istedet for interfaces) Typiske fejl Bruger klassenavnet istedet for interfacenavne Man binder det forkerte sted (e.g. instansierer den inden i kroppen) 6 Compositional design Emphasis on applying compositional design principles and relating it to concepts behavior, responsibilities, roles, and multi-dimensional variance. Motivation 6.1 Koncepter Behavior Responsibilities Roles Multi-dimensional variance 1 Program to an interface, not an implementation (løst koblet) 2 Favor object composition over class inheritance (runtime binding) 3 Consider what should be variable in your design (or: Encapsulate the behaviour that varies) 6.2 Hvad er et objekt? Language Centric Class = instancefields + methods. Svart at kode sammenhængen mellem klasser Model-centric Et objekt er en model af virkeligheden. Når objektet bliver kørt, er det som at simulere en del af virkeligheden. Objekter er en abstrahering af et virkeligt objekt. Det fortæller dig ikke noget om hvordan man designer objekter der ikke eksisterer. Page 11

12 Resposibility centric Def: Et OO program er struktureret som et community af interagerende agenter kaldet objekter. Hver objekt har en rolle at spille. Hver objekt stiller er service til rådighed, eller udfører en handling der er brugt af andre medlemmer af dette commnuity. Et objekt er noget med ansvar. Det er bedre med et design der virker, mod et design der ligner den virkelige verden. Fundementale begreber: 1) Objekt 2) Roller Behaviour Def: Acting in a particular and observable way Hvordan det bliver gjort. Metoder er skabeloner for algoritmer Responsibility Def: The state of beging accountable and dependable to answer a request Ingen behaviour er specificeret, det er en kontrakt som vil blive overholdt. Man bruger evt CRC (Class name, Responsibilities, collaborating classes) Role A function or part performed especially in a operation or process. En rolle - mange objekter. Comparable rollen specificerer at et objekt har ansvaret for at fortælle om det er større, ligmed eller mindre en et andet givet objekt. Mange roller - et objekt. Fx i framework. Roller i software: Et sæt af ansvar og associerede protokoller. Det er ikke nemt at specificere i software, det tætteste man kommer på, er ved et interface, men man kan ikke specificere en protokol (at metode A på objekt X skal køres før B) Protokol En konvention (el. etikette) der udspecificerer sekvensen af interaktionen or handlingerne forventet af et sæt af roller. E.g. STRATEGY: Context starter udførslen af algoritmen, og ConcreteStrategy reaktivt svarer når adspurgt. 6.3 The four techniques Se sektion 3.2 The four techniques 7 Frameworks Emphasis on designing frameworks and understanding framework theory. Motivation Page 12

13 7.1 Koncepter Se side for oversigt og forklaring Def: Frozen spot En del af frameworket, der ikke kan blive ændret og som definerer det basale design og objekt-protokollerne i det endelige applikation. Def: Hot post Klart defineret del af frameworket, hvor specialiseret kode kan ændre eller tilføje opførsel til den endelige appikation. Inversion of control The framework defines the flow of control, not you. Page 13

Begreber om Godt Software

Begreber om Godt Software Begreber om Godt Software Maintainability (vedligeholdelse): Softwarens evne til at blive ændret (funktionalitet, rettet, forbedrelser, miljø, krav). - Analyserbart: Evnen til at blive fejldiagnosticeret,

Læs mere

dsoftark Noter Q

dsoftark Noter Q dsoftark Noter Q2 2013-2014 Mathias Skovgaard Birk, 20116447, DAT2 January 6, 2014 Contents 1 Test-driven development 3 1.1 Definitions.................................... 3 1.2 TDD Rythm..................................

Læs mere

dsoftark Noter Michael Lind Mortensen, , DAT4 23. januar 2009

dsoftark Noter Michael Lind Mortensen, , DAT4 23. januar 2009 dsoftark Noter Michael Lind Mortensen, 20071202, DAT4 23. januar 2009 Indhold 1 Test-Driven Development 5 1.1 Concept Overview........................ 5 1.2 Concept Details.......................... 5

Læs mere

dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 Rapport til a. 1 'TDD rytmen'

dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 Rapport til a. 1 'TDD rytmen' dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 'TDD rytmen' Rapport til a. 1 Vi bruger gennem vores arbejde, rytmen fra Test Driven Development-paradigmet. Quickly add a test Run tests

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

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

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Activity Milestone Artifact Spørgsmål

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

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

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

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

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

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

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

Læs mere

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

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne.

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne. Exercise 1: Opgave 9.1 på CodeJudge. a) Lav klasserne Cirkel, Rektangel og Kvadrat, som implementerer vedhæftede interface From.java (se CodeJudge). Lav Rektangel før du laver Kvadrat. Kan du bruge nedarvning

Læs mere

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Artifact Milestone Du skal relaterer

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

MSE PRESENTATION 2. Presented by Srunokshi.Kaniyur.Prema. Neelakantan Major Professor Dr. Torben Amtoft

MSE PRESENTATION 2. Presented by Srunokshi.Kaniyur.Prema. Neelakantan Major Professor Dr. Torben Amtoft CAPABILITY CONTROL LIST MSE PRESENTATION 2 Presented by Srunokshi.Kaniyur.Prema. Neelakantan Major Professor Dr. Torben Amtoft PRESENTATION OUTLINE Action items from phase 1 presentation tti Architecture

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

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

CS 4390/5387 SOFTWARE V&V LECTURE 5 BLACK-BOX TESTING - 2

CS 4390/5387 SOFTWARE V&V LECTURE 5 BLACK-BOX TESTING - 2 1 CS 4390/5387 SOFTWARE V&V LECTURE 5 BLACK-BOX TESTING - 2 Outline 2 HW Solution Exercise (Equivalence Class Testing) Exercise (Decision Table Testing) Pairwise Testing Exercise (Pairwise Testing) 1 Homework

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

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

Singleton pattern i Java

Singleton pattern i Java Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.

Læs mere

Forelæsning Uge 5 Mandag

Forelæsning Uge 5 Mandag Forelæsning Uge 5 Mandag Algoritmeskabeloner findone, findall, findnoof, findsumof (sidste mandag) findbest Brug af klassen Collections og interfacet Comparable BlueJ s Debugger Nyttig til at inspicere

Læs mere

Software 1 with Java. Recitation No. 7 (Servlets, Inheritance)

Software 1 with Java. Recitation No. 7 (Servlets, Inheritance) Software 1 with Java Recitation No. 7 (Servlets, Inheritance) Servlets Java modules that run on a Web server to answer client requests For example: Processing data submitted by a browser Providing dynamic

Læs mere

Byg din informationsarkitektur ud fra en velafprøvet forståelsesramme The Open Group Architecture Framework (TOGAF)

Byg din informationsarkitektur ud fra en velafprøvet forståelsesramme The Open Group Architecture Framework (TOGAF) Byg din informationsarkitektur ud fra en velafprøvet forståelsesramme The Open Group Framework (TOGAF) Otto Madsen Director of Enterprise Agenda TOGAF og informationsarkitektur på 30 min 1. Introduktion

Læs mere

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag Hvem er vi? Kursus Introduktion Anne Haxthausen ah@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark 100 studerende med forskellig baggrund: software teknologi It og Kom

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Activity Milestone Artifact Spørgsmål

Læs mere

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Øvelse 9. Klasser, objekter og sql-tabeller insert code here Øvelse 9. Klasser, objekter og sql-tabeller Denne opgave handler om hvordan man opbevarer data fra databasekald på en struktureret måde. Den skal samtidig give jer erfaringer med objekter, der kommer til

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

SWC eksamens-spørgsmål. Oversigt

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

Læs mere

Datatekniker med programmering som speciale

Datatekniker med programmering som speciale Datatekniker med programmering som speciale H2 H1 varer ti uger bestående af ti uddannelsesspecifikke fag. Indhold På H2 er der fokus på at integrere Objektorienteret Programmering i dine programmer. Fagene

Læs mere

Det er muligt at chekce følgende opg. i CodeJudge: og

Det er muligt at chekce følgende opg. i CodeJudge: og Det er muligt at chekce følgende opg. i CodeJudge:.1.7 og.1.14 Exercise 1: Skriv en forløkke, som producerer følgende output: 1 4 9 16 5 36 Bonusopgave: Modificer dit program, så det ikke benytter multiplikation.

Læs mere

Valg af Automationsplatform

Valg af Automationsplatform Valg af Automationsplatform Factory or Machine? Different Product Segments APROL for Process Control and Factory Automation Automation Studio for Machine Automation Factory Automation Factory automation

Læs mere

Small Autonomous Devices in civil Engineering. Uses and requirements. By Peter H. Møller Rambøll

Small Autonomous Devices in civil Engineering. Uses and requirements. By Peter H. Møller Rambøll Small Autonomous Devices in civil Engineering Uses and requirements By Peter H. Møller Rambøll BACKGROUND My Background 20+ years within evaluation of condition and renovation of concrete structures Last

Læs mere

Abstrakte datatyper C#-version

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

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

Test med JUnit 3. Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det.

Test med JUnit 3. Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det. Denne guide er oprindeligt udgivet på Eksperten.dk Test med JUnit 3 Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab

Læs mere

Lektion 6. Grundlæggende programmering i VR

Lektion 6. Grundlæggende programmering i VR Lektion 6 Grundlæggende programmering i VR Plan for i dag Simpelt FPS Triggerzones og animationer C# og objekt orienteret programmering Interfaces Generics Google Cardboard Video om VRs fremtid App til

Læs mere

Java Klasse nedarvninger

Java Klasse nedarvninger Denne guide er oprindeligt udgivet på Eksperten.dk Java Klasse nedarvninger Et let lille overblik i hvordan klasse nedarvning virker i java Skrevet den 07. dec 2011 af mochners I kategorien Programmering

Læs mere

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

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

Læs mere

Software Construction 1 semester (SWC) Spørgsmål 1

Software Construction 1 semester (SWC) Spørgsmål 1 Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /

Læs mere

Dagens program. Domæner. change log- screen shots hver gang I har arbejdet med themet. Arkitekturen bag en wp blog. Hvad er widgets.

Dagens program. Domæner. change log- screen shots hver gang I har arbejdet med themet. Arkitekturen bag en wp blog. Hvad er widgets. Dagens program Har alle fået? Har nogen betalt for meget? Hav jeres koder klar Domæner change log- screen shots hver gang I har arbejdet med themet. Arkitekturen bag en wp blog Hvad er widgets Hvad er

Læs mere

Systematisk testning af program til udregning af mellemskat

Systematisk testning af program til udregning af mellemskat Systematisk testning af program til udregning af mellemskat Indledning I denne opgave vil vi definere passende cases til systematisk black-box test af et program til beregning af mellemskat. Vi har valgt

Læs mere

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation).

RMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation). Denne guide er oprindeligt udgivet på Eksperten.dk RMI introduktion Denne artikel beskriver Java RMI (Remtote Method Invocation). Den beskriver teorien bag RMI, viser et simpelt kode eksempel og forklarer

Læs mere

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

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

Læs mere

dintprog Manual Revision: 1241 August 24, 2010 I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4

dintprog Manual Revision: 1241 August 24, 2010 I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4 dintprog Manual Revision: 1241 August 24, 2010 Indhold I Introduktion 3 1 Notation 3 II Begreber 4 2 Grundbegreber om programmering 4 3 Grundbegreber om modellering 4 III Sprogkonstruktioner 5 4 Klasser

Læs mere

Forelæsning Uge 4 Mandag

Forelæsning Uge 4 Mandag Forelæsning Uge 4 Mandag Algoritmeskabeloner Kan (ved simple tilretningerne) bruges til at implementere metoder, der gennemsøger en arrayliste (eller anden objektsamling) og finder objekter, der opfylder

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

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

Ugeseddel 4 1. marts - 8. marts

Ugeseddel 4 1. marts - 8. marts Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,

Læs mere

Forelæsning Uge 2 Torsdag

Forelæsning Uge 2 Torsdag Forelæsning Uge 2 Torsdag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser Klassevariabler og klassemetoder Variabler og metoder der et tilknyttet klassen (i stedet for at være tilknyttet

Læs mere

Portal Registration. Check Junk Mail for activation . 1 Click the hyperlink to take you back to the portal to confirm your registration

Portal Registration. Check Junk Mail for activation  . 1 Click the hyperlink to take you back to the portal to confirm your registration Portal Registration Step 1 Provide the necessary information to create your user. Note: First Name, Last Name and Email have to match exactly to your profile in the Membership system. Step 2 Click on the

Læs mere

RentCalC V2.0. 2012 Soft-Solutions

RentCalC V2.0. 2012 Soft-Solutions Udlejnings software Vores udvikling er ikke stoppet!! by Soft-Solutions RentCalC, som er danmarks ubetinget bedste udlejnings software, kan hjælpe dig med på en hurtigt og simple måde, at holde styr på

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

Hvordan finder man en god skala vha. Raschmetoden? Svend Kreiner & Tine Nielsen

Hvordan finder man en god skala vha. Raschmetoden? Svend Kreiner & Tine Nielsen Hvordan finder man en god skala vha. Raschmetoden? Svend Kreiner & Tine Nielsen 1 Svaret: Man spørger en, der har forstand på det, som man gerne vil måle 2 Eksempel: Spiritualitet Peter A., Peter G. &

Læs mere

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning Datalogi OB, Efterår 2002 OH er, forelæsning 10/9-2002 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Eftermiddagens opgave:

Læs mere

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 Opgavebesvarelsen skal afleveres som enten en printerudskrift eller som et passende dokument sendt via email til fjj@noea.dk. Besvarelsen skal

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

mandag den 23. september 13 Konceptkommunikation

mandag den 23. september 13 Konceptkommunikation Konceptkommunikation Status... En række koncepter, der efterhånden har taget form Status......nu skal vi rette os mod det færdige koncept idé 1 idé 2 How does it fit together Mixing and remixing your different

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

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

Database. lv/

Database. lv/ Database 1 Database Design Begreber 1 Database: En fælles samling af logiske relaterede data (informationer) DBMS (database management system) Et SW system der gør det muligt at definer, oprette og vedligeholde

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

Skriftlig Eksamen Kombinatorik, Sandsynlighed og Randomiserede Algoritmer (DM528)

Skriftlig Eksamen Kombinatorik, Sandsynlighed og Randomiserede Algoritmer (DM528) Skriftlig Eksamen Kombinatorik, Sandsynlighed og Randomiserede Algoritmer (DM58) Institut for Matematik og Datalogi Syddansk Universitet, Odense Torsdag den 1. januar 01 kl. 9 13 Alle sædvanlige hjælpemidler

Læs mere

Det vigtigste først! Dette er måske den vigtigste bog der nogensinde er skrevet om agile vs. vandfald. Muligvis fordi det vel stadig er den eneste

Det vigtigste først! Dette er måske den vigtigste bog der nogensinde er skrevet om agile vs. vandfald. Muligvis fordi det vel stadig er den eneste WTF? Thomas Schou-Moldt, Miracle A/S (siden 2008) Arkitekt, udvikler, teknisk projektleder, mv. Indtil videre afsonet lidt over 20 år i branchen, ingen udsigt til prøveløsladelse tsm@miracleas.dk, 5374

Læs mere

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11

University of Southern Denmark Syddansk Universitet. DM503 Forelæsning 11 DM503 Forelæsning 11 Generics Pakker Exceptions Indhold Generics Nedarvning og Generics Generics Nedarvning og Generics Husk Box fra sidst Generics public class Box {! private T object;! public void

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

Hvorfor skal vi bruge objekt orienteret databaser?

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

Læs mere

Real-time programming safety in Java and Ada

Real-time programming safety in Java and Ada Real-time programming safety in Java and Ada Bo Sandén Presenter: Thomas Bøgholm 25. oktober 2007 Forfatteren Artiklen Synkroniserings Begreber Bo Sandén Professor på Colorado Technical University Beskæftiger

Læs mere

dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 Rapport til a. 1

dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 Rapport til a. 1 dsoftark E2007 Gruppe 14: Anders, Troels & Søren 15. november 2007 Rapport til a. 1 'TDD rytmen' Vi bruger gennem vores arbejde, rytmen fra Test Driven Development-paradigmet. Quickly add a test Run tests

Læs mere

DSB s egen rejse med ny DSB App. Rubathas Thirumathyam Principal Architect Mobile

DSB s egen rejse med ny DSB App. Rubathas Thirumathyam Principal Architect Mobile DSB s egen rejse med ny DSB App Rubathas Thirumathyam Principal Architect Mobile Marts 2018 AGENDA 1. Ny App? Ny Silo? 2. Kunden => Kunderne i centrum 1 Ny app? Ny silo? 3 Mødetitel Velkommen til Danske

Læs mere

Tredjepart webservices

Tredjepart webservices Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output

Læs mere

RoE timestamp and presentation time in past

RoE timestamp and presentation time in past RoE timestamp and presentation time in past Jouni Korhonen Broadcom Ltd. 5/26/2016 9 June 2016 IEEE 1904 Access Networks Working Group, Hørsholm, Denmark 1 Background RoE 2:24:6 timestamp was recently

Læs mere

Objektorienteret design med arv og polymorfi:

Objektorienteret design med arv og polymorfi: Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Objektorienteret design med arv og polymorfi: Substitutionsprincippet Composite Design Pattern Finn Nordbjerg Side 1 Objektorienteret

Læs mere

Programming Project Report. Programmeringsprojekt i PaSOOS fagpakken. 20097733 Bobby Nielsen; 20097626 Jon Rune Jørgensen

Programming Project Report. Programmeringsprojekt i PaSOOS fagpakken. 20097733 Bobby Nielsen; 20097626 Jon Rune Jørgensen Programming Project Report Programmeringsprojekt i PaSOOS fagpakken Underviser: Henrik Bærbak Christensen 08-06-2011 Indhold 1 Udvikling og test af binær søgning... 2 1.1 TDD på binær søgning... 2 1.1.1

Læs mere

Forelæsning Uge 6 Mandag

Forelæsning Uge 6 Mandag Forelæsning Uge 6 Mandag Tingene i denne forelæsning er ikke eksamenspensum Forelæsningen afrunder kurset, og forklarer nogle af de begreber, som I har mødt under kurset uden at få detaljeret forklaring

Læs mere

Tree klassen fra sidste forelæsning

Tree klassen fra sidste forelæsning Programmering 1999 Forelæsning 12, fredag 8. oktober 1999 Oversigt Abstrakte klasser. Grænseflader. Programmering 1999 KVL Side 12-1 Tree klassen fra sidste forelæsning class Tree { int age; // in years

Læs mere

Nanna Flindt Kreiner lektor i retorik og engelsk Rysensteen Gymnasium. Indsigt i egen læring og formativ feedback

Nanna Flindt Kreiner lektor i retorik og engelsk Rysensteen Gymnasium. Indsigt i egen læring og formativ feedback Nanna Flindt Kreiner lektor i retorik og engelsk Rysensteen Gymnasium Indsigt i egen læring og formativ feedback Reformen om indsigt i egen læring hvordan eleverne kan udvikle deres evne til at reflektere

Læs mere

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),

Læs mere

Design af genbrugeligt objektorienteret software

Design af genbrugeligt objektorienteret software Velkommen Design af genbrugeligt objektorienteret software Evaluering af software ved hjælp af statiske mål. 24 februar 2004 Specialeforsvar af: Søren Gaardbo Jensen Design af genbrugeligt objektorienteret

Læs mere

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen

Sekvensafstand DM34 - Eksamensopgave. Jacob Aae Mikkelsen Sekvensafstand DM34 - Eksamensopgave Jacob Aae Mikkelsen 19 10 76 kokken@grydeske.dk 27. maj 2005 Resumé Rapporten her beskriver tre forskellige rekursive metoder til at sammenligne tekst strenge med.

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

IBM Software Group. SOA v akciji. Srečko Janjić WebSphere Business Integration technical presales IBM Software Group, CEMA / SEA IBM Corporation

IBM Software Group. SOA v akciji. Srečko Janjić WebSphere Business Integration technical presales IBM Software Group, CEMA / SEA IBM Corporation IBM Software Group SOA v akciji Srečko Janjić Business Integration technical presales IBM Software Group, CEMA / SEA Service Oriented Architecture Design principles and technology for building reusable,

Læs mere

Online kursus: Content Mangement System - Wordpress

Online kursus: Content Mangement System - Wordpress Online kursus 365 dage DKK 1.999 Nr. 90213 P ekskl. moms Wordpress er et open-source content management system, som anvendes af mere end 23% af verdens 10 millioner mest besøgte hjemmesider. Det er et

Læs mere

En karakteristik af de regulære sprog. Ugens emner. FA minimering [5.1-5.2] MyHill-Nerode-sætningen en algoritme til minimering af FA er

En karakteristik af de regulære sprog. Ugens emner. FA minimering [5.1-5.2] MyHill-Nerode-sætningen en algoritme til minimering af FA er Ugens emner FA minimering [.-.] MyHill-Nerode-sætningen en algoritme til minimering af FA er En karakteristik af de regulære sprog Et sprog L er regulært hvis og kun hvis L beskrives af et regulært udtryk

Læs mere

Sesam seminar nr. 106. Sesam seminar nr. 106 - Opbygning af standard bibliotek til PLC / SCADA / MES

Sesam seminar nr. 106. Sesam seminar nr. 106 - Opbygning af standard bibliotek til PLC / SCADA / MES Sesam seminar nr. 106 Opbygning af standard software bibliotek til PLC / SCADA / MES Fokus områder: Fundament & omfang af software bibliotek Overvejelser i forbindelse med etablering af bibliotek Vedligeholdelse

Læs mere

how to save excel as pdf

how to save excel as pdf 1 how to save excel as pdf This guide will show you how to save your Excel workbook as PDF files. Before you do so, you may want to copy several sheets from several documents into one document. To do so,

Læs mere

DM507 Algoritmer og datastrukturer

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

Læs mere

Projekt DATA step view

Projekt DATA step view Projekt DATA step view Af Louise Beuchert Formål Formålet med dette projekt, er at sammenligne tid/ressourcekonsekvenser ved at køre SASjobs på data hentet som henholdsvis en fysisk kopi af data filen

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

Remember the Ship, Additional Work

Remember the Ship, Additional Work 51 (104) Remember the Ship, Additional Work Remember the Ship Crosswords Across 3 A prejudiced person who is intolerant of any opinions differing from his own (5) 4 Another word for language (6) 6 The

Læs mere

(Unit) Testing. Det skal du

(Unit) Testing. Det skal du (Unit) Testing Det skal du 1 Overblik I dag skal det handle om testing (unit testing) 1. Kort om forskellige former for tests. 2. Unit Testing (Black Box Testing) Opfører kode under test sig som forventet?

Læs mere

TM4 Central Station. User Manual / brugervejledning K2070-EU. Tel Fax

TM4 Central Station. User Manual / brugervejledning K2070-EU. Tel Fax TM4 Central Station User Manual / brugervejledning K2070-EU STT Condigi A/S Niels Bohrs Vej 42, Stilling 8660 Skanderborg Denmark Tel. +45 87 93 50 00 Fax. +45 87 93 50 10 info@sttcondigi.com www.sttcondigi.com

Læs mere

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services Sporbarhed og Rapportering i Quality Center Kim Stenbo Nielsen NNIT Application Management Services Indhold INTRODUKTION Hvem er jeg Hvad vil jeg fortælle om QC std. rapporteringsfaciliteter EXCEL RAPPORTER

Læs mere

Eksempel: et ordresystem note 5 Lagdeling s. 1

Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordre-system NiceHair er et firma, som sælger udstyr, inventar og frisørartikler til frisørsaloner over hele landet. Det er ejet af et ægtepar

Læs mere

What s Our Current Position? Uddannelsesstruktur i AUE. What Can You Choose After DE5? Uddannelsesstruktur i AUE

What s Our Current Position? Uddannelsesstruktur i AUE. What Can You Choose After DE5? Uddannelsesstruktur i AUE Information Meeting for DE5 and DE3 Further Study Possibilities What s Our Current Position? General Education Structure Andre muligheder DE3-DE5 Semesters (AUE) What Can You Choose After DE5? Diplomingeniøruddannelsen

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