Course - Full-stack Web Development - IDG2100
IDG2100 - Full-stack Web Development
About
Examination arrangement
Examination arrangement: Oral exam
Grade: Letter grades
Evaluation | Weighting | Duration | Grade deviation | Examination aids |
---|---|---|---|---|
Oral exam | 100/100 | 1 days | A |
Course content
Nowadays, being a web developer implies learning the entire process of development from design to actual deployment, ranging from mastering the baseline concepts and cornerstone web technologies to developing a wide set of skills needed in a modern software development, all in all, to become competent and comfortable in all of the widely different environments.
This course covers the fundamentals of the baseline concepts and technologies that any student needs to know in order to become a full stack web developer. However, a full stack application may rely on a wide range of different technologies run on the client or server side (from programming languages to frameworks or data bases). Since JavaScript is the dominant programming language in web development, the scope of this subject will be limited to the JavaScript stack (end-to-end) and the whole course will explore at least one of the main stacks for development (MEAN, MERN or MEVN) as a baseline technology that will help students embrace modern web development.
Topics
- Architecture of modern vs traditional web applications
- Front-end vs back-end paradigms
- Full-stack development overview (stack of different technologies)
- API paradigms (Request Response APIs and Event-Driven APIs)
- API security: Authentication and Authorisation, OAuth, WebHooks, etc.
- Design APIs and best practices
- Front-end frameworks
- Back-end frameworks
- Modern stack for development (MEAN, MERN or MEVN)
- Developer tools: task runners, bundlers, etc.
Learning outcome
Knowledge
The student knows:
- different architectures for modern and traditional web applications
- JavaScript frameworks
- the pros and cons of rendering contents either on the server-side or on the client-side
- different API paradigms and when those can be used
- authentication and authorisation methods
- different technologies that can be used in a web project and the developing tools that can improve the working flow
Skill
The student can:
- design, implement and document APIs
- use a specific JavaScript stack (MEAN, MERN or MEVN) to build a full-stack application
- implement simple authentication techniques
- use package managers, module bundlers and other tools for developers
General Competence
The student:
- carry on the development of a full stack project,
- reflect on the architecture and the more suitable technologies for solving a certain problem
- learn new libraries or frameworks using official documentation
Learning methods and activities
- Lectures
- Laboratory work
- Exercises
- Forum discussions (Blackboard)
- Supervision
Compulsory activities
4 compulsory assignments (approved/not approved) spread throughout the semester.
Oral presentations may be required for certain compulsory assignments.
One of the compulsory assignments will be a hackathon or workshop, which may be scheduled to take place outside of regular office hours and during the weekend, subject to practical considerations.
All compulsory work requirements must be approved in order to present the final full-stack project.
Compulsory assignments
- Compulsory assignment 1
- Compulsory assignment 2
- Compulsory assignment 3
- Compulsory assignment 4
Further on evaluation
Oral exam: The groups receive a project brief that may be part of the last compulsory assignment. The group must implement a final full-stack project that solves the problem. The group must then present and defend the project orally. In the oral presentation, the students may also be asked to discuss specific parts of the code or even make some changes. The students will be given an individual letter grade based on their contribution and performance in the oral presentation. The full-stack project must be delivered before the oral presentation (information provided during the course).
In the case of a failing grade, the student or group will receive a similar project for a new oral exam during the following semester.
Specific conditions
Admission to a programme of study is required:
Web Development (BWU)
Recommended previous knowledge
- IDG1100 Web fundamentals
- IDG2004 Databases and data structures
- IDG2003 Back-end Web development
Required previous knowledge
The course is reserved for students in the Bachelor programme in Web development (BWU).
- IDG1292 Web coding
- IDG1011 Front-end Web development
Course materials
The syllabus will be announced at the start of the study.
No
Version: 1
Credits:
15.0 SP
Study level: Intermediate course, level II
Term no.: 1
Teaching semester: SPRING 2025
Language of instruction: English
Location: Gjøvik
- Design Methodology
Examination
Examination arrangement: Oral exam
- Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
- Spring ORD Oral exam 100/100 A
-
Room Building Number of candidates
- * The location (room) for a written examination is published 3 days before examination date. If more than one room is listed, you will find your room at Studentweb.
For more information regarding registration for examination and examination procedures, see "Innsida - Exams"