Автор: Пользователь скрыл имя, 28 Февраля 2013 в 21:34, дипломная работа
елью дипломного проектирования является создание программного продукта предназначенного для автоматизации учета оплаты договоров за обучение.
Внедрение разработанного программного позволит быстро и оперативно получать нужную информацию, значительно сократит затраты, связанные с обработкой информации, освободит от хранения большого объема информации на бумаге, сократит рутинные вычисления при получении выходных документов.
Социально-экономический раздел дипломного проекта посвящен рассмотрению роли информационных технологий в управлении. В разделе приводится обоснование ожидаемых результатов повышения эффективности работы от использования разработанного программного продукта.
В научно-исследовательском разделе описывается объект автоматизации и его математическая модель. В разделе приводится обзор программных средств разработки приложений и обосновывается выбор языка программирования. Также в этом разделе приводится классификация приложений для работы с базами данных, дается обзор существующих систем управления базами и обосновывается выбор СУБД.
Но в то же время среда разработки сохранила простоту и наглядность процесса создания приложений, основанного на использовании технологий визуального программирования. Компонентный подход позволяет легко и быстро создавать не только интерфейс программ, но и достаточно сложные механизмы доступа к данным, а также повторять и тиражировать удачные программные решения. Delphi позволяет также создавать прикладные программы за рекордно короткое время, поскольку можно оперативно поочередно выполнять и отлаживать свою программу в рамках среды разработки. Оптимизирующий компилятор Delphi прозрачно и быстро преобразует интерфейс и программу на исходном языке в компактную исполняемую программу на машинном языке или в библиотеку динамических связей DLL.
В состав поставки Delphi входит множество средств для разработки и эксплуатации приложений, использующих базы данных:
машина баз данных Borland Database Engine (BDE), представляющая собой набор dll-библиотек, обеспечивающих низкоуровневый доступ к локальным и клиент / серверным СУБД;
драйверы для работы с удаленными серверами данных SQL Links;
утилита для установки псевдонимов баз данных, параметров и драйверов БД на конкретном компьютере;
средство для создания, изменения и просмотра БД Database Desktop, ориентированное на работу с локальными СУБД;
универсальная утилита SQL Explorer, позволяющая вести визуальное программирование БД с использованием данных от сервера;
средство для трассировки выполнения SQL-запросов SQL Monitor и другие средства разработки приложений для БД.
Все это делает Delphi одним из самых удобных средств программирования.
2.3 Анализ СУБД и выбор
БД для создания
Базами данных (БД) называют
электронные хранилища
Системы управления базами данных (СУБД) - это программные средства, предназначенные для создания, наполнения, обновления и удаления баз данных. [3]
В зависимости от расположения
различают локальные и
Все части локальной СУБД размещаются на компьютере пользователя базы данных. Локальный вариант реально может обеспечить лишь однопользовательский режим доступа к данным. Этот вариант на предприятиях практически не встречается, так как в нем чрезвычайно трудно синхронизировать содержимое нескольких копий БД, количество которых (копий) должно равняться количеству одновременно работающих с данными пользователей.
До недавнего времени
для организации коллективных БД
использовалась, как правило, архитектура
файл-сервер. В файл-серверных БД
данные располагаются на сетевом
файл-сервере, который может быть
доступен одновременно нескольким пользователям,
поэтому к таким БД возможен многопользовательский
режим доступа. Данные в БД хранятся
в единственном экземпляре, а каждый
клиент в каждый момент времени работает
с некоторой локальной копией
этих данных, причем управление данными
целиком возлагается на клиентские
программы. Именно они должны заботиться
о синхронизации локальных
Вся тяжесть вычислительной
работы ложится на компьютер клиента;
на рабочую станцию присылаются
не только данные, необходимые конечному
пользователю, но и данные, которые
будут использоваться для выполнения
запроса и затем будут
Поскольку БД представляет собой набор файлов на сетевом сервере, доступ к таблицам регулируется только сетевой операционной системой, что делает такую БД по сути беззащитной от случайного или намеренного искажения хранящейся в ней информации, уничтожения или хищения.
Бизнес-правила в системах файл-сервер реализуются в программе клиента, что в принципе не исключает проектирование противоречащих бизнес-правил в различных программах. Смысловая целостность информации при этом может нарушаться.
Недостаточно развитый аппарат транзакций локальных СУБД служит потенциальным источником ошибок как при одновременном внесении изменений в одну и ту же запись, так и при реализации отката результатов серии объединенных по смыслу в единое целое операций над БД, когда некоторые из них завершились успешно, а некоторые - нет. Это может нарушать ссылочную и смысловую целостность БД.
Перечисленных недостатков во многом лишены СУБД, построенные по архитектуре клиент-сервер.
В архитектуре клиент-сервер между клиентом и БД появляется важное промежуточное звено - сервер БД (специальная программа, управляющая базой данных)
Клиент формирует запрос к серверу на языке запросов SQL (Structured Query Language - структурированный язык запросов), являющийся промышленным стандартом для реляционных БД. SQL-сервер обеспечивает интерпретацию запроса, его выполнение, формирование результата и выдачу этого результата клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса: клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и предоставляет пользователю. Так как клиентскому компьютеру посылается результат выполнения запроса, по сети передаются только те данные, которые в действительности нужны клиенту. В итоге снижается нагрузка на сеть. Кроме того, SQL-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен за минимально возможное время. Все это повышает быстродействие системы и снижает время ожидания результата запроса.
При выполнении запросов сервером существенно повышается степень безопасности данных, поскольку правила целостности данных определяются на сервере и являются едиными для всех приложений, использующих эту БД. В результате исключается возможность определения противоречивых правил поддержания целостности. Мощный аппарат транзакций, поддерживаемый SQL-серверами, блокирует одновременное изменение одних и тех е данных различными пользователями и предоставляет возможность откатов к первоначальным значениям при внесении в БД изменений, закончившихся аварийно.
Данные в серверной БД обычно физически хранятся на диске в виде одного большого файла, что в сочетании с назначаемыми каждому пользователю паролями и привилегиями существенно повышает защиту данных от намеренной порчи и хищений.
По вышеназванным причинам при разработке базы данных в дипломном проекте была выбрана архитектура клиент-сервер.
В архитектуре клиент-сервер используются промышленные серверы данных типа Oracle, MS SQL Server, Informix, Sybase, InterBase и ряд других [5]. Серверы Oracle, Informix, Sybase управляют базами данных объемом десятки и сотни гигабайт. Для управления меньшими корпоративными базами данных MS SQL Server и InterBase. Каждый тип сервера работает на собственном диалекте языка, который более или менее соответствует стандарту ANSI 92. Серверы Oracle и InterBase имеют некоторые дополнения. А диалекты серверов Sybase и MS SQL отличаются от стандарта довольно сильно. [4]
Oracle была первой коммерческой реляционной СУБД, поддерживающей ставший ныне индустриальным стандартом язык SQL; ее первая версия появилась в 1970 году. Ранние версии этой СУБД были предназначены для мэйнфреймов, а в качестве рабочих мест использовались терминалы. Однако со временем появились версии Oracle, предназначенные для использования в архитектуре клиент-сервер (первой такой версией была Oracle 5, выпущенная в 1985 году). Первоначально версии Oracle были предназначены для различных серверных платформ. Первые версии этого сервера для персональных компьютеров появились в середине 90-х годов. Oracle была первой компанией, создавшей СУБД, использовавшую предоставляемыми некоторыми серверными платформами средства параллельных вычислений. На сегодняшний день последней версией этого сервера является версия Oracle 8i, отличительными свойствами которой являются:
наличие объектных расширений
и соответствующих типов
наличие функций аналитической обработки данных;
возможность создания таблиц, содержащих агрегатные данные;
поддержка хранения мультимедиа-данных;
дополнительные возможности обеспечения безопасности данных, например, шифрование данных;
возможность создания систем, устойчивых к сбоям и ряд других.
Oracle производит собственные средства разработки клиентских приложений, например, Developer/2000 или Oracle Power Objects, а также предоставляет пользователям возможность создавать клиентские приложения с помощью других средств. [5]
Первая версия Microsoft SQL Server предназначалась для платформы OS/2, последующие версии этого сервера баз данных предназначались для платформы Windows NT и со временем были тесно интегрированы с этой операционной системой. На сегодняшний день наиболее широко используемой является выпущенная в 1998 году версия Microsoft SQL Server 7.0. Эта версия предназначена исключительно для платформы Windows NT, в ее состав входят удобные утилиты администрирования, сервисы преобразования данных, поддержка распределенных запросов и транзакций, утилиты для создания хранилищ данных. Клиентские приложения для Microsoft SQL Server можно создавать как с помощью средств разработки Microsoft - Visual Basic, Visual C++ и других, так и с помощью средств разработки других производителей. Для этого поставляются специальные драйверы и библиотеки. [5]
Ведущий продукт фирмы Informix - Informix Dynamic Server, последняя версия которого называется Informix Dynamic Server.2000. Данный продукт поддерживает платформы UNIX и Microsoft SQL Server и обеспечивает эффективную работу как на одно-, так и на многопроцессорных системах. В числе основных характеристик сервера следует отметить следующие:
использование для управления дисковым пространством как средств ОС, так и собственных функций, что позволяет добиться более высокой производительности;
управление разделением памяти;
поддержка фрагментации таблиц и индексов на нескольких дисках;
распараллеливание запросов;
зеркалирование данных;
двухфазное завершение транзакций и др.
Клиентские приложения могут создаваться с использованием C, C++, Java, Visual Basic, Delphi. Помимо этого существует собственное средство разработки Informix 4GL и Informix Client Software Developer's Kit. [5]
Одним из серверных продуктов фирмы Sybase является продукт под названием Adaptive Server Enterprise. Этот продукт существует для Windows NT и некоторых версий UNIX и предназначен для обслуживания крупных предприятий. Другим продуктом этой фирмы является Adaptive Server Anywhere. Этот сервер предназначен для обслуживания небольших рабочих групп, для применения в портативных компьютерах в качестве персонального сервера с периодическим копированием информации в общую БД. [5]
Для реализации архитектуры клиент / сервер в дипломном проекте был использован сервер InterBase компании Inprise (прежнее название - Borland). Выбор в пользу именно этого сервера был сделан по следующим причинам.
InterBase - «родной» сервер для Delphi и для доступа к нему не нужно устанавливать дополнительных драйверов. Продукция фирмы Inprise (Borland) давно зарекомендовала себя с положительной стороны.
InterBase весьма прост в установке и не требует дополнительных усилий по настройке. InterBase относительно прост в администрировании по сравнению с другими SQL-серверами. Установка программного обеспечения клиента также чрезвычайно проста.
Сервер InterBase использует ряд уникальных технологий. Например, активное ядро сервера реализует блокировку данных на уровне отдельных записей. Кроме того, сервер не прихотлив и практически не требует администрирования. Этот сервер обладает прекрасными функциональными возможностями [3]. Также InterBase работает практически со стандартным SQL (дополнения и изменения невелики).
За работой сервера внимательно следит утилита InterBase Guardian, ее пиктограмма видна на нижней панели Windows. Эта утилита осуществляет начальный запуск сервера, а также его перезапуск, если по каким-либо причинам сервер «рухнул». Фактически восстановление работоспособности сервера происходит за считанные доли секунды, так что многие пользователи даже, возможно, не заметят сбоя в работе. [3]
Кроме того, в вариант поставки Delphi Enterprise входит InterBase 4.2 для Windows 32, что делает его доступным для большинства пользователей.
В Delphi 5 для работы с данными, когда в качестве сервера баз данных задействуется InterBase, поддерживается технология InterBase Express (IBX), с помощью которой компоненты IBX связываются с сервером минуя BDE через программный интерфейс IB DataBase API, который предоставляется клиентской частью IB DataBase. Созданные прикладные системы будут обладать максимально возможной производительностью, способностью работать при минимально доступных ресурсах и смогут использовать специфические возможности этого сервера баз данных: сигнализаторы событий, поля BLOB, средства двухфазного завершения транзакций и т.п.
Информация о работе Разработка информационной системы учета оплаты за обучение