Понятие дефекта Виды дефектов. План 1.Основные определения 2.Немного истории 3.Таксономия дефектов 4.Версии программного продукта Системы контроля версий.

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



Advertisements
Похожие презентации
24 декабря 2009 года Ознакомительный семинар. План Что такое тестирование? Роль тестировщика в проекте Обязанности тестировщика Инструменты Литература.
Advertisements

Контроль качества по SWEBOK Данилов Евгений
Тестирование Обеспечение качества. Тема 7 тестирование2 Аттестация и верификация Обзоры Инспекционные проверки Сквозной контроль.
Технология обеспечения качества Компилятора Александр Конев 4 февраля 2010.
Жизненный цикл программного обеспечения Подготовил студент 1 курса Лось Павел.
Вехи проекта Microsoft Solution Framework. Содержание Утверждение целей и границ Утверждение плана проекта Завершение разработки/Первое использование.
Ранжирование функциональных требований. Критерии ранжирования функциональных требований широта сферы применения; степень детализации; функциональный.
Жизненный цикл программного обеспечения Лекция 4.
ТЕСТИРОВАНИЕ МЕТОД «ЧЕРНОГО ЯЩИКА» ВЫПОЛНИЛ СТУДЕНТ ГР. ИВТ-51 з БАННИКОВА Н.Р.
ТЕСТИРОВАНИЕ МЕТОД «ЧЕРНОГО ЯЩИКА» ВЫПОЛНИЛ СТУДЕНТ ГР. ИВТ-51 з БАННИКОВА Н.Р.
Система отслеживания ошибок (англ. bug tracking system) прикладная программа, разработанная с целью помочь разработчикам программного обеспечения (программистам,
EXtreme Programming XP Тема 2. XP Заказчики определяют: объем работ; приоритеты; композиции версий; сроки выпуска версий. Разработчики определяют: оценку.
Организация процесса тестирования ПО Петренко Ольга QA Team Leader.
Основы построения телекоммуникационных систем и сетей Лекция 16 «Методы оценки надежности» профессор Соколов Н.А.
Лекция 5. Модели надежности программного обеспечения Учебные вопросы: 1. Классификация моделей надежности 2. Аналитические модели надежности 3. Эмпирические.
Slide 1 Количественные критерии качества тестирования.
Программные средства для управления жизненным циклом приложений (Application lifecycle management -ALM) 16 октября 2009 г. Дмитрий Стрельников, Руководитель.
Положение об отделе В.Андреев, Д.Сатин. Штат отдела начальник отдела; бизнес-аналитик; проектировщик пользовательских интерфейсов; специалист по анализу.
Bugzilla – единый проектный инструментарий Тихонов Александр руководитель проекта.
2 Основным понятием программной инженерии является понятие жизненного цикла ПО. Жизненный цикл ПО (software lifecycle) – это период времени, который начинается.
Транксрипт:

Понятие дефекта Виды дефектов

План 1. Основные определения 2. Немного истории 3. Таксономия дефектов 4. Версии программного продукта Системы контроля версий 5. Жизненный цикл дефектов Bug Tracking Systems Описание дефекта

Ошибки в ПО - все возможные несоответствия между демонстрируемыми характеристиками его качества и сформулированными или подразумеваемыми требованиями и ожиданиями пользователей. Англ. термины, кот. часто переводят как «ошибка»: defect самое общее нарушение каких-либо требований или ожиданий, не обязательно проявляющееся вовне (нарушения стандартов кодирования, недостаточная гибкость системы и пр.). failure наблюдаемое нарушение требований, проявляющееся при каком-то реальном сценарии работы ПО. Это можно назвать проявлением ошибки. fault, error Неформальные определения

fault ошибка в коде программы, вызывающая нарушения требований при работе (failures), то место, которое надо исправить. Что именно надо исправлять, зависит от дополнительных условий, выполнение которых мы хотим при этом обеспечить, хотя в некоторых ситуациях наложение дополнительных ограничений не устраняет неоднозначность. error используется в двух смыслах: –Ошибка в ментальной модели программиста, в его рассуждениях о программе, которая заставляет его делать ошибки в коде (faults). –Некорректные значения данных, которые возникают при ошибках в работе программы Продолжение

Определения по стандарту Отказ (IЕЕЕ - fault) - наблюдаемое аномальное поведение любого объекта, такое как несоответствие требованиям и возникновение незапланированных явлений - (симптом). Сбой (IЕЕЕ - failure) - просчет в проектировании, ведущий к появлению отказов (симптомов) у какого-либо тестируемого объекта при прохождении этим объектом определенного теста - (ошибка).

Основные определения (2) If anything can go wrong – it will Недостаток (Fault) / Дефект (Defect) – некорректное поведение системы, вызывающее сбой Сбой (Failure) – наблюдаемый нежелательный эффект, вызванный дефектами в системе Ошибка (Error) – человеческое действие, которое вызывает некорректный результат работы системы Все это – баги (bugs)

Немного истории Mark II Aiken Relay Calculator "First actual case of bug being found" Появление терминов Bug и Debugging

Таксономия дефектов Недостаточно просто фиксировать дефекты – их надо классифицировать 2 основных признака классификации: Серьезность (severity) – степень влияния дефекта на продукт Приоритет (priority) – степень важности/срочности исправления дефекта их соотношение определяется спецификой проекта

Таксономия дефектов (2) 1 Severity (серьезность): фатальная (fatal) серьезная (serious) ошибка неудобства (inconvenient) косметическая (cosmetic) предложение по улучшению (suggestion for improvement, feature request) Priority (приоритет): высокий (high) нормальный (medium) низкий (low)

Версии программного продукта Beta Bug Convergence Zero-Bug Release Release Candidate Golden Release 0 Active Bugs Time Альфа (Alpha) – версия с основной функциональностью, готовая к внутреннему тестированию Бета (Beta) – версия с основной функциональностью, готовая к тестированию внешними тестерами или пилотными пользователями

Версии программного продукта (3) Точка конвергенции багов (Bug Convergence) Точка проекта, в которой количество исправленных багов намного превосходит количество найденных Трудно вычислить эту точку, так как количество багов – величина постоянно меняющаяся Показывает скорее тренд, а не состояние проекта Beta Bug Convergence Zero-Bug Release Release Candidate Golden Release 0 Active Bugs Time

Версии программного продукта (4) Версия «0 багов» (Zero-Bug Release) Первая версия проекта, в которой все выявленные баги высокого и среднего приоритета исправлены Требует проведения анализа багов, их приоритета «Начало конца» Beta Bug Convergence Zero-Bug Release Release Candidate Golden Release 0 Active Bugs Time

Версии программного продукта (5) Версия «Кандидат» (Release Candidate) Версия проекта, на которой проводится финальное тестирование Собирается, когда продукт потенциально готов к выпуску После финального тестирования может появиться необходимость еще одного «кандидата» Beta Bug Convergence Zero-Bug Release Release Candidate Golden Release 0 Active Bugs Time

Версии программного продукта (6) Версия «Выпускной» (Golden Release) Утвержденный «кандидат» Закончена разработка Закончено тестирование Подписаны документы Beta Bug Convergence Zero-Bug Release Release Candidate Golden Release 0 Active Bugs Time

Системы контроля версий Системы контроля версий – системы, обеспечивающие целостность кода и проектной документации при многопользовательской работе ведение нескольких веток проекта резервное копирование исходников VSS (Visual Source Safe) CVS – (Concurrent Versions System) Rational ClearCase

Системы контроля версий Схема системы Система контроля версий Game.cpp v.1.0 Game.cpp v.1.1 Game.cpp v.1.2 Game.cpp v.2.0 Репозиторий Клиент A Game.cpp v.2.0 Клиент B Game.cpp (изм.) Клиент C Game.cpp v.1.1 Протокол

Жизненный цикл дефектов Исправление Программист Проверка Тестер Классификация, назначение программиста Старший тестер Описание Тестер Баг закрыт Открыт В разработке Готов к проверке Зафиксирован

Bug Tracking Systems Поддерживают жизненный цикл дефектов Test Track (Pro) Разработчик - Seapine Software Клиент\серверный баг-трекер для Windows Rational ClearQuest IBM Rational Bugzilla Mozilla

Описание дефекта Краткое описание Детальное описание Прикрепленные файлы История дефекта

Заключение В процессе тестирования установлено, что поведение системы отличается от спецификации Определили, что это дефект (bug) Система контроля версий Зафиксировали, классифицировали Баг-трекинг система