45
Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя темп? Александр Сербул руководитель направления

Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Embed Size (px)

Citation preview

Page 1: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно

ускоряя темп?

Александр Сербулруководитель направления

Page 2: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Карл… Карл, я работаю по

Scrum в духе Agile.

Стендапы, спринты,

ДЕМОНстрации…

Это очень круто,

пап!

Page 3: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Карл… Карл, я специалист по

BigData….

Это очень круто, пап!

Но проекты заканчиваются фашизмом, разработчики отправляются на каторгу и … меня они достали, ДОСТАЛИ!!! Горите все в аду! В АДУ!!!

Page 4: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

«Иди и смотри…»

• Про Agile много говорят…

• Про Agile много пишут…

• Все такие умные умные…

• Но увидеть «настоящий Agile» удается

мало кому – многие его не видели в глаза.

«Agile – это редкий, но меткий резонанс

людей и инструментов в некоторых

компаниях и проектах» (С)

Page 5: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Экономия на процессах, на

качестве… страх/жадность?

• Эпоха beta-quality веб-проектов

• Дырявые unit-тесты, дань

моде/самообман?

• Массовая некомпетентность инженеров…

• Массовая некомпетентность

менеджмента…

• Запах пороха забыли!

Page 6: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Хайп, болтовня и «армии зомби»

• Навязанные ценности (iphone)

• Навязанное общение (facebook)

• Раздолбайское образование, понты и

неуверенность в завтрашнем дне

• Бигдата, нейронные сети… магия,

оккультизм, нумерология, астрология

«Зачем тебе iphone? Иди алгебру учи, дура! » (С)

Page 7: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Это мы, мастурбирующие с «прямоугольным

калькулятором» все свободное время

Page 8: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Как облегчить «страдания»

человечества?

• Данных становится много…

• Управление «сложностью»

• Представительство в интернете

• Комфортная работа

сотрудников над проектами

• Чуткое управление компанией

Page 9: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Алгоритмы… «старые» и «новые»

• Старые добрые алгоритмы (поиск,

сортировка, графы)

• Классическая реляционная алгебра

• Распределенные системы, NoSQL,

бигдаты

• Быстрые коммуникации, highload

• Машинное обучение и нейронные

сети

Page 10: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Ну что, рубанем правду-

матку?

Page 11: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Я искал/внедрял Agile в разных

компаниях

• Администрация Президента России

• Сбербанк России, Юго-Западный

банк

• Веб-студия QSOFT

• Softline, allsoft.ru

• Но внезапно нашел его в

девственной и правильной форме в

Битрикс И он работает, епта!

Я думал, что знаю об Agile все, что

можно и нельзя,

но был посрамлен…

Page 12: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

«Миллионер из трущоб» - откуда он все

знал?

• Внимательность к мелочам

• Опыт, опыт, опыт

• Уважение к людям

• Любовь к братьям и сестрам

• Инженерная хитрость

• Удача!

Page 13: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Гибкое

управление

требованиями

Page 14: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Отделить зерна от плевел…

«Но он сказал: нет, чтобы, выбирая плевелы, вы не выдергали вместе с

ними пшеницы; оставьте вместе расти то и другое до жатвы; и во время

жатвы я скажу жнецам: соберите прежде плевелы и свяжите их в

связки, чтобы сжечь их, а пшеницу уберите в житницу мою»

(Евангелие от Матфея, гл. 13, ст. 24—30)

Page 15: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Лебедь, рак, щука и … медведь

• Страх

• Перетягивание одеяла, понты

• Корпоративный срач

• Самоутверждение за счет

разработчиков

• Мертворожденные проекты

• Загнивающая каша в ТЗ

Page 16: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

StoryMapping идей

• idea.1c-bitrix.ru

• ~10к идей

• Коллаборативное обсуждение,

партнеры

• Ранжирование

• Экспертиза рынка

• ModelStorming и прототипы

• Метафоры, роль генерального

• Примеры…

Page 17: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Гибкое

планирование

Page 18: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Strip Poker

• Planning poker – как

средство принуждения

• Оценки «от глобальной

балды»

• Время на аналитику и

проектирование

• Product owner/customer

representative

Page 19: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

“Expert” aided planning

• Опытные архитекторы, техн.

эксперты и аналитики

«оценивают» MMF

• Дополнительное проектирование

• Прототипы – на выброс

• Исполнитель может обратиться в

Европейский суд по правам

человека

Page 20: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Подбор сотрудников

Page 21: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Соль несоленая…

«Вы - соль земли. Если же соль потеряет силу, то чем сделаешь ее

соленою? Она уже ни к чему негодна, как разве выбросить ее вон на

попрание людям.»

(Мф. 5:13)

Page 22: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Инкапсуляция, полиморфизм и

наследование

• Вы не знаете Haskell? Почему??

• Вы не отличаете Монады от Функторов?

• Как, у вас нет ФП/ООП головного мозга?

• Вы не мастурбируете на многотомник Кнута?

Ну почему??

• Вы не помните алгоритм сортировки Шелла

на память??? Вы что, с ума сошли?

Хорошо что у нас не так

Page 23: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Любовь или … смерть!

• 50 строк кода в день?

• Домой в 18:00?

• Выходные с семьей?

• Баги найдут тестировщики?

Щаз.

Ты не влюблен в

программирование??? Ты не

любишь красоту и

лаконичность???

Page 24: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Технологический фанатизм и экзорцизм

• Глубокое погружение до регистров

процессора

• Реляционный экзорцизм

• PHP на уровне исходников на C

• Unix – как образ жизни и смерти

• Веб-технологии – как

инфраструктура

• C++/Java/C#/Lua

Page 25: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Гибкое проектирование

в итерациях

Page 26: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

ТЗ на ВСЁ… про ВСЁ

• Давайте все формально опишем, … в

UML, UseCases и другие диаграмки

• Нарисуем модель данных SQL и повесим

ее на стену в коридоре

• Давайте писать эмоциональные

UserStories и разбивать их на подзадачки

• ТЗ по ГОСТу

Page 27: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Как мы проектируем и почему так серьезно

• Роль архитектора

• Роль системного аналитика

• Роль здравого смысла: цепочки и данные

• Роль топ-менеджеров и гендира

• Иногда писать ТЗ полезно

• Когда ХЗ лучше ТЗ, а когда хуже

• Влияние астральной планеты

«Прозерпина» на схему SQL-таблиц

нового модуля

Прозерпи́на (лат. Proserpina) — в древнеримской

мифологии богиня подземного царства,

соответствующая древнегреческой Персефоне, дочь

Юпитера и Цереры, племянница и супруга Плутона

Page 28: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Iconix, XP, метафоры и simple design

• Не тормозни, сникерсни …

Page 29: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Еще квадратиков! По Амблеру…

Page 30: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Еще квадратиков! По Кенту Бэку…

Page 31: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Программирование в

итерациях

Page 32: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Что частенько бывает…

• Каждый за себя! Спасайся кто

может!

• Я в домике

• Собственный вариант CodeStyle

• Кто больше умничает, тот и круче

• ООП головного мозга

• ФТ головного мозга

• Предварительная оптимизация

головного мозга

• Дом интеллектуальной терпимости

Page 33: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

XP, как оно есть

• Модели классов, диаграммы

последовательности, схемы

данных

• Коммуникации разработчиков

• Феноменальная доступность

экспертов, топов и

технического директора

• Программируют все

• Simple Design

• Metaphor

• Coding Standards

• Pair Multi Programming

• Whole Team?

• Micro Releases

Page 34: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

XP, как оно есть

Page 35: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Управление изменениями

• Матрица зависимостей

• Юнит-тесты и психоз

• Люди и модули

• Архитектура и здравый смысл

• Документация – почему и

куда

• Тестирование изменений

• Цена ошибки

Page 36: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Демонстрации, роль дедлайна

и “sustainable pace”

Page 37: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Как не наложить в штаны

• Соломка, юнит-тесты,

модульные тесты и фазы Луны

• Коммуникации в команде, между

команд, между подразделениями

• Участники «демонстрации»

• Партнеры и клиенты

• Битрикс24

Page 38: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Еще квадратиков! По Рыжикову…

«Метод кратковременных

направленных толчков»https://dev.1c-bitrix.ru/community/blogs/rsv/323.php

Принцип «Кимэ» в карате.

Берсерки, правда и легенды.

Page 39: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Как отдыхают разработчики

• Бордели

• Коррида

• Полеты в космос

• Реинкарнация

• Партнерские конференции

• Корпоративы

Page 40: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Почему это работает???

Ну как???

Page 41: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Корпоративные ценности

Page 42: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Коммуникации

• Вики

• Задачи

• Планерки

• Почта

• Чаты

• Роль «скрам-мастеров»

Page 43: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Менеджмент

• Постановка и контроль задач

• Делегирование ответственности

• Управление временем

• Управление рисками

• Кадровая политика

• Роль творчества

• Роль коучинга

Page 44: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Отношение к партнерам и клиентам

• Коммуникации

• Win&Win

• Что значит «полезно»

• Решение совместных проблем

• Роль высокой компетентности

• Управление рисками

Page 45: Александр Сербул. Прикладное XP в «1С-Битрикс»: как развивать продукт более 10 лет, постоянно ускоряя

Спасибо за

внимание!

Вопросы?

Александр Сербул@AlexSerbul

[email protected]