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

Preview:

DESCRIPTION

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

Citation preview

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

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

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

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

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

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

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

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

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

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

4.Случайно.

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

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

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

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

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

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

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

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 F F F F

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

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

Бойцы

Ботаны

Стажёры

Лидеры

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

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

и

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

Стажёры

выросли

Лидеры ушли

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

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

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

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

Слабое звено

Лидер

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

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

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

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

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

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

A Б A Б A Б A Б

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

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

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

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

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

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

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

Девелопер

Девелопер

Девелопер

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

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

Девелопер

Девелопер

Девелопер

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

Девелопер

Девелопер

Девелопер

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Облако

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

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

Облако

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

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

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

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

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

Фича А Фича Б

Фича В

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

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

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

Тесты

Хотелки

100500 лет

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

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

в

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

FOOL-PROOF

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

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

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

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

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

LONG-TIME SUPPORT

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

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

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

twitter: g_dobryakove-mail: dg@umisoft.ru

www.umi-cms.ru

УДАЧИ :-)

Recommended