- •Кризис программирования и способ выхода из него
- •Модель cmm-sei
- •Управление качеством разработки программного продукта с помощью системы стандартов iso 9001
- •Примерная структура процесса и организации, занимающейся разработкой программных продуктов
- •Контрольные вопросы
- •Оценка технических, нетехнических и финансовых ресурсов для выполнения программного проекта
- •Оценка возможных рисков при выполнении программного проекта
- •6.5. Составление временного графика выполнения программного проекта
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Конструирование прототипа
- •Составление спецификаций по требованиям заказчика
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Эволюция разработки программного продукта
- •Структурное программирование
- •Объектно-ориентированное проектирование
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Тестирование
- •Разработка справочной системы программного продукта. Создание документации пользователя
- •Создание версии и инсталляции программного продукта
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •Виды тестирования
- •Программные ошибки
- •Тестирование документации
- •Разработка и выполнение тестов
- •Требования к хорошему тесту
- •Классы эквивалентности и граничные условия
- •Тестирование переходов между состояниями
- •Условия гонок и другие временные зависимости
- •Нагрузочные испытания
- •Прогнозирование ошибок
- •Тестирование функциональной эквивалентности
- •Регрессионное тестирование
- •Собираемые метрики, используемые методы, стандарты и шаблоны
- •Контрольные вопросы
- •1. Подготовительная работа, предусматривающая:
- •Контрольные вопросы
- •Классификация поставляемых программных продуктов
- •Действия, выполняемые при поставке программного продукта
- •Контрольные вопросы
- •Основные понятия о надежности программных продуктов и методах ее обеспечения
- •Методы обеспечения надежности на различных этапах жизненного цикла разработки программного продукта
- •Прогнозирование ошибок
- •Шаблон для учета итоговых сведений об ошибках
- •Предотвращение ошибок
- •Шаблон для учета действий по предотвращению ошибок на этапах составления требований, проектирования и разработки
- •Устранение ошибок
- •Обеспечение отказоустойчивости
- •Инструменты, обеспечивающие надежность программных продуктов. План обеспечения надежности
- •Контрольные вопросы
Собираемые метрики, используемые методы, стандарты и шаблоны
На этапе разработки ПП необходимо выполнять оценки расхождений плановых сроков и объемов с фактическими, числа проведенных обзоров, выявленных ошибок и дефектов, а также средних трудозатрат и производительности разработки.
Все полученные данные следует хранить в ИБД проектной группы.
Используемый инструмент: система подготовки документов (например, MS Word).
Используемые методы и стандарты: процесс организации; стандарты кодирования.
Используемые шаблоны: пользовательской документации; отчета по обзору; отчета о статусе проекта.
Контрольные вопросы
1. Каково назначение этапа разработки программного продукта?
2. В чем заключается процесс кодирования?
3. Что представляет собой тестирование «черного ящика»?
4. Какое тестирование называется тестированием «стеклянного ящика»?
5. Чем отличается структурное тестирование от функционального?
6. Перечислите критерии охвата и дайте им определения.
7. Чем отличается стратегия восходящего тестирования от стратегии целостного тестирования?
8. Какие недостатки присущи стратегии целостного тестирования?
9. Объясните принцип нисходящего тестирования.
10. Каким образом выполняется статическое тестирование?
11. Как организован процесс разработки справочной системы программного продукта и руководства пользователя?
12. Какова цель создания инсталляции программного продукта?
13. Какие проблемы могут возникнуть в процессе инсталляции и как с ними бороться?
14. Для чего необходимо управление версиями программного продукта?
15. Кто занимается управлением версиями программного продукта?
124-
16. Что называется версией, вариантом версии, выходной версией программного продукта?
17. Какие способы идентификации версий программного продукта вы знаете?
18. Каким образом осуществляется идентификация версий программного продукта:
а) основанная на нумерации;
б) основанная на значениях атрибутов;
в) основанная на изменениях?
19. Какие метрики собирают на этапе разработки программного продукта?
20. Какие методы, стандарты и шаблоны используют на этапе разработки программного продукта?
ТЕСТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА
Общая характеристика тестирования и его цикл
Тестирование представляет собой деятельность по проверке программного кода и документации. Она должна заранее планироваться и систематически проводиться специально назначенным независимым тестировщиком. Работа тестировщика начинается до утверждения спецификаций требований.*Он проверяет требования к ПП на полноту и возможность тестирования, определяет методы тестирования.
Одновременно с началом этапа планирования и создания спецификаций требований тестировщик разрабатывает стратегию тестирования. После утверждения спецификаций требований им разрабатывается и детализируется план тестирования. Тогда же тестировщик создает наборы тестов для проведения интеграционного и системного тестирований. Тестирование завершается созданием отчета о тестировании, в котором представляются все результаты его проведения.
Для каждого программного изделия должен существовать набор тестов, проверяющий его корректность. Существует несколько уровней тестирования, позволяющих полностью проверить программное изделие. Каждый уровень имеет свои цели и компоненты. Можно выделить пять уровней тестирования: модульное; интеграционное; системное; выходное; приемочное.
Рис. 10.1. Цикл тестирования
Тестирование первых четырех уровней проводится внутри организации, тогда как приемочное тестирование выполняется совместно с представителями заказчика. Тестирование первого уровня осуществляет сам разработчик на этапе разработки, за остальные уровни отвечает независимый тестировщик.
Циклом тестирования называется совокупность действий, выполняемых тестировщиком с момента передачи базовой версии ПП тестировщику для интеграционного, системного или приемочного тестирования до момента успешного завершения тестирования (рис. 10.1). На каждом проходе цикла тестирования создаются:
базовая версия ПП, подлежащего тестированию;
отчет о ходе тестирования;
метрики тестирования (заносятся в базу данных проекта).
