В нашей компании мы имеем следующую ситуацию: У нас есть несколько (аппаратных) систем, каждая с несколькими программными приложениями.Однако, поскольку аппаратное обеспечение отличается, программное обеспечение также отличается в некоторых случаях.Кроме того, на местах существует множество различных комбинаций версий программного обеспечения.
Например, рассмотрим следующую (упрощенную) ситуацию:
Системы: Sys1, Sys2, Sys3
Приложения: App1, App2, App3, App4
, каждая с разными версиями
Sys1
использует App1 v1
, нет App2
, App3 v3
и App4 v2
, а
Sys2
использует App1 v1
, App2 v2
, App3 v2
, а не App4
и
Sys3
использует не App1
, App2 v3
, нет App3
и App4 v3
.
То есть каждая система использует свой набор приложений, а также разные версии каждого приложения.Иногда даже различные комбинации версий, например App1 v1
, используются с App3 v2
и App3 v3
.
В настоящее время мы управляем набором допустимых наборов программного обеспечения, вручную копируя соответствующие выпуски в «внутренне общедоступные»папка, к которой обращается отдел обслуживания и производства.Однако в большинстве случаев у нас есть только самые последние доступные версии, и им трудно получить какой-либо из старых наборов версий для системы.
Мы хотели бы изменить этот процесс на некоторыесвоего рода автоматизированная система.Существуют ли какие-либо программные инструменты, которые могут помочь в этом процессе? Я думал о программном обеспечении, в котором можно настроить разные системы и разные компоненты программного обеспечения, создать разные версии каждого из них, а затем назначить конкретные версии программного обеспечения для определенных версий системы..
Кто-нибудь знает программное обеспечение, которое делает именно это?Или мы должны полностью изменить управление упаковкой / развертыванием?Кстати: как этот процесс называется «официально»?
Чтобы прояснить ситуацию: мы уже используем контроль исходного кода, сервер сборки и тому подобное.Так что это не главное, но пропущенный шаг - это объединение нескольких программных компонентов в законченный пакет, который может использоваться сервисом и производством.Поскольку мы не используем сервер сборки для всех программных компонентов (пока), я думаю, что может быть трудно позволить серверу сборки выполнить эту работу, но я открыт для предложений.
РЕДАКТИРОВАТЬ:
Операционная система всегда Windows (2000, XP, Vista, 7 и 7 Embedded).
Приложения написаны на разных языках, в основном C ++ и C #, но наше решение должно быть независимым от языкаесли возможно.