Skip to main content

Full Stack Web Development (10 cr)

Code: 5G00DM05-3005

General information


Enrolment period

15.07.2023 - 04.09.2023

Timing

28.08.2023 - 22.12.2023

Credits

10 op

Virtual portion

6 op

Mode of delivery

40 % Contact teaching, 60 % Online learning

Unit

ICT Engineering

Campus

TAMK Main Campus

Teaching languages

  • English

Degree programmes

  • Bachelor's Degree Programme in Software Engineering

Teachers

  • Jari Aalto
  • Esa Parkkila
  • Teemu Heinimäki

Person in charge

Teemu Heinimäki

Groups

  • 21I260EB

Objectives (course unit)

The student understands the concepts used in a full-stack web application. The student is able to develop both frontend and backend of the web application. The student can create authentication for a full-stack web application.

Content (course unit)

Responsive UI with HTML and CSS technologies. Frontend Web development with Javascript frameworks eg. React and Angular. Backend development with popular technologies eg. Node, Java. Using backend data repository. Implementation of authentication with e.g. JWT.

Prerequisites (course unit)

Programming languages 1-3, Basics of Web Development, Web Software Production

Assessment criteria, satisfactory (1-2) (course unit)

Student can implement an UI with HTML and CSS technologies. Student is able implement a simple frontend by using web development techniques with Javascript framework eg. React or Angular. Student is able to implement a simple backend with some popular technology eg. Node or Java. Student can use the backend as a simple data source for the application. Student knows about authentication possibilities for the application with e.g. JWT.

Assessment criteria, good (3-4) (course unit)

Student can implement a responsive UI with HTML and CSS technologies. Student is able to exploit frontend web development techniques with Javascript framework eg. React or Angular. Student is able to implement a backend with some popular technology eg. Node or Java. Student can use the backend as the data source for the application. Student is able to implement authentication for the application with e.g. JWT.

Assessment criteria, excellent (5) (course unit)

Student can implement versatile responsive UI with HTML and CSS technologies. Student is able to exploit various frontend web development techniques with Javascript framework eg. React or Angular. Student is able to implement a versatile backend with some popular technology eg. Node or Java. Student can use diversely the backend as the data source for the application. Student is able to implement a full authentication for the application with e.g. JWT.

Location and time

See timetable of semester (Moodle) and http://lukkarit.tamk.fi
Frontend part: both lectures and remote.
Backend part: both lectures and remote.

Exam schedules

No course exams. The evaluation based on the returned exercises, projects.

Assessment methods and criteria

FRONTEND PART 1: The assessment is based on the final overall number of points one can gather from a programming assignment, tests, homework exercises, and presentations and other lecture activities that are submitted or performed in time as instructed. Grading criteria: below 50%: 0, 50%–: 1, 60%–: 2, 70%–: 3, 80%–: 4, 90%–: 5. The programming assignment is mandatory – passing it is required in order to have a chance to pass the frontend part of the course. Also, participating in peer assessment as instructed may be required.

VERSION CONTROL PART 2: The grade 1-5 is evaluated by deadline: homeworks.

BACKEND PART 3: The grade, on a scale of 1-5, is evaluated based on the deadline. Homeworks: 30% (required), 60% (+1), 90% (+3). Project: Part 1 (required), Part 2 (+1), Part 3 (+2). The grade is automatically 1 if submitted after the deadline. To pass for grade 1, the following criteria must be met: Homeworks: 30% and Project Part 1.
Use of version control is mandatory. All files must be submitted through a GitHub repository (instructions provided in class). For homeworks, all commits must span a minimum of a 4-week period, and project files must have at least 40 commits.

WHOLE COURSE: All course parts must be passed. The final grade is the weighted average of the grades of individual parts of the course.

Assessment scale

0-5

Teaching methods

Lectures, exercises, self-study
problem-based learning
possibly working in groups

Teaching is supported by course activities such as homeworks, practical works / course assignments, tests, peer assessment, and presentations.

N.B. Exercise submissions and such may be subjected to peer assessment.

Learning materials

Internet material about course topics such as React, Angular, Git Version Control, Databases, and NodeJS

Student workload

See timetable of semester
Planned student workload approximately 270 hours, distributed evenly over the first and second periods

Completion alternatives

Contact teacher for arrangements.

Practical training and working life cooperation

Possible guest lectures.

Further information

Deadlines for grades 1–5:
2023-11-05 week 44, deadline, Frontend( Part 1)
2023-12-11 week 50, deadline, Backend (Part 2)
2024-01-14 week 2, deadline, Backend (Part 3)

Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)

FRONTEND PART: insufficient number of points gathered during the frontend part of the course, failure to submit the programming assignment in time or assess peer work as instructed, or programming assignment not fulfilling the minimum requirements.
VERSION CONTROL PART: Insufficient number or missing homework returns or assignments.
BACKEND PART: Insufficient number or missing homework returns or assignments.

Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)

See evaluation criteria.

Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)

See evaluation criteria.

Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)

See evaluation criteria.