Вход
Получайте программное обеспечение в течение нескольких минут с момента размещения заказа! Автоматическая система работает круглосуточно 24/7
Получайте программное обеспечение в течение нескольких минут с момента размещения заказа! Автоматическая система работает круглосуточно 24/7
Лучшие тенденции разработки программного обеспечения в 2016 году
Лучшие тенденции разработки программного обеспечения в 2016 году

Лучшие тенденции разработки программного обеспечения в 2016 году

Вы, наверное, слышали поговорку: "Программное обеспечение успешно захватывает мир"? Компания Тесла является отличным тому примером - они помогли преобразовать автомобильную промышленность делая упор на автоматически управляемые автомобили и электромобили, определив тенденции развития всей отрасли в будущем. А что же происходит у разработчиков ПО? Был проведен опрос более 1300 компаний разработчиков, использующих продукты Atlassian и в этой статье мы хотели поделиться тенденциями разработки программного обеспечения.

Ведущие команды разработчиков используют гибкую, контролируемую и стабильную систему доставки

В ходе опроса было обнаружено, что из организаций по разработке программного обеспечения во всех индустриях:

  • 80% пользуются гибкой разработкой;
  • 85% используют распределенную систему управления версиями такую как Git;
  • 65% практикуют продолжительную разработку.

Эти процессы уже точно стали нормой для команд разработчиков. Ранее только 49% заявили, что они пользуются всеми тремя сразу. Команды, которые эффективны, однако, чувствуют изменения быстрее и с большей уверенностью. Как? Гибкость повторного подхода позволяет командам проще создавать фундамент или изменять приоритеты, основываясь на отзывах покупателей и участников рынка. Интересно, что 50% гибких команд отчитались об использовании смеси гибких и негибких техник, что свидетельствует о том, что команды адаптируются к процессу для того что бы он соответствовал их потребностям. Поддержка Git для разветвленных и объединяющих рабочих процессов лишает совместную разработку кода разного вида неудобств.  Длительная разработка позволяет создать единый поток, в котором объединение — это беспрерывный процесс, который поощряет меньшие, более частые (и поэтому менее рискованные) релизы.

Команды разработчиков всё больше и больше разделяются

В независимости от индустрии, 72% опрощенных заявили, что некоторые части их команд работают удалённо. Что делает сотрудничество и продуктивность удалённых команд возможным? Вот несколько идей:

Git

Как мы уже отмечали, 85% опрошенных сказали, что их команды перешли на распределённые системы управления версиями, такие как Git. Git позволяет членам команды работать из любого удобного места. В распределённой системе управления версиями, каждый разработчик получает своё локальное хранилище, дополненное полной историей изменений. Обладание полной локализированной историей означает, что вам больше не нужно подключение к сети, чтобы вносить изменения, просматривать предыдущие версии файла, или проводить сравнение между версиями. Распределённая разработка также создана для надёжной среды программирования. Когда каждый сотрудник работает в своём собственном локальном репо все его изменения и, что более важно, ошибки изолированы. В сочетании с лучшими базовыми методами программирования, такими как просмотр пиров и локальное тестирование изменений до их отправки в общее командное хранилище, Git становится мощным инструментом. Atlassian продолжает работать в этом направлении, добавляя в Git новые возможности, такие как смарт мониторинг.

Встроенное сотрудничество

Отсутствие ощущения "единой команды", может стать трудным испытанием для сотрудников, которые работают удаленно. Инструменты для сотрудничества, такие как Hipchat, жизненно необходимы  командам которые имеют в своем составе таких сотрудников. Однако, групповой чат – это не единственное место, где можно обсудить совместную работу . Большинство отслеживателей версий позволяет членам команды комментировать их, чтобы позволять друг другу оставаться достаточно информированными. То же касается и инструментов разработки: теперь появилась возможность вести дискуссию об изменениях кода или неработающих частях прямо в определённом контексте.

Автоматизация и наглядность

Инструменты становятся тесно интегрированными, будь то заказ для одного и тот же покупателя или разных, для того, чтобы помочь с автоматическим распространением и синхронизацией содержимого. На самом деле, 82% опрошенных заявили, что их инструмент управления исходным кодом был интегрирован со встроенной системой, отслеживателем версий или с ними обеими одновременно. Возьмём, к примеру, интеграцию между JIRA Software и Bitbucket. Когда разработчик создаёт запрос об отправке в Bitbucket, соответствующее приложение в  JIRA Software автоматически перенаправляет его к следующему шагу в рабочем потоке. Каждый в команде может увидеть текущий прогресс разработки, просто взглянув на приложение, и быть уверенным, что отображённые данные полностью реальны. И когда к этому набору добавляется HipChat, команды начинают получать сообщения в режиме реального времени о статусе проекта, запросах на отправку и других изменениях в коде.

Контейнеры – самый свежий тренд среди разработчиков

56% опрошенных заявляют, что используют контейнеры для того, чтобы запустить тестирование, инсценировку или среду разработки. С помощью контейнеров, вы можете определить всё необходимое для запуска приложения или службы, и использовать черновик (так называемый образ), чтобы создать новые копии того, что вам нужно оценить или же просто поделиться им с другими. Простота и скорость использования контейнеров не только делает разработку более эффективной, но и уменьшает реальные расходы на IT в сравнение с традиционным физическим техническим обеспечением.

Популярность Docker-интеграций для Bitbucket и Bamboo подтверждают сегодняшнюю актуальность контейнеров. В Bitbucket вы можете видеть данные о вашем исходном коде в параллельном репозитории Docker. Исходя из того, что сейчас популярно в Твиттере и в каждой конференции по разработке программного обеспечения, контейнеры (и в частности Docker) надолго станут неотъемлемой частью технологий разработки ПО.