Webprogrammeren en Databases

Webprogramming and Databases

6 EC

Semester 1, periode 3

5062WEDA6Y

Eigenaar Bachelor Informatica
Coördinator dr. R.G. Belleman
Onderdeel van Bachelor Informatica, jaar 1Dubbele bachelor Wiskunde en Informatica, jaar 1

Studiewijzer 2017/2018

Globale inhoud

In vier weken leer je hoe je voor een opdrachtgever een interactieve website maakt gebruik makend van LAMP (Linux, Apache, MySQL, PHP), HTML/CSS, Javascript en een relationele database, gehost op je eigen Linux server. In de eerste week leer je de werking van het World-Wide Web, maak je een gedetailleerd ontwerp van je website en bouw je een prototype voorzien van vormgeving (week 1: URLs, DNS, HTTP, HTML/CSS, datamodel ontwerp), in de tweede week maak je een database voor je website (week 2: relationele databases, SQL, PHP), daarna wordt interactie tussen de gebruiker en de website toegevoegd (week 3: javascript, AJAX). In de vierde en laatste week wordt aandacht besteed aan de beveiliging van je website, maak je het project af en verdedig je het tijdens een demonstratie en in een rapport. Voor studenten die aan kunnen tonen al ruime ervaring met de genoemde technieken te hebben, is er de mogelijkheid praktijkervaring op te doen met een echte opdrachtgever (onder voorbehoud van het aanbod).

Studiemateriaal

Overig

  • Cursuswebsite en diverse naslagwerken op het internet;
  • Het materiaal voor het Practicum Academische Vaardigheden staat op een aparte Blackboard pagina per opleiding en op de website http://practicumav.nl/

Leerdoelen

Aan het eind van deze cursus kan de student

  • een niet triviale interactieve website construeren op basis van HTML/CSS, PHP, Javascript en een eenvoudige relationele database;
  • een niet triviaal datamodel ontwerpen op basis van het relationele model tot en met de derde normaalvorm;
  • SQL queries ontwerpen om (1) informatie uit een relationele database op te halen, (2) informatie in een database op te slaan, (3) informatie in een relationele database te wijzigen, en (4) informatie uit een relationele database te verwijderen;
  • interactie met de eindgebruiker op gebruikersvriendelijke manier afhandelen;
  • een website beveiligen tegen markup injection, SQL injection, session hijacking, cross-site scripting;
  • Feedback geven op medestudenten en reflecteren op diens eigen projectbijdrage en ontwikkeling (PAV).

Academische vaardigheden die worden getoetst in dit vak:

  • werken in teamverband;
  • projectmatig werken;
  • rapporteren.

Attitudes die worden getraind binnen dit vak:

  • time management;
  • werken met deadlines;
  • werken met een projectplan;
  • op effectieve wijze binnen een projectgroep feedback geven en ontvangen;
  • reflecteren op het verloop van het project.

Onderwijsvormen

  • 4 uur hoorcollege;
  • 2 keer 30 minuten projectoverleg met de opdrachtgever. Voor dit projectoverleg geldt een aanwezigheidsplicht;
  • De overige uren worden besteed aan zelfstudie en werk aan het project in groepen van 3-6 personen.

Per week:

  • 4 uur hoorcollege;
  • 2 keer 30 minuten projectoverleg met de opdrachtgever. Voor dit projectoverleg geldt een aanwezigheidsplicht;
  • Practicum Academische Vaardigheden: 1 à 2 uur per week plus zelfstudie;
  • De overige uren worden besteed aan zelfstudie en werk aan het project in groepen van 3-5 personen.

Verdeling leeractiviteiten

Activiteit

Aantal uur

Hoorcollege

16

Presentatie

6

Project

272

Academische vaardigheden

Practicum academische vaardigheden:

Onderdeel van het lesprogramma van dit vak is het practicum academische vaardigheden (PAV). Voor eerstejaars BSc Informatica, Informatiekunde en Kunstmatige Intelligentie studenten is voldoen aan de verplichting van PAV een voorwaarde om dit vak te kunnen afsluiten. Zie voor de details de studiegidspagina van "Practicum Academische Vaardigheden (PAV)".

Aanwezigheid

Aanwezigheidseisen opleiding (OER-B):

  • Voor practica en werkgroepbijeenkomsten met opdrachten geldt een aanwezigheidsplicht. Wanneer studenten niet voldoen aan deze aanwezigheidsplicht kan dit als gevolg hebben dat het onderdeel niet met een voldoende kan worden afgerond.

Aanvullende eisen voor dit vak:

Voor het projectoverleg geldt een aanwezigheidsplicht.

Toetsing

Onderdeel en weging Details

Eindcijfer

20%

Rapportage

60%

Evaluatie van code en database

20%

Evaluatie van het functioneren in groepsverband

Voor dit projectvak bestaat géén herkansingsmogelijkheid.

Inzage toetsing

Om een inzagemoment aan te vragen, kun je contact opnemen met de coördinator.

Fraude en plagiaat

Over het algemeen geldt dat elke uitwerking die je inlevert ter verkrijging van een beoordeling voor een vak je eigen werk moet zijn, tenzij samenwerken expliciet door de docent is toegestaan. Het inzien of kopiëren van andermans werk (zelfs als je dat hebt gevonden bij de printer, in een openstaande directory of op een onbeheerde computer) of materiaal overnemen uit een boek, tijdschrift, website, code repository of een andere bron - ook al is het gedeeltelijk - en inleveren alsof het je eigen werk is, is plagiaat.

We juichen toe dat je het cursusmateriaal en de opdrachten met medestudenten bespreekt om het beter te begrijpen. Je mag bronnen op het web raadplegen om meer te weten te komen over het onderwerp en om technische problemen op te lossen, maar niet voor regelrechte antwoorden op opgaven. Als in een uitwerking gebruik is gemaakt van externe bronnen zonder dat een bronvermelding is vermeld (bijvoorbeeld in de rapportage of in commentaar in de code), dan kan dat worden beschouwd als plagiaat.

Deze regels zijn er om alle studenten een eerlijke en optimale leeromgeving aan te kunnen bieden. De verleiding kan groot zijn om te plagiëren als de deadline voor een opdracht nadert, maar doe het niet. Elke vorm van plagiaat wordt bestraft. Als een student ernstige fraude heeft gepleegd, kan dat leiden tot het uitschrijven uit de Universiteit. Zie voor meer informatie over het fraude- en plagiaatreglement van de Universiteit van Amsterdam: www.student.uva.nl

Rooster

Het rooster van dit vak is in te zien op DataNose.

Aanvullende informatie

Dit is een projectvak. Dat betekent dat de deelnemer geacht wordt gedurende deze hele periode full-time en exclusief aan dit vak te werken.

Aanbevolen voorkennis: ervaring met Linux en een programmeertaal is een pré maar niet noodzakelijk.

Maximum aantal studenten: 250. Voorrang wordt gegeven aan studenten voor wie dit vak verplicht is.

Contactinformatie

Coördinator

  • dr. R.G. Belleman