Tentamenvragen IT in de Context van het Recht 2023-
2024⋆
Zes vragen, 10 punten per vraag. Totaal 60 punten. Totale tijd 3 uur (180 minuten).
1 Algoritmen
a. Tijdens de colleges zijn twee soorten zoekalgoritmes aan bod gekomen; lineair en binair.
Zoeken met een binair zoekalgoritme is in verreweg de meeste gevallen een stuk sneller dan met een
lineair zoekalgoritme. Leg uit waarom soms toch gebruik gemaakt moet worden van een lineair
zoekalgoritme. (200 woorden, 5 pt.) 4,5/5
Binair zoeken heeft alleen zin als de data gesorteerd is. Bij een grote stapel ongesorteerde
data zal je met een binair zoekalgoritme niet per se sneller uit zijn, omdat de data eerst
gesorteerd moet worden (als dat al gemakkelijk kan). Een lineair zoekalgoritme werkt in die
gevallen altijd, aangezien het bij lineair zoeken niet uitmaakt of en hoe de data gesorteerd is.
Een algortime is een duidelijke, zorgvuldige en nauwkeurige stappenreeks die gevolgd
wordt om een bepaald resultaat te bereiken. Dit is vergelijkbaar met een
belastingformulier. Bij een binair algoritme laat je steeds de helft van de lijst buiten
beschouwing, omdat het beoogde resultaat daar niet in staat. Echter zit er een eis aan
een binair algoritme zodat het werkt, namelijk: sorteren. Een binair algoritme werkt alleen
indien het gaat om een gesorteerde lijst. Soms moet er dus een lineair algoritme gebruikt
worden als de lijst niet gesorteert is. Het binair algoritme kan dan simpelweg niet
gebruikt worden. Waarom? Als steeds de helft van de lijst "weggegooid" wordt als het
beoogde resultaat daar niet in kan staan, dan dient deze lijst gesorteerd te zijn. Dus
ondanks dat een lineair algoritme veel minder snel is (2 keer zoveel mensen = 2 keer
zoveel tijd) dan een binair algoritme, wordt er dus soms toch gebruik gemaakt van een
lineair algoritme als de lijst niet gesorteerd is.
b. Handelingen die vaak voorkomen, kunnen ondergebracht worden in een subroutine. Het
opnemen van dergelijke subroutines heeft twee grote voordelen. Leg uit welke twee
voordelen dit zijn. (200 woorden, 5 pnt) 2,5/5
Eén keer goed opschrijven is voldoende; scheelt programmeerwerk en dus tijd
(foutgevoelig) en ruimte (geheugen). Aanpassen van een subroutine hoeft daarnaast maar
op één plek, in plaats van op alle verschillende plekken waar het subroutine wordt
aageroepen in het algoritme.
Een subroutine zorgt ervoor dat je binnen een stap in het stappenplan niet steeds
verdere informatie nodig. Om dit te verduidelijken wordt er in het boek een voorbeeld
gebruikt: een recept (dit is tevens geen goede vergelijking voor een algoritme). Specifiek
wordt een kookboek gebruikt. Vergelijkbaar met een subroutine is het versnipperen van
een ui. I.p.v. bij elke stap binnen het algoritme (en dus bij elk recept in het kookboek) uit
te moeten leggen wat het versnipperen van de uit inhoudt, kan je beter in het begin of op
het einde van de boek het 1 keer uitleggen. Voor de rest verwijs je bij het recept zelf
hiernaar. Het voordeel voor een subroutine is dus dat je niet steeds bij elk recept/stap
, opnieuw uitleg moet geven bij zoals in het voorbeeld het versnipperen van een ui in een
kookboek. Het tweede voordeel is snelheid. Niet alleen is een subroutine makkelijker
zoals hiervoor genoemd, maar ook is het sneller om een subroutine te gebruiken. Zoals
het voorbeeld over het kookboek, scheelt het enorm veel tijd door niet steeds uit te
moeten leggen wat het versnipperen van de uit inhoudt. Je hoeft dat dan niet steeds bij
langs.
2 Netwerken
Op 15 maart raakten voor de kust van West-Afrika enkele belangrijke on- derzeese
internetkabels ernstig beschadigd. De oorzaak is nog onbekend, maar er wordt
gespeculeerd dat de schade is veroorzaakt door het anker van een schip, of door een
onderzeese aardverschuiving. Hierdoor waren er problemen met de beschikbaarheid en
snelheid van het internet in onder andere Ivoorkust, Nigeria, en Ghana.
a. Beschrijf kort de lagen van het internet. In welke laag heeft deze beschadiging
plaatsgevonden? Verklaar je antwoord. (100 woorden, 3 pt) 3/3
2 pt voor correcte beschrijving van de vier lagen (halve punt per laag): 1. Applicatielaag: Hier vinden
gebruikersinteracties plaats via applicaties zoals webbrowsers, e-mails en sociale media. 2.
Transportlaag: In deze laag worden gegevens verzonden en ontvangen via protocollen
zoals TCP (Transmission Control Protocol) en UDP (User Datagram Protocol). De data wordt
in pakketjes opgedeeld door de verzender, en door de ontvanger worden deze pakketjes
weer bij elkaar gebracht. 3. Netwerklaag: Deze laag behandelt het routeren van
gegevenspakketten tussen verschillende netwerken via IP (Internet Protocol). 4. Fysieke
laag: Dit is de onderste laag en omvat de fysieke infrastructuur die wordt gebruikt om
gegevens over te dragen, zoals kabels, glasvezel en draadloze signalen.
1 pt voor uitleg dat de beschadiging van de onderzeese internetkabels plaatsvond in de
fysieke laag van het internet. Deze kabels vormen de fysieke infrastructuur die data over
lange afstanden onder water transporteert tussen verschillende continenten. De schade aan
deze kabels heeft direct invloed op de connectiviteit en snelheid van het internet in de
getroffen regio’s, aangezien het de belangrijkste pijplijn is die dataverkeer tussen West-Afrika
en de rest van de wereld mogelijk maakt.
De lagen van het internet betreffen:
1. De applicatie/toepassingslaag (gebruiker).
2. De transportlaag (betrouwbare, in pakketjes knippende, controle laag).
3. Netwerklaag (routeren - onbetrouwbare/directe verbinding).
4. Fysieke laag (de kabels).
De beschadiging heeft plaatsgevonden in de fysieke laag. Het gaat namelijk om een
belangrijke onderzeese internetkabel (internet exchange). Dit is een fysieke internetkabel
die de fysieke verbinding levert tussen 2 punten. Hierdoor zijn er problemen met de
beschikbaarheid/snelheid van het internet en dus de fysieke verbinding naar onder
andere Ivoorkust, Nigeria en Ghana.
De snelheid en beschikbaarheid van het internet waren in grote delen van westelijke Afrika
door dit voorval dagenlang gebrekkig. Toch bleef het mo- gelijk om veel websites te bezoeken
2024⋆
Zes vragen, 10 punten per vraag. Totaal 60 punten. Totale tijd 3 uur (180 minuten).
1 Algoritmen
a. Tijdens de colleges zijn twee soorten zoekalgoritmes aan bod gekomen; lineair en binair.
Zoeken met een binair zoekalgoritme is in verreweg de meeste gevallen een stuk sneller dan met een
lineair zoekalgoritme. Leg uit waarom soms toch gebruik gemaakt moet worden van een lineair
zoekalgoritme. (200 woorden, 5 pt.) 4,5/5
Binair zoeken heeft alleen zin als de data gesorteerd is. Bij een grote stapel ongesorteerde
data zal je met een binair zoekalgoritme niet per se sneller uit zijn, omdat de data eerst
gesorteerd moet worden (als dat al gemakkelijk kan). Een lineair zoekalgoritme werkt in die
gevallen altijd, aangezien het bij lineair zoeken niet uitmaakt of en hoe de data gesorteerd is.
Een algortime is een duidelijke, zorgvuldige en nauwkeurige stappenreeks die gevolgd
wordt om een bepaald resultaat te bereiken. Dit is vergelijkbaar met een
belastingformulier. Bij een binair algoritme laat je steeds de helft van de lijst buiten
beschouwing, omdat het beoogde resultaat daar niet in staat. Echter zit er een eis aan
een binair algoritme zodat het werkt, namelijk: sorteren. Een binair algoritme werkt alleen
indien het gaat om een gesorteerde lijst. Soms moet er dus een lineair algoritme gebruikt
worden als de lijst niet gesorteert is. Het binair algoritme kan dan simpelweg niet
gebruikt worden. Waarom? Als steeds de helft van de lijst "weggegooid" wordt als het
beoogde resultaat daar niet in kan staan, dan dient deze lijst gesorteerd te zijn. Dus
ondanks dat een lineair algoritme veel minder snel is (2 keer zoveel mensen = 2 keer
zoveel tijd) dan een binair algoritme, wordt er dus soms toch gebruik gemaakt van een
lineair algoritme als de lijst niet gesorteerd is.
b. Handelingen die vaak voorkomen, kunnen ondergebracht worden in een subroutine. Het
opnemen van dergelijke subroutines heeft twee grote voordelen. Leg uit welke twee
voordelen dit zijn. (200 woorden, 5 pnt) 2,5/5
Eén keer goed opschrijven is voldoende; scheelt programmeerwerk en dus tijd
(foutgevoelig) en ruimte (geheugen). Aanpassen van een subroutine hoeft daarnaast maar
op één plek, in plaats van op alle verschillende plekken waar het subroutine wordt
aageroepen in het algoritme.
Een subroutine zorgt ervoor dat je binnen een stap in het stappenplan niet steeds
verdere informatie nodig. Om dit te verduidelijken wordt er in het boek een voorbeeld
gebruikt: een recept (dit is tevens geen goede vergelijking voor een algoritme). Specifiek
wordt een kookboek gebruikt. Vergelijkbaar met een subroutine is het versnipperen van
een ui. I.p.v. bij elke stap binnen het algoritme (en dus bij elk recept in het kookboek) uit
te moeten leggen wat het versnipperen van de uit inhoudt, kan je beter in het begin of op
het einde van de boek het 1 keer uitleggen. Voor de rest verwijs je bij het recept zelf
hiernaar. Het voordeel voor een subroutine is dus dat je niet steeds bij elk recept/stap
, opnieuw uitleg moet geven bij zoals in het voorbeeld het versnipperen van een ui in een
kookboek. Het tweede voordeel is snelheid. Niet alleen is een subroutine makkelijker
zoals hiervoor genoemd, maar ook is het sneller om een subroutine te gebruiken. Zoals
het voorbeeld over het kookboek, scheelt het enorm veel tijd door niet steeds uit te
moeten leggen wat het versnipperen van de uit inhoudt. Je hoeft dat dan niet steeds bij
langs.
2 Netwerken
Op 15 maart raakten voor de kust van West-Afrika enkele belangrijke on- derzeese
internetkabels ernstig beschadigd. De oorzaak is nog onbekend, maar er wordt
gespeculeerd dat de schade is veroorzaakt door het anker van een schip, of door een
onderzeese aardverschuiving. Hierdoor waren er problemen met de beschikbaarheid en
snelheid van het internet in onder andere Ivoorkust, Nigeria, en Ghana.
a. Beschrijf kort de lagen van het internet. In welke laag heeft deze beschadiging
plaatsgevonden? Verklaar je antwoord. (100 woorden, 3 pt) 3/3
2 pt voor correcte beschrijving van de vier lagen (halve punt per laag): 1. Applicatielaag: Hier vinden
gebruikersinteracties plaats via applicaties zoals webbrowsers, e-mails en sociale media. 2.
Transportlaag: In deze laag worden gegevens verzonden en ontvangen via protocollen
zoals TCP (Transmission Control Protocol) en UDP (User Datagram Protocol). De data wordt
in pakketjes opgedeeld door de verzender, en door de ontvanger worden deze pakketjes
weer bij elkaar gebracht. 3. Netwerklaag: Deze laag behandelt het routeren van
gegevenspakketten tussen verschillende netwerken via IP (Internet Protocol). 4. Fysieke
laag: Dit is de onderste laag en omvat de fysieke infrastructuur die wordt gebruikt om
gegevens over te dragen, zoals kabels, glasvezel en draadloze signalen.
1 pt voor uitleg dat de beschadiging van de onderzeese internetkabels plaatsvond in de
fysieke laag van het internet. Deze kabels vormen de fysieke infrastructuur die data over
lange afstanden onder water transporteert tussen verschillende continenten. De schade aan
deze kabels heeft direct invloed op de connectiviteit en snelheid van het internet in de
getroffen regio’s, aangezien het de belangrijkste pijplijn is die dataverkeer tussen West-Afrika
en de rest van de wereld mogelijk maakt.
De lagen van het internet betreffen:
1. De applicatie/toepassingslaag (gebruiker).
2. De transportlaag (betrouwbare, in pakketjes knippende, controle laag).
3. Netwerklaag (routeren - onbetrouwbare/directe verbinding).
4. Fysieke laag (de kabels).
De beschadiging heeft plaatsgevonden in de fysieke laag. Het gaat namelijk om een
belangrijke onderzeese internetkabel (internet exchange). Dit is een fysieke internetkabel
die de fysieke verbinding levert tussen 2 punten. Hierdoor zijn er problemen met de
beschikbaarheid/snelheid van het internet en dus de fysieke verbinding naar onder
andere Ivoorkust, Nigeria en Ghana.
De snelheid en beschikbaarheid van het internet waren in grote delen van westelijke Afrika
door dit voorval dagenlang gebrekkig. Toch bleef het mo- gelijk om veel websites te bezoeken