Доклады / Программа
Проектирование продукта
Разработка продукта
9:00
9:15
9:30
9:45
10:00
10:15
10:30
10:45
11:00
11:15
11:30
11:45
12:00
12:15
12:30
12:45
13:00
13:15
13:30
13:45
14:00
14:15
14:30
14:45
15:00
15:15
15:30
15:45
16:00
16:15
16:30
16:45
17:00
17:15
17:30
17:45
18:00
18:15
18:30
18:45
19:00
19:15
19:30
19:45
Регистрация и приветственный кофе
Введение
- Обзор инженерных практик
- Цели и преимущества от их использования
- Понятие качества кода
- Знакомство
- Сбор ожиданий и пожеланий
- Содержание программы
- Обсуждаемые сценарий:
- существующий проект
- код не очень хорошего качества
- тестов нет или мало
- ничего не автоматизировано
Дмитрий Лобасев, Алексей Кривицкий, Никита Филиппов
Agile процесс: Scrum & Kanban
- Что такое Agile
- Симуляция Scrum
- Принципы КанБан
Ревью кода и парное программирование
- Зачем делать ревью кода
- Как делать ревью кода
- Роли и выбор ревьювера
- Практические советы по проведению ревью
- Возможно практическая часть на небольшом куске кода
- Принципы парного программирования
- Как работать в паре
- Техническое оснащение для работы в паре
- Стили парного программирования
- Разбиение участников на пары
- Возможно игровая симуляция на парное программирование
- Статические анализаторы кода на примере Sonar
Дмитрий Лайер
Концепция продукта / Проекта
- Зачем нужна
- Старт проекта или продукта и концепция
- Современные подходы к выработки концепции:
- Innovation Games: Product Box
- Vision Canvas
Модульное тестирование
- Необходимость модульного тестирования
- Преимущества для разработчика
- Основные принципы и правила модульного тестирования
- Приципы работы с моками
- Типы моков (stub, dummy, mock, spy)
- Техники написания модульных тестов
- Инструменты для написания модульных тестов
- Практическая демонстрация с участием желающих
- Тестирование базы данных, внешних сервисов, файловой системы
Обед
Рефакторинг
- Суть и задачи рефакторинга
- Примеры code smells
- Типы базовых рефакторингов с примерами в коде
- Использование IDE для рефакторинга
- Поддержка рефакторинга модульными тестами
- Работа в паре над примером, разбор результатов
Никита Филиппов
Проектирование и сбор требований используя StoryMapping
- Проблемы сбора требований в Agile
- Персоны и персонофикация пользователя системы/ продукта
- Создание карты требований
Автоматизация сборки
- Какие проблемы решает автоматизация сборки
- Что включать, какие шаги
- Выбор инструмента для сборки
- Практическая демонстрация автоматизации сборки
- Практики и полезные советы
Гапонов Максим
Бумажное прототипирование
- Как быстро создать и согласовать интерфейсы. Почему используют
- Бумажное прототипирование - быстрый способ разработать интерфейсы
- Создание бумажных прототипов
Continious Integration
- Принципы в основе CI
- Практики работы с CI
- Обзор инструментов
- Демонстрация работы инструмента (TeamCity, Hudson)
- Подключение проекта и настройка рабочего процесса
- Советы и полезные практики
Кофе-пауза
Автоматизированное функциональное тестирование
- Преимущества и недостатки автоматизации
- Регрессионная спираль смерти и способы борьбы с ней
- Инструменты для автоматизации
- Практическая часть с использованием Selenium
- Подходы и практики для надежных повторяющихся тестов
- Подключение тестов в имеющуюся инфраструктуру сборки
Вольфсон Борис
Планирование релизов и управление рисками в Agile
- Классическое управление рисками
- Управление рисками в Agile
- Симуляция "Управление рисками" в итеративной разработке
TDD
- Что такое TDD
- Правила и принципы работы TDD
- Преимущества от TDD
- Практические примеры для разных областей приложения
- TDD в функциональном тестировании
- Инструменты и особенности применения при TDD
Подведение итогов конференции раздача подарков















































