Skip to main content

Back-End DevelopmentLaajuus (5 cr)

Code: TE00BR86

Credits

5 op

Objective

After completing the course the student can:
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.06.2024 - 06.09.2024

Timing

02.09.2024 - 15.12.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages
  • English
Degree programmes
  • Degree Programme in Information and Communication Technology
  • Degree Programme in Business Information Technology
  • Degree Programme in Information and Communications Technology
Teachers
  • Golnaz Sahebi
Scheduling groups
  • Pienryhmä 1 (Size: 35. Open UAS: 0.)
  • Pienryhmä 2 (Size: 35. Open UAS: 0.)
Groups
  • PTIETS22sepm
    PTIETS22 Software Engineering and Project Management
  • PTIVIS22O
    Software Engineering and Project Management
Small groups
  • Subgroup 1
  • Subgroup 2

Objective

After completing the course the student can:
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 less than 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
- Teamwork project

International connections

The course includes approximately 12 theory sessions and practice sessions where students work with practical tasks.

Additionally, there are 5 x 1h online Q&A sessions for extra support.

Furthermore, exercises for home work that will be partly demonstrated in during contact sessions.

A teamwork project will be introduced in the second month, requiring students to apply their teamwork skills and knowledge gained from the course to implement their final project

We may also utilize a flipped-classroom model for some lectures, where students will study the theoretical part at home and engage in practical implementation and discussions during class.

Student workload

- 12 times 3h theory and practice: 12 x 3h = 36h
- 5 times 1h online Q&A sessions = 5h
- Home and independent work: approximately 70h
- Teamwork final project: approximately 24h

Total: approximately 135 hours

Content scheduling

The course includes approximately 12 supervised work and theory sessions.
Additionally, 10 personal exercises for homework that will be partly demonstrate in during contact session.
Furthermore, the course has a teamwork project that must be done in a group of 4 students.

* Exercise work is done individually outside the instructional sessions. The topic of the assignment is specified during the first month of the course.

* Planned course progress: (preplan)
Content and topic of lectures. We proceed according to the some chapters in the coursebook.
Note: students will also have some independent study or self-study tasks from the book chapters.

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 lectures will be used for demo and other as yet undefined purposes.

* Each group must set aside 15 minutes for the last week of the course to demonstrate the assignment. Individual teamwork must also be able to demonstrate on this occasion.

* The study plan may change as the course progresses.

Further information

** Prerequisites for Back- End Development Course:
1- JavaScript: Basic Syntax and Control Structures, Functions and Scope, Asynchronous Programming

2- Databases

** Recommendations (Optional but Beneficial):
1- Basic Understanding of RESTful APIs: Knowledge of HTTP methods (GET, POST, PUT, DELETE) and status codes.

2- Experience with JSON: Understanding of JSON format for data interchange.

3- Basic Knowledge of Git: Familiarity with version control using Git.

Evaluation scale

H-5

Assessment methods and criteria

- The course is graded on a scale of 0-5.
*
- In order to pass the course, the student must earn at least 50% of the points of personal assignments and 50% of the points of Teamwork project.
*
- 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, which affect the evaluation by 3 units.
- Participation in group work: 0.0 - 2.0 units.
*
-Students can earn one extra unit (ECTS) if they participate on at least 9 sessions (2-3h per each session) of the course.
Note: Grades will be rounded down if they include decimals less than 0.5; otherwise, they will be rounded up. (e.g., 3.4 is rounded down to 3.0, but 3.5 or higher is rounded up to 4.0)

Assessment criteria, fail (0)

The student does NOT get at least 50% of the points in project OR did not get at least 50% of the points in the course exercises.

Assessment criteria, satisfactory (1-2)

The student got 40-59% of the points for the exercises in the course AND got a grade of 1 - 3 for the project work.

Assessment criteria, good (3-4)

The student got 40-59% of the points for the exercises in the course AND got a grade of 1 - 3 for the project work.

Assessment criteria, excellent (5)

The student got at least 85% of the points for the exercises in the course AND got a grade 5 for the project work.

Enrollment

26.07.2023 - 14.09.2023

Timing

04.09.2023 - 08.12.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages
  • English
Seats

40 - 70

Degree programmes
  • Degree Programme in Information and Communications Technology
Teachers
  • Golnaz Sahebi
Scheduling groups
  • Pienryhmä 1 (Size: 35. Open UAS: 0.)
  • Pienryhmä 2 (Size: 35. Open UAS: 0.)
Groups
  • PTIVIS21O
    Software Engineering and Project Management
  • ICT_MOD_UPV_23
    ICT_MOD_UPV_23
  • PTIETS21sepm
    PTIETS21 Software engineering and Project Management
Small groups
  • Subgroup 1
  • Subgroup 2

Objective

After completing the course the student can:
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 less than 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
- Teamwork project

Student workload

- 12 times 3h theory and practice: 12 x 3h = 36h
- Home and independent work: approximately 70h
- Teamwork final project: approximately 24h

Total: approximately 130 hours

Content scheduling

The course includes approximately 12 supervised work and theory sessions.
Additionally, 10 personal exercises for homework that will be partly demonstrate in during contact session.
Furthermore, the course has a teamwork project that must be done in a group of 4 students.

* Exercise work is done individually outside the instructional sessions. The topic of the assignment is specified during the first month of the course.

* Planned course progress:
Content and topic of lectures. We proceed according to the some chapters in the coursebook.
Note: students will also have some independent study or self-study tasks from the book chapters.

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 lectures will be used for demo and other as yet undefined purposes.

* Each group must set aside 15 minutes for the last week of the course to demonstrate the assignment. Individual teamwork must also be able to demonstrate on this occasion.

* 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.
- In both cases, 0.5 is the first accepted grade.
*
- 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.
*
-Students can earn one extra ECTS if they participate on at least 9 sessions (3h per each session) of the course.
- Note: Grades will be rounded down if they include decimals.

Enrollment

30.07.2022 - 16.01.2023

Timing

03.11.2022 - 30.03.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages
  • English
Degree programmes
  • Degree Programme in Information and Communication Technology
  • Degree Programme in Information and Communications Technology
Teachers
  • Golnaz Sahebi
Teacher in charge

Golnaz Sahebi

Scheduling groups
  • Ryhmä 1 (Size: 40. Open UAS: 0.)
  • Ryhmä 2 (Size: 40. Open UAS: 0.)
Groups
  • PTIVIS20O
    Software engineering and Project Management
  • PTIETS20sepm
    PTIETS20 Software engineering and Project Management
Small groups
  • Group 1
  • Group 2

Objective

After completing the course the student can:
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 less than 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
Teamwork project

Content scheduling

The course includes 13-15 supervised work and theory sessions, 10 personal assignments, and a teamwork assignment. No exam.

* Exercise work is done individually outside the instructional sessions. The topic of the assignment is specified during the first month of the course.

* Planned course progress:
Content and topic of lectures. We proceed according to the chapters in the coursebook.
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 or three lectures will be used for demo and other as yet undefined purposes.

* Each group must set aside 15 minutes for the last week of the course to demonstrate the assignment. Individual teamwork must also be able to demonstrate on this occasion.

* 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)