Software Systems Reliability Theory

Major: Software Engineering
Code of subject: 7.121.01.O.004
Credits: 6.00
Department: Software
Lecturer: Maksym Seniv
Semester: 1 семестр
Mode of study: денна
Learning outcomes: PH01. Know and apply modern professional standards and other legal documents on software engineering. PH06. Develop and evaluate software design strategies; substantiate, analyze and evaluate design solutions in terms of quality of the final software product, resource constraints and other factors. РН07. Analyze, evaluate and apply at the system level modern software and hardware platforms for solving complex problems of software engineering. PH11. Ensure quality at all stages of the software life cycle, including the use of relevant models and assessment methods, as well as automated software testing and verification tools. РН16. Plan, organize and perform software testing, verification and validation.
Required prior and related subjects: Corequisites: Parallel and Distributed Computing Risk Management in Software Engineering Optimization Methods in Software Engineering Software Quality Management
Summary of the subject: Introduction. Fundamental concepts and definitions of reliability theory. 1.1. Definition of "reliability" and "failure". Classification and characteristics of failures. 1.2. Terminology of reliability theory. Classification of technical systems. 1.3. Reliability of software according to GOST 28806-90, determination of indicators of reliability of equipment according to GOST 27.002-89. Reliability criteria. Laws of distribution of time to failure. 2.1. Reliability criteria for non-renewable systems. 2.1.1. Probability of trouble-free operation. 2.1.2. Density distribution time of trouble-free operation. 2.1.3. The intensity of failures. 2.1.4. Average uptime. 2.2. Reliability criteria for recovery systems. 2.2.1. Average run time between failures and average recovery time. 2.2.2. Failure flow parameter. 2.2.3. Standby function and idle function. The most common laws of distribution of time to failure. 3.1. Exponential distribution. 3.2. Normal distribution. 3.3. Logarithmically normal distribution. 3.4. Weibull distribution. 3.5. Gamma distribution. Problems of reliability analysis of complex technical systems. 4.1. Development of models of functioning of a complex system. 4.2. Problems of creating highly reliable systems. 4.3. Methods of analysis of reliability of technical systems. 4.3.1. Review of existing methods for calculating the reliability of complex systems. 4.3.2. Dependence of reliability indicators on distribution laws. 4.3.3. Methods and problems of calculating the reliability of systems with a large number of states. Mathematical models of functioning of technical elements and systems in the sense of their reliability. 5.1. General model of system reliability in terms of integral equations. 5.2. The general model of system functioning in the sense of reliability in terms of differential equations in partial derivatives. Methods of analysis of reliability of technical systems. 6.1. Ways to describe the functioning of technical systems in terms of reliability. 6.2. Methods of analysis of reliability of technical systems based on the application of probability theory. 6.3. Topological methods of reliability analysis. 6.4. Methods of reliability analysis based on the theory of Markov processes. Reliability of information systems. 7.1. Criteria for reliability of information systems. 7.2. Methods of analysis of information systems reliability. 7.3. Analysis of multi-channel queuing system with failures. 7.4. Calculation of system reliability from software errors based on two-version programming. 7.5. Reliability analysis of multifunctional systems. Software reliability analysis. 8.1. Reliability models based on time between errors. 8.2. Reliability models based on the number of errors. 8.3. Reliability models based on sowing errors. 8.4. Reliability models based on the area of input data. 8.5. Basic assumptions and limitations of software reliability models. 8.6. Use of software reliability models at different stages of the life cycle. 8.7. Analysis of software efficiency as a queuing system. 8.8. Taking into account other features of software systems operation.
Assessment methods and criteria: Current control: 40% (2 labs 20% each) Exam: 60% (written part 50%, spoken part 10%) The maximum mark for each laboratory work can be obtained if it has been defended within 15 weeks of the semester, a student performed the task correctly, managed to prove that they have accomplished the task with no assistance, and answered all the practical and theoretical questions properly.
Recommended books: 1. Яковина В.С., Сенів М.М., Основи теорії надійності програмних систем: Навчальний посібник. – Львів: Видавництво Львівської політехніки, 2020. – 248 с. 2. Бобало Ю.Я., Волочій Б.Ю., Лозинський О.Ю., Мандзій Б.А., Озірковський Л.Д., Федасюк Д.В., Щербовських С.В., Яковина В.С. Математичні моделі та методи аналізу надійності радіоелектронних, електротехнічних та програмних систем: монографія. – Львів: Видавництво Львівської політехніки, 2013. – 300 с. 3. Волочій Б.Ю. Технологія моделювання алгоритмів поведінки інформаційних систем. – Львів: Вид-во НУ "Львівська політехніка", 2004. – 220 с. 4. Моделі, методи та засоби аналізу надійності програмних систем / В. С. Яковина, Д. В. Федасюк, М. М. Сенів, О. О. Нитребич. Львів : Видавництво Львівської політехніки. – 2015. – 220 с. 5. Seniv M., Yakovyna V., Symets I. Software for visualization of reliability block diagram and automated formulation of operability conditions of technical systems // 14th International Conference on Perspective Technologies and Methods in MEMS Design, MEMSTECH 2018 - Proceedings. – 2018. – pp. 191–195. 6. Yakovyna V. S., Seniv M. M., Symets I. I., Sambir N. B. Algorithms and software suite for reliability assessment of complex technical systems // Radio Electronics, Computer Science, Control. – 2020. – No. 4(55). – P. 163–177. 7. Bobalo Yu., Seniv M., Yakovyna V., Symets I. Method of reliability block diagram visualization and automated construction of technical system operability condition // Advances in Intelligent Systems and Computing (AISC). – 2019. – Vol. 871: Advances in intelligent systems and computing III. Selected papers from the International conference on computer science and information technologies, CSIT 2018, September 11-14, Lviv, Ukraine. – P. 599–610. 8. Яковина В. С., Сенів М. М., Литвин В. В., Симець І. І. Програмний модуль розв'язування систем диференціальних рівнянь Колмогорова-Чепмена для автоматизації надійнісного проектування // Науковий вісник НЛТУ України: збірник науково-технічних праць. – 2019. – Т. 29, № 5. – С. 141–146. 9. Сенів М.М., Роїк О.О. Засоби розрахунку показників надійності програмного забезпечення на підставі моделей з урахуванням недосконалого відлагодження // Науковий вісник НЛТУ України. – 2021. – 31 (6), – С. 87-91. 10. Яковина В. С., Сенів М. М., Симець І. І. Засоби автоматизованого формулювання умов працездатності складних технічних систем // Науковий вісник НЛТУ України. – 2019. – Т. 29, № 9. – С. 136–141.