- •Кризис программирования и способ выхода из него
- •Модель cmm-sei
- •Управление качеством разработки программного продукта с помощью системы стандартов iso 9001
- •Примерная структура процесса и организации, занимающейся разработкой программных продуктов
- •Контрольные вопросы
- •Оценка технических, нетехнических и финансовых ресурсов для выполнения программного проекта
- •Оценка возможных рисков при выполнении программного проекта
- •6.5. Составление временного графика выполнения программного проекта
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Конструирование прототипа
- •Составление спецификаций по требованиям заказчика
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Эволюция разработки программного продукта
- •Структурное программирование
- •Объектно-ориентированное проектирование
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Тестирование
- •Разработка справочной системы программного продукта. Создание документации пользователя
- •Создание версии и инсталляции программного продукта
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Виды тестирования
- •Программные ошибки
- •Тестирование документации
- •Разработка и выполнение тестов
- •Требования к хорошему тесту
- •Классы эквивалентности и граничные условия
- •Тестирование переходов между состояниями
- •Условия гонок и другие временные зависимости
- •Нагрузочные испытания
- •Прогнозирование ошибок
- •Тестирование функциональной эквивалентности
- •Регрессионное тестирование
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •1. Подготовительная работа, предусматривающая:
- •Контрольные вопросы
- •Классификация поставляемых программных продуктов
- •Действия, выполняемые при поставке программного продукта
- •Контрольные вопросы
- •Основные понятия о надежности программных продуктов и методах ее обеспечения
- •Методы обеспечения надежности на различных этапах жизненного цикла разработки программного продукта
- •Прогнозирование ошибок
- •Шаблон для учета итоговых сведений об ошибках
- •Предотвращение ошибок
- •Шаблон для учета действий по предотвращению ошибок на этапах составления требований, проектирования и разработки
- •Устранение ошибок
- •Обеспечение отказоустойчивости
- •Инструменты, обеспечивающие надежность программных продуктов. План обеспечения надежности
- •Контрольные вопросы
Инструменты, обеспечивающие надежность программных продуктов. План обеспечения надежности
Основой для всех инструментов обеспечения надежности является статистический анализ, поэтому любые программные инструменты, способные анализировать наборы данных и выполнять элементарные статистические вычисления (например, MS Excel), могут быть использованы для этих задач.
Деятельность по обеспечению надежности ПП является очень дорогостоящей. Как и любая другая деятельность по разработке ПП, она должна быть запланирована и задокументирована. Ниже приведена схема плана обеспечения надежности ПП. Предлагаемый план является производным множества планов, опубликованных IEEE, SEI и ISO.
Схема плана обеспечения надежности
1. Заключение относительно потребностей в надежности.
2. Определения, акронимы и аббревиатуры, ссылки на вопросы, связанные с обеспечением надежности.
3. Взаимосвязь с действиями по управлению рисками:
a. Уменьшение специфических рисков;
b. Сбережения бюджета проекта;
c. Влияние надежности ПП;
d. Описание методов, предназначенных для обеспечения надежности (прогнозирование ошибок; предотвращение ошибок; устранение ошибок; обеспечение отказоустойчивости).
4. Метод прогнозирования ошибок;
а. Определение функционального профиля;
b. Определение ошибок;
c. Схема классификации ошибок и отказов;
d. Определение потребностей заказчиков в обеспечении требуемого уровня надежности;
e. План проведения альтернативных учебных курсов;
f. Определение целей, связанных с обеспечением надежности ПП.
5. Метод предотвращения ошибок:
a—f такие же, как в п. 4 плана;
g. Распределение функций по обеспечению надежности между всеми компонентами ПП;
h. Разработка процесса, удовлетворяющего цели обеспечения надежности;
i. План сосредоточения ресурсов на основе функционального профиля;
j. План управления вводом и распространением ошибок.
6. Метод устранения ошибок:
а—d соответствуют подпунктам g—j в п. 5 плана;
е.-План оценки надежности;
f. Определение эксплуатационного профиля;
g. План тестирования степени увеличения надежности;
h. План отслеживания хода выполнения тестирования;
i. План дополнительного тестирования;
j. Процесс сертификации целей надежности.
7. Метод обеспечения отказоустойчивости:
a—j такие же, как в п. 6 плана;
к. Определение потребности в персонале на завершающих стадиях проекта;
1. Сравнительный мониторинг целей создания ПП и его надежности при испытаниях у заказчика;
m. Отслеживание степени удовлетворенности заказчиков достигнутым уровнем надежности;
n . Расчет времени предоставления нового свойства ПП путем отслеживания надежности ПП;
о. Управление улучшениями продукта и процесса с одновременным измерением достигнутой надежности.
8. Одобрение плана обеспечения надежности.
Контрольные вопросы
1. Дайте определение понятия «надежность программного продукта».
2. Нарисуйте и объясните кривую распределения ошибок на протяжении времени эксплуатации программного продукта.
3. Перечислите и охарактеризуйте основные методы создания высоконадежного программного продукта.
4. Какие методы обеспечения надежности используются на этапах:
а) планирования и составления требований;
б) проектирования и разработки;
в) тестирования;
г) эксплуатации и сопровождения.
5. Дайте определения понятий «отказоустойчивость», «проблема», «ошибка при обработке», «процесс», «отказ при выполнении процесса», «сбой при выполнении процесса», «устойчивость», «ошибка программного продукта».
6. Перечислите и охарактеризуйте этапы прогнозирования ошибок.
7. Назовите основные классы ошибок.
8. Объясните назначение матрицы источников ошибок.
9. Перечислите основные действия, направленные:
а) на предотвращение ошибок;
б) устранение ошибок;
в) обеспечение отказоустойчивости.
10. Назовите и поясните основные пункты плана обеспечения надежности.
