Back-End DevelopmentLaajuus (5 cr)
Code: TT00CJ65
Credits
5 op
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.
Enrollment
01.12.2024 - 13.01.2025
Timing
13.01.2025 - 30.04.2025
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- Finnish
Seats
15 - 40
Degree programmes
- Degree Programme in Information and Communication Technology
- Degree Programme in Business Information Technology
Teachers
- Tuomo Helo
Groups
-
PTIVIS23WSoftware Development and Information Systems
-
PTIETS23swisSoftware Development and Information Systems
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
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
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.
Evaluation scale
H-5
Assessment 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 also a reduction of 25 % 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.
Assessment criteria, fail (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.
Enrollment
29.11.2023 - 18.01.2024
Timing
08.01.2024 - 30.04.2024
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- Finnish
Degree programmes
- Degree Programme in Business Information Technology
Teachers
- Tuomo Helo
Teacher in charge
Tuomo Helo
Groups
-
PTIETS22swisPTIETS22 Software Development and Information Systems
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.
Evaluation scale
H-5
Enrollment
30.11.2022 - 19.01.2023
Timing
10.01.2023 - 28.04.2023
Number of ECTS credits allocated
5 op
Mode of delivery
Contact teaching
Unit
Engineering and Business
Campus
Kupittaa Campus
Teaching languages
- Finnish
Seats
20 - 35
Degree programmes
- Degree Programme in Business Information Technology
Teachers
- Golnaz Sahebi
Groups
-
PTIETS21swisPTIETS21 Software Development and Information Systems
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
* Coursebook:
Get Programming with Node.js
Jon Wexler
Manning Publications
1 edition (March 15, 2019)
* The book is 480 pages, but the reading area of the course is about 300 pages.
* Unfortunately, the book is not available in electronic form through the library of our educational institution.
Teaching methods
Programming By doing learning
Interaction with teacher and classmates
Reading the book
Teamwork project
Content scheduling
The course includes 14 to 15 supervised work and theory sessions, 10 personal assignments, and a teamwork. No exam.
* Teamwork is done in groups of 3-4 people outside the instructional sessions.
* Planned course progress: We proceed according to the chapters in the course book.
1: Chapters 0-2 of the Course Start Theory and Development Environment Creation Book
2: Modules and a simple web server - chapters 3-4 of the book
3. Chapters 5 and 6 of the Request Processing and Routing Book
4: Chapters 8 and 9 of the Express and MVC book
5: Outlook and Error Handling - Chapters 10 and 11
6: MongoDB Database Connection and Mongoose Schemas and Templates - Chapters 13 and 14 of the book
7: Controllers and Models - Chapter 16 of the book
8: Working with Data Models - Chapters 17 and 18 of the book
9: Working with Data Models - Chapters 19 and 21
10: Sessions and User Authentication - Book Chapters 22-24
* Two additional will be used for teamwork presentations.
* The study plan may change as the course progresses.
Evaluation scale
H-5
Assessment methods and criteria
The course is graded on a scale of 0-5.
*
In order to receive an approved performance, the student must receive an acceptable mark for both 1) personal practice tasks and 2) group work.
*
You can get a maximum of 10 points for each practice task. You can therefore get a maximum of 100 points for all practice tasks.
Personal practice tasks: 20 points -> grade 0.5; 30 -> 1; 45 -> 1.5; 60 -> 2; 75 - 2.5; 90 -> 3.
Participation in group work: 0.0 - 2.0.
*
(In both cases, 0.5 is the first accepted grade)
in