Skip to main content

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
  • PTIVIS23W
    Software Development and Information Systems
  • PTIETS23swis
    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

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
  • PTIETS22swis
    PTIETS22 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
  • PTIETS21swis
    PTIETS21 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