Programs Correctness and Programming Logics

Course: Informatics

Structural unit: Faculty of Computer Science and Cybernetics

Title
Programs Correctness and Programming Logics
Code
ДВС.2.07
Module type
Вибіркова дисципліна для ОП
Educational cycle
First
Year of study when the component is delivered
2023/2024
Semester/trimester when the component is delivered
8 Semester
Number of ECTS credits allocated
3
Learning outcomes
LO 17.2. Knowledge of approaches to software quality evaluation and assurance, ability to apply them. LO 19.2. Choosing source data for software systems design, guided by formal methods of modeling and requirements description.
Form of study
Distance form
Prerequisites and co-requisites
Know: basic concepts, information on programming, programming theory, discrete mathematics, mathematical logic, testing and verification. Be able to: describe syntax and semantics, create programs using a functional and logical approach. Possess elementary skills: programming in modern languages and environments.
Course content
The goal of the learning course is to acquire basic knowledge from the discipline "Correctness of programs and programming logic", which involves consideration of the main formal methods of validation of software systems and verification, namely: testing, formal verification, model verification. Training of professionals capable of solving tasks related to the practical application of methods of verification and validation of software systems. The learning course "Correctness of programs and logic of programming" is a component of the educational-professional program of training specialists at the first (bachelor's) level of higher education in the field of knowledge 12 "Information technologies" from the specialty 122 "Computer science", the educational-professional program "Informatics". This discipline is an optional educational discipline in the "Informatics" program, specializing in "Theory and Technology of Programming". It is taught in the 8th semester in the amount of 90 hours (3 ECTS credits), in particular: seminar classes - 30 hours, independent work - 60 hours. The course includes 2 parts and 2 tests. The course ends with a test.
Recommended or required reading and other learning resources/tools
1. Avramenko V.S., Avramenko A.S., Kosenyuk G.V. Testuvannia programnoho zabezpechennia: Navchalnyi posibnyk. – Cherkasy: Cherkasy National University named after B. Khmelnytskyi. Publisher: Yu.A. Chabanenko, 2016. – 284 p. 2. Kryviy S.L. Vstup do metodiv stvorennia programnykh produktiv: [Navchalnui posibnyk] / S. L. Kryviy; Kyiv-Mohylian National University. akad.". - Kyiv: NaUKMA, 2018. - 449 p. 3. Omelchuk L.L. Formalni metody spetsyfikatsii program. — Kyiv: UkrINTEI, 2010. — 78 p. 4. Zubenko V.V., Shkilniak S.S. Osnovy matematychnoi logiky: Navchaslnyi posibnyk. K.: NUBiP of Ukraine, 2020. 102 p. 5. Hoare C.A.R. Axiomatic Bases for Computer Programming // Magazine Communications of the ACM, Vol. 12. — New York, 1969. — Pages 576-580.
Planned learning activities and teaching methods
Seminar classes, independent work, test.
Assessment methods and criteria
Semester assessment: 1. Tests: LO 1.1., LO 1.2, LO 2.1, LO 2.2 — 40/24 points. 2. Independent work: LO 2.1, LO 2.2, LO 3.1, LO 4.1 –– 60/36 points. Final assessment in the form of credit. It is awarded based on the results of students' work throughout the semester and does not provide for additional assessment measures for successful students.
Language of instruction
Ukrainian

Lecturers

This discipline is taught by the following teachers

Oleksii M. Tkachenko
Theory and Technology of Programming
Faculty of Computer Science and Cybernetics

Departments

The following departments are involved in teaching the above discipline

Theory and Technology of Programming
Faculty of Computer Science and Cybernetics