1 / 29

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

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

pegeen
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

  4. ОТКУДА БЕРЁТСЯ ДЛИННЫЙ ПРОЕКТ? Революционная идея? Тщательное бизнес-планирование? Большие стартовые инвестиции? Случайно.

  5. КРАТКОСРОЧНЫЙ ПРОЕКТ Допустим, есть две одинаковых задачи

  6. ДОЛГОСРОЧНЫЙ ПРОЕКТ Трудоёмкость – это не календарный срок! Задача Б выполняется в N раз дольше.

  7. КРАТКОСРОЧНЫЙ ПРОЕКТ Допустим, факап раз в две недели

  8. ДОЛГОСРОЧНЫЙ ПРОЕКТ А ещё остаются баги с предыдущего витка

  9. КОМАНДА НА СТАРТЕ Лидеры Бойцы Ботаны Стажёры

  10. КОМАНДА ЧЕРЕЗ N ЛЕТ Лидеры ушли Бойцы перегорели Ботаны остались Стажёры выросли

  11. МОТИВАЦИЯ КОМАНДЫ Двигаем слабое звено

  12. ОРГАНИЗАЦИЯ КОМАНДЫ Неправильно: Правильно: делает один человек, а чинит другой Нормальное планирование; О каждой задаче знает как минимум 2 человека; Специализация по задачам и по багам отдельно; Отдел саппортасразу щупает функционал.

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

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

  15. ОРГАНИЗАЦИЯ КОМАНДЫ • Девелопер • Девелопер • Девелопер • Технический чувак Не противься силе, используй её в своих интересах. Менеджер отвечает за эффективное использование выделенных ему ресурсов.

  16. РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ Как это обычно бывает

  17. РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ Как это обычно решается

  18. РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ Чем вам это грозит через несколько лет А давайте сделаем задачу X? Задача X сделана. Все устали.

  19. РАБОТА С БОЛЬШИМ ОБЪЁМОМ ЗАДАЧ Как надо на самом деле Мы это сделаем не сейчас. Сейчас мы сделаем не это.

  20. ИНСТРУМЕНТЫ И ПРОЧИЕ ОБЛАКА Тикет-система для сбора заявок от клиентов. Таск-трекер и баг-трекер с очередью задач. Система контроля версий (svn, git) Система автоматического тестирования Тестовая платформа. Система деплоя и обновления. Облако

  21. ПРИЧЁМ ТУТ ОБЛАКО? Облако - Тестировать продукт нужно в 100500 различных средах и окружениях. - Поднимать или перенастраивать физические сервера займёт до 99% времени. - Вам нужно средство, которое позволит быстро создавать виртуалки нужной конфигурации. - Так же оно используется для имитации окружений клиентов.

  22. ОБЫЧНАЯ ЛИНЕЙНАЯ РАЗРАБОТКА • Мы всё закончили! • А что осталось? • Пофиксить баги, задеплоить….

  23. ПАРАЛЛЕЛЬНАЯ РАЗРАБОТКА ФичаА Фича Б Фича В В центральной ветке у вас всегда стабильный продукт. Релизиться (или деплоить) можно хоть “каждый день”.

  24. ФУНКЦИОНАЛЬНОЕ ТЕСТИРОВАНИЕ Тесты Хотелки

  25. РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ 100500 лет Тесты Хотелки

  26. ТЕСТИРОВАНИЕ ВНЕДРЕНИЙ Сервера клиентов Тесты Сложности: Неподходящие окружения. Нет доступа к ssh. Маленькие таймауты. Заблокирован вывод ошибок. Нет доступа к логам.

  27. FOOL-PROOF Защита исходного кода продукта от неквалифицированных изменений клиентом. - Зачем это надо? - Какэто сделать? - Как предоставить возможность длялегального внедрения кастомного функционала? - Как быстро анализироватьвнедрения?

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

  29. УДАЧИ :-) Григорий Добряков twitter: g_dobryakov e-mail: dg@umisoft.ru www.umi-cms.ru

More Related