Course detail

Security of Database Systems

FEKT-BPC-BDSAcad. year: 2022/2023

The course covers topics related to database systems and their security. It covers the design and implementation of database systems, with respect to the efficiency of processing large volumes of data, virtualization, security principles , security settings, and the mitigation possibilities against common security attacks.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

The student will acquire the necessary theoretical and practical skills in the design and implementation of database systems including their security. The student will learn basic principles of design and implementation of database systems, to implement this practically with regard to the security of such a system.

After course completion, the students will be able to:
- explain and practically implement the design of a database application,
- practically realize the implementation of a database system,
- process data in a database using a programming language,
- select the appropriate type of database for different types of applications,
- explain and practically implement transactional data processing,
- optimize database queries to reduce the load on database systems,
- configure the database with respect to its security,
- deploy a database in a virtualized environment,

Prerequisites

The course is designed as an introduction to database systems and their security. Knowledge acquired during secondary school studies, especially mathematics, and Java programming (course: BPC-PC2T) are required.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Methods of educations are described in the article 7 of the BUT’s Study and Examination Regulation. Teaching methods include lectures, laboratories and student projects. Course is taking advantage of e-learning (Moodle) system.

Assesment methods and criteria linked to learning outcomes

A maximum of 100 points can be obtained, of which 30 points for completing individual projects and 70 for the final written exam. The minimum requirements for particular parts is determined by the annually updated decree of the subject guarantor.

Course curriculum

Lectures:
1. Introduction to database systems, basic concepts.
2. Entity-relational model, database design basics.
3. Intermediate database design, normal forms.
4. Relational algebra, SQL query language basics.
5. Intermediate SQL.
6. Advanced SQL, views, materialized views, procedures, and indeces.
7. Security of database systems.
8. Data processing through programming language.
9. Transactions and their processing, recovery.
10. Virtualization and Clouds.
11. NoSQL databases, logging architectures.
12. Database security, review.

Seminars:
1. Introductory exercise.
2. Design of basic database schemas.
3. Implementation of basic database schemas, DML, DDL. First project.
4. Relational algebra and basics of SQL querying.
5. Intermediate SQL implementation.
6. Advanced SQL implementation. Evaluation of the first project.
7. Database security implementation. Second project assignment.
8. Data processing using Java programming language.
9. JavaFX and implementation of user interface in Java, basics of transactions implementation. Evaluation of the second project/Third project assignment.
10. Docker files implementation and management.
11. Logging architecture ELK.
12. Consultations of course topics and projects. Evaluation of the third project assignment.

Work placements

Not applicable.

Aims

The goal of the course is to introduce students to methods of designing database systems with respect to normal forms. In addition, the student will learn to implement the designed database schema, including data processing through a programming language. Finally, the student will learn to secure database systems including virtualization and data backup.

Specification of controlled education, way of implementation and compensation for absences

The conditions for the successful course completion are stated in the yearly updated supervisor’s notice.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

SILBERSCHATZ, Abraham, Henry F. KORTH a S. SUDARSHAN. Database system concepts. 7th ed. Boston: McGraw-Hill Education, 2019. xxvi, 1142. ISBN 1260084507. (EN)
GARCIA-MOLINA, Hector, Jeffrey D. ULLMAN a Jennifer WIDOM. Database system implementation. Upper Saddle River: Prentice Hall, 2000. xv, 653 s. ISBN 0-13-040264-8. (EN)
NATAN, Ben. Implementing Database Security and Auditing. Digital Press, 2005. xv, 432 s. ISBN 978-1555583347. (EN)

Recommended reading

Not applicable.

eLearning

Classification of course in study plans

  • Programme BPC-IBE Bachelor's, 2. year of study, winter semester, compulsory

Type of course unit

 

Lecture

13 hours, optionally

Teacher / Lecturer

Exercise in computer lab

26 hours, compulsory

Teacher / Lecturer

eLearning