'

Смена web-платформы «на лету»

Понравилась презентация – покажи это...





Слайд 0

Смена web-платформы «на лету» Евгения Фирсова


Слайд 1

Постановка задачи


Слайд 2

Цель: смена среды исполнения. Проблемы: несовместимость новой среды исполнения со старым кодом; ограничение ресурсов. Постановка задачи


Слайд 3

Ограничения, метрики «прозрачность» для пользователей: отсутствие простоев; отсутствие новых требований к оборудованию/окружению пользователя; длительность «переходного» периода: затруднения при внедрении нового функционала; планирование «на потом»; качество работы в «переходный» период: новые требования к участникам процесса; масштаб усилий по синхронизации двух технологий.


Слайд 4

Проксирование запросов


Слайд 5

Выбор web-сервера «на входе»


Слайд 6

Выбор «добровольцев»


Слайд 7

Риски внутренние: ошибки при внедрении новых технологий; неоптимальное использование новых технологий; потеря функционала при переводе на новые технологии; непредсказуемость тестирования; бизнес: срыв сроков; «публичность» ошибок; несовпадение обещаний и результатов; организационные: отложенные проблемы с производительностью; ошибки в выборе новых технологий.


Слайд 8

Что влияет на оценку сроков ^ чем ближе мы к началу «переходного» периода, тем сильнее ошибаемся: в оценке скорости разработки; в оценках скорости и качества работы тестеров; ^ вероятность поддаться соблазну фонового проведения рефакторинга; ^v отказ от рефакторинга в пользу скорости внедрения функционала; ^ сходимость процесса разворачивания и поддержки новой среды; ^ непредсказуемый рост портала за «переходный» период.


Слайд 9

«Пересечения» кода код, без изменений работающий в обеих средах исполнения: подключаем из единого источника: физическая адресация к единой версии; средства системы контроля версий: амперсанд-модули cvs, svn:externals, … при сборке пакета/версии для релиза; (вероятно) двойное тестирование; код, требующий изменений для работы в обеих средах исполнения: планируем (не)синхронные изменения в старом коде; двойное тестирование; несовместимый код, выполняющий одинаковые/близкие функции: отслеживанием и синхронизируем изменения; двойное тестирование.


Слайд 10

Синхронизация изменений строго синхронно: единый визуальный или функциональный элемент на страницах, работающих в двух средах исполнения; поддержка процесса, требующего перехода по страницам, работающим в двух средах исполнения; первое внедрение изменений – в новый код: решаем, понадобиться ли когда-нибудь изменение в старом коде; первое внедрение изменений – в старый код : решаем, не стоит ли сразу перенести функционал в новый код: оцениваем стоимость перетестирования; оцениваем выгоды от использования новых технологий при реализации изменений; планируем отличия в реализациях для старой и новой сред исполнения.


Слайд 11

Специфика тестирования рост объёмов тестирования: проксирование; пересекающийся код; рост числа компонент; необходимость отслеживать, на какой среде исполнения работает функционал; проверка конфигураций проксирования; контроль за правильностью переноса конфигураций проксирования.


Слайд 12

Синхронные выкладки/релизы временное отключение части хостов от боевой среды: необходим пул хостов; половина пула должна выдерживать двойную нагрузку; последовательная выкладка закрытого «рубильниками» функционала с последующим синхронным включением: тех. возможность реализации «рубильников»; разработка и тестирование «рубильников».


Слайд 13

Конец «переходного» периода финальное переконфигурирование проксирования запросов между web-серверами; отключение старого web-сервера; чистка кода от ненужных «рубильников»; долгожданный подсчёт цыплят: качество выполнения поставленной цели; длительность «переходного» периода; что мы получили, помимо заказанного: качественный код после чистки и рефакторинга; опыт работы с новыми технологиями.


Слайд 14

Вопросы? saigo@yandex.ru – задать любые вопросы www.control-freak.ru – почитать подробнее об управлении версиями, задачами, проблемами и людьми


×

HTML:





Ссылка: