Денис Пащенко - Современная высокотехнологичная компания в IT-отрасли
- Название:Современная высокотехнологичная компания в IT-отрасли
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:9785005647085
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Денис Пащенко - Современная высокотехнологичная компания в IT-отрасли краткое содержание
Современная высокотехнологичная компания в IT-отрасли - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
– отражение в практике российских компаний, разрабатывающих ПО, мировых тенденций в организации производства, разработке и проектировании;
– влияние локальных российских тенденций, связанных с регулированием IT-отрасли;
– влияние пандемии COVID-19 на производственные и трудовые факторы в компаниях, разрабатывающих ПО.
Первые два аспекта были охвачены авторскими исследованиями 2017 г – 2019 г [22, 23, 24, 25], в которых был проанализирован новейший опыт около 150 инженеров из IT-компаний, представивших все федеральные округа России. Исследования проводились по схожей методике и интересны в данной монографии в разрезе следующих целей:
– определить востребованность современных мировых технологий, инструментов и паттернов в разработке программного обеспечения в практике российских IT-компаний;
– оценить уровень значимости локальных российских трендов (импортозамещение, защита данных и т.п.) в построении российской Цифровой Экономики.
Третий аспект стал основной целью исследований 2020—2021 гг и охватил опыт 46 проектных команд из крупнейших российских и мировых IT-корпораций и банков с «сильными практиками» внутренней разработки [26, 27].
В соответствии с данными целями следует выделить следующие результаты, полученные в приводимых исследованиях. С точки зрения востребованности современных мировых технологий, инструментов и паттернов в разработке ПО необходимо обозначить несколько областей, в которых производственные подходы меняются наиболее быстро:
– проектное управление;
– организация производственных процессов;
– управление качеством продуктов.
IT-отрасль к 2020 году в целом завершила переход к «гибким» производственным моделям [22, 24]. Не менее интересно оценить формализацию практик проектного управления в IT-компаниях (проектно-ориентированных организациях). Вне зависимости от того, как именно построена формализованная модель производства внутри проекта, централизованный и регулярный контроль хода каждого проекта разработки ПО должен влиять на успешность проектов и компании в целом. При этом организация Офиса управления проектами, лаборатории проектов, производственного центра управления, проектного офиса – это наиболее простой способ организации регулярного контроля проектов разработки ПО. Согласно [25] российские IT-компании к 2020 году продолжали наращивать централизацию проектного управления, но делали это без создания какого-то официального подразделения.
С точки зрения организационных процессов IT-отрасль развила идеи аутсорсинга, выведя их на уровень организации кросс-функциональных и географически распределенных команд. Такой подход означает, что разработкой одного информационного сервиса или программного продукта занимается команда, состоящая из сотрудников разных офисов. С одной стороны это позволяет существенно экономить фонд оплаты труда и использовать модели 24-часовой разработки ПО, с другой стороны заставляет изменить как коммуникации в команде, так и модели постановки (контроля) задач и совместной релизной работы [28].
Согласно [23, 25] около трети экспертов, указывают, что почти все проекты по разработке ПО выполняются географически распределенными командами, и около 90% экспертов указывают, что географические распределенные команды уже построены в их организациях.
Кроме географически распределенных команд следует выделить схожую тенденцию организации труда – это работа членов команд разработки вне офисов компании. В Мире все чаще инженеры команд разработки ПО работают вне офиса, что связано с новыми подходами в организации командной работы: экономией времени сотрудников на поездки в офис, предоставлением специальных преференций лучшим работникам, заботой об их семейном благополучии. Согласно [23, 25] более 66% экспертов указывают, что все больше членов проектных команд в разработке ПО работают вне офисов: частично это связано с упомянутыми новыми подходами, а частично – с использованием моделей фриланса и привлечения сотрудников с ограниченными физическими возможностями. Более того, COVID-фактор в 2020—2021 гг сделал эту тенденцию новым стандартом отрасли: авторское исследование [27] подтверждает: значительное количество ведущих мировых технологических корпораций в 2020 году не стремится вернуть сотрудников в офис, а поддерживает и развивает практики полностью удаленной работы команд, разрабатывающих ПО.
Современные коммуникационные технологии позволяют сделать такую форму организации труда наиболее эффективной. Так современные мобильные инструменты – мессенджеры, мобильные планировщики, групповые чаты – в мире стали основой совместной работы и постоянной коммуникации членов команд разработки ПО. Согласно [25] около 80% экспертов указывают, что часть рабочих коммуникаций проходит через мобильные каналы и инструменты, а значит такие коммуникации больше не привязаны к стационарным рабочим местам.
Очевидно, что начавшаяся перестройка экономики из-за влияния COVID-фактора в 2020—2021 гг уже сделала перечисленные выше тенденции еще более заметными и значимыми в IT-отрасли [26, 27].
Определение основных тенденцией в области управления качеством программного обеспечения в отечественных компаниях связано со следующим набором характеристик:
– наличие формализованной тестовой модели, охватывающей проверку соответствия функциональным и нефункциональным требованиям, процессы валидации и верификации каждого релиза;
– использование комплексной проверки качества каждого релиза (юнит-тестирования, автоматизированного тестирования, интеграционного тестирования);
– создание и использование различных пред-промышленных сред (для различных типов тестирования, опытной эксплуатации и т.п.);
– наличие автоматических инструментов сборки, доставки и интеграции релизов ПО в такие среды.
Так наиболее трудозатратной и вместе с этим эффективной практикой в обеспечении стабильно высокого качества ПО является создание автоматических тестов, которые способны проверять в релизе работоспособность основного функционала. При этом наиболее распространенным уровнем в покрытии функционала авто-тестами является уровень 35—50%, т.к. именно на данном пределе затраченные усилия наиболее эффективны в долгосрочной перспективе. Немногим более половины экспертов указали, что значительный уровень (35—50%) покрытия автоматическими тестами функционала системы соответствует опыту их команд разработки ПО [22].
С другой стороны повышение качества ПО неотрывно связано с качеством кода и обслуживанием «технического долга» программного продукта. Наиболее сложной и вместе с этим прогрессивной практикой уменьшения технического долга и улучшения качества кода является рефакторинг [22]. Современный подход к рефакторингу заключается в его выполнении на регулярной основе без привязки к датам крупных релизов. При этом работы по рефакторингу кода могут быть как составной частью задач в итерации (в RUP-образных методологиях), так и отдельными задачами (в составе спринта в «гибких» методологиях). Востребованность регулярного рефакторинга без привязки к датам крупных релизов в отечественной практике определена в следующей таблице.
Читать дальшеИнтервал:
Закладка: