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
-
PTIETS22sepmPTIETS22 Software Engineering and Project Management
-
PTIVIS22OSoftware 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 for the project work.
Assessment criteria, good (3-4)
The student got 60-84% of the points for the exercises in the course AND got a grade of 1.5 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 2 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
-
PTIVIS21OSoftware Engineering and Project Management
-
ICT_MOD_UPV_23ICT_MOD_UPV_23
-
PTIETS21sepmPTIETS21 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
-
PTIVIS20OSoftware engineering and Project Management
-
PTIETS20sepmPTIETS20 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)