В настоящее время работа и управление на любом предприятии осуществляется с помощью документов, которые являются одновременно источником, результатом и инструментом любой деятельности. Большой объем бумажных документов зачастую вызывает сложности в обработке, хранении и передаче данных. В связи с этим разработка системы электронного документооборота приобретает особую актуальность, поскольку позволяет решить эти проблемы и оптимизировать работу всего предприятия в целом.
Существует множество определений системы электронного документооборота. Одно из них — автоматизированная многопользовательская система, в которой все документы хранятся в информационном виде. Такая система использует информационные и сетевые технологии для более эффективной работы с документами.
Одним из важных этапов создания информационной системы является разработка моделей данных. Создание моделей данных подразумевает определение сущностей, атрибутов и их связей. Другими словами, нужно найти, какая информация станет храниться в определенной сущности или атрибуте.
Сущность можно задать как объект, концепцию либо событие, информация о которой необходимо сохранить. Объекты должны иметь названия с точным смысловым значением, называться существительным в единственном числе.
Существуют следующие виды моделей для описания информационных потоков:
модель «сущность-связь»;
фреймовая модель;
продукционная модель;
семантическая сеть и др.
Каждая из представленных моделей обладает своими преимуществами и недостатками. При выборе конкретной модели для описания потоков, следует оценить все характеристики и сделать соответствующий вывод.
Для рассматриваемой системы электронного документооборота была выбрана модель данных «сущность-связь» или ER-диаграмма.
Данная модель была предложена в 70-х годах Питером Пин-Шэн Ченом. Эта модель является наиболее известной и изученной моделью данных, что позволяет начать разработку без особых усилий. Рассмотрим основные понятия данной модели.
Сущность (entity) — некий уникальный объект, который можно задать как концепцию либо событие, информацию о которой необходимо сохранить. Объекты обязаны иметь названия с точным смысловым значением, называться существительным в единственном числе.
Набор сущностей (entity set) — некое множество сущностей, которые обладают одинаковыми свойствами.
Атрибут — характеристика сущности. Каждый атрибут имеет уникальное для одной сущности имя.
Для сохранения связей между моделями и самих моделей в «хорошем» состоянии используются несколько механизмов нормализации. Эти механизмы можно разделить на динамические, которые отрабатывают в процессе работы самой базы данных, так и на статические, которые применяются на этапе проектирования БД. Стоит отметить, что хоть и нормализация является полезной для проектирования баз данных, она не устраняет всех возможных ошибок, допускаемых при проектировании.
Процесс нормализации — это последовательное приведение структуры базы данных к, так называемым, нормальным формам, то есть к формализованным требованиям по организации данных. В данной работе проектирование выполнено в усиленной третьей нормальной форме (форма Бойса-Кодда).
Рассмотрим пример алгоритма приведения сущности к первой нормальной форме.
- Разбиение сложных атрибутов на более простые (или атомарные).
- Создание новой сущности из этих атрибутов.
- Перенос атрибутов, которые повторяются.
- Выбор первичный ключ данной сущности.
- Определение связи от прежней сущности к новой (первичный ключ прежней сущности становится внешним ключом для новой).
Для того чтобы привести ко второй нормальной форме, необходимо проделать следующие операции:
- Создать новую сущность, выделив атрибуты, которые зависят только от части первичного ключа.
- Поместить данные атрибуты в новую сущность.
- Установить связь от старой сущности к новой.
Данная нормальная форма дает возможность избежать последующих аномалий при исполнении операций обновления, вставки и удаления.
Процесс перехода к третьей нормальной форме можно описать следующими шагами алгоритма:
- Создание новой сущности и перенос в данную сущность атрибутов с одинаковой зависимостью от неключевого атрибута.
- В качестве первичного ключа у новой сущности использовать атрибут, который определяет эту зависимость.
- Установить связь между старой и новой сущностью.
При проектировании рассматриваемой системы электронного документооборота были выделены следующие сущности: сотрудники, отделы, документы, виды документов.
Рассмотрим первую связь сущностей: сотрудники и отделы (рис. 1). Данная связь является связью «многие-ко-многим», так как и один сотрудник может работать в нескольких отделах, и в отделе может работать несколько сотрудников.
Для реализации такого вида связи необходимо использовать три отношения. Два из них являются связываемыми сущностями, а третье отношение представляет собой связной объект. Первичный ключ связного отношения является объединением первичных ключей связываемых объектов. Иными словами, связь «многое-ко-многим» состоит из двух связей «один-ко-многим».
Рис. 1. Связь сотрудников и отделов.
Рассмотрим сущность «Документы». На предприятии используются три вида документов: входящие, исходящие и внутренние. Для реализации данной сущности потребуются две таблицы, одна, хранящая все документы предприятия, и другая, хранящая виды документов. Между этими таблица реализована связь «один ко многим» (рис. 2).
Рис. 2. Сущности «Документы» и «Виды документов»
Так как «Вид документа» является М-связным объектом и является обязательным, то данная связь реализуется как две таблицы. При этом первичными ключами этих отношений будут ключи этих сущностей.
Используя все вышеперечисленные сущности и связи, можно построить физическую модель разрабатываемой системы электронного документооборота (рис. 3).
Рис. 3. Физическая модель данных
Как видно из рис.3 представленная модель выполнена в нормальной форме Бойса-Кодда и пригодна для последующей программной реализации системы. Спроектированная таким образом модель данных отражает предметную область за счет выделения основных объектов системы и связей между ними, а также является универсальной и не накладывает каких-либо ограничений на выбор среды и средств программирования.
Литература:
- Peter Pin-Shan Chen «The Entity-Relationship Model — Toward a Unified View of Data» (англ.) // ACM Transactions on Database Systems (TODS): Сб. — Нью-Йорк: ACM, 1976. — Vol. 1. — P. 9–36. — ISSN 0362–5915. ИЦО:10.1145/320434.320440.
- Питер Пин-Шен Чен. Модель «сущность-связь» — шаг к единому представлению о данных. Пер. М. Р. Когаловского.
- Joseph M. Firestone. «Dimensional Modeling and E-R Modeling In The Data Warehouse» (англ.) (22–06–1998).