Слайд 2*
Содержание
Что такое качество?
Качество Компилятора
Инструментальная поддержка QA
Легче найти ошибку,
чем истину
Слайд 3*
Что такое качество?
В программном продукте (ПП) есть ошибка (баг), если ПП не
выполняет того,
что пользователю разумно от него ожидать.
Надежность ПП есть вероятность его работы корректно и без отказов в течение определенного периода времени.
Баги бывают разной серьезности.
Требования к надежности Компилятора
очень высокие.
Слайд 4*
Что такое качество?
Способы достижения надежности:
Культура программирования и технология
Язык программирования и
инструментарий
Качественное тестирование
Слайд 5*
Что такое качество?
Стоимость:
Проектирование
Программирование
Тестирование
Сопровождение
Г. Майерс
Надежность программного обеспечения
М. «Мир» 1980
Слайд 6*
Содержание
Что такое качество?
Качество Компилятора
Инструментальная поддержка QA
Легче найти ошибку,
чем истину
Слайд 7*
Качество Компилятора
Stability – Компилятор работает корректно и без сбоев. Важнейший критерий качества.
Performance
– Компилятор генерирует эффективный код. Основной критерий сравнения с конкурентами.
Время компиляции – для оптимизирующего компилятора вспомогательный критерий.
Слайд 9*
Зачем измерять качество?
Качество – абстрактное понятие,
но жизь заставляет иметь конкретные оценки.
Не ухудшилось ли качество очередной версии Компилятора?
При развитии Компилятора или исправлении бага, могут появиться новые баги.
Качество следует контролировать постоянно,
и поэтому должны быть критерии.
Слайд 10*
QA mainline
Quality Assurance – (Гарантия качества) Запланированный набор систематических деятельностей гарантирующий, что
любые отклонения от процесса четко определены, проанализированы и направлены на его улучшение для достижения более точного соответствия с поставленными требованиями.
Слайд 11*
1.0
2.0
1.0 beta
Feature
freeze
Code
freeze
Planning Design Development Testing & Debugging Deployment
Planning Design Development
Слайд 12*
Несколько из критериев
Процент прохождения тестов
общий
на ключевые features
Регрессия в сравнении с предыдущей версией
Количество
дефектов
Улучшение Performance
Слайд 13*
Stability
Ежедневных 6 тестовых прогонов на различных платформах
Более 60 различных недельных тестовых прогонов
Performance
Еженедельные
прогоны на 6 платформах на большом многообразии классов машин
Слайд 14*
Содержание
Что такое качество?
Качество Компилятора
Инструментальная поддержка QA
Легче найти ошибку,
чем истину
Слайд 15*
Инструментальная поддержка QA
Тестовая база
NetBatch
Test harness & TRAQ
Bug tracking
system
TMT
Слайд 16*
Тестовая База
Структурированное хранилище тестов и всего необходимого для их исполнения
Тесты объединены в
сюиты
Позволяет определить специфические условия исполнения для каждого теста или для всей сюиты
Слайд 17*
Тестовая База
Тесты на покрытие
Большие приложения
Regression тесты
Тесты, полученные генератором
тестов
Слайд 18*
NetBatch
Множество машин нескольких классов
с системой распределения задач по машинам.
Обеспечивает выделение
машины под задачу согласно классу.
Машины одного базового класса «одеты» одинаково.
Слайд 19*
Test harness
Построение Компилятора
Исполнение набора тестовых сюит или отдельных тестов
Распараллеливание тестового прогона
на несколько машин различных конфигураций
Управление множественными прогонами
Запись результатов в TRAQ
Генерация отчетов
Слайд 20*
Mainline 12.0
Intel(R)64 Linux rel_el40_ntv
SUMMARY
Quality of test run: moderate,<100 NF
Compiler Build: efi2linux ntv110
20100122_010000
Location: \\nnsfiler01\cmplrarch\unpack\mainline\lin32e_native\20100122_010000
Scratch: \\scnbscrux03.sc.ids1.intel.com\scrlx3s1\nstester\efi2linux_110-el40_ntv110_20100122_010000\efi2\lx_test_nb_nbr_1
Capture Time: 2010-01-22 01:00:00 UTC
Testing Time: 0 days 8 hrs 40 min
D0P0x nightly build
New Fails: 52
Outstanding Fails since 11/7/2006 12:00:00 AM: 0
Not Analyzed: 0
New Passes: 29
C/C++:total pass rate = 148504 148160 99.77
spec2006* pass rate = 110 109 99.09
Слайд 21*
TRAQ
База данных для результатов тестирования.
Хранятся только падения тестов.
Причина падения: номер бага в
ClearQuest.
Кто записал номер бага.
Сообшение при падении.
Результат ChangeSet анализа
Слайд 22*
Bug Tracking System
Bugzilla, Mantis, RequestTracker, ClearQuest
Функции:
Учет и регистрация найденных дефектов
или заданий для разработки
Классификация дефектов
Поддержка жизненного цикла дефекта
Сохранение истории коммуникации по дефектам
Слайд 23*
ClearQuest
Осмысленное краткое название
Как воспроизвести
Тест
Платформа / environment configuration
Версия продукта
Краткий протокол исполнения
Приоритет
Виновная компонента /
changeset
Рекомендации по исправлению (если есть)
Слайд 24*
ClearQuest
Bug status:
New
Assigned
Implemented
Verified
Closed
Deferred
Bug resolution:
Cannot Reproduce
Duplicate
Not a Defect
Software Change
Will Not Fix