Vær opmærksom på at dette website indeholder et arkiv med historiske data. Det aktuelle kursuskatalog findes på kursuskatalog.au.dk

AU kursuskatalog arkiv

[Forside] [Hovedområder] [Perioder] [Udannelser] [Alle kurser på en side]

Kontraktbaseret Programmering 2 (Q2) ( efterår 2011 - 5 ECTS )

Rammer for udbud

  • Uddannelsessprog: engelsk
  • Niveau: Kandidatkursus
  • Semester/kvarter: Q2
  • Timer per uge: 5
  • Deltagerbegrænsning: Ingen
  • Undervisningssted: Århus
  • Hovedområde: Det Naturvidenskabelige Fakultet
  • Udbud ID: 31398

Formål

Deltagerne vil efter kurset have indsigt i systematisk, kontraktbaseret konstruktion af programmer og i grundlæggende teori vedrørende programudsagn. Kursets arbejdsform vil også træne deltagernes evne til at planlægge og gennemføre projekter.

Obligatorisk program

Tre praktiske projekter, dokumenteret ved rapport og kildekode

Indhold

Specifikationer, specielt kontrakter, udtrykt ved programudsagn baseret på prædikatlogik. Systematisk udvikling af en kontrakt, i et samspil med udviklingen af en klasse. Forholdet mellem specifikation og implementation. Gyldighed og korrekthed. Løkke- og klasseinvarianter. Forholdet mellem programudsagn og test. Praktiske programmeringsprojekter der benytter kontrakter.

Læringsmål

Deltagerne skal ved afslutningen af kurset kunne:

  • skrive og forklare kontrakter for metoder og klasser i form af programudsagn baseret på prædikatlogik,
  • forklare og analysere sammenhængen mellem programkode og programudsagn, herunder at konstruere simple korrekthedsbeviser for algoritmer,
  • analysere og implementere løkker som er annoteret med løkkeinvarianter og andre programudsagn.

Faglige forudsætninger

For IHA-studerende: Kontraktbaseret Programmering 1

Underviser

Erik Ernst

Undervisnings- og arbejdsform

Forelæsninger 5t/uge, vekslende med projektuger

Litteratur

Richard Mitchell og Jim McKim: Design by Contract, by Example, Addison-Wesley, 2001, ISBN: 0201634600 (eller ny version hvis en sådan trykkes)

Kursushjemmeside

http://www.daimi.au.dk/KBP2

 

Eksamensterminer

December/januar, reeksamen foregår efter aftale med underviseren

Udbyder

Datalogisk Institut

Tilmelding til undervisning

https://mit.au.dk/

 

Bedømmelse

Mundtlig eksamen (20 min) uden forberedelse 7-skala, intern censur