Data Modelling and Back-end Development (5cr)
Code: YTSP0200-3004
General information
- Enrollment
 - 20.11.2023 - 04.01.2024
 - Registration for the implementation has ended.
 
- Timing
 - 08.01.2024 - 30.04.2024
 - Implementation has ended.
 
- Number of ECTS credits allocated
 - 5 cr
 
- Local portion
 - 0 cr
 
- Virtual portion
 - 5 cr
 
- RDI portion
 - 3 cr
 
- Mode of delivery
 - Distance 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
 
- Course
 - YTSP0200
 
Materials
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.
                    
Evaluation scale
0-5
                    
Completion alternatives
RPL is in use: the student can show an existing solution made by him- or herself.
                    
Further information
The assessment is based on the code and data model review.
                    
Virtual portion
5
                    
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.
                    
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
                    
RDI portion
3
                    
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.
                    
Content scheduling
The course is held during every spring.
                    
Teaching language
en
                    
Teaching methods
Project-based learning and online pedagogy: lectures/online lectures, exercises/learning assignments, various methods of online pedagogy (flipped learning)
                    
Number of ECTS credits allocated
5
                    
Qualifications
Basics of databases
Basics of JavaScript programming
                    
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
                    
Objective
You are able to design, document, and implement a database, server-side software, and related application programming interface for a scalable application.