Найти в Дзене
Калинкин

Рекомендации по управлению версиями

Ознакомьтесь с некоторыми рекомендациями по управлению версиями вашего программного обеспечения и принципами, которые следует учитывать в процессе контроля версий. Управление версиями программного обеспечения предоставляет способ быстрого определения состояния API, пакета или программного продукта путем присвоения уникального имени и / или номера. Версии помогают заинтересованным сторонам отслеживать изменения в коде с течением времени. Существует несколько различных типов схем управления версиями, наиболее популярной из которых является семантическое управление версиями (SemVer). Независимо от того, какую схему управления версиями вы используете для отслеживания изменений в своем программном обеспечении, существуют некоторые принципы и рекомендации по управлению версиями, которым разработчики могут следовать, чтобы выпуски программного обеспечения проходили как можно более гладко. В этом руководстве по программированию я расскажу некоторые из них. Сообщите пользователям, какую схему
Оглавление
Управление версиями своей программы
Управление версиями своей программы

Ознакомьтесь с некоторыми рекомендациями по управлению версиями вашего программного обеспечения и принципами, которые следует учитывать в процессе контроля версий.

Управление версиями программного обеспечения предоставляет способ быстрого определения состояния API, пакета или программного продукта путем присвоения уникального имени и / или номера. Версии помогают заинтересованным сторонам отслеживать изменения в коде с течением времени. Существует несколько различных типов схем управления версиями, наиболее популярной из которых является семантическое управление версиями (SemVer). Независимо от того, какую схему управления версиями вы используете для отслеживания изменений в своем программном обеспечении, существуют некоторые принципы и рекомендации по управлению версиями, которым разработчики могут следовать, чтобы выпуски программного обеспечения проходили как можно более гладко. В этом руководстве по программированию я расскажу некоторые из них.

Сообщите пользователям, какую схему управления версиями вы используете.

Большинство пользователей практически ничего не знают о схемах управления версиями, поэтому вам следует сообщить им, какую схему вы используете, что это значит и где они могут найти дополнительную информацию о ней. Для этого есть несколько способов. Например, вы можете включить это как часть своей документации или поделиться деталями управления версиями через свой список рассылки или другие регулярные сообщения компании. В любом случае, информирование ваших пользователей о вашей схеме управления версиями поможет им оправдать свои ожидания и не удивляться или тревожиться всякий раз, когда номер версии меняется и / или увеличивается. Напротив, пренебрежение информированием пользователей о вашей схеме управления версиями, вероятно, приведет к множеству ненужных обращений в службу поддержки – особенно всякий раз, когда выпускается новая версия. Поддерживайте открытый список выпусков и изменений
Подумайте о каком-нибудь программном обеспечении, которым вы регулярно пользуетесь, и есть большая вероятность, что к нему есть опубликованный график выпуска, скорее всего, веб-страница на сайте компании. Например, вот дистрибутивы выпуска MED-Complete для медицинских учреждений разработанной компанией Офисные технологии из г.Брянска:

Скриншот снят с сайта https://med-complete.ru
Скриншот снят с сайта https://med-complete.ru

Щелчок по ссылке на версию приводит вас к загрузке дистрибутива обновления в формате .bin (там же рядом указываются особенности при установке обновления) а вот в колонке с права есть "Список изменений и дополнений" ссылка на страницу с дополнительной информацией об этом конкретном выпуске, включая дату выпуска, что нового, исправления, изменения, информацию о разработчике и многое другое.

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

По возможности будьте последовательны и предсказуемы

Никто не любит сюрпризов, поэтому чем больше пользователей знают, чего и когда ожидать, тем лучше. При этом, если вы можете придерживаться заранее определенного графика выпуска, то сделайте это. Более того, если вы определитесь с запланированным графиком выпуска вашего программного обеспечения, придерживайтесь его! Возможно, вам захочется дважды подумать, прежде чем выпускать релиз досрочно только потому, что вы готовы с опережением графика или, что более вероятно, решили отложить некоторые обновления до следующего выпуска. Вместо того, чтобы радоваться, пользователи на самом деле могут быть раздражены и начать рассматривать другие варианты продукта. Причина в том, что игнорирование вашего графика выпуска разрушает доверие, которое вы создали у своих пользователей, и в значительной степени подрывает преимущества наличия системы управления версиями в первую очередь.

Последовательность и предсказуемость также применимы к именам ваших версий. Хотя для семантического управления версиями это не проблема, другие схемы именования со временем могут привести к путанице. Хорошим (плохим?) Примером этого может быть Microsoft, чьи соглашения об именовании для Windows, похоже, меняются случайным образом. Сначала были 1, 2 и 3, но затем, внезапно без предупреждения, они переключились на 95, 98 и 2000 год. Тем не менее, по какой-то причине между 98 и 2000 годами вышел релиз под названием NT. После 2000 года Microsoft таинственным образом вернулась к собственным именам для XP и Vista, прежде чем, наконец, снова перейти к числовым обозначениям для 7, 8 и 10.

Если разработчики будут помнить, что названия их версий должны быть скучными, а продукты - интересными, они никогда не ошибутся!

Спросите своих пользователей об их мнениях

Как только разработчики программного обеспечения внедрили схему управления версиями для своей организации, как они узнают, что она работает оптимально? Если вы не спросите своих пользователей, вы никогда не сможете знать наверняка. Не думайте просто так, потому что вы используете семантическое управление версиями и никто не жаловался, что все хорошо. По причинам, которые могут быть вам неизвестны, семантическое управление версиями может оказаться не идеальным для вашего продукта или пользователей. Возможно, существует лучший вариант, который вы не рассмотрели.

Даже если ваша схема управления версиями программного обеспечения “правильная”, вашим пользователям может быть что сказать по таким темам, как планирование, поиск сведений о выпуске и, вероятно, множество других проблем, которые вы даже не рассматривали. Поскольку ваше программное обеспечение разработано с учетом интересов пользователей, почему бы не позволить им сказать свое слово? Это может только помочь повысить заинтересованность пользователей и заставить их почувствовать себя частью процесса разработки.

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

Заключительное слово

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