Я работаю в металлургическом предприятии, где мы производим собственное производительное программное обеспечение. Мы рассматриваем возможность изменения нашего плана распределения в соответствии с нашими текущими потребностями. Я надеялся, что вы могли бы дать некоторые идеи.Лучший план распространения WinForms
Наше приложение представляет собой WinForms, C# Framework 4.0. Он расположен в интранете. Он разделен на три проекта (UX, бизнес-уровень и слой модели). Приложение разделено «логически» в модулях, где каждый из них выполняет разные задачи, но у них есть некоторые функции (т. Е. Коммерческий модуль, финансовый модуль, модуль цитирования).
Необходимо также, чтобы в случае необходимости вышло из системы все пользователи, чтобы они могли обновить свое приложение (в случае серьезного обновления).
У нас есть два сценария (возможно, вы могли бы добавить другие):
Сценарий 1.
Все приложение только один EXE распространяется с ClicOnce.
PROs:
- Легко обнаружить какие-либо изменения и как она влияет.
- Только один распределение
ПРОТИВ:
- Небольшие изменения влияют на всю компанию (почему обновление, если изменение не не влияет на мое "модуль"?)
- Распределение тяжелее
- Необходимо улучшить тестирование, чтобы вы оставили меньше ошибок в дистрибутиве.
Сценарий 2.
Одно небольшое приложение (EXE), что "пожары" разные EXEs (один на каждый модуль).
PROs:
- Обновления зажигалки.
- Изолированные ошибки.
- Изолированные разработки.
Недостатки:
- должен обнаружить каждое изменение, чтобы перекомпилировать/распределить каждый модуль (EXE) затронуты.
- Создайте новый проект, чтобы хранить общие материалы (формы, классы и т. Д.).
Что вы думаете? Знаете ли вы другие планы распространения?
Спасибо!
Хавьер
Я знаю, что это немного не по теме, но многие из этих проблем уходят с веб-приложением в Интернете. Почему бы не получить с этим? Технически это другой тип плана распределения. –
Возможно, перекодирование всего большого приложения немного «дорого»? – Steve
Мне это похоже на что-то для [программистов] (http://programmers.stackexchange.com/). – CodeCaster