Data Modelling and Back-end DevelopmentLaajuus (5 cr)
Code: YTSP0200
Credits
5 op
Teaching language
- English
Responsible person
- Jouni Huotari
- Pasi Manninen
Objective
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.
Content
- Advanced data modelling (conceptual and logical data model)
- Back-end architecture
- Back-end frameworks
- Server-side programming languages
- Scalability
- Application programming interfaces and integration
- Security settings and hack prevents
Qualifications
Basics of databases
Basics of JavaScript programming
Assessment criteria, satisfactory (1)
The assessment is based on 1) Data modelling assignment (20%) and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling: you can design a conceptual and logical data model (comprising approximately five entities/tables) by applying standard data modelling and design techniques based upon an understanding of requirements (the models may contain some errors, omissions, and/or inconsistencies)
2) Back-end development
- complexity: only a simple back-end solution is presented
- knowledge base and the structure of the implementation: only knowledge base is presented
- choice of framework and libraries: only the core framework is used
- realisation of the project contains errors, omissions, and/or inconsistencies
- results and their analysis are vague or missing
- reporting and presentation: incomplete (no presentation)
Assessment criteria, good (3)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least five entities (tables)
- the models are clear, contain metadata, but may contain minor errors, omissions, and/or inconsistencies
2) Back-end development
- complexity: back-end solution contains several endpoints
- choice of framework and libraries: more than one framework or software library is used
- knowledge base and the structure of the implementation shows more than just basic knowledge
- realisation of project work is nearly error-free
- results are reported shortly and their analysis is missing or incomplete
- reporting and presentation may be short and/or quick
Assessment criteria, excellent (5)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least 5 entities (tables)
- the models are detailed, clear, complete, error-free, and contain metadata
2) Back-end development
- complexity: back-end solution contains several endpoints
- well-argumented choice of framework(s) and libraries
- knowledge base and the structure of the implementation is clear
- realisation of the project work: complete, error-free, consistent
- results and their analysis: in-depth and thorough
- reporting and presentation are excellent
Assessment criteria, approved/failed
Pass: you demonstrate skills and knowledge of designing and implementing a back-end solution containing a database, server-side software, and related application programming interface. The results are evaluated during a code and data model review.
Enrollment
18.11.2024 - 09.01.2025
Timing
10.01.2025 - 30.04.2025
Number of ECTS credits allocated
5 op
Virtual portion
4 op
Mode of delivery
20 % Face-to-face, 80 % Online learning
Unit
School of Technology
Teaching languages
- English
Seats
0 - 35
Degree programmes
- Master's Degree Programme in Information Technology, Full Stack Software Development
Teachers
- Jouni Huotari
- Pasi Manninen
Teacher in charge
Jouni Huotari
Groups
-
YTS24S1Master of Engineering, Degree Programme in Information Technology, Full Stack Software Development
-
YTS24S1AVOMaster of Engineering, Degree Programme in Information Technology, Full Stack Software Development
Objectives
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.
Content
- Advanced data modelling (conceptual and logical data model)
- Back-end architecture
- Back-end frameworks
- Server-side programming languages
- Scalability
- Application programming interfaces and integration
- Security settings and hack prevents
Time and location
From January 10, 2025, reserve Friday afternoons (at 2:30 PM) in Teams. The first lecture is held at the Dynamo building as well. For the first lecture, attendance is required.
Learning materials and recommended literature
There is no learning material (books, articles, videos, etc.) that are required for passing the course. Course material is located in the GitLab / LabraNet service. For data modelling, we recommend Data Modeling Made Simple (2nd Edition): A Practical Guide for Business and IT Professionals by Steve Hoberman.
Teaching methods
Project-based learning and online pedagogy: lectures/online lectures, exercises/learning assignments, various methods of online pedagogy (reverse classroom)
Practical training and working life connections
Possible visiting experts from the industry.
International connections
Students are both from Finland and abroad. Sharing expertise is encouraged.
Alternative completion methods
RPL is in use: the student can show an existing solution made by themself.
Student workload
One ECTS ~ 27 hours of work. Lectures: 23 h, exercises and assignments: 110 h, data model and code review: 1 + 1 h. Total: 135 h.
Content scheduling
The course is held every spring.
Further information for students
The assessment is based on code and data model review.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
The assessment is based on 1) Data modelling assignment (20%) and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling: you can design a conceptual and logical data model (comprising approximately five entities/tables) by applying standard data modelling and design techniques based upon an understanding of requirements (the models may contain some errors, omissions, and/or inconsistencies)
2) Back-end development
- complexity: only a simple back-end solution is presented
- knowledge base and the structure of the implementation: only knowledge base is presented
- choice of framework and libraries: only the core framework is used
- realisation of the project contains errors, omissions, and/or inconsistencies
- results and their analysis are vague or missing
- reporting and presentation: incomplete (no presentation)
Evaluation criteria, good (3-4)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least five entities (tables)
- the models are clear, contain metadata, but may contain minor errors, omissions, and/or inconsistencies
2) Back-end development
- complexity: back-end solution contains several endpoints
- choice of framework and libraries: more than one framework or software library is used
- knowledge base and the structure of the implementation shows more than just basic knowledge
- realisation of project work is nearly error-free
- results are reported shortly and their analysis is missing or incomplete
- reporting and presentation may be short and/or quick
Evaluation criteria, excellent (5)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least 5 entities (tables)
- the models are detailed, clear, complete, error-free, and contain metadata
2) Back-end development
- complexity: back-end solution contains several endpoints
- well-argumented choice of framework(s) and libraries
- knowledge base and the structure of the implementation is clear
- realisation of the project work: complete, error-free, consistent
- results and their analysis: in-depth and thorough
- reporting and presentation are excellent
Evaluation criteria, pass/failed
Pass: you demonstrate skills and knowledge of designing and implementing a back-end solution containing a database, server-side software, and related application programming interface. The results are evaluated during a code and data model review.
Prerequisites
Basics of databases
Basics of JavaScript programming
Enrollment
20.11.2023 - 04.01.2024
Timing
08.01.2024 - 30.04.2024
Number of ECTS credits allocated
5 op
Virtual portion
5 op
RDI portion
3 op
Mode of delivery
Online learning
Unit
School of Technology
Teaching languages
- English
Seats
20 - 35
Degree programmes
- Master's Degree Programme in Information Technology, Full Stack Software Development
Teachers
- Jouni Huotari
- Pasi Manninen
Groups
-
YTS23S1Master of Engineering, Degree Programme in Information Technology, Full Stack Software Development
Objectives
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.
Content
- Advanced data modelling (conceptual and logical data model)
- Back-end architecture
- Back-end frameworks
- Server-side programming languages
- Scalability
- Application programming interfaces and integration
- Security settings and hack prevents
Learning materials and recommended literature
There is no public learning material (books, articles, videos, etc.) that are required for passing the course (‘must know’). Course material is located in the GitLab / LabraNet service.
Teaching methods
Project-based learning and online pedagogy: lectures/online lectures, exercises/learning assignments, various methods of online pedagogy (flipped learning)
Alternative completion methods
RPL is in use: the student can show an existing solution made by him- or herself.
Student workload
One ECTS ~ 27 hours of work. Lectures: 23 h, exercises and assignments: 110 h, data model and code review: 1 + 1 h. Total: 135 h.
Content scheduling
The course is held during every spring.
Further information for students
The assessment is based on the code and data model review.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
The assessment is based on 1) Data modelling assignment (20%) and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling: you can design a conceptual and logical data model (comprising approximately five entities/tables) by applying standard data modelling and design techniques based upon an understanding of requirements (the models may contain some errors, omissions, and/or inconsistencies)
2) Back-end development
- complexity: only a simple back-end solution is presented
- knowledge base and the structure of the implementation: only knowledge base is presented
- choice of framework and libraries: only the core framework is used
- realisation of the project contains errors, omissions, and/or inconsistencies
- results and their analysis are vague or missing
- reporting and presentation: incomplete (no presentation)
Evaluation criteria, good (3-4)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least five entities (tables)
- the models are clear, contain metadata, but may contain minor errors, omissions, and/or inconsistencies
2) Back-end development
- complexity: back-end solution contains several endpoints
- choice of framework and libraries: more than one framework or software library is used
- knowledge base and the structure of the implementation shows more than just basic knowledge
- realisation of project work is nearly error-free
- results are reported shortly and their analysis is missing or incomplete
- reporting and presentation may be short and/or quick
Evaluation criteria, excellent (5)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least 5 entities (tables)
- the models are detailed, clear, complete, error-free, and contain metadata
2) Back-end development
- complexity: back-end solution contains several endpoints
- well-argumented choice of framework(s) and libraries
- knowledge base and the structure of the implementation is clear
- realisation of the project work: complete, error-free, consistent
- results and their analysis: in-depth and thorough
- reporting and presentation are excellent
Evaluation criteria, pass/failed
Pass: you demonstrate skills and knowledge of designing and implementing a back-end solution containing a database, server-side software, and related application programming interface. The results are evaluated during a code and data model review.
Prerequisites
Basics of databases
Basics of JavaScript programming
Enrollment
01.11.2022 - 05.01.2023
Timing
09.01.2023 - 28.04.2023
Number of ECTS credits allocated
5 op
Virtual portion
4 op
Mode of delivery
20 % Face-to-face, 80 % Online learning
Unit
School of Technology
Campus
Lutakko Campus
Teaching languages
- English
- Finnish
Seats
0 - 35
Degree programmes
- Master's Degree Programme in Information Technology, Full Stack Software Development
Teachers
- Jouni Huotari
- Pasi Manninen
Groups
-
ZJAYTS22S1Avoin amk, Full Stack Software Development , Monimuoto
-
YTS22S1Master of Engineering, Degree Programme in Information Technology, Full Stack Software Development
Objectives
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.
Content
- Advanced data modelling (conceptual and logical data model)
- Back-end architecture
- Back-end frameworks
- Server-side programming languages
- Scalability
- Application programming interfaces and integration
- Security settings and hack prevents
Learning materials and recommended literature
There is no public learning material (books, articles, videos, etc.) that are required for passing the course (‘must know’).
Course material in located in the GitLab / LabraNet service.
Teaching methods
Project-based learning and online pedagogy: lectures/online lectures, exercises/learning assignments, various methods of online pedagogy (flipped learning)
Alternative completion methods
RPL is in use: the student can show an existing solution made by him- or herself.
Student workload
One ECTS ~ 27 hours of work. Lectures: 23 h, exercises and assignments: 110 h, data model and code review: 1 + 1 h. Total: 135 h.
Content scheduling
The course is held during every spring.
Further information for students
The assessment is based on the code and data model review.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
The assessment is based on 1) Data modelling assignment (20%) and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling: you can design a conceptual and logical data model (comprising approximately five entities/tables) by applying standard data modelling and design techniques based upon an understanding of requirements (the models may contain some errors, omissions, and/or inconsistencies)
2) Back-end development
- complexity: only a simple back-end solution is presented
- knowledge base and the structure of the implementation: only knowledge base is presented
- choice of framework and libraries: only the core framework is used
- realisation of the project contains errors, omissions, and/or inconsistencies
- results and their analysis are vague or missing
- reporting and presentation: incomplete (no presentation)
Evaluation criteria, good (3-4)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least five entities (tables)
- the models are clear, contain metadata, but may contain minor errors, omissions, and/or inconsistencies
2) Back-end development
- complexity: back-end solution contains several endpoints
- choice of framework and libraries: more than one framework or software library is used
- knowledge base and the structure of the implementation shows more than just basic knowledge
- realisation of project work is nearly error-free
- results are reported shortly and their analysis is missing or incomplete
- reporting and presentation may be short and/or quick
Evaluation criteria, excellent (5)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least 5 entities (tables)
- the models are detailed, clear, complete, error-free, and contain metadata
2) Back-end development
- complexity: back-end solution contains several endpoints
- well-argumented choice of framework(s) and libraries
- knowledge base and the structure of the implementation is clear
- realisation of the project work: complete, error-free, consistent
- results and their analysis: in-depth and thorough
- reporting and presentation are excellent
Evaluation criteria, pass/failed
Pass: you demonstrate skills and knowledge of designing and implementing a back-end solution containing a database, server-side software, and related application programming interface. The results are evaluated during a code and data model review.
Prerequisites
Basics of databases
Basics of JavaScript programming
Enrollment
01.11.2021 - 09.01.2022
Timing
10.01.2022 - 31.05.2022
Number of ECTS credits allocated
5 op
Virtual portion
4 op
RDI portion
1 op
Mode of delivery
20 % Face-to-face, 80 % Online learning
Unit
School of Technology
Campus
Lutakko Campus
Teaching languages
- English
Seats
0 - 35
Degree programmes
- Master's Degree Programme in Information Technology, Full Stack Software Development
Teachers
- Jouni Huotari
- Pasi Manninen
Teacher in charge
Jouni Huotari
Groups
-
YTS21K1Master's Degree Programme in Information Technology, Full Stack Software Development
Objectives
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.
Content
- Advanced data modelling (conceptual and logical data model)
- Back-end architecture
- Back-end frameworks
- Server-side programming languages
- Scalability
- Application programming interfaces and integration
- Security settings and hack prevents
Learning materials and recommended literature
There is no public learning material (books, articles, videos, etc.) that are required for passing the course (‘must know’). The lectures are recorded beforehand and all the material resides in https://ytsp0200.pages.labranet.jamk.fi/.
Teaching methods
Project-based learning and online pedagogy: lectures/online lectures, exercises/learning assignments, various methods of online pedagogy (flipped learning)
Alternative completion methods
There are mandatory assignments in two topics: 1) Data modelling, and 2) Back-end development. If you already have the required skills, you can ask the teachers to participate 1) a model review and/or 2) back-end code review.
Student workload
One ECTS ~ 27 hours of work. Lectures: 24 h, exercises and assignments: 110 h, code review: 1 h. Total: 135 h.
Further information for students
This course is aimed for the students participating the second year of the Full Stack Software Development programme.
Evaluation scale
0-5
Evaluation criteria, satisfactory (1-2)
The assessment is based on 1) Data modelling assignment (20%) and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling: you can design a conceptual and logical data model (comprising approximately five entities/tables) by applying standard data modelling and design techniques based upon an understanding of requirements (the models may contain some errors, omissions, and/or inconsistencies)
2) Back-end development
- complexity: only a simple back-end solution is presented
- knowledge base and the structure of the implementation: only knowledge base is presented
- choice of framework and libraries: only the core framework is used
- realisation of the project contains errors, omissions, and/or inconsistencies
- results and their analysis are vague or missing
- reporting and presentation: incomplete (no presentation)
Evaluation criteria, good (3-4)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least five entities (tables)
- the models are clear, contain metadata, but may contain minor errors, omissions, and/or inconsistencies
2) Back-end development
- complexity: back-end solution contains several endpoints
- choice of framework and libraries: more than one framework or software library is used
- knowledge base and the structure of the implementation shows more than just basic knowledge
- realisation of project work is nearly error-free
- results are reported shortly and their analysis is missing or incomplete
- reporting and presentation may be short and/or quick
Evaluation criteria, excellent (5)
The assessment is based on 1) Data modelling assignment (20%), and 2) Back-end assignment (80%). The assessment focuses on the following:
1) Data modelling:
- you can design a conceptual and logical data model comprising of at least 5 entities (tables)
- the models are detailed, clear, complete, error-free, and contain metadata
2) Back-end development
- complexity: back-end solution contains several endpoints
- well-argumented choice of framework(s) and libraries
- knowledge base and the structure of the implementation is clear
- realisation of the project work: complete, error-free, consistent
- results and their analysis: in-depth and thorough
- reporting and presentation are excellent
Evaluation criteria, pass/failed
Pass: you demonstrate skills and knowledge of designing and implementing a back-end solution containing a database, server-side software, and related application programming interface. The results are evaluated during a code and data model review.
Prerequisites
Basics of databases
Basics of JavaScript programming