Автоматизированная система учета преступников

Обзор программных средств для учета преступников. Характеристика комплексной автоматизированной системы управления, связи и контроля дежурной части ГУВД г. Москвы. Ведение оперативных учетов при помощи программно-аппаратного комплекса "ПОРТРЕТ 5.0".

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 02.03.2010
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

· Возможность редактирования администратором системы структуры базы данных;

· Возможность динамического создания новых экранных форм в ходе формирования условий запроса;

· Возможность осуществления сложной межобъектной навигации путем наложения фильтров на участвующие в выполнении запроса объекты (в том числе через Internet Explorer);

· Возможность раздачи прав пользователям не только на уровне объектов учета, но и на уровне их атрибутов;

· Возможность аудирования деятельности пользователей;

· Возможность создания статистических отчетов;

· Возможность графического представления межобъектных связей;

· Пакетный режим взаимодействия с сервером баз данных (режим Off-line).

1.3 Постановка задачи

1.3.1 Общие сведения

Полное наименование системы и ее условное обозначение

Полное наименование системы - «Автоматизированная система учета преступников в УВД г. Старый Оскол».

Условное обозначение - УчетПреступников 1.0

Основание для создания

Разработка данной системы осуществлена в рамках выполнения инициативного дипломного проекта по заданию управления внутренних дел г. Старого Оскола.

Реквизиты предприятия заказчика и разработчика

Заказчик - Управление внутренних дел г. Старый Оскол

Разработчик - студентка Шестакова Анна Николаевна

Назначение и цель создания системы

Назначение системы заключается в автоматизации процесса учета лиц, совершивших преступные деяния или подозреваемых в совершении преступления.

Объектом автоматизации являются лица, совершившие преступные деяния или подозреваемые в совершении преступления.

Система предназначена для помощи сотрудникам управления внутренних дел в деле учета и накопления информации о преступниках и дальнейшего использования данной информации для формирования различных сводок и статистических отчетов.

Целями данного дипломного проекта являются:

· создание автоматизированной системы для учета лиц, совершивших преступные деяния или подозреваемых в совершении преступления;

· формирование единого хранилища электронных учетных карточек преступников,

· обеспечение поддержки процедур разграничения доступа к картотеке;

· повышение надежности хранения данных за счет использования надежных механизмов хранения информации;

· повышение качества и оперативности работы с карточками лиц, совершивших преступные деяния или подозреваемых в совершении преступления.

· улучшение условий работы персонала, повышение качества работы сотрудников.

1.3.2 Функции автоматизированной системы

«Автоматизированная система учета преступников в УВД г. Старый Оскол» предполагает разработку программного средства, обеспечивающего следующие возможности:

· ввод новой и корректировка существующей информации;

· взаимодействие интерфейса пользователя с информационной системой;

· хранение информации о лицах, совершивших преступные деяния или подозреваемых в совершении преступления;

· хранение информации о пользователях системы (сотрудниках управления внутренних дел);

· проверка идентификационных данных пользователя (логин и пароль) перед входом в систему;

· печать учетных карточек преступников;

· ведение базы данных и поддержание ее в актуальном состоянии.

1.3.3 Пользователи автоматизированной системы

Ответственность и полномочия сотрудников в деле учета преступников определяется занимаемой должностью и пределами его компетенции. В рамках данной системы пользователи условно делятся на два типа:

· начальник управления внутренних дел;

· сотрудник управления внутренних дел.

Пользователи могут обладать правами на регистрацию новых лиц, подозреваемых в совершении преступления. Помимо прочего, Начальник наделяется правами по назначению прав другим пользователям, просмотр всех карточек и учетных записей, представленных в системе.

1.3.4 Характеристика входной и выходной информации

Входной информацией для автоматизированной системы учета преступников в УВД г. Старый Оскол является следующая информация о лицах, совершивших преступные деяния или подозреваемых в совершении преступления:

· ФИО;

· фотографии;

· адресная информация о месте рождения;

· данные прописки;

· данные о происшествии;

· данные о судимости.

Кроме того, для упорядочивания ведения учета необходимо хранить такие данные, как категория учета, дата постановки и дата снятия с учета, кто из сотрудников поставил на учет.

Также в базе данных необходимо хранить краткую информацию о сотрудниках, имеющих доступ к системе.

Выходная информация для автоматизированной системы будет следующая:

· карточка учета посетителей;

· карточка учета лица, совершившего преступное деяния или подозреваемого в совершении преступления;

· отчет по зарегистрированным в системе лицам;

· справочные отчеты.

1.3.5 Требования к программе

Общие требования

К проектируемой системе предъявляются следующие общие требования:

1. Система должна обладать набором удобных возможностей по вводу информации в систему в интерактивном режиме.

2. Система должна вести учет клиентов.

3. Система должна вести учет судебных дел.

4. Система должна иметь удобный интерфейс.

5. Система должна обеспечивать разграничение доступа и защиту конфиденциальной информации от несанкционированного просмотра.

6. Система должна быть построена таким образом, чтобы возможно было ее конфигурировать, настраивать под возможные изменения в деятельности адвоката.

Требования к надежности

1. Предусмотреть контроль вводимой информации и блокировку некорректных действий пользователя при работе с системой

2. Обеспечить корректное завершение вычислений и работы алгоритмов

3. Обеспечить целостность хранимой в базе данных информации

4. Обеспечить автоматическую периодическую архивацию данных.

Требования к документации

Система должна иметь достаточно детальную документацию по всем выполняемым функциям. Документация к системе приведена в разделе 3.5. «Реализация пользовательского интерфейса системы» настоящей пояснительной записки.

Требования к программному и аппаратному обеспечению

Приложение должно функционировать в операционной системе, начиная с Microsoft Windows 2000.

Необходимое аппаратное обеспечение:

· компьютер типа Pentium III или старше,

· минимум 64 Мбайт оперативной памяти

· видеоадаптер SVGA,

· манипулятор типа «мышь».

Необходимый объем свободного пространства на жестком диске составляет 10 Мбайт. При работе с приложением в ходе модификации баз данных объем требуемого дискового пространства возрастает в зависимости от объема хранимых данных.

Требования к дополнительному программному обеспечению

Дополнительное программное обеспечение - система управления базами данных Microsoft Access 2003/2007.

2. Проектирование автоматизированной системы учета преступников

2.1 Выбор инструментальных средств реализации системы

2.1.1 Выбор программного обеспечения для проектирования бизнес-процессов

При автоматизации деятельности любого учреждения одним из первых и наиважнейших шагов является анализ этой деятельности. Под автоматизацией здесь понимается либо разработка корпоративной информационной системы, либо выбор таковой на рынке, ее адаптация под специфику учреждения и последующее внедрение. В упомянутый выше анализ, в частности, входят:

Ш описание бизнес-процессов, происходящих в учреждение;

Ш выделение бизнес-процессов или их участков, подлежащих автоматизации.

Не сделав корректного описания бизнес-процессов, бессмысленно переходить к следующим стадиям анализа деятельности предприятия и тем более к его автоматизации.

Таким образом, важнейшим этапом процесса разработки программного обеспечения является этап системного анализа и моделирования деятельности предприятия-заказчика. От успеха проведения этого этапа зависит успех проекта в целом.

Модель IDEF0 можно представить в виде древовидной структуры диаграмм, где верхняя диаграмма является наиболее общей, а самые нижние наиболее детализированы. При рисовании IDEF0-диаграмм используют следующие основные элементы и соглашения [9].

Ш Процесс (Activity) изображается прямоугольником.

Ш Стрелки слева (Input) отображают необходимые для исполнения процесса входы.

Ш Стрелки справа (Output) отображают результаты исполнения процесса (выходы).

Ш Стрелки снизу (Mechanism) отображают необходимые для исполнения процесса механизмы, то есть те объекты, которые собственно и исполняют данный процесс. Например: оператор, рабочий, автоматизированная система предприятия и т. п.

Стрелки сверху (Control) отображают объекты, диктующие правила исполнения процесса, но непосредственно для исполнения процесса не необходимые. Это могут быть статьи КЗОТ и/или инструкция по технике безопасности для процесса изготовления детали рабочим, работающим на станке, или инструкция Банка России и/или тот же КЗОТ для процесса оформления платежа банковским работником.

Стрелки могут разветвляться и сливаться, тем самым образуя иерархию данных.

При декомпозиции процесса все стрелки, входящие или исходящие из него, должны быть перенесены на диаграмму нижнего уровня и использованы при ее построении. При этом запрещены всякие новые стрелки, выходящие за пределы новой диаграммы, кроме специальных, так называемых «туннельных» стрелок.

Все перечисленные соглашения в точности реализованы в продуктах, основанных на методологии IDEF0, и являются их неотъемлемой частью (кроме того, в этих продуктах могут быть реализованы и другие нотации -- IDEF3, DFD и т. п.). Выбирая такой продукт, а в нем методологию IDEF0, бизнес-аналитик берет на себя обязательства выполнять строгие соглашения выбранной методологии. Взамен он получает всего две «вещи», но такие, важность которых трудно переоценить:

Ш проверенную десятилетиями в различных предметных областях методологию моделирования и анализа деятельности предприятия,

Ш автоматизированную систему, умеющую «читать» разработанные аналитиком модели.

Под умением системы «читать» модели здесь понимается а) способность системы контролировать синтаксис разработки модели, поддерживающий в том числе соглашения 1-7 для методологии IDEF0, и б) на основании этого наличие в системе возможности формировать отчеты, представляющие в понятном и удобном для человека виде осмысленную информацию, содержащуюся в модели, в том числе благодаря поддержанию указанных выше синтаксических соглашений.

Благодаря умению «читать» разработанные аналитиком схемы - средства моделирования, основанные на IDEF0, имея описанный по этому стандарту бизнес-процесс, за считанные секунды в качестве отчета выдадут:

Ш перечень ролей, необходимых для функционирования предприятия при использовании будущей системы автоматизации;

Ш заготовки для проектирования оргштатной структуры предприятия;

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

Если же IDEF0-модель разработана в системе, не поддерживающей формализмы оговоренного методологией синтаксиса и потому не умеющей «читать» модели (например, модель просто «нарисована» в MS Word), то все подобные отчеты можно получить только «вручную», что для больших моделей является очень трудоемкой работой, при исполнении которой практически невозможно избежать ошибок. Кроме того, нет никаких гарантий, что разработанная модель будет внутренне непротиворечива и корректна, так как отсутствует контроль синтаксиса.

Краткая характеристика BPwin

BPwin - мощное средство системного анализа деловой и производственной активности, позволяющее адекватно отслеживать соответствие структуры бизнеса, документооборота, финансовых потоков жестким и динамичным требованиям экономики [11]. Система BPwin поможет повысить конкурентоспособность, оптимизировать процессы управления. Результатом использования BPwin является исключение лишних и бесполезных действий, снижение затрат, повышение гибкости и эффективности всего вашего бизнеса. BPwin - незаменимый инструмент менеджеров и бизнес-аналитиков, а в руках системных аналитиков и разработчиков - еще и мощное средство моделирования процессов при создании корпоративных информационных систем.

Основные достоинства BPwin.

BPwin обладает интуитивно-понятным графическим интерфейсом, быстро и легко осваивается, что позволяет сосредоточиться на анализе самой предметной области, не отвлекаясь на изучение инструментальных средств. BPwin помогает быстро создавать и анализировать модели с целью оптимизации деловых и производственных процессов. Применение универсальных графических языков бизнес-моделирования IDEF0, IDEF3 и DFD обеспечивает логическую целостность и полноту описания, необходимую для достижения точных и непротиворечивых результатов.

Ш Посредством набора графических инструментов для отображения действий и объектов, BPwin позволяет легко построить схему процесса, на которой показаны исходные данные, результаты операций, ресурсы, необходимые для их выполнения, управляющие воздействия, взаимные связи между отдельными работами.

Ш Интерактивное выделение объектов обеспечивает постоянную визуальную обратную связь при построении модели. BРwin поддерживает ссылочную целостность, не допуская определения некорректных связей и гарантируя непротиворечивость отношений между объектами при моделировании.

Ш Встроенный механизм вычисления стоимости позволяет оценивать и анализировать затраты на осуществление различных видов деловой активности. Механизм вычисления расходов на основе выполняемых действий (Activity-Based Costing, ABC) - это технология, применяемая для оценки затрат и используемых ресурсов. Она помогает распознать и выделить наиболее дорогостоящие операции для дальнейшего анализа. BPwin может генерировать отчеты непосредственно в формате MS Excel для последующей обработки и использования в других приложениях. Связь с ERwin (моделирование данных в стандарте IDEF1X) позволяет сократить время проектирования и разработки сложных информационных систем. Для системных аналитиков тесная интеграция BРwin с инструментом проектирования баз данных открывает уникальные возможности по созданию действительно комплексных систем, в которых ERwin служит для описания информационных объектов системы, в то время как BPwin отражает функциональные особенности предметной области. Связывая сущности и атрибуты модели данных с информацией о выполняемых действиях, Вы можете продолжить анализ процессов на новом уровне с одновременной перекрестной проверкой моделей процессов и данных.

Ш Является настольным инструментом сотрудников консалтинговых компаний в России и по всему миру.

Основные характеристики BPwin:

Ш Развитая методология функционального моделирования на основе IDEF0

Ш Мощные редакторы для описания операций, связей и вычисления затрат на выполнение работ

Ш Иерархическая структура диаграмм, облегчающая последовательное уточнение элементов модели

Ш Контекстные диаграммы для описания границ системы, области действия, назначения объектов

Ш Декомпозиционные диаграммы для описания особенностей взаимодействия различных процессов

Ш Расширенные возможности по поддержанию ссылочной целостности

Ш Поддержка методологии IDEF3

Ш Экспорт моделей в средства имитационного моделирования

Ш Интеграция и связь со средством проектирования баз данных ERwin (методология IDEF1X)

Ш Поддержка свойств, определяемых пользователем. Описание моделей может быть расширено за счет свойств, определяемых пользователем, включая мультимедийные документы.

Ш Интеграция с ModelMart. Сервер приложений для программных продуктов CA ModelMart поддерживает мощный набор инструментальных программных средств, обеспечивающих совместное (групповое) проектирование и разработку программных систем, включая механизмы объединения моделей и анализа изменений, контроль версий, возможность создания "компонент" модели и т.д. Для организации хранилища моделей в ModelMart используются СУБД на платформах Oracle, Sybase, Informix или SQL Server. Кроме того, поддерживаются прямые связи ModelMart с ERwin и BPwin.

Ш Удобный интерфейс пользователя. В распоряжении пользователей имеется проводник, ставший привычным в среде Windows, позволяющий легко переходить с одной диаграммы на другую простым перемещением по "дереву" проводника.

Ш Расширенная архитектура. BPwin поддерживает 16- и 32-х разрядные системы, позволяя организовать совместную работу для всех участников проекта.

Ш Автоматическая поддержка изменения размеров. BPwin поддерживает автоматическую настройку размеров диаграмм и возможность изменения масштабов изображения моделей.

2.1.2 Средство для проектирования структуры базы данных

Для проектирования БД была использована программа Computer Associates Erwin 4.0 [12]. ERwin - мощное и простое в использовании средство конструирования баз данных завоевавшее широкое признание и популярность. Оно обеспечивает высочайшую продуктивность труда при разработке и сопровождении приложений с использованием баз данных. На протяжении всего процесса - от логического моделирования требований к информации и бизнес-правил, которые определяют базу данных, до оптимизации физической модели в соответствии с заданными характеристиками - ERwin позволяет наглядно отобразить структуру и основные элементы разрабатываемой БД.

ERwin - это не просто мощное средство проектирования, но и инструмент разработки, способный автоматически создавать таблицы и генерировать тысячи строк текста хранимых процедур и триггеров для всех популярных СУБД. Революционная технология Complete-Compare (Завершить-Сравнить) позволяет организовать итеративную разработку, поддерживая постоянную согласованность модели и базы данных. Благодаря интеграции с популярными средами разработки программ, ERwin позволяет ускорить создание приложений для обработки данных. ERwin может масштабироваться путем интеграции с продуктом ModelMart. Эта мощная система управления моделями позволяет проектировщикам баз данных разработчикам приложений и пользователям коллективно работать с информацией о моделях ERwin. Благодаря возможностям разбиения на фрагменты, а также совместного и многократного использования моделей, может быть повышена эффективность моделирования и обеспечено соблюдение корпоративных стандартов.

Стандартизация моделирования и проектирования. ERwin облегчает проектирование баз данных. Для этого достаточно создать графическую E-R модель (объект-отношение), удовлетворяющую всем требованиям к данным и ввести бизнес-правила для создания логической модели, которая отображает все элементы, атрибуты, отношения и группировки. Вы можете расширить возможности Erwin воспользовавшись уникальной поддержкой пользовательских свойств для ввода в модель любой дополнительной информации, значимой для вашей деятельности. Развитые средства моделирования помогают лучше спроектировать базу данных. Предусмотрены возможности манипулирования атрибутами путем их буксировки, внесения изменений и нормализации "на лету". Средства редактирования непосредственно на диаграммах позволяют вносить в модель изменения, не открывая специальных диалоговых окон. Навигация по отношениям обеспечивает быстрое перемещение в больших моделях для перехода к родительским или дочерним объектам. Формируемые системой отчеты позволяют быстро проверить корректность спроектированной базы данных. ERwin - это не что гораздо большее, чем просто инструмент для "рисования"; он автоматизирует процесс проектирования. Например, ERwin предусматривает возможность создания каталога наиболее часто используемых атрибутов, что обеспечивает согласованность имен и описаний по всему проекту. Представления БД поддерживаются как интегрированные компоненты модели, что позволяет автоматически отображать в их описаниях изменения, внесенные в базовые таблицы. Автоматический перенос ключей обеспечивает ссылочную целостность базы данных. Кроме того, ERwin позволяет работать с большими моделями общекорпоративного масштаба, разбивая их на фрагменты и легко управляемые подмножества, предоставляя отдельным специалистам возможность сосредоточить свои усилия в определенной области. Возможность сохранения отображений позволяет хранить множество представлений одной предметной области, ориентированных на различную целевую аудиторию. Созданные с помощью ERwin модели данных можно редактировать, просматривать и распечатывать различными способами. В состав ERwin входит RPTwin - простая в использовании, оснащенная графическим интерфейсом утилита для формирования отчетов и встроенное средство для просмотра с настраиваемыми режимами ,которые обеспечивают полный контроль над отображением содержимого отчетов. Кроме этого, уникальный интерфейс, построенный на использовании шаблонов, позволяет реализовать единые стандарты проектирования и отображать настройки для всех моделей.

Автоматическая генерация БД. ERwin - не только лучший инструмент для проектирования баз данных, но и средство для их быстрого создания. ERwin оптимизирует модель в соответствии с физическими характеристиками целевой базы данных. В отличие от других инструментальных средств ERwin автоматически поддерживает согласованность логической и физической схем и осуществляет преобразование логических конструкций, таких как отношения многие-ко-многим, в их реализацию на физическом уровне.

ERwin устанавливает естественную динамическую связь между моделью и базой данных, что позволяет реализовать как прямой, так и обратный инжиниринг. Используя эту связь, ERwin автоматически генерирует таблицы, представления, индексы, правила поддержания целостности ссылок (первичных и внешних ключей), устанавливает значения по умолчанию и ограничения для доменов/столбцов. В состав ERwin включен целый ряд оптимизированных шаблонов триггеров, обеспечивающих целостность ссылок, и мощный макроязык, который позволяет создавать собственные триггеры и хранимые процедуры. Таким образом, могут быть автоматически сформированы тысячи строк кода, что обеспечивает непревзойденную продуктивность разработки на основе моделей. Средства расчета объема позволяют точно оценить первоначальный размер и характер роста базы данных или хранилища, облегчая эффективное распределение ресурсов системы и планирование мощности. База данных может быть спроектирована и создана без написания отдельных SQL-предложений типа CREATE TABLE или INDEX. Поскольку физическая схема формируется на основе описательной логической модели, ваше приложение будет сразу же полностью документировано. ERwin позволяет также проводить обратный инжиниринг существующих баз данных путем построения модели непосредственно на основе ее таблиц. Таким образом можно получить четкое представление о структуре и содержании существующего приложения. ERwin поддерживает все наиболее популярные реляционные СУБД, включая Oracle, Microsoft SQL Server, Sybase, DB2 и Informix. Одна и та же модель может быть использована для создания нескольких баз данных или для переноса приложения с платформы одной СУБД на другую.

Быстрая разработка приложений. ERwin интегрирует проектирование базы данных в процесс разработки приложения. Благодаря возможностям взаимодействия с популярными средствами разработки для архитектуры клиент/сервер и Web, ERwin поддерживает соответствие между серверной базой данных и формами в клиентской части, позволяя ускорить создание высококачественных приложений.

2.2 Моделирование бизнес процессов расчетов с клиентами юридической консультации

Инструментальным средством для моделирования бизнес-процессов системы был выбран BPwin, так как имеет достаточно простой и интуитивно понятный интерфейс пользователя, и позволяет создавать сложные модели при минимальных усилиях, поддерживает методологии IDFF0 - диаграммы функционирования системы, DFD - диаграммы потоков данных, IDFF3 - диаграммы описания набора данных.

Основу методологии IDFF0 составляет графический язык описания бизнес-процессов. Модель представляет собой совокупность иерархически упорядоченных и взаимосвязанных диаграмм. Вершиной древовидной структуры является контекстная диаграмма, представляющая собой самое общее описание системы и её взаимодействия с внешней средой. Для разрабатываемой системы контекстная диаграмма имеет вид, показанный на рис. 2.1.

Как и было определено в техническом задании, входной информацией системы является:

· Данные о происшествиях.

· Регистрационная информация о преступниках.

· Регистрационная информация о сотрудниках.

Выходной информацией системы является:

· карточки преступников;

· отчеты по происшествиям.

Рис. 2.1. Контекстная диаграмма

После описания системы в целом проводится ее разбиение на крупные фрагменты. Этот процесс называется функциональной декомпозицией.

Детализация контекстной диаграммы A-0 представлена на рис. 2.2 (диаграмма A0). На данной диаграмме выделены четыре функциональных блока: «Ввод регистрационной информации и её корректировка», «Хранение данных», «Поиск и передача данных» и «Обобщение данных и формирование отчетов».

Рис. 2.2. Диаграмма декомпозиции данных.

Для более наглядного отображения текущих операций обработки информации используют диаграммы потоков данных (DFD), которые дополняют модель IDFF0. Детализация блока «Хранение данных» выполнена с помощью DFD-диаграммы (рис. 2.3).

Рис. 2.3. Декомпозиция блока «Хранение данных»

2.3 Проектирование базы данных

Для баз данных характерно многоуровневое представление и описание в виде так называемых моделей данных, для создания которых используется теория баз данных и методики проектирования [18]. Для осуществления проектирования воспользуемся CASE-системой ErWin. Основной функцией этого программного продукта и является проектирование логической структуры БД.

На основании построенных бизнес-процессов, приведенных в разделе 2.2, определим набор взаимосвязанных сущностей (рис. 2.4):

- лица;

- сотрудники;

- адреса;

- учет;

- судимости;

– происшествия.

Рис. 2.4. Обобщенная диаграмма «сущность-связь»

На рис. 2.5 показана логическая схема БД, включающая в себя вышеуказанные сущности и физическая интерпретация которых составляет структуру взаимосвязанных таблиц БД.

Рис. 2.5. Логическая схема БД автоматизированной системы расчетов с клиентами юридической консультации

3. Программная реализация автоматизированной системы учета преступников

3.1 Выбора инструментальных средств разработки баз данных

3.1.1 Выбор архитектуры базы данных

Системы управления базами данных (СУБД) -- это программные средства, предназначенные для создания, наполнения, обновления и удаления баз данных. Различают три основных вида СУБД:

Ш промышленные универсального назначения,

Ш промышленные специального назначения

Ш разрабатываемые для конкретного заказчика.

Специализированные СУБД создаются для управления базами данных конкретного назначения -- бухгалтерские, складские, банковские и т. д. Универсальные СУБД не имеют четко очерченных рамок применения, они рассчитаны «на все случаи жизни» и, как следствие, достаточно сложны и требуют от пользователя специальных знаний. Как специализированные, так и универсальные промышленные СУБД относительно дешевы, достаточно надежны (отлажены) и готовы к немедленной работе, в то время как заказные СУБД требуют существенных затрат, а их подготовка к работе и отладка занимают значительный период (от нескольких месяцев до нескольких лет). Однако в отличие от промышленных заказные СУБД в максимальной степени учитывают специфику работы заказчика (того или иного предприятия), их интерфейс обычно интуитивно понятен пользователям и не требует от них специальных знаний.

По своей архитектуре СУБД делятся на одно-, двух- и трехзвенные (рис. 3.1). В однозвенной архитектуре используется единственное звено (клиент), обеспечивающее необходимую логику управления данными и их визуализацию. В двухзвенной архитектуре значительную часть логики управления данными берет на себя сервер БД, в то время как клиент в основном занят отображением данных в удобном для пользователя виде. В трехзвенных СУБД используется промежуточное звено -- сервер приложений, являющееся посредником между клиентом и сервером БД. Сервер приложений призван полностью избавить клиента от каких бы то ни было забот по управлению данными и обеспечению связи с сервером БД.

Рис. 3.1. Архитектура СУБД: однозвенная (слева); двухзвенная (в центре); трехзвенная (справа)

Использование той или иной архитектуры накладывает сильный отпечаток на общую идеологию работы приложения, на программный код в приложении, на состав компонентов для работы с БД, используемых в приложении (прежде всего это касается не визуальных компонентов) [13].

В зависимости от расположения отдельных частей СУБД различают локальные и сетевые СУБД.

Все части локальной СУБД размещаются на компьютере пользователя базы данных. Чтобы с одной и той же БД одновременно могло работать несколько пользователей, каждый пользовательский компьютер должен иметь свою копию локальной БД. Существенной проблемой СУБД такого типа является синхронизация копий данных, именно поэтому для решения задач, требующих совместной работы нескольких пользователей, локальные СУБД фактически не используются.

К сетевым относятся файл-серверные, клиент-серверные и распределенные СУБД. Непременным атрибутом этих систем является сеть, обеспечивающая аппаратную связь компьютеров и делающая возможной корпоративную работу множества пользователей с одними и теми же данными.

В файл-серверных СУБД все данные обычно размещаются в одном или нескольких каталогах достаточно мощной машины, специально выделенной для этих целей и постоянно подключенной к сети. Такой компьютер называется файл-сервером -- отсюда название СУБД. Безусловным достоинством СУБД этого типа является относительная простота ее создания и обслуживания -- фактически все сводится лишь к развертыванию локальной сети и установке на подключенных к ней компьютерах сетевых операционных систем. По счастью, Delphi «умеет» использовать сетевые средства самой популярной в мире ОС -- Windows -- для создания соответствующих клиентских мест, то есть специального программного обеспечения компьютеров пользователей. Нетрудно заметить, что между локальными и файл-серверными вариантами СУБД нет особых различий, так как в них все части собственно СУБД (кроме данных) находятся на компьютере клиента. По архитектуре они обычно являются однозвенными, но в некоторых случаях могут использовать сервер приложений. Недостатком файл-серверных систем является значительная нагрузка на сеть. Если, например, клиенту нужно отыскать сведения об одной из фирм-партнеров, по сети вначале передается весь файл, содержащий сведения о многих сотнях партнеров, и лишь затем в созданной таким образом локальной копии данных отыскивается нужная запись. Ясно, что при интенсивной работе с данными уже нескольких десятков клиентов пропускная способность сети может оказаться недостаточной, и пользователя будут раздражать значительные задержки в реакции СУБД на его требования. Файл-серверные СУБД могут успешно использоваться в относительно небольших фирмах с количеством клиентских мест до нескольких десятков.

Клиент-серверные (двухзвенные) системы значительно снижают нагрузку на сеть, так как клиент общается с данными через специализированного посредника -- сервер базы данных, который размещается на машине с данными. Сервер БД принимает запрос от клиента, отыскивает в данных нужную запись и передает ее клиенту. Таким образом, по сети передается относительно короткий запрос и единственная нужная запись, даже если соответствующий файл с данными содержит сотни тысяч записей. Запрос к серверу формируется на специальном языке структурированных запросов (Structured Query Language, SQL), поэтому часто серверы БД называются SQL-серверами. Серверы БД представляют собой относительно сложные программы, изготавливаемые различными фирмами. К ним относятся, например, Microsoft SQL Server производства корпорации Microsoft, Sybase SQL Server корпорации Sybase, Oracle производства одноименной корпорации1, DB2 корпорации IBM и т. д. SQL-сервером является также и сервер InterBase корпорации Inprise, который поставляется вместе с Delphi в комплектации Enterprise. Клиент-серверные СУБД масштабируются до сотен и тысяч клиентских мест.

Распределенные СУБД могут содержать несколько десятков и сотен серверов БД. Количество клиентских мест в них может достигать десятков и сотен тысяч. Обычно такие СУБД работают на предприятиях государственного масштаба, отдельные подразделения которых разнесены на значительной территории. К таковым, например, относятся подразделения Министерства обороны и Министерства внутренних дел. В распределенных СУБД некоторые серверы могут дублировать друг друга с целью достижения предельно малой вероятности отказов и сбоев, которые могут исказить жизненно важную информацию. Они используют собственные региональные средства связи. Интерес к распределенным СУБД возрос в связи со стремительным развитием Интернета. Опираясь на возможности Интернета, распределенные системы строят не только предприятия государственного масштаба, но и относительно небольшие коммерческие предприятия, обеспечивая своим сотрудникам работу с корпоративными данными на дому и в командировках.

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

1. Локальные СУБД не обеспечивают коллективный доступ.

2. Архитектура «клиент-сервер» и многозвенная архитектура требует выделять отдельно сервер базы данных. А это усложняет администрирование системы и её сопровождение.

3. Разрабатываемая система будет использоваться в небольших организациях. Количество одновременно работающих пользователей данной системы не будет превышать 10 человек. Таким образом, основной недостаток файл-серверных систем - значительная нагрузка на сеть - в данном случае будет практически незаметен.

Теперь рассмотрим некоторые самые распространённые СУБД этой архитектуры.

3.1.2 Выбор системы управления базами данных

СУБД Borland InterBase Server

SQL - сервер Borland InterBase является "промышленной" СУБД, предназначенной для хранения и выдачи больших объемов данных при использовании архитектуры "клиент - сервер" в условиях одновременной работы с БД множества клиентских приложений. Масштаб информационной системы при этом произволен - от системы уровня рабочей группы до системы уровня большого предприятия [14].

Рассмотрим ряд компонентов InterBase, использование которых обеспечивает максимальную вычислительную разгрузку клиентского приложения и гарантирует высокую безопасность и целостность информации.

Для задания ссылочной и смысловой целостности в БД определяются:

Ш отношения подчиненности между таблицами БД путем определений первичных ключей у родительских и внешних ключей у дочерних таблиц;

Ш ограничения на значения отдельных столбцов путем определения ограничений на значение домена или столбца; при этом условия ограничений могут быть весьма разнообразны - от требования попадания значения в определенный диапазон или соответствия маске до определенного отношения с одной или несколькими записями из другой таблицы (или многих таблиц) БД;

Ш бизнес - правила при помощи триггеров - подпрограмм, автоматически выполняемых сервером до или (и) после события изменения записи в таблице БД;

Ш уникальные значения нужных полей путем создания и использования генераторов.

Для ускорения работы клиентских приложений с удаленной БД могут быть определены хранимые процедуры, которые представляют собой подпрограммы, принимающие и возвращающие параметры и могущие выполнять запросы к БД, условные ветвления и циклическую обработку. Хранимые процедуры пишутся на специальном алгоритмическом языке. В хранимых процедурах программируются часто повторяемые последовательности запросов к БД. Текст процедур хранится на сервере в откомпилированном виде Преимущества в использовании хранимых процедур очевидны:

Ш отпадает необходимость синтаксической проверки каждого запроса и его компиляции перед выполнением, что убыстряет выполнение запросов;

Ш отпадает необходимость реализации в приложении запросов, определенных в теле хранимых процедур;

Ш увеличивается скорость обработки транзакций, т.к. вместо, часто длинного, SQL - запроса по сети передаётся относительно короткое обращение к хранимой процедуре.

В составе записи БД могут определяться BLOB - поля (большой двоичный объект), предназначенные для хранения больших объёмов данных в виде последовательности байтов. Таким образом могут храниться текстовые и графические документы, файлы мультимедиа, звуковые файлы и т.д.

InterBase даёт возможность использовать определяемые пользователем функции, в которых могут реализовываться функциональности, отсутствующие в стандартных встроенных функциях InterBase (вычисление максимума, минимума, среднего значения, преобразование типов и приведение букв к заглавным). Например, в функциях пользователя можно реализовать извлечение из значения даты номера дня, года; определение длины символьного значения; усечение пробелов; разные математические алгоритмы и другое. Функция пишется на любом алгоритмическом языке, позволяющем разрабатывать DLL (библиотеки динамического вызова), например на ObjectPascal.

InterBase может посылать уведомления клиентским приложениям о наступлении какого - либо события. Одновременно работающие приложения могут обмениваться сообщениями через сервер БД, вызывая хранимые процедуры, в которых реализована инициализация нужного события.

Для обеспечения быстроты выполнения запросов и снятия с клиентского приложения необходимости такие запросы выдавать в БД можно определить виртуальные таблицы (просмотры), в которых объединяются записи из одной или более таблиц, соответствующих некоторому условию. Работа с просмотром из клиентского приложения ничем не отличается от работы с обычной таблицей. Поддерживает просмотр сервер, реагируя на изменения данных в БД.

CУБД Microsoft Access

Рассмотрим ещё одну СУБД Microsoft Access. Microsoft Access без необходимости не производит загрузки программ, таких как процедуры для приложений и объектов доступа к данным, без которых некоторые базы данных могут обойтись. Это сокращает время загрузки базы данных и повышает полную производительность [15]. Открытие нескольких форм и отчетов происходит гораздо быстрее из-за отсутствия модулей у форм и отчетов, которые не содержат процедуры обработки событий. Для оптимизации запросов на обновление крупных объемов данных из источников данных ODBC достаточно послать на сервер запрос, обрабатывающий все соответствующие записи одновременно, вместо их последовательного перебора.

Microsoft Access можно использовать для создания приложения Web. Для создания приложения Web объекты должны быть сохранены в формате HTML либо должен быть использован мастер публикации в Web. Отчеты могут быть экспортированы в статический формат HTML, а таблицы и формы могут быть экспортированы в динамический или статический формат HTML.

Microsoft Access обеспечивает два традиционных способа защиты базы данных: установка пароля, требуемого при открытии базы данных, и защита на уровне пользователей, которая позволяет ограничить, к какой части базы данных пользователь будет иметь доступ или какую ее часть он сможет изменять.

Microsoft Access удовлетворяет упрощённой архитектуре «клиент - сервер». Можно поместить на сетевой сервер только таблицы и хранить остальные объекты базы данных на компьютерах пользователей. В этом случае работа с базой данных происходит быстрее, так как по сети передаются только данные. Пользователи могут изменять формы, отчеты и другие объекты в соответствии со своими конкретными требованиями, не влияя при этом на работу других пользователей. Что и является упрощённой архитектурой «клиент - сервер».

Microsoft Access обеспечивает хорошее взаимодействие с офисными программами. Экспортирует выбранный объект в Microsoft Excel или Word. Допускается экспорт таблиц, запросов, форм и отчетов с помощью команд Анализ в MS Excel или Публикация в MS Word. Предусмотрено объединение данных из таблиц или форм с помощью мастера составных документов Microsoft Word по команде Слияние с MS Word.

Допускается сохранение объекта в режиме таблицы или отчета в файле формата RTF.

Некоторые технические характеристики Microsoft Access приведены в таблице 3.1 [15].

Таблица 3.1. Технические характеристики Microsoft Access.

Характеристика

Значение

Максимальный размер одной БД

Не выше 1 Гбайт.

Максимальное число таблиц в одной БД

32768

Максимальное число полей (столбцов) в одной таблице

255

Максимальное число записей в одной таблице

Не ограничено

Максимальная длина записи

32 К(кроме полей BLOB)

Максимальная длина поля

16 К (кроме полей BLOB)

Максимальная длина поля ВLОВ

1 Гбайт

Максимальное число индексов в БД

32

Максимальное число полей в индексе

10

Максимальное число вложенностей SQL-запроса

50

Выбор СУБД для реализации БД автоматизированной системы

Из выше рассмотренных СУБД наиболее отвечает требованиям Microsoft Access. Технические характеристики вполне удовлетворяют требованиям поставленной задачи. Функциональные возможности, так же являются удовлетворяющими.

СУБД InterBase хорошо взаимодействует с офисными программами, но она уступает Microsoft Access с экономической точки зрения, а так же не поставляется с программными продуктами Microsoft Office.

Из выше сказанного следует, что разумнее всего использовать Microsoft Access для реализации БД. А так же учитывались и некоторые другие факторы: во-первых, это продукт Microsoft (а средства разработки приложений этой компании давно зарекомендовали себя с положительной стороны), что обеспечивает хорошую совместимость с продуктами этой компании и не требует установки дополнительных драйверов. Microsoft Access весьма прост в установке, настройке и главное в администрировании.

3.2 Схема данных и структура таблиц базы данных

После проектирования логической схемы данных в CASE-системе ERWin, рассмотренное во 2-ой главе, было выполнено создание таблиц базы данных в Microsoft Access. В ходе программной реализации автоматизированной системы учета преступников логическая схема была немного переработана и усовершенствована. Окончательный вариант схемы данных показан на рис. 3.2.

Рис. 3.2. Схема базы данных автоматизированной системы учета преступников, реализованная в Microsoft Access

Приведем описание построенных таблиц базы данных.

Таблица АДРЕСА (см. табл. 3.1) представляет собой справочник адресов, включающий все параметры адреса.

Таблица 3.1.

Имя

Тип

Размер

Описание

КОДАДРЕСА

Длинное целое

4

Уникальный код (идентификатор) адреса

КОДЛИЦА

Длинное целое

4

Код лица

ИНДЕКС

Текстовый

50

Почтовый индекс

СТРАНА

Текстовый

50

Страна

РЕГИОН

Текстовый

50

Регион

РАЙОН

Текстовый

50

Район

НАСЕЛ_ПУНКТ

Текстовый

50

Населенный пункт

УЛИЦА

Текстовый

50

Улица

ДОМ

Текстовый

50

Дом

КОРПУС

Текстовый

50

Корпус

КВАРТИРА

Текстовый

50

Квартира

ТЕЛЕФОН

Текстовый

50

Телефон

ПРИМЕЧАНИЕ

Текстовый

50

Примечания

Таблица ЛИЦО (см. табл. 3.2) хранит данные о регистрируемых лицах, совершивших преступления или подозреваемых в их совершении. В данной таблице хранится подробная информация о месте рождения лица.

Таблица 3.2.

Имя

Тип

Размер

КОДЛИЦА

Длинное целое

4

ФАМИЛИЯ

Текстовый

30

ИМЯ

Текстовый

30

ОТЧЕСТВО

Текстовый

30

ДАТА РОЖДЕНИЯ

Дата/время

8

НАЦИОНАЛЬНОСТЬ

Текстовый

50

ПОЛ

Текстовый

3

СТРАНА РОЖДЕНИЯ

Текстовый

50

РЕГИОН РОЖДЕНИЯ

Текстовый

50

РАЙОН РОЖДЕНИЯ

Текстовый

50

НП РОЖДЕНИЯ

Текстовый

50

Населенный пункт

ГРАЖДАНСТВО

Текстовый

50

РОЗЫСК

Текстовый

100

Данные о розыске

ПРИМЕЧАНИЕ

Текстовый

255

ДАТА ВВОДА

Дата/время

8

Таблица ПРОИСШЕСТВИЕ (см. табл. 3.3) содержит информацию о зарегистрированных происшествиях.

Таблица 3.3.

Имя

Тип

Размер

КОДПРОИСШЕСТВИЯ

Длинное целое

4

КОДЛИЦА

Длинное целое

4

ТЕРРИТОРИЯ

Текстовый

50

ЧТО ПРОИЗОШЛО

Текстовый

50

ДАТА

Дата/время

8

ВРЕМЯ

Дата/время

8

ОБЪЕКТ

Текстовый

50

МЕСТО

Текстовый

50

СПОСОБ

Текстовый

50

ПОТЕРПЕВШИЙ

Текстовый

50

ФАБУЛА

Текстовый

255

ДАТА РЕГИСТРАЦИИ

Дата/время

8

ВИД РЕГИСТРАЦИИ

Текстовый

50

НОМЕР РЕГИСТРАЦИИ

Текстовый

50

ОСНОВАНИЕ

Текстовый

50

СЛУЖБА

Текстовый

50

ИСПОЛНИТЕЛЬ

Текстовый

50

СТАТУС

Текстовый

50

Таблица СОТРУДНИКИ (см. табл. 3.4) представляет собой справочник сотрудников управления внутренних дел, который содержит также аутентификационные данные, необходимые для вход в систему (логин/пароль) .

Таблица 3.4.

Имя

Тип

Размер

КОДСОТРУДНИКА

Длинное целое

4

ЛОГИН

Текстовый

50

ПАРОЛЬ

Текстовый

50

ФАМИЛИЯ

Текстовый

30

ИМЯ

Текстовый

30

ОТЧЕСТВО

Текстовый

30

ДОЛЖНОСТЬ

Текстовый

50

ТЕРРИТОРИЯ

Текстовый

255

ФОТОГРАФИЯ

Поле объекта OLE

-

Таблица СУДИМОСТЬ (см. табл. 3.5) хранит список судимостей лиц, совершивших преступления или подозреваемых в их совершении.

Таблица 3.5.

Имя

Тип

Размер

КОДСУДИМОСТИ

Длинное целое

4

КОДЛИЦА

Длинное целое

4

СТАТЬЯ УК

Текстовый

50

ДАТА СОВЕРШЕНИЯ

Дата/время

8

КЕМ ОСУЖДЕН

Текстовый

50

ДАТА ПРИГОВОРА

Дата/время

8

МЕРА НАКАЗАНИЯ

Текстовый

50

МЕРА ОТБЫВАНИЯ

Текстовый

50

ДАТА ОСВОБОЖДЕНИЯ

Дата/время

8

Таблица УЧЕТ (см. табл. 3.6) представляет собой основную таблицу учета преступников, хранящую информацию о категории учета, датах постановки и снятия с учета, а также ссылку на сотрудника, выполнившего постановку на учет.

Имя

Тип

Размер

КОДУЧЕТА

Длинное целое

4

КОДЛИЦА

Длинное целое

4

КАТЕГОРИЯ УЧЕТА

Текстовый

50

ОКРАСКА

Текстовый

50

ДАТА ПОСТАНОВКИ

Дата/время

8

ДАТА СНЯТИЯ

Дата/время

8

КТО ПОСТАВИЛ

Длинное целое

4

ПРИМЕЧАНИЕ

Текстовый

50

Таблица ФОТО (см. табл. 3.1) хранит фотографии лиц, совершивших преступления или подозреваемых в их совершении.

Имя

Тип

Размер

КОДФОТО

Длинное целое

4

КОДЛИЦА

Длинное целое

4

ФОТО

Поле объекта OLE

-

3.3 Реализация синхронного просмотра данных

При разработке приложений для работы с базами данных часто возникает необходимость в связывании двух наборов данных по ключевому полю. В Microsoft Access такая связь задается в схеме данных (см. рис. 3.2). Например, в таблице УЧЕТ, содержащей учетные данные преступников, имеется поле КОДЛИЦА, которое содержит идентификационный номер преступника. Под этим же номером в таблице ЛИЦО хранится информация о преступнике (фамилия, национальность, место рождения и др.). При разработке пользовательского интерфейса необходимо, чтобы при просмотре списка поставленных на учет преступников, отображались не идентификационные номера, а их фамилия и инициалы.

Механизм связывания полей из различных наборов данных по ключевому полю называется синхронным просмотром. Таблицу, в которой расположено поле, значения которого замещаются на синхронные, называют исходной таблицей (это таблица УЧЕТ). Таблицу, содержащую ключевое поле и поле данных для синхронного просмотра, называют таблицей синхронного просмотра (таблица ЛИЦО).

В Microsoft Access механизм синхронного просмотра реализован с помощью задания свойств полей на вкладке Подстановка (рис. 3.3).

Рис. 3.3. Подстановка данных о преступниках из запроса ФИО_ЛИЦО в поле КОДЛИЦА таблицы УЧЕТ.

На рис. 3.4-3.7 приведена реализация синхронного просмотра для таблиц базы данных.

Рис. 3.4. Подстановка данных о сотруднике из запроса ФИО_СОТРУДНИКА в поле КТО ПОСТАВИЛ таблицы УЧЕТ.

Рис. 3.5. Подстановка данных о преступниках из запроса ФИО_ЛИЦО в поле КОДЛИЦА таблицы ПРОИСШЕСТВИЕ.

3.4 Разработка запросов и программных модулей

Запросы обеспечивают быстрый и эффективный доступ к данным, хранящимся в таблице.

При создании таблицы с помощью MS Access можно заметить, что программа не разрешает использовать вычисляемые поля. Нет также возможности выполнить сортировку не по первичному ключу.

Благодаря запросам, можно выполнить сортировку или вычислить выражения. Например, свести вместе данные из связанных таблиц.

При выполнении запроса MS Access считывает данные из таблиц и отображает результат выполнения в режиме таблицы. При этом следует учитывать, что результат выполнения запроса не сохраняется. Данные всегда хранятся в таблицах. В запросе MS Access хранит только инструкции о том, как должны быть организованы данные в результате выполнения запроса.

Для некоторых запросов можно внести изменения в результат запроса, отображаемый в режиме таблицы. Эти изменения отразятся и в исходных таблицах. На основании запроса можно разработать форму или отчет.

В ходе программной реализации системы были созданы следующие основные запросы:

1. Запрос возвращает список лиц с указанием фамилии, имени и отчества в виде одной строки. Для этого используется конкатенация полей таблицы:

SELECT ЛИЦО.КОДЛИЦА, [ФАМИЛИЯ]+" "+[ИМЯ]+" "+[ОТЧЕСТВО] AS Л

FROM ЛИЦО;

2. Запрос возвращает фамилию и инициалы сотрудника, а также его должность в виде одной строки. Для этого используется конкатенация полей таблицы:

SELECT СОТРУДНИКИ.КОДСОТРУДНИКА, [ФАМИЛИЯ]+" "+Left([ИМЯ],1)+"."+Left([ОТЧЕСТВО],1)+".("+[ДОЛЖНОСТЬ]+")" AS C


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.