Degree Plans - Databases and Web

Coordinating Department: Department of Software Engineering Specialization Coordinator: Prof. RNDr. Tomáš Skopal, Ph.D.

Specialization Databases and Web offers a number of courses on database and web management methods and technologies, data analysis, database administration, programming and development of traditional, web, database and data-intensive applications. Emphasis is put on relational and non-relational databases, social network analysis, web and multimedia search engines, methods of feature extraction. This specialization also gives a solid background in computer science preparing the graduate for subsequent master studies in computer science.

Common obligatory courses in Computer Science

Common obligatory courses for all specializations are listed above in the section giving general information.

3.1 Obligatory Courses

CodeSubjectCreditsWinterSummer
NSWI142Web Applications Programming 52/2 C+Ex
NDBI026Database Applications 41/2 MC
NDBI007Database Access Methods 42/1 C+Ex
NDBI040Modern Database Systems 52/2 C+Ex
NSWI153Advanced Programming of Web Applications 52/2 C+Ex
NPRG036Data Formats 52/2 C+Ex
NDBI046Data Management 52/2 C+Ex
NDBI038Searching the Web 42/1 C+Ex

3.2 Elective Courses

Elective courses – group 1

A prerequisite for taking either part of the State Final Exam is to have obtained at least 15 credits from courses in this group.

CodeSubjectCreditsWinterSummer
NPRG041Programming in C++ 52/2 C+Ex
NPRG013Programming in Java Language 52/2 C+Ex
NPRG035Programming in C# Language 52/2 C+Ex
NPRG051Advanced C++ Programming 52/2 C+Ex
NPRG021Advanced Java Programming 52/2 C+Ex
NPRG038Advanced C# Programming 52/2 C+Ex
NPRG005Non-procedural Programming 52/2 C+Ex

Elective courses – group 2

A prerequisite for taking either part of the State Final Exam is to have obtained at least 6 credits from courses in this group.

CodeSubjectCreditsWinterSummer
NSWI004Operating Systems 42/1 MC
NPFL054Introduction to Machine Learning with R 52/2 C+Ex
NPFL129Introduction to Machine Learning with Python 52/2 C+Ex
NDBI045Video Retrieval 52/2 C+Ex
NDBI037Information Models with Ordering 02/1 C+Ex
NSWI166Introduction to recommender systems and user preferences 42/1 C+Ex
NDBI013Oracle Administration 20/2 C

Elective courses – group 3

A prerequisite for taking either part of the State Final Exam is to have obtained at least 3 credits from courses in this group.

CodeSubjectCreditsWinterSummer
NMAI055Mathematical Analysis 2 52/2 C+Ex
NPRG056Mobile Devices Programming 30/2 C
NAIL120Introduction to Artificial Intelligence 52/2 C+Ex
NSWI130Software System Architectures 52/2 C+Ex
NSWI090Computer Networks 32/0 Ex
NPGR036Computer Vision 52/2 C+Ex
NPGR002Digital Image Processing 43/0 Ex
NAIL121Seminar on Data Mining 41/2 MC
NPGR035Machine Learning in Computer Vision 52/2 C+Ex

3.3 Recommended Course of Study

The recommended course of study gives all the obligatory courses, while only some elective courses and optional courses are listed. Students need to choose other such courses themselves. Obligatory courses are printed in boldface, elective courses in roman, and optional courses in italics.

First year

Common to all specializations – see under general information above.

Second year

CodeSubjectCreditsWinterSummer
 Programming in Java/C++/C# 52/2 C+Ex
NDBI025Database Systems 52/2 C+Ex
NSWI142Web Applications Programming 52/2 C+Ex
NTIN061Algorithms and Data Structures 2 52/2 C+Ex
NAIL062Propositional and Predicate Logic 52/2 C+Ex
NDMI011Combinatorics and Graph Theory 1152/2 C+Ex
NSWI153Advanced Programming of Web Applications 52/2 C+Ex
NTIN071Automata and Grammars 52/2 C+Ex
NMAI059Probability and Statistics 1 52/2 C+Ex
NPRG045Individual Software Project 40/1 C
 Elective courses    
 Optional courses    

Third year

CodeSubjectCreditsWinterSummer
NDBI026Database Applications 41/2 MC
NDBI007Database Access Methods 42/1 C+Ex
NDBI040Modern Database Systems 52/2 C+Ex
NPRG036Data Formats 52/2 C+Ex
NDBI046Data Management 52/2 C+Ex
NDBI038Searching the Web 42/1 C+Ex
NSZZ031Bachelor Thesis 60/4 C
 Elective courses    
 Optional courses    

3.4 State Final Exam

The State Final Exam knowledge requirements common to all specializations are described in the first section of this chapter (General Information on Computer Science bachelor's degree plans). Students of the Databases and Web specialization will be further tested according to the list below.

1. Databases
Database systems architectures. Conceptual, logical and physical view of data. Relational schema design algorithms, normal forms, referential integrity. Transaction processing. Conceptual modelling. SQL overview. Core SQL queries. Data grouping and aggregation. Joining tables. Nested queries. Stored procedures, triggers, functions. Big Data. Modern database systems. MapReduce. NoSQL databases. Graph databases. Multi-model databases.

Relevant courses

Database Systems (NDBI025)
Database Applications (NDBI026)
Modern Database Systems (NDBI040)

2. Data Management
Data formats. Data models for structured data, use-cases. Graph, hierarchical, tabular, and geodata data formats. Data schemas and data transformation languages. Basics of graphics, multimedia and print formats. Data vocabulary, data semantics. Data transformation, catalogization and metadata. Basics of data encryption and compression. Basics of indexing. File organization techniques, direct/indirect indexing, primary/secondary index. Hashing in external memory. Hierarchical indexing, indexing for spatial databases, spatial join, spatial query.

Relevant courses

Data Formats (NPRG036)
Data Management (NDBI046)
Database Access Methods (NDBI007)

3. Web
Basic principles of www, HTML, XHTML, HTML5, and CSS. Architecture, principles and design pattern of web applications. Client side development, JavaScript, standard Web APIS. Web application's API and web services. Single-page applications, state management and user sessions. Server side development, CGI and CGI-like applications. Basics of web applications security. Web search. Boolean and vector models, word2vec. Hypertex search, raking, PageRank, SEO. Recommender systems. Similarity search in multimedia databases. Metric similarity indexing.

Relevant courses

Web Applications Programming (NSWI142)
Advanced Programming of Web Applications (NSWI153)
Searching the Web (NDBI038)
Introduction to recommender systems and user preferences (NSWI166)