Планирование автоматизированного функционального и нагрузочного тестирования при сопровождении ППО автоматизированных систем Позин Борис Аронович Д.т.н.,

Презентация:



Advertisements
Похожие презентации
Нагрузочное тестирование информационных систем с использованием облачных вычислений Исполнитель: Макрушин Д.Н. Руководитель: д.т.н., проф. Запечников С.В.
Advertisements

Жизненный цикл программного обеспечения Лекция 4.
ТЕХНИКО-ЭКОНОМИЧЕСКИЕ ВОПРОСЫ РЕГРЕССИОННОГО ФУНКЦИОНАЛЬНОГО И НАГРУЗОЧНОГО ТЕСИРОВАНИЯ ПРИ СОПРОВОЖДЕНИИ И ЭКСПЛУАТАЦИИ АВТОМАТИЗИРОВАННЫХ БАНКОВСКИХ.
Лекция 5 Организация разработки информационных систем УЧЕБНЫЕ ВОПРОСЫ: УЧЕБНЫЕ ВОПРОСЫ: 1. Каноническое проектирование ИС 2. Типовое проектирование ИС.
Учебный курс Стандартизация и сертификация программного обеспечения Лекция 7 доктор технических наук, профессор, проректор по информатизации, заведующий.
Информационные системы в экономике Лекция 1. Основные понятия и определения Автоматизированная информационная система это совокупность технических программных.
ООО НПФ «СПАРК». Кредо: Оптимальные, адекватные и эффективные решения задач с учётом специфики и объективных реалий бизнеса Заказчика Инструменты: Современные.
Жизненный цикл программного обеспечения Подготовил студент 1 курса Лось Павел.
Технический проект системы Технический проект системы - это техническая документация, содержащая общесистемные проектные решения, алгоритмы решения задач,
Жизненный цикл ИС – весь период времени существования ИС, начиная от выработки первоначальной концепции и заканчивая потерей необходимости решения соответствующих.
Оценка уровня безопасности Тестировщики Подтверждение свойств и качества. Рекомендации по доработке Методика проверки Определение Условий эксплуатации.
Основные понятия и классификация CASE- технологий.
Лекция 2. Методы обеспечения качества программных средств Учебные вопросы 1. Классификация методов обеспечения качества ПС 2.Ресурсы, влияющие на качество.
Разработка программного обеспечения (Software Engineering) Ian Sommervillle Часть 8. Управление качеством.
Проект п-Ф-192 Научно-исследовательская работа «РАЗРАБОТКА СТРУКТУРЫ И МЕТОДИКИ ФОРМИРОВАНИЯ ЕДИНОГО ФЕДЕРАЛЬНОГО БАНКА ИЗМЕРИТЕЛЬНЫХ МАТЕРИАЛОВ.
Положение об отделе В.Андреев, Д.Сатин. Штат отдела начальник отдела; бизнес-аналитик; проектировщик пользовательских интерфейсов; специалист по анализу.
ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ. ИНФОРМАЦИЯ Информация – сведения о людях, фактах, явлениях, событиях в независимости от формы их представления.
СПЕЦИАЛЬНОСТЬ "ИНФОРМАЦИОННЫЕ СИСТЕМЫ (по отраслям) " ГАОУ СПО РК «Сортавальский колледж»
Лекция 3 Архитектура информационных систем. Вопросы лекции 1. Архитектура информационной системы 2. Архитектурный подход к реализации информационных систем.
Лекция 2 Принципы создания, классификация, состав и структура ЭИС.
Транксрипт:

Планирование автоматизированного функционального и нагрузочного тестирования при сопровождении ППО автоматизированных систем Позин Борис Аронович Д.т.н., профессор

Поговорим о тестировании Особенности тестирования ППО АС при сопровождении Зачем нужно планирование тестирования? Тестирование и требования к ППО АС Виды нагрузочного тестирования ППО АС Обеспечение адекватности нагрузочного тестирования

Что такое тестирование? Тестирование - один из основных методов обеспечения качества Тестирование – проводится с целью обнаружения ошибок в программе /программной системе путем сопоставления результатов прогона программы на тестах, как объекта, с эталоном - формализованным или формальным описанием ожидаемых свойств программы

Особенности тестирования ППО АС при сопровождении

Служба гарантиро- ванной доставки сообщений Служба гарантиро- ванной доставки сообщений Система, управляемая командами пользователей Система, управляемая сообщениями Используются все возможности IBM Rational Functional Tester Разрабатываются генераторы тестов и используются возможности инструментов IBM Rational Поток сообщений Internet / SQL трафик Виды тестируемых систем

Задачи автоматизированного тестирования при разработке и сопровождении Виды тестирования РазработкаСопровождение Функциональное Многократный контроль корректности сборки прикладной системы Систематический контроль соответствия внесенных изменений требованиям нормативных документов Проверка правильности реализации функций, предусмотренных ТЗ, Периодический контроль целостности прикладной системы после внесения изменений по функциям и в полном объеме требований нормативных документов Проверка корректности реализации интерфейсов с конечным пользователем Проверка корректности функционирования прикладной системы в составе АБС на стенде сопровождения Проверка корректности функционирования прикладной системы в составе АБС на стенде Проверка корректности функционирования прикладной системы в составе АБС на целевой платформе, близкой к промышленной конфигурации Нагрузочное Оценка достижимых эксплуатационных характеристик прикладной системы на стенде разработчика Оценка достижимых эксплуатационных характеристик прикладной системы на стенде, максимально приближенном к промышленной конфигурации Систематический контроль деградации эксплуатационных характеристик АБС после внесения изменений в прикладную программную систему на стенде, максимально приближенном к промышленной конфигурации

Зачем нужно планирование тестирования?

Что такое планирование тестирования Построение полного набора тестовых примеров для проверки всех свойств ППО АС невозможно Необходимо проверять основные свойства ППО АС при внесении в них изменений Функциональное тестирование: Можно построить дерево маршрутов (тестовых последовательностей), покрывающих схему функциональных связей компонентов ППО АС и предложить стратегию проверок (порядок проверки маршрутов) обеспечивающую необходимый уровень проверки при имеющихся ресурсах всех видов Нагрузочное тестирование: можно построить план эксперимента по работе АС под внешней нагрузкой, при котором оценить статистические значения показателей назначения АС при выполнении типовых сценариев работы

Планирование выпуска и планирование тестирования Исчерпывающее тестирование невозможно Ресурсы ограничены, их надо планировать Планирование тестирования необходимо начинать вместе с планированием выпусков Тестировать не только изменения, а проводить регрессионное тестирование

Автоматизация тестирования Возможность создания автоматизированных тестов, что значительно уменьшает трудозатраты при тестировании ППО и сокращает общие сроки разработки - существенное увеличение объема проверок ППО при снижении совокупной трудоемкости автоматизированного тестирования Возможность проведения многократных испытаний на этапах функционального, регрессионного и интеграционного тестирования, что позволяет обнаруживать ошибки на ранних этапах разработки ППО Автоматизация систематической проверки целостности ППО после внесения в них изменений (модификаций) в процессе сопровождения Систематическая проверка количественных характеристик функционирования ППО, в том числе модификаций, обнаружение узких мест Оценка эффективности проектных решений и определение направлений развития ППО Наиболее эффективным методом применения автоматизированного тестирования при сопровождении является многократное регрессионное тестирование

Тестирование и требования к ППО АС

Управление требованиями Сократить дистанцию от бизнеса к АС и обратно Бизнес Требования АС

Уровень зрелости процесса управления требованиями 0-й уровень Уровень проекта Уровень подразде- ления Корпора- тивный уровень Требований нет вообще Требования в умах специалистов Требования размазаны по документам, актуальность и непротиворечивость не отслеживается Требования ведутся и актуализируются в едином документе Требования ведутся в локальной системе управления требованиями Требования ведутся в корпоративной системе управления требованиями

Общая схема функционального тестирования Тестируемая программа Функциональные требования к программе Функциональные требования Тестовые требования..... Результаты прогона тестов Проверяемые требования Функциональные требования Тестовые треб. Тесты

Тестируемая система Потоки требований λ (t) µ(t)µ(t) λ / µ

Виды нагрузочного тестирования ППО АС

Как контролировать и прогнозировать величины показателей назначения (эксплуатационных характеристик) системы? («Градусник» архитектуры) Прикладная система IT- инфраструктура Поток изменений ПО Поток изменения инфраструктуры 1.Динамические параметры 2. Параметры безопасности 3. Технико-экономические параметры 1.Динамические параметры 2. Параметры безопасности 3. Технико-экономические параметры

Эксплуатационные характеристики РеактивностьРеактивность характеристики Эксплуатационные характеристики Время ожидания обслуживания ПродуктивностьПродуктивность ИспользованиеИспользование Время обслуживания Время реакции Пропускная способность Выработка Утилизация ресурса Относительная пропускная способность Эксплуатационные характеристики всегда оцениваются статистически ISO/IEC 15939:2001 Information technology – Software engineering – Software measurement process

Тестирование эксплуатационных характеристик Нагрузочное тестирование (load) В тестировании эксплуатационных характеристик различают следующие направления: Стресс -тестирование (stress) Тестирование стабильности (endurance or soak or stability) Конфигурационное тестирование (configuration) Нагрузочное тестирование обычно проводится для того, чтобы оценить поведение приложения под заданной ожидаемой нагрузкой. Стресс-тестирование используется для понимания пределов пропускной способности приложения. Тестирование стабильности проводится с целью убедиться в том, что приложение выдерживает ожидаемую нагрузку в течение длительного времени, т.е. что скорость обработки информации и/или время ответа приложения через длительное время работы остаются такими же или становятся лучше, чем в самом начале тестирования, т.е. отсутствует деградация производительности, Конфигурационное тестирование – проверка того, каков эффект влияния изменений в конфигурации на производительность. Конфигурационное тестирование также может быть совмещено с нагрузочным, стресс или тестированием стабильности.

Цели нагрузочного тестирования Оценка количественных характеристик функционирования программного комплекса (производительность, пропускная способность, среднее время пребывания задачи в системе, средняя скорость обработки информации определенного вида и т.п.), в том числе при внесении модификаций Обнаружение и оценка узких мест в системе, выработка рекомендаций по их устранению Планирование перспективной нагрузки Определение направлений развития программного комплекса в части совершенствования его системных количественных характеристик и оценки эффективности новых решений Проверка статистических характеристик программного комплекса при внесении в него модификаций в процессе сопровождения

Виды нагрузочного тестирования Общая проблема: обеспечение адекватности результатов тестируемой системе Оценочное - оценка пропускной способности, времен пребывания задач в системе Аналитическое - выявление зависимостей (например, производительности от вычислительных ресурсов) Настроечное - настройка и оптимизация нагрузочных характеристик Регрессионное - многократное тестирование при неизменных условиях для выявления признаков деградации тестируемой системы

Модернизация оборудования Инвестиции в масштабирование оборудования Определение требуемых вычислительных мощностей Нагрузочные эксперименты Прогноз роста нагрузки Инвестиционный цикл при модернизации ИС и взаимосвязь с нагрузочным тестированием 1 раз в год 6-8 месяцев На срок не менее года Оценка требуемых ресурсов Закупка оборудования и ПО

Обеспечение адекватности нагрузочного тестирования

Модели для нагрузочного тестирования Модель требований Модель нагрузки Модель системы Модель измерений Цели тестирования Характеристики и показатели, которые надо определить. Критерии, которым они должны соответствовать Объект тестирования: какая часть системы подвергается тестированию Какие параметры надо измерять и в каких точках Каковы потоки требований к системе от управляемого процесса

Схема нагрузочного тестирования Средства управления требованиями Информационная система Средства планирования тестирования Ограничения Генератор тестовых данных Средства проверки стенда База тестовых данных Стенд Тестовые данные Средства подачи нагрузки Средства измерений База данных Процедуры обработки Хранилище данных Анализ результатов Определение целей тестирования Разработка программы и методики испытаний Подготовка к тестированию Подача нагрузки Интерпретация и анализ результатов Сбор данных Метамодель требований : Модель требований Модель системыМодель измерений Метамодель измеренийМетамодель системыМетамодель нагрузки Модель нагрузки Программа и методика испытаний Протокол

Система автоматизированного нагрузочного тестирования Модели требований, нагрузки и системы Отчет о нагрузочном тестировании Генератор тестовых данных Генератор тестовых данных Графический интерфейс нагрузочного тестирования Графический интерфейс нагрузочного тестирования Генерация отчетов Нагрузка БД САТ Предварительная нагрузка Основная нагрузка Регламентные процедуры завершения дня САНТ База тестовых данных Регламентные процедуры подготовки отчетности Данные Имитация действий пользователя Компоненты сбора данных о функционировании стенда Базы данных Сервер обработки 40 обработчиков 80 виртуальных серверов доступа и контроля 40 входных очередей Стенд АБС АРМы пользователей 40 баз данных Тестовыесообщения Данные о НТ Модели требований и измерений ЕС-лизинг IBM Rational

Спасибо за внимание!