Чернилевский Денис
Руководитель группы тестирования
ШТБС
Введение
Вы кто вообще такие?
5
Мы	
  команда!	
  J	
  
6
Рекламные системы Яндекса
•  2 команды: медийная и контекстная реклама
•  Несколько десятков человек
•  Автоматизация тестирования
•  Процессы и технологии
Вы узнаете про:
•  Процессы разработки и тестирования ПО
•  Анализ требований и проектирование
•  Автоматизацию тестирования
•  Командную работу и эффективное взаимодействие
Вам предстоит:
•  Учебный проект
•  Работа в команде
•  Интересные задания
•  Грабли J
•  Хорошее времяпрепровождение!
Понимание
+
Осознанный выбор
+
FUN! J
Чернилевский Денис
Руководитель группы тестирования
ШТБС: лекция 1
Софт
12
Что такое «софт»?
Софт – это:
•  «Прокладка» между вами и электроникой
•  Видимые и невидимые операции
•  Полезный эффект от «бесполезной» железки
Софт ВЕЗДЕ!
Откуда берется софт?
Вот уроды криворукие! J
Это живые люди!
Вы можете быть одним из них
J
Софт - людьми для людей!
Критерий качества
СЧАСТЬЕ ПОЛЬЗОВАТЕЛЕЙ!
(с) А. Волож J
Классификация софта
•  По уровню
•  По назначению
•  По важности
Классификация по уровню
Applica1on	
  
ОS	
  
Embedded	
  
30
Классификация по назначению
Развлечения	
  
Бизнес	
  
Промышленность	
  
Наука	
  
Классификация по важности
Non	
  
cri1cal	
  
Business	
  
cri1cal	
  
Mission	
  
cri1cal	
  
Уровень-важность
Важность	

Уровень	

Военные
ОС	

ОС
маршрутизаторов
Яндекс
прикладной/business critical
Процесс разработки в зависимости
от типа софта
35
Энтузиасты пишут свой вебсервис
•  Полет фантазии J
•  Отсутствие планирования
•  0 стоимость ошибки
•  Неоптимальные решения
•  Отсутствие документации
ИТ отдел банка пишет процессинг
•  Четкое ТЗ и документация
•  Проектирование архитектуры
•  Отдел аналитики
•  Разработка в соответствие с ТЗ
•  Контроль качества
Инженеры пишут софт для шаттлов
•  Многоуровневый контроль качества
•  Математически доказанные алгоритмы
•  Анализ тестового покрытия
Главное правило
Выше важность – выше
стоимость, сложнее процессы
Люди ошибаются!
..IT happens
К чему приводят ошибки?
2011 г. Bumblebee
Самая комментируемая
строчка на Github J
2008г. OpenSSL
При исправлении warning сообщения в Valgrind,
меинтейнер Debian пропатчил OpenSSL.
Генератор случайных чисел в OpenSSL был сломан…
Итог:
Баг продержался с 2006 по 2008 год.
Все ключи и данные были скомпрометированы…
(S/MIME, Tor, SSL, TLS)
2000г. Национальный институт рака.
ПО планирования радиационного излучения
Двойная доза радиации в редких случаях…
Итог:
8 смертей
20 случаев переоблучения
1996г. Ракета носитель Ariane 5
Взрыв после 40 секунд полета
Причина:
•  Слишком большое значение скорости
•  Переполнение буфера
•  Остановка процессора
•  Автоподрыв ракеты
Итог:
•  Минус $500 млн
•  Многолетняя работа
1993г. Intel Pentium
Ошибка на 0.006% при делении float
Итог:
•  $475 млн
•  Резкое падение продаж
•  Минус в карму
?
Спасибо!
Денис Чернилевский
dchr@yandex-team.ru

Денис Чернилевский - Вы кто вообще такие