Back-End Development (5 cr)
Code: TT00CJ65-3003
General information
- Enrollment
-
01.12.2024 - 13.01.2025
Registration for the implementation has ended.
- Timing
-
13.01.2025 - 30.04.2025
Implementation has ended.
- Number of ECTS credits allocated
- 5 cr
- Local portion
- 5 cr
- Mode of delivery
- Contact learning
- Unit
- Engineering and Business
- Campus
- Kupittaa Campus
- Teaching languages
- Finnish
- Seats
- 15 - 40
- Degree programmes
- Degree Programme in Business Information Technology
- Degree Programme in Information and Communication Technology
- Teachers
- Tuomo Helo
- Groups
-
PTIETS23swisSoftware Development and Information Systems
-
PTIVIS23swisSoftware Development and Information Systems
- Course
- TT00CJ65
Realization has 25 reservations. Total duration of reservations is 39 h 0 min.
Time | Topic | Location |
---|---|---|
Fri 17.01.2025 time 10:00 - 12:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Fri 17.01.2025 time 12:00 - 13:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_B1039
IT telakka
|
Tue 21.01.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 21.01.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 28.01.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 28.01.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 04.02.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 04.02.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 11.02.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 25.02.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 25.02.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 04.03.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 04.03.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 11.03.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 11.03.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 18.03.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 18.03.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 25.03.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 25.03.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 01.04.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 01.04.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 08.04.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 08.04.2025 time 14:00 - 15:00 (1 h 0 min) |
Itsenäistä työskentelyä opettajan läsnäollessa, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Tue 15.04.2025 time 12:00 - 14:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Fri 25.04.2025 time 10:00 - 12:00 (2 h 0 min) |
Teoria ja käytäntö, Palvelinpuolen www-ohjelmointi TT00CJ65-3003 |
ICT_C2027
IT telakka
|
Evaluation scale
H-5
Content scheduling
The course builds on 15 supervised lessons, 7 personal exercises each having multiple tasks, and a teamwork.
*
The teamwork is done in groups of 3 to 4 students. The teamwork commission is published in the middle of the course.
*
The planned course content:
*
Course introduction and the creation of the development environment
Node.js
NPM
ES6 modules
Express Web Framework and the MVC
Routing and handling http requests
Views and Templates
Error handling
Controllers
Models
CRUD and Data persistence
User sessions and authentication
Login and logout
Authorization
*
Three lessons are used for demos.
*
The teamwork is evaluated in an 15 minutes long evaluation event where the group presents its application to the instructor. Each member must clarify his or her input to the result. The source code must be presented too.
Objective
After completing the course the student:
Knows the main alternatives technologies on the server-side in developing web applications.
Masters one server-side scripting language and can use some important libraries.
Understands the basics of web application architectures.
Can use a content management system or an application framework in implementing a web application.
Can use efficient tools in server-side scripting.
Content
Learning a server-side scripting language.
Introduction to web application architectures.
Integrating a database server to a web application.
Using a content management system or an application framework in implementing a web application.
Tools for server-side scripting.
Implementing a small scale web application.
Materials
The course books are
Get Programming with Node.js
Jon Wexler
Manning Publications
1st edition (March 15, 2019)
This book is unfortunately not available via TUAS (TuAMK) as ebook. There are few printed copies in out library.
The book is also already quite old, so that we need to modify some code and solutions during the course. However, the book is otherwise very good for being a course book.
Node.js for Beginners: A comprehensive guide to building efficient, full-featured web applications with Node.js
Ulises Gascón
Packt
May 2024
Node.js: Novice to Ninja
by Craig Buckler
2022
These 2 books are available in our eBook Central electronic library.
Other material will be announced during the course
Teaching methods
- reading the course books and other reading material
- participating in the lectures
- programming together with instructor
- programming alone
- participating in the teamwork
Exam schedules
No exam.
Completion alternatives
The student can complete the course by demonstrating his knowledge and skills of the subjects of the course, for example with the work samples they have made. However, this must be agreed with the instructor during the first 4 weeks of the course.
The student can include a corresponding course taken elsewhere at some educational institution that is acceptable by our educational institution. This happens via AHOT process. Also this matter should be initiated immediately at the beginning of the course.
Student workload
45 h contact lessons (Each 3h = 2h learning and 1h individual working with the presence of the instructor)
4 h presenting and following team works
40 h preparing teamwork
54 h doing personal exercises
Evaluation methods and criteria
The maximum number of points available from course is 120.
Of that maximum, 70 points comes from individual exercises, 30 points from teamwork, and 20 points from being present on the lectures.
The course evaluation scale is the following:
Min points -> Grade
0 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5
Please note this additional condition: You must get at least 20 points from the exercises and 10 points from the teamwork to pass the course.
The points from being present are calculated using the following scale:
Percentage of being present on the normal lectures -> points
20% -> 5
40% ->10
60%->15
80%->20
Please also note that by being present you can earn some of the points available from the individual exercises working together with the instructor.
You must be present in demonstration. It does not accumulate your points of being present. If you are not present in the demonstrations, then there is a reduction of 25 % of the points of your returned exercises on these demos. There is a reduction of 50 % for exercises that are returned late. No exercises are accepted after the end date of the course implementation. After the end date of the course, no substitute or supplementary assignments will be given either. The student must therefore make sure that he collects enough points from different performances during the time of the course.
Failed (0)
The student has not managed to accumulate enough points to pass the course during the time of the course. Consequently, they have not been able to demonstrate the kind of competence on the basis of which an acceptable grade could be given.
Assessment criteria, satisfactory (1-2)
The student knows the operating principles and application areas of the Node.js runtime environment
The student knows how configuration files can be utilized in the development and deployment of web applications
The student knows the key issues related to the development of Web applications
The student knows what a web application framework is
The student knows the basic principles of the MVC architecture model
The student knows some of the key program libraries needed for programming web applications
The student knows how to use development tools suitable for tasks
The student knows how to program a simple dynamic website using the web application framework
Assessment criteria, good (3-4)
The student knows the operating principles and application areas of the Node.js runtime environment
The student knows how configuration files can be utilized in the development and deployment of web applications
The student knows the key issues and questions related to the development of Web applications and knows how to implement related solutions
The student knows how to use the web application framework
The student masters the basic principles of the MVC architecture model and knows how to implement them in practice
The student can use software libraries that are needed for programming web applications
The student knows how to use tools suitable for tasks
The student knows how to program a dynamic website using the web application framework
The student can implement user authentication, sessions and permanent storage
The student is well prepared to participate in a project developing a web application.
Assessment criteria, excellent (5)
The student knows the operating principles and the application areas of the Node.js runtime environment and can evaluate its suitability for the task
The student knows how to use configuration files in the development and implementation of web applications
The student masters the key principles and questions related to the development of Web applications and knows how to implement and evaluate related solutions
The student knows how to use the web application framework effectively and evaluate its suitability for the task
The student masters the basic principles of the MVC architecture model and knows how to implement it in practice
The student can evaluate and effectively use the program libraries needed for programming web applications
The student knows how to effectively use the tools suitable for the tasks
The student knows how to program a dynamic website using the web application framework
The student knows how to design and program a dynamic website with user authentication, sessions and permanent storage
The student is excellently prepared to participate in a project developing a web application.