Title:

Database Systems

Code:IDSe
Ac.Year:2017/2018
Term:Summer
Curriculums:
ProgrammeBranchYearDuty
IT-BC-1HBCH-Recommended
IT-BC-3BIT2ndCompulsory
Language:English
News:
* This course is prepared for incoming Erasmus+ students only, and it is instructed in English.
* This course will be open if a certain/sure minimum of enrolled students is at least five students.

Private info:http://www.fit.vutbr.cz/study/courses/IDSe/private/
Credits:5
Completion:accreditation+exam (written)
Type of
instruction:
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Hours:3900013
 ExaminationTestsExercisesLaboratoriesOther
Points:51140035
Guarantee:Zendulka Jaroslav, doc. Ing., CSc., DIFS
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
Follow-ups:
Information Systems (IISe), DIFS
 
Learning objectives:
  Mastering fundamentals of relational database theory and skill in using database technology at a level required for database design, development of database applications and database administration.
Description:
  Fundamentals of database systems (DBS). Conceptual modeling. The relational model. Relational database design from a conceptual model. Normalization-based design of a relational database. SQL language. Transaction processing. DBS architectures: client/server, multi-tier architectures, distributed DBS. Introduction to database administration: data security and integrity, introduction to physical database design, performance optimization, database recovery, concurrency control. Trends in database technology. Development of a database application in modern development and database environment.
Knowledge and skills required for the course:
  The sets, relations and mappings. The elementary notions of the graph theory. Basics of hashing and tree-based search. Basic steps of software development. Rudiments of programming and data modeling.
Subject specific learning outcomes and competences:
  Student is able to develop conceptual models of an application domain for database applications. He/she can develop database applications for relational databases, knows the standard database language for relational databases SQL, and has experience with some integrated development environment for database applications.  and have knowledge of relational database management system fundamentals. He/she receives basic competencies for database administrator's work like user account creation, access rights assignment and performance tuning. Student acquaints with fundamentals of some important functions of advanced database system like transactional processing, concurrency and recovery. Student acquaints with basic English terminology in the subject.
Generic learning outcomes and competences:
  Student will learn how to analyze a given problem in a small team and he/she will learn to design and implement solution of the problem individually. He/she learns to present and defend  both partial and final results of the project.
Syllabus of lectures:
 
    1. Fundamental concepts of database systems.
    2. Conceptual modeling.
    3. Fundamentals of the relational model.
    4. Transformation of a conceptual model to a relational database schema.
    5. The SQL - data definition.
    6. The SQL - SELECT statement (fundamentals).
    7. The SQL - SELECT statement (extension).
    8. The SQL - other statements for data manipulation. System catalogue.
    9. The SQL - views, missing information, embedded SQL, cursor, dynamic SQL. Query by example (QBE).
    10. The client/server architecture. Database triggers and stored procedures. Data integrity, data security.
    11. Data organization at the internal level - indexing and hashing. Query processing and optimization.
    12. Transaction processing - properties and states of  a database transaction.
    13. Introduction to failure recovery and concurrency control.
Syllabus of numerical exercises:
 
    1. Demonstration of a database application development in an environment used for projects in a laboratory (Oracle currently).
    2. Creating an Oracle database.
    3. Screen form development in Oracle Developer.
    4. Report development in Oracle Developer.
    5. Stored procedures and database triggers in Oracle.
Syllabus - others, projects and individual work of students:
 
    1. Presentation of a conceptual model (ERD or a class diagram) and a use case model for a given problem (continuation of the project started in the subject Introduction to software engineering).
    2. An SQL script that creates and populates database tables.
    3. Realization of the application.
Fundamental literature:
 
  • Silberschatz, A., Korth H.F, Sudarshan, S.: Database System Concepts. Fourth Edition. McGRAW-HILL. 2001, 1088 p.
  • On-line help and documentation of Oracle.
Study literature:
 
  • Ramakrishnan R.: Database Management Systems. Third edition. McGraw-Hill Science/Engineering/Math, 2000, 1104 p.
  • Date C.J.: An Introduction to Database Systems. Seventh edition. Addison-Wesley, 2000, 838 p.
Controlled instruction:
  Mid-term exam passing, realization and presentation/defence of projects in due dates.
Progress assessment:
  
  • Models of requirements analysis - 5 points
  • Database design- 6 points
  • Mid-term written examination - 14 point
  • Evaluated project with the defence - 25 points
  • Final written examination - 50 points
  • To be allowed to sit for written examination student is  to present and defend both projects in due dates, and to earn at least 25 points during semester.
Exam prerequisites:
  To be allowed to sit for written examination student is present and defend both projects in due dates, and to earn at least 25 points during semester.