Разработка автоматизированной системы заполнения первичной документации предприятия

Понятие автоматизированной системы (АС). Обзор литературы, введение в базы данных. Назначение разработки, составные части программы. Программная и эксплуатационная документация, технико-экономическое обоснование проекта, характеристика программы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 27.04.2009
Размер файла 759,6 K

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

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

26

Смоленский промышленно-экономический колледж

Кафедра Математики и Информатики

Специальность Программное Обеспечение

Вычислительной Техники и Автоматизированных Систем

Дипломная работа

По теме: Разработка автоматизированной системы заполнения первичной документации предприятия

АННОТАЦИЯ

Данная дипломная работа на тему «Разработка системы автоматизированного заполнения первичной документации» выполнена студентом 4-го курса Смоленского Промышленно-экономического колледжа Дроздовым Артемом Викторовичем.

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

Расчетно-пояснительная записка содержит (*) рисунок и (*) таблиц.

THE SUMMARY

The given degree work on a theme «System engineering of the automated filling of the initial documentation» is executed by the student of 4-th rate of Smolensk Industrial - Economic College Drozdov Artyom Victorovich.

The given settlement - explanatory note consists from (***) the basic chapters which in total occupy (***) a quire. Into structure (***) the basic chapters enter: a special part of the degree project (a theoretical part, a practical part, the program documentation, Operational the documentation, initial texts of the developed software), an organizational - economic part, chapters on a labour safety and the safety precautions and ergonomics.

The settlement - explanatory note contains () picture and () tables.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

ГЛАВА 1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Обзор литературы.

Введение в базы данных.

Общая теория.

Архитектура информационных систем.

Классификация и функции СУБД.

Требования, предъявляемые к базам данных.

Модели представления данных.

Иерархическая модель данных.

Сетевая модель данных.

Реляционная модель данных.

Системы программирования Borland Delphi, как средства разработки приложений баз данных.

Механизмы Delphi для организации доступа к данным.

ADO-компоненты Delphi для организации доступа к данным.

Компоненты Delphi для визуализации данных

ГЛАВА 2. ПРАКТИЧЕСКАЯ ЧАСТЬ.

Назначение разработки.

Составные части программы

ГЛАВА 3. ПРОГРАММНАЯ И ЭКСПЛУАТАЦИОННАЯ ДОКУМЕНТАЦИЯ

Техническое задание (ГОСТ 19.201-78)

Введение

Основание для разработки

Назначение разработки

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

Стадии и этапы разработки

Спецификация

Текст программы А.В. 00004-01_12_01 (ГОСТ 19.401-78)

Описание программы А.В. 00004-01_13_01 (ГОСТ 19.402-78)

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

Функциональное назначение

Описание логической структуры

Используемые технические средства

Вызов и загрузка

Входные и выходные данные

Программа и методика испытаний А.В. 00004 - 01_51_01

Ведомость эксплуатационных документов А..В. 00004 - 01_20_01 (ГОСТ 19.507-79)

Описание применения А.В. 00004-01_31_01 (ГОСТ 19.502-78)

Назначение программы

Условия применения

Описание задачи

Входные и выходные данные

Руководство системного программиста А.В. 00004 - 01_32_01 (ГОСТ 19.503-79).

Структура программы

Настройка программы

Проверка программы

Дополнительные возможности программы

Руководство программиста А.В. 00004 - 01_33_01 (ГОСТ 19.504-79)

Характеристики программы

Обращение к программе

Входные и выходные данные

Руководство оператора A.B. 00004 - 01_34_01 (ГОСТ 19.505-79)

Назначение программы

Условия выполнения программы

Выполнение программы

Сообщения оператору

Руководство по техническому обслуживанию А.В. 00004-01_46_01 (ГОСТ 19.508-79)

Введение

Общие указания

Требования к техническим средствам

Описание функций

ГЛАВА 4. ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБОТКИ

ГЛАВА 5. ОХРАНА ТРУДА И ТЕХНИКА БЕЗОПАСНОСТИ

Основные положения

ГЛАВА 6. ЭРГОНОМИКА

Основные положения

Анализ опасных и вредных производственных факторов

Санитарные нормы

Требования к освещению помещений и рабочих мест с ПЭВМ

Общие требования к организации рабочих мест

Требования к организации режима труда и отдыха при работе с ПЭВМ

Требования к помещениям для эксплуатации ПЭВМ

Правила пожарной безопасности

Защита рабочих от поражения электрическим током

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

СОДЕРЖАНИЕ

ПРИЛОЖЕНИЕ 1

ПРИЛОЖЕНИЕ 2

ПРИЛОЖЕНИЕ 3

ВВЕДЕНИЕ

На протяжении всей истории человека перед ним стояла задача накопления, хранения и обработки информации. Долгое время для решения этой задачи применялись различные методы и инструменты, такие как бумага, печатный станок, да и просто память самого человека, и другие его умственные способности. Однако все эти и многие другие методы были достаточно неудобными при использовании больших объемов информации. А так как потребности человека, как известно, вещь постоянно растущая, то вскоре людям потребовались новые инструменты накопления и обработки информации, способные удовлетворить эти самые потребности в автоматизации различных видов деятельности человека, так или иначе связанных с накоплением, обработкой и распространением информации. Так люди пришли к необходимости создания нового вида машин - электронно-вычислительных (ЭВМ), то есть компьютеров.

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

Первоначально ЭВМ использовались для обработки исключительно числовой информации. Однако, при постоянно растущих масштабах производства различного рода товаров, возникла проблема автоматизации различных этапов производства с целью повышения качества, снижения трудоемкости и времени производства товаров. Для решения этой проблемы бы осуществлен переход к новым гибким технологиям, вызвавшим появление автоматизированных систем (АС).

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

Исходя из этого, можно дать определение автоматизированной системе.

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

При автоматизации различных видов деятельности человека широко применяются, в том числе и ЭВМ.

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

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

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

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

Современные СУБД являются информационно-справочными программными системами для поддержания динамической информационной модели сложного управляемого объекта, то есть для обеспечения ввода, обновления, обработки информации и коллективного доступа к ней.

Как было сказано выше существует множество автоматизированных систем, специально предназначенных для автоматизации различных видов деятельности, в общем, и с вязанных с хранением и обработкой экономической информации в частности (программы фирмы «1С», корпорации «Парус» и др.). При всем многообразии функции, предоставляемых пользователю, такие программы являются дорогостоящими и достаточно сложными для освоения инструментами автоматизации. Однако зачастую пользователю не требуются все широчайшие возможности таких программ, а лишь необходимо автоматизировать рутинную работу по заполнению различного рода экономической документации. Именно поэтому многие небольшие фирмы и частные предприниматели не желают тратить весьма немаленькие средства на приобретение больших АС. По этой причине было решено создать программу «D-Art Aurora v.1.0», которая представляет собой автоматизированную систему заполнения накладных.

Тема данного дипломного проекта сформулирована как «Разработка автоматизированной системы заполнения первично документации». Результатом проделанной работы и является данная программа. Конечно, в первичную документацию входят не только накладные, однако заказчик данной программы нуждался лишь в заполнении накладных. Не смотря на это, программа построена так, что добавление необходимых для заполнения документов и соответственное расширение возможностей программы не составляет особого труда (хотя и потребует вмешательство программиста), повлечет за собой лишь небольшое дополнение и некоторую коррекцию кода программы.

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

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

Выбор среды разработки данной программы для меня не составил особого труда. С учетом имеющихся требований заказчика и моих знаний, для разработки была выбрана система визуального программирования Borland Delphi 7.0, построенная на основе языка программирования Object Pascal. Данная система была выбрана по нескольким критериям. Во-первых, данная система программирования за долгие годы использования зарекомендовала себя как наиболее удобная, надежная и гибкая система в сфере разработки приложений баз данных. Во-вторых, Borland Delphi 7.0 имеет широкие возможности по проектированию приложений баз данных различной сложности, предоставляет разработчику удобные средства создания методов обработки информации. В-третьих, эта система поддерживает широкий спектр технологий, применяемых как для доступа к данным, так и для организации взаимодействия создаваемой программы с другими объектами операционной системы Windows. Кроме того, Object Pascal, является наиболее структурированным языком программирования, что значительно упрощает разработку подобных приложений.

ГЛАВА 1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Обзор литературы

В данной части этой главы рассмотрим литературу, которая была использована при написании данной дипломной работы и разработке программы «D-Art Aurora v.1.0» (табл. 1).

Таблица 1

Использованная литература

Автор, название книги

Содержание

1. Робинсон С. - Microsoft Access 2000: учебный курс - СПб.: Питер, 2004.

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

2. Валерий Фаронов - Delphi 6: учебный курс - СПб.: Питер, 2004.

Книга посвящена изучению среды объектно-ориентированного программирования Borland Delphi 6. В книге рассмотрены азы программирования на языке Object Pascal, а так же основные принципы объектно-ориентированного программирования, основные компоненты и методы работы с ними

3. Валерий Фаронов - Программирование баз данных в Delphi 6: учебный курс - СПб.: Питер, 2006.

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

4. Валерий Фаронов - Профессиональная работа в Delphi 6. Библиотека программиста. - СПб.: Питер, 2004

В данной книге описываются нетривиальные возможности системы визуального программирования Delphi 6. Описываются компоненты и возможности системы, относящиеся к профессиональным возможностям Delphi 6, такие как - использование технологии COM (Component Object Model), программирование web-приложений, создание компонентов и встроенной справочной системы.

5. Елманова Н. - Delphi 6 и технология COM. - СПб.: Питер, 2008

Книга посвящена использованию технологии Component Object Model (COM) в приложениях, созданных с помощью Delphi 6. Освещаются вопросы, связанные с принципами модели COM, разработкой элементов управления ActiveX, серверов и контроллеров автоматизации, применение OLE-документов в приложениях, применение технологии COM и COM+ для организации распределенных вычислений. Кроме того, в книге описаны способы и методы применения в приложениях COM-серверов, входящих в состав пакета программ Microsoft Office.

6. Базы данных: Учебник для высших учебных заведений / Под ред. проф. А.Д. Хомоненко. - СПб.: КОРОНА принт, 2007

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

Агальцов В.П. - Базы данных.- М.: Мир, 2006

В данном учебном пособии изложены основные понятия теории баз данных. В частности, теория информационных моделей, типов логических моделей, взаимосвязей в базе данных, подробно рассмотрена реляционная модель данных и приемы работы и создания приложений баз данных в среде Microsoft Visual Fox Pro 6.0 и старших версиях.

Введение в базы данных

Общая теория

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

В широком смысле по определение ИС подпадает любая система обработки информации, однако существует и более узкая трактовка понятия ИС.

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

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

Рассмотрим все эти компоненты.

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

Любая база данных может быть разделена на три составляющих уровня:

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

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

· Третий уровень (концептуальный) - этот уровень является переходным между двумя выше описанными. Этот уровень представляет собой обобщенное представление хранимых данных для множества пользователей.

Существует множество баз данных, построенных на основе различных моделей представления данных.

Моделью представления данных называют логическую структуру, хранимых в базе данных. К наиболее распространенным моделям представления данных относятся: иерархическая, сетевая, реляционная, постреляционная, многомерная и объектно-ориентированная (см. далее).

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

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

Обычно для обеспечения автоматизации обработки, хранимой в базе данных информации, создаются, так называемые приложения баз данных, представляющие собой программу или комплекс программ, которые позволяют обрабатывать информацию для конкретной прикладной задачи. Такие приложения могут быть созданы как в среде самой СУБД, так и вне ее с помощью систем программирования, использующих средства доступа к базам данных, например Delphi, C++ Builder, Visual C++, Visual Basic и др. Приложения, созданные в среде самой СУБД называют приложениями СУБД, а приложения созданные вне этой среды - внешними приложениями.

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

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

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

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

Вычислительная система (ВС) представляет собой совокупность взаимосвязанных и согласовано действующих ЭВМ или процессоров и других устройств, обеспечивающих автоматизацию процессов приема, обработки и передачи информации потребителям.

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

Архитектура информационных систем

Эффективность функционирования информационной системы (ИС) во многом зависит от ее архитектуры. В настоящее время в большинстве случаев используются распределенные ИС. Распределенные ИС - это такие ИС, которые позволяют обрабатывать, добавлять и удалять информацию из базы данных сразу нескольким пользователям. Такие ИС делятся на две части серверную и клиентскую. При чем общая база данных разделяется на корпоративную базу данных (КБД) и персональные базы данных (ПБД), и КБД размещается на компьютере сервере, а ПБД размещаются на персональных компьютерах сотрудников подразделений.

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

26

Исторически первой появилась архитектура распределенной ИС, названная файл-сервером (Рис. 1). В таких ИС по запросам пользователей файлы БД передаются на персональные компьютеры, где и производится их обработка. Недостатками такого вида архитектуры является высокий трафик, то есть загруженность сети при передаче данных для обработки, а так же частая передача избыточных данных: вне зависимости от того, сколько записей из базы данных требуется пользователю, файлы базы данных передаются пользователю полностью.

26

В настоящее время перспективной является архитектура клиент-сервер (Рис. 2). Достоинством организации информационной системы по такой архитектуре является удачное сочетание централизованного хранения, обслуживания и коллективного доступа к общей корпоративной информации с индивидуальной работой пользователей над персональной информацией. При использовании архитектуры клиент-сервер сервер баз данных берет на себя основную часть работы по обработке данных, а так же обеспечению их надежного хранения, непротиворечивости и корректности. Кроме того, при использовании данной архитектуры значительно снижается нагрузка на сеть. Это происходит из-за того, что клиент формирует запросы, поступающие к серверу в виде инструкций языка SQL (Structured Query Language - структурированный язык запросов).

В ответ на получение таких инструкций, сервер выполняет поиск необходимых записей и передает их пользователю, то есть по сети вместо длинных процедур от клиента предается короткий запрос, а в ответ от сервера передаются не все данные, а только необходимые пользователю. В результате скорость работы с БД значительно возрастает.

Корпоративная БД создается, поддерживается и функционирует под управлением сервера БД, например, Microsoft SQL Server, Borland InterBase, Oracle Server. При использовании архитектуры клиент-сервер общая база данных разделяется на корпоративную БД и персональные БД, это дает возможность уменьшить сложность проектирования БД, а значит снизить вероятность ошибок при проектировании и стоимость проектирования. Кроме того, использование такой архитектуры позволяет постепенно наращивать информационную систему предприятия, во-первых, по мере развития предприятия; во-вторых, по мере развития самой ИС.

Классификация и функции СУБД

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

По сфере применения различают три основных вида СУБД:

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

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

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

Кроме разделения по специализации СУБД можно разделить так же и по их архитектуре (Рис. 3). Все СУБД по этому критерию делятся на следующие:

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

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

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

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

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

26

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

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

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

Рассмотрим некоторые функции, которые реализует СУБД.

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

Перечисленные выше функции СУБД, в свою очередь, используют следующие основные функции более низкого уровня, которые называются низкоуровневыми:

· Управление данными во внешней памяти;

· Управление буферами во внешней памяти;

· Управление транзакциями;

· Ведение журнала изменений базы данных;

· Обеспечение целостности, непротиворечивости и безопасности БД.

Рассмотрим эти функции более подробно.

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

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

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

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

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

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

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

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

Требования, предъявляемые к базам данных

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

База данных должна:

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

· Обладать приемлемым быстродействием, то есть пользователь должен получать интересующие его сведенья за максимально короткое время;

· Иметь возможность последующего расширения без существенной переделки, как самой базы данных, так и средств ею управляющих;

· Не зависеть (или мало зависеть) от количества помещаемых в нее данных;

· Легко перестраиваться при изменении аппаратной;

· Содержать только достоверные данные. Достоверность должна обеспечиваться как при вводе новых данных, так и при редактировании уже имеющихся4

· Доступ к данным должны иметь определенные лица;

Модели представления данных

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

· Иерархическая,

· Сетевая,

· Реляционная.

Кроме того, в последние годы появились и стали более активно внедряться на практике следующие модели:

· Постреляционная,

· Многомерная,

· Объектно-ориентированная.

Рассмотрим традиционные модели подробнее.

Иерархическая модель

В иерархической модели связи между данными можно описать с помощью упорядоченного графа (или дерева) (Рис. 4).

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

Для описания структуры (схемы) иерархической базы данных на некотором языке программирования используется тип данных «дерево» («Tree»), который схож с типом «запись» («Record») языка Object Pascal или «структура» («Structure») языка C, в них допускается вложенность типов, каждый из которых находится на некотором уровне.

Тип «дерево» является составным. Он включает в себя подтипы («поддеревья»), каждый из которых, в свою очередь, является типом «дерево». Каждый из этих типов «дерево» состоит из одного «корневого типа» и упорядоченного набора (возможно пустого). Каждый из элементарных типов,

26

Рис. 4. Представление связей в иерархической модели связей в иерархической модели

включённых в тип «дерево», является простым или составным типом «запись». Простая запись состоит из одного типа, например числового, а составная из совокупности типов, например, целое, строка символов, указатель и т.д.

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

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

Для организации физического размещения иерархических данных в памяти компьютера могут использоваться следующие группы методов:

· Представление линейным списком с последовательным распределение памяти;

· Представление связными линейными списками (методы, использующие указатели и справочники).

К основным операциям манипулирования, иерархически организованными данными, относятся следующие:

· Поиск указанного экземпляра БД (например, дерева со значение 10 в поле «Номер»);

· Переход от одного дерева к другому;

· Переход от одной записи к другой внутри дерева;

· Вставка новой записи в указанную позицию;

· Удаление текущей записи и др.

К достоинствам иерархической модели данных относятся эффективное использование памяти компьютера и неплохие показатели времени выполнения основных операций над данными. Иерархическая модель удобна при работе с иерархически упорядоченной информацией.

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

Сетевая модель данных

Сетевая модель данных позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных (Рис. 5).

26

Рис. 5. Представление связей в сетевой модели

Сетевая модель более демократична, чем иерархическая и не так структурирована. В сетевой модели отсутствует понятие главного и подчиненного объекта. Один и тот же объект может выступать как главный, так и подчиненный. Для описания схемы сетевой БД используются две группы типов: «запись» и «связь». Тип «связь» определятся для двух типов «запись» - предка и потомка. Переменные типа связь являются экземплярами связей.

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

Физическое размещение данных в базах сетевого типа может быть организованно практически теми же методами, сто и в иерархических базах данных.

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

· Поиск записи в БД;

· Переход от предка к первому потомку;

· Переход от потомка к предку;

· Создание новой записи;

· Удаление текущей записи;

· Обновление текущей записи;

· Включение записи в связь;

· Исключение записи из связи;

· Изменение связей и т.д.

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

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

Реляционная модель данных

Как уже отмечалось выше, приведенные модели данных достаточно сложны для понимания обычного пользователя. Реляционная модель, описываемая ниже, в этом смысле имеет большое преимущество перед приведенными моделями. Именно по этому, а так же по ряду других причин, эта модель в настоящее время является самой распространенной для построения баз данных. А так же по этим причинам именно эта модель будет использована для решения задачи поставленной темой дипломного проектирования. Рассмотрим основы реляционной модели данных более подробно.

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

Таблица 2.

Элементы реляционной модели

Элемент реляционной модели

Форма представления

Отношение

Таблица

Схема отношения

Строка заголовков таблицы (заголовок таблицы)

Кортеж

Строка таблицы

Сущность

Описание свойств объекта

Атрибут

Заголовок столбца таблицы

Домен

Множество допустимых значений атрибута

Значение атрибута

Значение поля в записи

Первичный ключ

Один или несколько атрибутов

Тип данных

Тип значений элементов таблицы

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

Сущность есть объект любой природы, данные о котором хранятся в базе данных. Данные о сущности хранятся в отношении.

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

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

Домен представляет собой множество всех возможных значений определенного атрибута отношения. Например, отношение «Сотрудник» включает 4 домена. Домен 1- содержит фамилии всех сотрудников, домен 2 - номера всех отделов фирмы, домен 3 - названия всех должностей, домен 4 - даты рождения всех сотрудников. Каждый домен образует значения одного типа, например, символьные или числовые, из всех записей отношения.

Схема отношения (заголовок отношения) представляет собой список имен атрибутов. Множество собственно кортежей отношения часто называют содержимым (телом) отношения.

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

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

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

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

Ключи обычно используются для следующих целей:

· Исключение дублирования значений в ключевых атрибутах;

· Упорядочивание кортежей. Возможно упорядочение по возрастанию или убыванию, а так же одних атрибутов по убыванию, других по возрастанию одновременно;

· Ускорение работы с кортежами отношения;

· Организации связывания таблиц;

Кроме первичного ключа в реляционной модели имеется внешнего ключа. Пусть в отношении R1 имеется не ключевой атрибут A, значения которого являются значениями ключевого атрибута B отношения R2, тогда атрибут A отношения R1 является внешним ключом. С помощью внешних ключей устанавливаются связи между отношениями. Реляционная модель накладывает на внешние ключи ограничение для обеспечения целостности данных, называемое ссылочной целостностью. Это означает, что каждому значению внешнего ключа обязательно должно быть поставлено в соответствие хотя бы одно значение в связываемом отношении.

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

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

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

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

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

Вообще, суть связывания состоит в установлении соответствия полей связи основной и подчиненной таблицы.

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

· Связь «ОДИН К ОДНОМУ» (1:1). Связь вида 1:1 образуется в случае, когда все поля связи основной и подчиненной таблицы являются ключевыми. Поскольку значения в ключевых полях не повторяются, обеспечивается взаимо-однозначное соответствие записей из этих таблиц. Сами таблицы при использовании такого вида связи становятся равноправными. На практике связь вида 1:1 используется сравнительно редко, так как хранимую в двух таблицах информацию, в этом случае, легко объединить в одну, что позволяет сэкономить ресурсы компьютера.

· Связь «ОДИМ КО МНОГИМ» (1:М). Связь вида 1:М имеет место в случае, если когда одной записи основной таблицы ставится в соответствие несколько записей подчиненной таблицы.

· Связь «МНОГИЕ К ОДНОМУ» (М:1). Этот вид связи образуется, если одной или нескольким записям основной таблицы ставится в соответствие одна запись подчиненной таблицы. Вид связи (1:М или М:1) зависит от того, какая таблица является основной, а какая подчиненной

· Связь «МНОГИЕ КО МНОГИМ» (М:М). Самый общий вид связи М:М возникает в случаях, когда нескольким записям основной таблицы ставится в соответствие несколько записей подсиненной таблицы. Очевидно, аналогично связи 1:1, связь М:М, делает связываемые таблицы по сути равноправными.

Таблица 3

Характеристика видов связей таблиц в РМД

Характеристика полей связи по видам

1:1

1:М

М:1

М:М

Поля связи основной таблицы

Являются ключом

Являются ключом

Не являются ключом

Не являются ключом

Поля связи подчиненной таблицы

Являются ключом

Не являются ключом

Являются ключом

Не являются ключом

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

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

· Каждой записи связанной таблицы соответствует нуль или более записей подчиненной таблицы;

· В подчиненной таблице не должно быть записей, ссылающихся на несуществующие записи в основной таблице;

Существует три основные операции над данными двух связанных таблиц.

· Ввод новых записей;

· Модификация записей;

· Удаление записей;

Рассмотрим некоторые методы организации контроля ссылочной целостности, с учетом этих операций.

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

2) Модификация записей. При редактировании полей связи подчиненной таблицы необходимо, чтобы новое значение полей связи совпадало со значением какой-либо записи основной таблицы, то есть дополнительная запись должна поменять ссылочную запись в основной таблице, но не должна потерять ее вообще. Редактирование полей связи основной таблицы разумно подчинять одному из приведенных ниже правил:

· Редактировать записи, у которых нет подчиненных записей. Если есть подчиненные записи, то блокировать изменение полей связи;

· Изменение в полях связи основной таблицы мгновенно передавать во все поля связи всех записей подчиненной таблицы (каскадное обновление).

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

· Удалять можно только записи, которые не имеют подчиненных записей. При попытке удаления записи, имеющей хотя бы одну подчиненную запись, блокировать эту операцию;

· При удалении из основной таблицы записи, имеющей хотя бы одну подчиненную запись, автоматически удалять все связанные с этой записью, записи из подчиненной таблицы (каскадное удаление).

Системы программирования Borland Delphi, как средства разработки приложений баз данных

Как отмечалось выше, среда визуального программирования Borland Delphi является одним из лучших средств для разработки приложений баз данных. Этому способствует и поддержка множества технологий, архитектур БД, и наиболее распространенных моделей данных, и гибкость языка Object Pascal, и многое другое. Кроме того, Borland Delphi - это средство написания программ, т.е. при помощи Delphi пишутся внешние приложения баз данных, что позволяет реализовать дополнительную функциональность приложения и обеспечить наиболее точное соответствие требованиям заказчика.

Рассмотрим основные механизмы построения приложений баз данных, используемые в Borland Delphi 7.0.

Механизмы Delphi для организации доступа к данным

Характерной особенностью большой части программ, созданных с помощью Delphi и предназначенных для работы с базами данных, является их зависимость от специальной библиотеки программ, которая называется BDE (Borland Database Engine - машина баз данных корпорации Borland). BDE представляет собой набор динамических библиотек DLL, предназначенных для низкоуровневого доступа к данным самых различных форматов. BDE «умеет» работать с таблицами самых распространенных СУБД, как файл-серверных (dBase, Paradox, FoxPro, Clipper), так и клиент-серверных (InterBase, Microsoft SQL Server, Oracle и др.). Без установки и регистрации BDE на компьютере не может работать ни одна программа БД, созданная в Delphi версий от 1 до 4 . Это обстоятельство существенно затрудняет распространение, созданных с помощью Delphi, программ, так как в месте с программой должна поставляться и библиотека BDE.


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

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