Проблема заключается в следующем. У компании есть несколько самостоятельно написанных программ, подробности ниже:
- одна база данных MS SQL ;
- клиентские машины (Win8.1 / Win10) имеют Windows Forms клиент
установлено (не так много функциональности, около 20-30 несложно
формы), который взаимодействует через WCF с базой данных (база из точки
1), авторизация и проверка прав пользователя с использованием LDAP (компания использует
Active Directory);
- сайт на Laravel для выполнения некоторых задач с данными из базы данных,
Пользователи сайта - удаленные, временные сотрудники. Бизнес-процессы
сайта на Laravel и WCF сервисы иногда дублируются,
основание пункта 1;
- все еще существуют службы , которые выполняют фоновые задачи, например:
отправка электронной почты из сформированной очереди;
- другие внешние приложения со своими базами данных для обучения
и аттестация персонала, а также организации
сайт на CMS Wordpress (размещен на внешнем хостинге).
На данный момент стоит задача добавить и обновить текущий функционал, а также привести все сайты / приложения в один стиль (чтобы дизайн соответствовал бренду). Поэтому я думаю, что реализовать все это на C #, чтобы пользователи и администраторы не страдали от синхронизации данных между своими и внешними приложениями. Но какую технологию выбрать для каждого клиента? Кроме того, необходимо создать мобильное приложение.
У меня есть свои мысли по архитектуре, но Я хотел бы сначала услышать совет опытных людей . Спасибо.