Введение
1 . Моделирование программной архитектуры и транзакций на архитектурном уровне 10
1.1 Моделирование программной архитектуры 10
1.1.1 Определение программной архитектуры 10
1.1.2 Цели использования программной архитектуры 14
1.1.3 Связь внешней среды и программной архитектуры 20
1.1.4 Структуры программных средств 22
1.1.5 Процесс разработки и программная архитектура 26
1.1.6 Связанные направления 30
1.2 Моделирование транзакций на архитектурном уровне проектирования программных средств 37
1.2.1 Транзакционная структура (ТС) 39
1.2.2 Описание транзакционной структуры на UML 56
1.3 Выводы 75
2. Транзакции в АСУИО 77
2.1 Транзакции и целостность баз данных 77
2.1.1 Пример нарушения целостности базы 78
2.1.2 Понятие транзакции 79
2.1.3 Ограничения целостности 81
2.1.4 Классификация ограничений целостности 83
2.1.5 Классификация ограничений целостности по способам реализации 83
2.1.6 Классификация ограничений целостности по времени проверки...87
2.1.7 Классификация ограничений целостности по области действия...87
2.1.8 Ограничения домена 88
2.1.9 Ограничения атрибута 88
2.1.10 Ограничения кортежа 89
2.1.11 Ограничения отношения 93
2.1.12 Ограничения базы данных 95
2.1.13 Реализация декларативных ограничений целостности средствами SQL 96
2.1.14 Синтаксис операторов SQL, использующих ограничения 104
2.2 Транзакции и восстановление данных 110
2.2.1 Индивидуальный откат транзакции 114
2.2.2 Восстановление после мягкого сбоя 115
2.2.3 Восстановление после жесткого сбоя 118
2.3 Выводы 119
3. Многоверсионность данных и управление параллельными транзакциями 121
3.1 Транзакции и параллелизм 121
3.2 Временные метки 132
3.3 Многоверсионный вариант двухфазного протокола синхронизации 134
3.4 Многоверсионный протокол для транзакций, не изменяющих данные 137
3.5 MVSG-планировщики 138
3.6 Проблемы реализации версионных алгоритмов 141
3.7 Выводы 143
4. Модель оценки транзакционной надёжности программного обеспечения вАСУИО 145
4.1 Описание модели оценки транзакционной надёжности 145
4.2 Программная реализация системы моделыю-алгоритмической поддержки анализа транзакционной надежности программных средств 152
4.3 Примеры решения задач и анализ результатов 154
4.4 Выводы 159
Заключение 161
Список использованной литературы 163


