- •Качество и надежность программного обеспечения
- •Лекция 1. Введение. Основные стандарты и термины по качеству программного обеспечения. Метрики и критерии качества программных продуктов. Составляющие качества программных продуктов.
- •Цели и задачи курса, его связь с другими дисциплинами учебного плана.
- •ГосТы . Основные понятия и ключевые слова по качеству и надежности пп.
- •Общие термины
- •Общие характеристики качества программного средства
- •Лекция 2. Классификация видов сложности программных продуктов. Метрические характеристики программ по м.Холстеду
- •Оценивание качества разработки программ на основе метрик Холстеда. Измеримые свойства алгоритмов
- •Длина программы
- •4. Объем программы
- •Потенциальный объем V*
- •Лекция 3. Уровень программ. Интеллектуальное содержание программы.
- •1. Уровень программы
- •2. Вывод уравнения уровня программы
- •3. Определение интеллектуального содержания программ
- •Лекция 4. Работа в программировании. Уровни языков программирования. Метрика числа ошибок в программе.
- •Значение уровня языка
- •Лекция 5. Метрики структурной сложности программ.
- •Лекция 6. Методы и средства измерения характеристик программ. Аппаратные измерительные мониторы.
- •Лекция 7. Программные измерительные мониторы.
- •Лекция 8. Понятие корректности программ.
- •II. Эталоны и методы проверки корректности.
- •Лекция 9. Аналитическая проверка корректности программ. Верификация программ.
- •Лекция 10. Тестирование программных продуктов
- •1. Основные понятия процесса тестирования
- •2. Объекты тестирования
- •3. Категории тестов для различных объектов тестирования
- •Лекция 11. Виды, критерии и методы тестирования. Методы структурного тестирования программ
- •1. Тестирование на основе потока управления
- •Покрытие операторов
- •Покрытие ветвей
- •Покрытие условий
- •Комбинаторное покрытие условий
- •2. Тестирование на основе потока данных
- •Лекция 12. Методы функционального тестирование программных продуктов
- •1. Метод эквивалентного разбиения
- •1.1. Выделение классов эквивалентности
- •1.2. Построение теста
- •2. Анализ граничных значений
- •3. Метод функциональных диаграмм
- •Столбцы таблицы решений преобразуются в тесты.
- •4. Метод, основанный на предположении об ошибке
- •Лекция 13. Основные показатели надежности программного обеспечения (по). Математические модели оценки надежности по.
- •13.1. Основные показатели надежности программного обеспечения (по).
- •13.2. Математические модели оценки надежности по.
- •Модель Джелинского-Моранды.
- •Модель Шика-Уолвертона.
- •Лекция 14. Модели, основанные на методе "посева" и разметки ошибок, и модели на основе учета структуры входных данных
- •Модель Нельсона. Применение последовательного анализа Вальда для снижения количества прогонов программы.
- •Лекция 15. Методы повышения надежности программ и оценка эффективности их применения.
- •15.1 Влияние избыточности на повышение надежности программ
- •Эффективность применения избыточности для повышения надежности комплексов программ
- •Влияние оперативного контроля и восстановления на производительность эвм.
- •Методы программного восстановления
- •Методы обеспечения надежности комплексов программ при сопровождении
- •Литература
Методы обеспечения надежности комплексов программ при сопровождении
В этой стадии жизненного цикла программ расширяются условия их использования и характеристики исходных данных вследствие чего могут потребоваться изменения в программах Для сохранения и улучшения показателей надежности комплексов программ в процессе длительного сопровождения необходимо четко регламентировать передачу комплексов программ пользователям Целесообразно накапливать необходимые изменения в программах и вводить их группами формируя очередную версию комплекса программ с измененными характеристиками Версии комплекса программ можно разделить на эталонные и пользовательские (или конкретного объекта)
Эталонные версии развиваются дорабатываются и модернизируются основными разработчиками комплекса программ или специалистами выделенными для их сопровождения Они снабжаются откорректированной технической документацией полностью соответствующей программам и точным перечнем всех изменений введенных в данную версию по сравнению с предыдущей
Пользовательские версии Необходимы также общие проверки работоспособности и сохранности всех программ комплекса. Для корректности выполнения изменений они снабжаются методиками проверки и правилами подготовки контролирующих тестов Целесообразно ограничивать доступ широких пользователей к технологической документации хранящей подробные сведения о содержании и логике функционирования программ Такие меры в некоторой степени предотвращают возможность резкого ухудшения показателей надежности.
Литература
Основная
1. Липаев В.В. Качество программного обеспечения. - М.: Финансы и статистика, 1983. -263с.
2. Назаров С.В., Барсуков А.Г. Измерительные средства и оптимизация вычислительных систем. - М.: Радио и связь, 1990. -248с.
3. Боэм Б.У. Инженерное проектирование программного обеспечения: Пер. с англ. - М.: Радио и связь, 1985. -512с.
4. Авен О.И. и др. Оценка качества и оптимизация вычислительных систем. - М.: Наука, 1982. -485с.
5. Кузовлев В.И., Шкатов П.Н. Математические методы анализа производительности и надежности САПР, М.: Высшая школа, 1990.
6. Липаев В.В. Надежность программного обеспечения. - М.: Энергоиздат, 1981. -241с.
7. Липаев В.В. Проектирование программных средств. - М: Высшая школа, 1990. -301с.
8. Липаев В.В. Тестирование программ. - М.: Радио и связь, 1986. -294с.
9. Р.Калбертсон и др. Быстрое тестирование. Пер. с англ.. - М.: Изд.дом «Вильямс», 2002-384с.
Дополнительная:
10.Коган Б.И. Экспериментальные исследования программ. - М.: Наука, 1988. -184с.
11.Боэм Б. и др. Характеристики качества программного обеспечения. Пер. с англ. Е.К.Масловского. - М.: Мир, 1981. -208с.
12.Кожевникова Г.П. Структуры данных и проектирование эффективной вычислительной среды. - Львов: Вища школа, Изд. ЛГУ, 1986. -278с.
13.Холстед М.Х. Начала науки о программах. - М.: Финансы и статистика,1981.-128с.
14.Бровин Н.Н. и др. Оценка эффективности алгоритмов и программ. Ленинград.: ЛИАП 1983.-31с.