Webspot Pieter van Ede

Vakken Bachelor Computer Science

Hier ziet u de vakken die ik gevolgd heb voor de verschillende onderdelen van de opleiding, met een korte beschrijving. Tevens ziet u een link naar de vaksite voor meer informatie, waarbij ik wel moet opmerken dat sommige vakken inmiddels van naam kunnen zijn veranderd en dat de inhoud iets kan zijn aangepast.

Discipline uniform

Databases

In dit vak zijn de relationele databases behandeld. Onderwerpen die aan bod kwamen waren onder meer: ER-modelleren, Relationele Algebra en SQL, normalisatie en transaction processing. Daarnaast zijn nog enkele korte onderwerpen als webdatabases en databases met XML-functionaliteit behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
9
Gegeven door
Datastructuren

In dit vak zijn enkele datastructuren, zoals linked lists, zoekbomen, AVL bomen, heaps en multiway zoek bomen. Daarnaast zijn enkele sorteeralgoritmen zoals quicksort, mergesort, heapsort behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Functioneel programmeren

In dit vak is het functionele programmeer paradigma behandeld aan de hand van de taal Haskell. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Graphics

In dit vak is de basis van computer graphics behandeld, zoals ray-tracing en de graphics pipeline. Daarnaast zijn er diverse methoden voor bijvoorbeeld texture mapping, hidden surface elimination en belichting/schaduwen behandeld. Daarbij zijn ook ondersteunende algoritmen en datastructuren zoals BSP-bomen en Z-buffers behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door
Imperatief programmeren

In dit vak is het object-georiënteerd programmeren uitgelegd aan de hand van de taal Java. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Logica en verzamelingen

In dit vak zijn zowel de propositie- en de predikatenlogica behandeld, alsmede de basis van de verzamelingenleer. Daarnaast zijn er verschillende bewijstechnieken behandeld, zoals natuurlijke deductie, sequenten calculus etc. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Modelleren en systeemontwikkeling

Bij dit vak zijn heel diverse onderwerpen behandeld: Objectgeoriënteerd programmeren, modelleertechnieken in UML en het schrijven van tests in JUnit. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Netwerken

In dit vak zijn algemene concepten van besturingssytemen behandeld, alsmede verschillende onderwerpen aangaande netwerken, zoals het OSI-lagenmodel en de techniek achter ethernet, draadloze communicatie etc. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Softwareproject

Bij dit project heb ik in een team van 9 studenten gebouwd aan Spectre. Met dit programma worden de gegevens van massaspectrometers, waarmee biologen monsters onderzoeken op de aanwezigheid en hoeveelheid van bepaalde eiwitten, gevisualiseerd en ge-analyseerd. In dit project moesten we zowel programmeren als contact houden met de klant en het project managen. Naast het programmeren heb ik me binnen het team ook bezighouden met het aansturen van het team, onder andere als voorzitter tijdens vergaderingen. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door

Context uniform

Overdragen van informatica-onderzoek

Bij dit vak hebben we geleerd hoe we algemene en technische onderwerpen mondeling via een presentatie of schriftelijk via een scriptie kunnen overbrengen. Daarnaast hebben we geleerd om een krantenartikel over een technisch onderwerp te schrijven en elkaar kritisch te beoordelen. Meer informatie vindt u op de vakpagina.

Cijfer
9
Gegeven door
Wiskunde voor informatici

In dit vak zijn allerlei wiskundige technieken behandeld, die een informaticus goed van pas kunnen komen. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door

Discipline keuze

Algoritmiek

In dit vak zijn diverse algoritmische technieken aan de orde geweest, waaronder dynamisch programmeren, greedy algoritmen. Ook zijn algoritmen op grafen en NP-volledigheid aan de behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door
Gedistribueerd programmeren

In dit vak zijn klassieke synchronisatietechnieken voor multi-threaded software besproken, zoals busy-waits, semaforen en monitoren. Daarna zijn message passing algoritmen behandeld en ten slotte ook wachtvrije synchronisatietechnieken. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door
Grammatica's en ontleden

In dit vak zijn grammatica's en hun eigenschappen, zoals onder meer LL behandeld. Tevens zijn ook technieken voor parserbouw behandeld, zowel met behulp van ANTLR en met parser-combinatoren in Haskell. Meer informatie vindt u op de vakpagina.

Cijfer
9
Gegeven door
Inleiding beeldverwerking

In dit vak is een inleiding gegeven op diverse operaties op afbeeldingen. Ook zijn technieken behandeld waarmee structuren in afbeeldingen herkend kunnen worden. Meer informatie vindt u op de vakpagina.

Cijfer
7.5
Gegeven door
Optimalisering en complexiteit

In dit vak is lineair programmeren behandeld. Het simplex algoritme is behandeld en enkele uitbreidingen zijn behandeld. Ook is behandeld hoe een concreet probleem als lineair programmeringsprobleem kan worden geformuleerd. Meer informatie vindt u op de vakpagina.

Cijfer
7
Gegeven door
Programmeren en correctheid

In dit vak besproken hoe je met behulp van logica de correctheid van programma's kunt bewijzen. Allereerst is Hoare logic besproken voor procedurele programma's en vervolgens uitbredingen hierop om programma's met objecten aan te kunnen. Meer informatie vindt u op de vakpagina.

Cijfer
7.5
Gegeven door
Zoekalgoritmen

In dit vak zijn diverse zoekalgoritmen aan de orde gekomen. Allereerst zijn de algoritmen voor ongeïnformeerd zoeken als breadth first en depth first aan de orde gekomen. Vervolgens zijn heuristische algoritmen als best-first en A* behandeld. Vervolgens zijn ook algoritmen voor lokaal zoeken, zoals hill climbing, simulated annealing en tabu search behandeld. Ook zijn algoritmen voor zoeken met een tegenstander en constraint satisfaction behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
7
Gegeven door

Context keuze

Recht en informatica

In dit vak zijn contracten en algemene voorwaarden, de bescherming van intellectueel eigendom en privacywetgeving behandeld, alsmede ook computercriminaliteit en manieren waarop de ICT de rechtspraktijk en de overheid kan helpen. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door

Minor Software Engineering

Internetprogrammeren

In dit vak zijn (x)HTML, CSS, JavaScript, PHP, Java Servlets en XML uitvoerig behandeld. Hierover waren ook grote praktische opdrachten. Daarna zijn AJAX, Frameworks en andere verwante onderwerpen kort behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Projectmanagement

In dit vak zijn verschillende methoden voor software projectmanagement behandeld, zoals PRINCE2 in combinatie met XP, RUP of DSDM. Ook is PMBOK kort beschreven en zijn culturele verschillen in internationale teams behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
7
Gegeven door
Software architectuur

In dit vak zijn methoden behandeld om de eisen van de klant te vertalen in een ontwerp van de architectuur van een oplossing. Met name is de nadruk gelegd op het vroegtijdig vaststellen van belangrijke kwaliteitseisen, om deze vervolgens te garanderen door gebruik te maken van bekende patronen en principes. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door
Software engineering

In dit vak zijn heel veel diverse onderwerpen behandeld. Onder andere is de specificatietaal Z aan de orde geweest en aspect-georiënteerd programmeren. Daarnaast zijn er diverse versiebeheer- en buildtools, zoals ANT, Make, SVN en DARCS behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
8
Gegeven door

Extra vakken

Datamining

In dit vak zijn diverse technieken aan bod gekomen waarmee een programma op basis van leergegevens patronen kan herkennen, waarmee het daarna voor onbekende gevallen kan voorspellen in welke klasse deze gevallen horen. Meer informatie vindt u op de vakpagina.

Cijfer
7.5
Gegeven door
Expertsystemen

Bij dit vak zijn diverse methoden behandeld waarmee zogenaamde expertsystemen kunnen worden gebouwd. Dit zijn systemen die een professional ondersteunen in hun taak, of hen juist (deels) overbodig maken. Hiervoor zijn technieken behandeld om met bijvoorbeeld natuurlijke taal of onzekerheden om te gaan. Ook zijn de beperkingen van deze regelgebaseerde systemen besproken, en dit was naast het feit dat deze systemen uitontwikkeld zijn de reden dat dit vak dit jaar voor het laatst gegeven wordt. Meer informatie vindt u op de vakpagina.

Cijfer
7
Gegeven door
Human Computer interaction

In dit vak is User-Centered Development behandeld, ofwel het ontwerpen van software waarbij voortdurend de gebruiker betrokken wordt. Daarnaast zijn ook technieken behandeld waarmee een interface gebruiksvriendelijk kan worden gemaakt. Meer informatie vindt u op de vakpagina.

Cijfer
7.5
Gegeven door
Inleiding computationele intelligentie

In dit vak zijn enkele algoritmen voor kunstmatige intelligentie behandeld, zoals k-nearest-neighbour, neurale netwerken en het minimax zoekalgoritme. Meer informatie vindt u op de vakpagina.

Cijfer
8.5
Gegeven door
Statistiek

In dit vak zijn allerlei technieken behandeld die nodig zijn om kansen te berekenen en voorspellingen te doen op basis van gegevens. Onder anderen zijn diverse verdelingen en schatters behandeld. Meer informatie vindt u op de vakpagina.

Cijfer
7.5
Gegeven door