powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Философия на тему Doc-сервер
3 сообщений из 3, страница 1 из 1
Философия на тему Doc-сервер
    #32322698
Напишите свои впечатления,
господа, товарищи...

mustafin
Добавлено: Ср Ноя 05, 2003 8:25 pm Заголовок сообщения: DOC-сервер
DOC-СЕРВЕР
(вольное изложение проблемы)
ВВЕДЕНИЕ.
О чем речь.
В данной статье рассмотрим способ хранения информации в DOC-серверах: когда единицей хранения и обмена информации является ДОКУМЕНТ.
Документ.
ДОКУМЕНТ – информационная основа реальной жизни. Жизнь изменчива, каждое значительное событие фиксируется «бумагой» - Документом. Родился человек – пока не выписано «свидетельство о рождении» - у ребенка нет никаких прав. Поступил человек на работу – без «приказа о приеме на работу» - он не может получить зарплату, уйти в отпуск. Пришел товар на склад – без «приходной накладной» товара «официально» (на законных основаниях) – нет.
Способ.
Есть несколько способов доказать свою правоту. Есть чистая логика – «если А=Б, Б=С, то А=С». Можно обращаться к интуиции – «Красивый самолет – хорошо летает». Именно к интуиции, к красоте и будем, в основном, обращаться в этой статье.

ХРАНЕНИЕ ИНФОРМАЦИИ В ЗАПИСЯХ-ТАБЛИЦАХ.
Таблица.
На сегодня почти вся накопленная информация хранится в таблицах. Таблица состоит из строк и столбцов – как таблицы из программы Excel. На пересечении строк и столбцов расположены поля таблицы.
Строка – запись.
Основной элемент таблицы – строка (запись). Вероятно, наиболее простым и распространенным примером записи является запись в телефонной книге – номер телефона, фамилия, имя, отчество, адрес и т.д.
Сервер Базы Данных (БД).
Таблицы хранятся в специализированных программах – серверах баз данных (далее - БД). Наиболее известные БД – Microsoft SQL Server, ORACLE Server, MySQL Server.
Язык SQL.
Общение с БД происходит с использованием специализированного языка – SQL (Simple Querry Language). При этом SQL содержит команды создания таблиц, записи данных в таблицы, поиск нужной записи, и много других.
Условия на записи.
Кроме самих таблиц в БД хранят условия, которые накладываются на записи, на действия над записями. Например – кто может создавать, читать, изменять записи, что делать при создании новой записи, при удалении записи.
Бизнес – логика.
Все вместе – записи и условия на записи – на 90% и являются основным информационным содержанием бизнес-логики (правил работы, законов поведения) предприятия, организации.
Критика.
Поскольку мы хотим предложить что-то новое (заметим для скромности - может просто описать, что уже где-то есть), поэтому остановимся на недостатках старого – табличного способа.
Основной элемент – запись (строка) – слабо связан с реальной жизнью. Это некоторая абстракция, которая отражает (отображает, описывает) некий объект реальной жизни. (Фамилия, имя, отчество – реальный человек в жизни). Но (и это основной недостаток) не имеет законных (законодательных, юридических) оснований в реальной жизни. По земле ходит Иванов И.И., но в информационном мире Иванова нет – есть паспорт на имя Иванова И.И., есть приказ о принятии его на работу и т.д.
Отсюда мы можем плавно перейти к основному постулату – основой информационных систем (основой бизнес логики) должен стать вместо таблицы (записи, объекта) – ДОКУМЕНТ.
DOC-СЕРВЕР.
Документ.
Что означает DOC-сервер?
- Во-первых, в сервере хранения информации вводится новое понятие – ДОКУМЕНТ.
- Для этого есть готовый формат – XML (вместе с описанием типов данных DTD, описанием отображения документа XSL).
- Который дополняется файлом описания бизнес-процессов для данного типа документов (связи с другими документами, на основании каких документов создан данный тип документов, права доступа к документу, правила «проводки», удаления документа и т.д.)
Работа DOC-сервера.
Представим работу DOC-сервера.
- На первом этапе передаем серверу описание XML документа, и регистрируем данный класс документов на сервере.
- Далее мы уже можем работать с данным типом документов: сохранять конкретные экземпляры документов, запрашивать, отбирать сохраненные документы. То есть единицей информационного обмена с DOC-сервером является ДОКУМЕНТ.
- Язык общения с DOC-сервером легко создать на основе существующего SQL – заменой термина «таблица» на слово «документ». То есть аналогом таблицы БД будет класс документов DOC-сервера, аналогом полей записи в таблицах – будут тэги XML.
- При этом есть существенные отличия от обычного SQL. С DOC-сервера мы можем запрашивать только и исключительно документ, задавая условия отбора по тегам документа. Если найден единственный документ – то он и выводится. Если найдено несколько документов – то выводится список найденных документов. Если необходимо получить дополнительную информацию с DOC-сервера – то просто создается (регистрируется) новый документ, который собирает информацию с уже существующих документов.
Корни.
Фактически элементы DOC-сервера существуют в любой информационной системе на основе БД. Создавая отдельно стоящий DOC-сервер, мы формализуем, стандартизируем бизнес логику информационных систем на основе БД. DOC-сервер должен значительно облегчить описание бизнес-логики предприятия: документ, лежащий в основе работы DOC-сервера, явно и естественно связан с реальной работой предприятия.
ПРИЕМУЩЕСТВА DOC-СЕРВЕРА.
Бумажный аналог.
Документ DOC-сервера чаще всего имеет реальный аналог в бумажном мире, и имеет многие атрибуты бумажного документа:
- Создается на основе других документов, которые юридически описывают правила работы с документом. Классическим примером, правда, мрачноватым, являются слова: «На основе статьи №№ уголовного кодекса РФ выносится приговор …»
- Документ создается, подписывается специально уполномоченными (имеющими право создавать данный документ) человеком.
- Документ имеет дату создания, срок действия, и т.д.
- Так же как и бумажный документ, документ DOC-сервера может иметь несколько состояний: сохранен, «проведен» (активен), и т.д.
Описание документов.
DOC-сервер содержит в себе полное описание сохраняемых документов – структуру, внешний вид, печатную форму, бизнес-логику1. Поэтому, в отличие от табличных БД, легко узнать, что же хранит DOC-сервер.
Способ хранения.
Как хранить информацию на DOC-сервере? Понятно, что наиболее просто разбирать XML на части (по тэгам) и хранить на обычном SQL сервере. То есть DOC-сервер является надстройкой над SQL сервером.
Сервер бизнес-логики.
DOC-сервер может служить связующим звеном между клиентским приложением и SQL-сервером, то есть служить сервером бизнес-логики. При этом работа клиентского приложения существенно упрощается, поскольку мы всегда знаем, что можно получить с DOC-сервера – один из зарегистрированных документов. Кроме того, существенно облегчается публикация документов в Интернете – поскольку все зарегистрированные типы документов на DOC-сервере имеют экранное представление.
ЗАКЛЮЧЕНИЕ.
Цель статьи.
Основная цель статьи – привлечь внимание к теме, вызвать обсуждение DOC-сервера, создать группу заинтересованных лиц, совместно создать DOC-сервер.
Основные выводы.
Хранение информации на DOC-сервере даст неоспоримые преимущества: ясная связь с реальными бумажными документами, связь бизнес-логики с реальным миром бумажных документов; простота записи, выборки документов; хранение на сервере описаний документов, простота публикации документов в Интернете.

1 Если с описанием типов, экранной, печатной формы документа нет никаких проблем, то описание бизнес-логики документа – это что-то новое, и тут кроются основные проблемы, но и основные дивиденды при создании DOC-сервера. Связать тэги различных документов (по аналогии с полями различных таблиц в БД), скорее всего, достаточно легко. Но наиболее трудно (но и увлекательно!) придать документу активность – позволить ему (описать, как это делать) совершать какие то действия. Представим простейший пример – истекает срок действия документа (например – договора), и в бизнес логику документа заложено заранее уведомлять клиентов о скором наступлении конца действия документа.
...
Рейтинг: 0 / 0
Философия на тему Doc-сервер
    #32322811
lnu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю надо исправить:
SQL - Structured Querry Language
...
Рейтинг: 0 / 0
Философия на тему Doc-сервер
    #32325391
Ramil Mustafin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю водораздел проходит даже не между XML - DBF(SQL server),
а объект - документ.

В последнее время появилась тенденция вставить объекты (проедприятие->цех->бригада->сотрудник и т.п.), объектную модель пердприятия - непосредственно в приложение (например BOLD - в DElphi7, разнообразные самодеятельные проекты типа foxserver и т.п.).

Я полагаю что для описания бизнес-логики проще, легче и (может) правильней основываться на документах.

1) Объекты что-то искусственное, и обязательно требуют документального оформления, подкрепления.
2) В праве нет (по крайней мере конкретизированных) объектов - зато точно есть документы: постановления, договора, ТТНки, и т.п. И эти документы полностью описывают правила работы предприятия (бизнес-логику).
3) Для учетной политики необходимо и достаточно просто ввести все основные документы, и все будет учтено. Если оформить отношения между документами (связи) - то будет описана и учтена и вся бизнес-логика.
4) Клиенты (приложения и люди) - как правило оперируют документами (многовековая бумажная практика основана на этом).

Если представить некую прграмму (учетную, бизнес-логики) как черный ящик - то люди просто вкладывают в него одни документы, и хотят получить в ответ вполне определенные другие документы. При этом любые операции непосредственно с записями (цифрами, на низком уровне) - не подтвержденные (юридически) документами - в общем то незаконны (нехорошие операции).
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Философия на тему Doc-сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]