Frameworks and Architectures for the Web, MSc
This course aims to enable students to design and develop websites and interactive Web applications based on standard Web technologies and software frameworks.
The course provides students with theoretical understanding and practical skills to build websites and Web applications using modern Web frameworks and architectures. The main course topics include:
- Basic principles of user interface design and the website development process.
- Overview of Web application architectures and software frameworks.
- Development of client-side Web applications using React, a very popular Web UI framework.
- Design and development of server-side Web applications (Web services) based on REST architectural style (RESTful APIs) using Node.js and Express frameworks.
The course is based on the three main learning principles:
- Students' engagement - active participation of students in all activities.
- Learning by Doing - a lot of practice in addition to the solid theoretical background.
- Iterative/Incremental learning – a gradual introduction to complicated things.
Formal prerequisitesNone, although it is strongly recommended that students are familiar with, or have prior experience with the following:
- Any programming language, either through coursework or prior industry practice.
- A basic understanding of programming concepts, such as variables, debugging and basic procedural and object-oriented aspects of programming.
- A basic understanding of versioning control concepts and Git version control system.
Intended learning outcomes
After the course, the student should be able to:
- Explain basic Web standards, protocols and architectural styles used in distributed Web applications.
- Develop moderately complex dynamic client-side Web applications using modern Web frameworks.
- Design and develop server-side Web services based on REST architectural style (RESTful APIs).
activities consist of readings, lectures, exercises, and mini-projects.
Readings is an out-of-class activity (i.e., students do them on their own) consisting of reading a text or watching a video. There are two types of readings: ones that students should do before a lecture and those they should do after the lecture.
Lectures will include presentations about a particular subject as well as discussions about relevant issues/questions raised by the teacher.
Exercises are used to:
- Conduct and practice simple exercises so that students can familiarise and equip themselves with the foundational aspects of the course.
- Allow students to work on their major deliverables for the course, with the assistance and supervision of Tas.
Mini-projects are mandatory activities that are done in a group.
Mini-projects are the only mandatory activities. These are web development projects related to topics students learned in the classes and practiced in the exercises. Mini-projects are done in groups, typically consisting of 4 students, which will be formed at the beginning of the course.
There will be 3 assigned mini-projects and groups are obliged to submit them by a certain deadline. These 3 mini-projects correspond to 3 incremental iterations toward the final submission for the exam. On the two mini-projects students will be given feedback in order to improve/correct their work for the next iteration (mini-project). The third mini-project represent the required written submission for the final exam. In this way, while being supervised, students will gradually develop the required exam submission during the semester.
The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
The literature consists of lecture slides, provided readings and teaching materials from exercises.
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 20%
- Lectures: 15%
- Exercises: 20%
- Assignments: 25%
- Exam with preparation: 20%
Ordinary examExam type:
D: Submission of written work with following oral, External (7-point scale)
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Submission of portfolio based on 3 major deliverables that are to be delivered throughout the semester. Further information on deliverables may be found on LearnIT. The oral exam will be based on the presentation of portfolio.
- Group size: 4 persons
Individual exam : Individual student presentation followed by an individual dialogue. The student is examined while the rest of the group is outside the room.
Time and dateOrdinary Exam - submission Fri, 27 May 2022, 08:00 - 14:00
Ordinary Exam Mon, 20 Jun 2022, 09:00 - 20:55
Ordinary Exam Tue, 21 Jun 2022, 09:00 - 20:55
Ordinary Exam Wed, 22 Jun 2022, 09:00 - 20:55
Ordinary Exam Thu, 23 Jun 2022, 09:00 - 20:55
Ordinary Exam Fri, 24 Jun 2022, 09:00 - 20:55
Ordinary Exam Mon, 27 Jun 2022, 09:00 - 20:55
Reexam - submission Wed, 27 Jul 2022, 08:00 - 14:00
Reexam Mon, 22 Aug 2022, 09:00 - 20:55
Reexam Tue, 23 Aug 2022, 09:00 - 20:55