Пример требований к системе. Часть 5.

6 Замечания по архитектуре
6.1 Передача партнера

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

6.2 Синхронизация данных
Три различных варианта

6.2.1 Использование канала вне рамок системы
Организуется обмен файлами. В качестве канала передачи можно использовать:
• Закачку по FTP
• Пересылка по email
• Физическая пересылка носителя

Преимущества:
• Независимость от канала связи
• Гарантированная передача больших объемов при плохом канале

Недостатки:
• Высокие накладные расходы при эксплуатации системы

6.2.2 Встроенный механизм репликации MSSQL
Преимущества:
• Стандартный метод MSSQL
• Не требуется разработка процедур обмена в рамках программы.

Недостатки:
• Механизм тяжеловесен
• Технология плохо изучена. Высок риск не реализации.
• Сложность настройки и администрирования.
• Из опыта сторонних разработчиков репликация не рассчитывалась на то, что бы работать через модемное подключение

6.2.3 Обмен данными посредством вебсервисов
Последовательность
Преимущества:
• Гибкость. В дальнейшем можно независимо менять элементы, схемы бах данных и, даже, платформы отдельных элементов системы, при сохранении схем обмена данными. Так же возможно подключение средств гарантированной доставки сообщений (MSSQL).

Недостатки:
• Несколько большее время разработки (компенсируется легкостью администрирования и эксплуатации).

6.2.4 Рекомендации
Рекомендую использовать собственный механизм обмена, основанный на передаче XML данных посредством вебсервисов. Этот подход хорошо зарекомендовал себя и, в настоящий момент, рекомендуется ведущими разработчиками ПО.

6.3 Состав локальной БД.
База партнеров должна быть общей для всех представителей в связи с тем, что:
• Представитель должен иметь полный доступ к истории своей деятельности
• Список партнеров, присутствующих на семинаре, может включать не только “своих” партнеров
Это усложнит синхронизацию БД.

6.4 Идентификатор записи
Т.к. база данных распределенная, то не рекомендуется использовать автоинкремент. Рекомендуется GUID.

Оставьте комментарий

Вы должны войти, чтобы оставить свой комментарий.