29
И ТЕСТИРОВАНИЯ ПРОЕКТА C ДЛИННЫМ ЖИЗНЕННЫМ ЦИКЛОМ ОРГАНИЗАЦИЯ РАЗРАБОТКИ ригорий Добряков g_dobryakov MI.CMS

И ТЕСТИРОВАНИЯ ПРОЕКТА

  • Upload
    pegeen

  • View
    56

  • Download
    0

Embed Size (px)

DESCRIPTION

И ТЕСТИРОВАНИЯ ПРОЕКТА. ОРГАНИЗАЦИЯ РАЗРАБОТКИ. C ДЛИННЫМ ЖИЗНЕННЫМ ЦИКЛОМ. Григорий Добряков @g_dobryakov UMI.CMS. ЦИКЛ КОРОТКОГО ПРОЕКТА. ЦИКЛ ДЛИННОГО ПРОЕКТА. ОТКУДА БЕРЁТСЯ ДЛИННЫЙ ПРОЕКТ ?. Революционная идея ? Тщательное бизнес-планирование ? Большие стартовые инвестиции ? - PowerPoint PPT Presentation

Citation preview

Page 1: И ТЕСТИРОВАНИЯ ПРОЕКТА

И ТЕСТИРОВАНИЯ ПРОЕКТА

C ДЛИННЫМ ЖИЗНЕННЫМ ЦИКЛОМ

ОРГАНИЗАЦИЯ РАЗРАБОТКИ

Григорий Добряков@g_dobryakovUMI.CMS

Page 2: И ТЕСТИРОВАНИЯ ПРОЕКТА

ЦИКЛ КОРОТКОГО ПРОЕКТА

Page 3: И ТЕСТИРОВАНИЯ ПРОЕКТА

ЦИКЛ ДЛИННОГО ПРОЕКТА

Page 4: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОТКУДА БЕРЁТСЯ ДЛИННЫЙ ПРОЕКТ?

1.Революционная идея?

2.Тщательное бизнес-планирование?

3.Большие стартовые инвестиции?

4.Случайно.

Page 5: И ТЕСТИРОВАНИЯ ПРОЕКТА

КРАТКОСРОЧНЫЙ ПРОЕКТ

Задача A Задача Б Баги А Баги Б

Допустим, есть две одинаковых задачи

Page 6: И ТЕСТИРОВАНИЯ ПРОЕКТА

ДОЛГОСРОЧНЫЙ ПРОЕКТ

Задача Г Задача Д A Д Б Д A Д В Д

Трудоёмкость – это не календарный срок!Задача Б выполняется в N раз дольше.

Page 7: И ТЕСТИРОВАНИЯ ПРОЕКТА

КРАТКОСРОЧНЫЙ ПРОЕКТ

F F F F

Допустим, факап раз в две недели

Page 8: И ТЕСТИРОВАНИЯ ПРОЕКТА

ДОЛГОСРОЧНЫЙ ПРОЕКТ

F F F F

F F F F

F F F F

F F F F

F F F F F F F F F F

А ещё остаются баги с предыдущего витка

Page 9: И ТЕСТИРОВАНИЯ ПРОЕКТА

КОМАНДА НА СТАРТЕ

Бойцы

Ботаны

Стажёры

Лидеры

Page 10: И ТЕСТИРОВАНИЯ ПРОЕКТА

КОМАНДА ЧЕРЕЗ N ЛЕТ

Бойцы перегорел

и

Ботаны остались

Стажёры

выросли

Лидеры ушли

Page 11: И ТЕСТИРОВАНИЯ ПРОЕКТА

МОТИВАЦИЯ КОМАНДЫ

Низкая мотивация

Высокая мотивация

Высокая квалификация

Слабое звено

Лидер

Низкая квалификация

Мальчик для битья

Рабочая лошадка

Двигаем слабое звено

Page 12: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОРГАНИЗАЦИЯ КОМАНДЫ

Задача A Задача Б

A Б A Б A Б A Б

Неправильно:

Задача A Задача Б Задача В Задача Г

Правильно: делает один человек, а чинит другой

Баги А Баги Б Баги В Баги Г

1)Нормальное планирование;2)О каждой задаче знает как минимум 2 человека;3)Специализация по задачам и по багам отдельно;4)Отдел саппорта сразу щупает функционал.

Page 13: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОРГАНИЗАЦИЯ КОМАНДЫ

Люди бизнеса Технический чувак

Девелопер

Девелопер

Девелопер

Page 14: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОРГАНИЗАЦИЯ КОМАНДЫ

Люди бизнеса Технический чувак

Девелопер

Девелопер

Девелопер

Page 15: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОРГАНИЗАЦИЯ КОМАНДЫ

Девелопер

Девелопер

Девелопер

Технический чувак

Не противься силе, используй её в своих интересах.Менеджер отвечает за эффективное использованиевыделенных ему ресурсов.

Page 16: И ТЕСТИРОВАНИЯ ПРОЕКТА

РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ

Как это обычно бывает

Page 17: И ТЕСТИРОВАНИЯ ПРОЕКТА

РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ

Как это обычно решается

Page 18: И ТЕСТИРОВАНИЯ ПРОЕКТА

РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ

Чем вам это грозит через несколько лет

Баг Баг Баг Баг Баг Баг Баг Баг Баг Задача X

А давайте сделаем задачу X?

Задача X сделана.Все устали.

Page 19: И ТЕСТИРОВАНИЯ ПРОЕКТА

РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ

Как надо на самом деле

Мы это сделаем не сейчас.Сейчас мы сделаем не это.

Page 20: И ТЕСТИРОВАНИЯ ПРОЕКТА

ИНСТРУМЕНТЫ И ПРОЧИЕ ОБЛАКА

1.Тикет-система для сбора заявок от клиентов.

2.Таск-трекер и баг-трекер с очередью задач.

3.Система контроля версий (svn, git)

4.Система автоматического тестирования

5.Тестовая платформа.

6.Система деплоя и обновления.

Облако

Page 21: И ТЕСТИРОВАНИЯ ПРОЕКТА

ПРИЧЁМ ТУТ ОБЛАКО?

- Тестировать продукт нужно в 100500 различных средах и окружениях.- Поднимать или перенастраивать физические сервера займёт до 99% времени.- Вам нужно средство, которое позволит быстро создавать виртуалки нужной конфигурации.- Так же оно используется для имитации окружений клиентов.

Облако

Page 22: И ТЕСТИРОВАНИЯ ПРОЕКТА

ОБЫЧНАЯ ЛИНЕЙНАЯ РАЗРАБОТКА

- Мы всё закончили!- А что осталось?- Пофиксить баги, задеплоить….

Page 23: И ТЕСТИРОВАНИЯ ПРОЕКТА

ПАРАЛЛЕЛЬНАЯ РАЗРАБОТКА

В центральной ветке у вас всегда стабильныйпродукт. Релизиться (или деплоить) можно

хоть “каждый день”.

Фича А Фича Б

Фича В

Page 24: И ТЕСТИРОВАНИЯ ПРОЕКТА

ФУНКЦИОНАЛЬНОЕ ТЕСТИРОВАНИЕ

ТестыХотелки

Page 25: И ТЕСТИРОВАНИЯ ПРОЕКТА

РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ

Тесты

Хотелки

100500 лет

Page 26: И ТЕСТИРОВАНИЯ ПРОЕКТА

ТЕСТИРОВАНИЕ ВНЕДРЕНИЙ

ТестыСервераклиенто

в

Сложности:1) Неподходящие окружения.2) Нет доступа к ssh.3) Маленькие таймауты.4) Заблокирован вывод ошибок.5) Нет доступа к логам.

Page 27: И ТЕСТИРОВАНИЯ ПРОЕКТА

FOOL-PROOF

Защита исходного кода продуктаот неквалифицированных изменений клиентом.

- Зачем это надо?- Как это сделать?

- Как предоставить возможность

для легального внедрения кастомного функционала?

- Как быстро анализировать внедрения?

Page 28: И ТЕСТИРОВАНИЯ ПРОЕКТА

LONG-TIME SUPPORT

Поддержка и багфиксинг старых версий.

Нужно:- База ошибок и рецептов по их исправлению (knowledge base).- Возможность сборки продукта старой версии и на старом окружении.- Функциональные тесты, хранящиеся в svn синхронно с развитием продукта.

Page 29: И ТЕСТИРОВАНИЯ ПРОЕКТА

Григорий Добряков

twitter: g_dobryakove-mail: [email protected]

www.umi-cms.ru

УДАЧИ :-)