Шаг 3 - Структура проекта

Всякая структура определяется задачами... И какие же задачи имеет эта система?

Это так сказать, "внешние проявления" - то, что видит конечный пользователь продукта, но ведь есть и еще кое-что...

Служебная "секция":

В принципе, если я говорю о "документо ориентированной" среде, то все, с чем мыимеем дело, оформилось в некие документы, которые могут быть или "бухгалтерски - значимыми" или "системно - значимыми"

с чего начать? Ну, наверное, со "служебки"... Система должна развиваться... И, если уже было сказано, что каждый документ реализован в "екзешнике", а документов, как предполагается, будет много, то что сделать, что бы элементарно в этом хозяйстве не запутаться? :-)) Да, кроме того, документы, а вернее данные, которые редактируются документами, хранятся в табличках, а к табличкам надо присобачить всяких там индексов, да ключиков... как-то сразу подумалось, что процесс надо механизировать... что еще? А еще есть отчеты или просто бумажные копии документов, и их тоже надо редактировать...

В общем, так и определились требования к разработке:

А это еще что такое "издавать экзешник" ? Например, пользователю нужен тот набор документов, работать с которым ему разрешено. Хочу сказать сразу, пользователи, в наше время, чаще всего, объединены в локальные, а иногда, и не очень локальные сети... Как поставить новый "экзешник" на самую дальнюю машину в сети? Можно, конечно, бегать и устанавливать... удовольствие? Вряд ли... что предложить? Да пусть документы на пользовательские машины ставятся сами... :-)) конечно, чтобы продать что-то ненужное, надо иметь что-то ненужное... (так говорили в одном мультфильме)... для нашего случая картинка такова: На пользовательскую машинку ставится некое ядро, прописывается конфигурация, и, пользователь начинает работу... Запускается некий модуль ("Стартовалка"), который после авторизации проверяет, есть ли на текущей машине нужные (разрешенные) "И.М." документов, и, если нет, записывает их... откуда берутся "И.М." ? из базы естественно! :-)) А как назвать процесс внесения "И.М." в базу? Может "издание"? :-))

Что еще? ПРАВА! Да, пользователи... их много.... много и документов, а в документах много табличек.... уф! Что делать? В SQL, конечно есть команды - завести пользователя (или убрать). Дать право _чтото_там_делать_ с данными, (или забрать его) но, если всего много, так сразу хочется механизаций, так и возник "администратор прав"

Про то, что система должна быть большой и распределенной я уже обмолвился, и, получается, что данные каким-то образом должны перетекать между разными "Центрами Учета", а как это движение должно происходить? Вот именно организацией такого процесса (репликации) и должен заниматься "Репликатор-Менеджер" и, собственно процесс управляется "Репликатор-Агентом".

Теперь посмотрим, что нужно пользователям: Естественно, некое, неизвестное, и неразработанное количество документов (накладные, платежки, ...) что еще? Естественно, нужна возможность просмотреть список введенных документов и редактор проводок... следовательно, нам нужны соответствующие "екзешники". В любом хозяйстве есть некие "справочники" - и к ним тоже нужен доступ....

Ну вот, если понимать структуру проекта, как некий набор "екзешников", то мы определились, и остановились на вот таком списке:


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Голиброда Александр.