Image for
Home

Accessing data from program code

  • Class 30
  • Practice 30
  • Independent work 90
Total 150

Course title

Accessing data from program code

Lecture type

Obligatory

Course code

22-00-522

Semester

5

ECTS

5

Lecturers and associates

Course overview

This module introduces students to different ways of persisting data in SQL and NoSQL data storages from the application code.

This module is core to Software Engineering subspecialisation and provides important skills and knowledge for a wide number of programming modules that students will take in the following semesters. The skills acquired will contribute significantly to students’ development as professionals in the respective fields.

Students will learn:
• How to overcome the discrepancies between object-oriented programming languages and relational databases.
• How to manually persist and materialize data to and from data storage, using standard libraries in transactional manner.
• How to use ORM frameworks to automate the process of persistence and materialization, concentrating on the Convention over configuration principle.
• About the specifics of NoSQL data storages and how to use them.

The module is taught in C sharp and Java. The module assessment is based on individual student projects. In these projects, students must create an application that uses SQL and NoSQL data storages, to the given specifications.

Literature

Essential reading:
1. Gorman, B.R. (2020) Practical Entity Framework: Database Access for Enterprise Applications. New York City: Apress.
2. Mihalcea V. (2016) High-Performance Java Persistence. 1st edn. Independent publisher.
3. Dayley B. (2014) NoSQL with MongoDB in 24 Hours. 1st edn. Carmel: Sams Publishing.

Recommended reading:
1. Shaikh K.A. (2020) Azure for .NET Core Developers: Implementing Microsoft Azure Solutions Using .NET Core Framework. 1st edn. New Delhi: BPB Publications.

Further reading:
1. Konda M. (2014) Just Hibernate: A Lightweight Introduction to the Hibernate Framework. 1st edn. Sebastopol: O'Reilly Media.

Download student guide

Minimal learning outcomes

  • Create a software solution using a relational database on the cloud as a data source.
  • Create a software solution using solutions for storing unstructured data in the cloud as a data source.
  • Create a software solution using a non-relational cloud database as a data source.
  • Select the optimal conceptual data model and implement it.
  • Implement a software solution using selected ORM tools.

Preferred learning outcomes

  • Create a relational database in the cloud and create a software solution using that database as a data source.
  • Create an unstructured data storage in the cloud and create a software solution using that unstructured data storage as a data source.
  • Create a non-relational database in the cloud and create a software solution using that non-relational database as a data source.
  • Select the optimal complex conceptual data model and implement it.
  • Implement a complex software solution using selected ORM tools.
Share: Facebook Twitter