Skip to main content

Data Modelling and Back-end Development (5 cr)

Code: YTSP0200-3004

General information


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

  • YTS23S1
    Master 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