6 ECTS credits
150 u studietijd

Aanbieding 2 met studiegidsnummer 4023871FNW voor werkstudenten in het 1e semester met een gespecialiseerd master niveau.

Semester
1e semester
Inschrijving onder examencontract
Niet mogelijk
Beoordelingsvoet
Beoordeling (0 tot 20)
2e zittijd mogelijk
Ja
Onderwijstaal
Engels
Faculteit
Faculteit Wetenschappen en Bio-ingenieurswetensch.
Verantwoordelijke vakgroep
Computerwetenschappen
Onderwijsteam
Jens Nicolay (titularis)
Joeri De Koster
Onderdelen en contacturen
26 contacturen Hoorcollege
26 contacturen Werkcolleges, practica en oefeningen
150 contacturen Zelfstudie en externe werkvormen
Inhoud

This is an advanced course on concepts, techniques, and tools for cloud computing and big data processing. The goal is to introduce the foundational concepts and techniques, and motivate and illustrate their usage within frameworks and tools related to cloud computing and big data. Students are made aware of how these concepts are situated in larger, connected research domains such as distributed programming, reactive programming, metaprogramming, and so on.

Topics of this course include: (1) asynchronous programming with promises, generators, and async/await; (2) static and dynamic security for web applications; (3) data replication and consistency; (4) blockchain; (5) properties of big data; (6) MapReduce and other Hadoop-related technologies; (7) distributed and resilient collection data structures in Spark; (8) cluster-computing with Spark: data locality, partitioning, and shuffling.

Bijkomende info

This course is not a basic introduction to every research domain related to cloud computing or big data processing. Familiarity with web-related and data processing technologies is a big plus. Basic knowledge of programming languages theory is assumed.

Leerresultaten

Algemene competenties

The computing landscape is changing drastically, with technologies like cloud computing and big data entering the mainstream. While most students after completion of a Bachelor degree are already acquainted with the basics of mainstream programming languages, innovative software projects and companies today require expertise in the topics introduced in this course.

Knowledge and Insight: Successful completion of the course results in students that have gained knowledge about various topics, concepts, and technologies that lie at the basis of cloud computing and big data processing. The goal of the course is to introduce students to programming techniques that are used in modern and innovative software projects that tackle challenging problems. On the other hand, it is our purpose to introduce students to the scientific challenges that are a consequence of the specific context of the course contents (e.g., distributed nature of software, possibility of failure, the scale of operations and data) .

The use of knowledge and insight: Students will gain practical experience in putting the concepts underlying cloud computing and big data processing into practice by means of the practical sessions in which they are required to apply tools and develop small programs. After successful completion of the course, the students are able to put the knowledge and insights they gained into practice in software projects that require this type of knowledge.

Judgement ability: Complementary to the application of the topics of this course, the student will be able to provide a critical analysis and comparison of existing languages, tools, techniques, and frameworks described in scientific literature or offered as commercial products.

Communication: students will be able to clearly and critically express themselves both orally and in written form about the topics that are covered by the course.

Learning Skills: The course acquaints the student with two important emerging computing technologies, namely cloud computing and big data. Within these technologies, we identify a number of important topics that are sufficiently representative to provide the student with the necessary skills to absorb, classify, and disseminate knowledge of other, related concepts and techniques. Students will be capable of performing a more in-depth treatment of each of the covered topics.

Beoordelingsinformatie

De beoordeling bestaat uit volgende opdrachtcategorieën:
Examen Mondeling bepaalt 50% van het eindcijfer

WPO Praktijkopdracht bepaalt 50% van het eindcijfer

Binnen de categorie Examen Mondeling dient men volgende opdrachten af te werken:

  • Original essay met een wegingsfactor 50 en aldus 50% van het totale eindcijfer.

    Toelichting: For the first test (contributing for 75% to the total mark for the course), the student has to write an original essay in which a critical comparison is given of two object-oriented programming languages. The student will have to orally defend her/his essay.

Binnen de categorie WPO Praktijkopdracht dient men volgende opdrachten af te werken:

  • Implementation project met een wegingsfactor 50 en aldus 50% van het totale eindcijfer.

    Toelichting: The second test (contributing for 25% to the total mark for the course) consists of the implementation of a small object-oriented system in Smalltalk in which the student demonstrates to having fully grasped the concepts of object-oriented programming. This implementation has to be complemented with a short report in which the student explains the use of OO concepts in the system.

Aanvullende info mbt evaluatie

The exam consists of a theoretical and a practical part. The theoretical part consists of an oral exam about the topics discussed. The practical part consists of programming projects that validate the student’s ability in applying the concepts introduced during the lectures. Absence for one of the constituents implies absence for the entire course.

 
Toegestane onvoldoende
Kijk in het aanvullend OER van je faculteit na of een toegestane onvoldoende mogelijk is voor dit opleidingsonderdeel.

Academische context

Deze aanbieding maakt deel uit van de volgende studieplannen:
Master in Applied Sciences and Engineering: Computer Science: Artificial Intelligence (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Multimedia (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Software Languages and Software Engineering (enkel aangeboden in het Engels)
Master in Applied Sciences and Engineering: Computer Science: Data Management and Analytics (enkel aangeboden in het Engels)
Educatieve master in de wetenschappen en technologie: computerwetenschappen (120 ECTS, Etterbeek)