Главная страница
Навигация по странице:

  • 3.1 Разработка структуры базы данных в системе BPwin

  • 3.2 Разработка структуры базы данных в системе ERwin

  • 4 Разработка алгоритмов и программного обеспечения

  • 4.1 Описание процесса разработки структуры программного приложения

  • 4.2 Описание процесса реализации манипуляций с данными

  • 4.3 Описание процесса реализации вывода данных на бланк документов

  • 4.4 Организация комплекса защиты программного приложения и данных

  • 4.5 Описание программных модулей

  • 5 Описание пользовательского интерфейса 5.1 Инструкция по эксплуатации

  • Основное ПЗ. С каждым днём компьютер всё больше и больше внедряется в нашу деятельность и находит применение в любой её области


    Скачать 2.87 Mb.
    НазваниеС каждым днём компьютер всё больше и больше внедряется в нашу деятельность и находит применение в любой её области
    Дата08.05.2023
    Размер2.87 Mb.
    Формат файлаdoc
    Имя файлаОсновное ПЗ.doc
    ТипДокументы
    #1115316
    страница3 из 9
    1   2   3   4   5   6   7   8   9

    3 Разработка структуры базы данных в среде BPwin/ERwin
    Разработка программного обеспечения включает в себя несколько этапов. Однако всегда начальным этапом создания системы является изучение, анализ и моделирование деятельности заказчика для возможного улучшения и оптимальных методов работы, которые и будут реализованы в создаваемом приложении. Именно изучение предмета проектирования является ключевым моментом при разработке любого приложения и позволяет четко и однозначно определить задачи, которые стоят перед разработчиками. Таким образом, анализ потоков данных является неотъемлемой частью начального этапа разработки жизнеспособной системы.

    На рынке существует несколько технологий, которые предназначены для моделирования деятельности заказчика и позволяют облегчить обмен информацией. Инструменты для разработки, моделирования и анализа получили название CASE-средств (Computer-Aided Software Engineering). Современные CASE-средства охватывают обширную область поддержки многочисленных технологий проектирования ИС: от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл ПО.

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

    С развитием компьютерных технологий и появлением CASE-моделирования возникла потребность в инструментах, которые бы поддерживали стандарты моделирования. К наиболее развитым инструментам для разработки, моделирования и анализа на сегодняшний день можно отнести BPwin и ERwin. Эти два продукта тесно интегрированы и обычно используются при разработке совместно. Использование этих продуктов совместно поможет правильно оценить стоящие задачи, предложить адекватное решение (анализ бизнес-процессов, BPwin) и разработать центральную часть любого программного обеспечения – базы данных – с использованием информации, полученной во время обследования предприятия (моделирование базы данных, ERwin). Эти инструменты сами по себе не являются решением проблемы, но их грамотное и своевременное использование поможет свести «рутинный» труд разработчика к минимуму, позволит ему сконцентрироваться на собственно разработке системы и снизит потери времени, которые обычно происходят при согласовании моделей со специалистами предметной области. Кроме того, использование этих инструментов дает возможность получить набор полностью документированных и согласованных моделей, что в значительной степени облегчит поддержку созданных систем в будущем, а также может быть повторно использовано при разработке других систем[9].
    3.1 Разработка структуры базы данных в системе BPwin
    BPwin – мощное средство системного анализа деловой и производственной активности, позволяющее адекватно отслеживать соответствие структуры бизнеса, документооборота, финансовых потоков жестким и динамичным требованиям экономики. Система BPwin поможет повысить конкурентоспособность, оптимизировать процессы управления. Результатом использования BPwin является исключение лишних и бесполезных действий, снижение затрат, повышение гибкости и эффективности разработки.

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

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

    Одним из важнейших средств BPwin является генератор отчетов. На деле, генератор отчетов RPTwin представляет собой автономный продукт, который поставляется с некоторыми продуктами Logic Works, и позволяет генерировать подробные и многогранные отчеты по модели. Вместе с BPwin устанавливается набор стандартных отчетов, которые позволяют осветить модель с различных сторон. Отчеты обычно сопровождают окончательный вариант модели бизнес-процессов, созданной при помощи BPwin, и содержат информацию, размещение которой на модели сделало бы ее трудной для восприятия.

    BPwin совмещает в одном инструменте средства моделирования функций (IDEF0), потоков данных (DFD) и потоков работ (IDEF3).

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

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

    Моделирование потоков работ (нотация IDEF3) позволяет рассмотреть конкретный процесс, проанализировать операции, из которых он состоит, а также точки принятия решений, влияющих на его ход[11].

    Проведем разработку структуры (контекстной диаграммы и диаграммы декомпозиции) проектируемой ходе данного проекта базы данных.

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

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

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

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

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

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

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

    Контекстная диаграмма изображает деятельность самого верхнего уровня и обозначает границу моделирования относительно цели, возможностей и точки зрения. Название контекстной диаграммы находится в дереве модели непосредственно под общим описанием. Для создания контекстной диаграммы необходимо сначала создать новую модель, выбрав пункт «New» в меню «File». В появившемся диалоге необходимо набрать имя модели и выбрать ее тип. Этот диалог также отображается при запуске BPwin.

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

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

    Задание имени стрелки производится в закладке «Name» диалога свойств стрелок. Для вызова этого диалога достаточно дважды щелкнуть мышью на нужной стрелке.

    В любой момент работы с диаграммой существует возможность добавления на нее новых блоков с использованием инструмента «Activity box Tool» панели инструментов. Для добавления блока следует щелкнуть на этом инструменте, а затем – на диаграмме в том месте, где необходимо расположить новый блок. После того как дополнительный блок создан, вы можете связать его стрелками с другими блоками и задать его название и другие свойства.

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

    Перемещение любых объектов на диаграмме осуществляется с помощью их «захвата» мышью и перемещения в новое место. При перемещении блоков одновременно перемещаются и связанные с ними стрелки. Функциональные блоки могут также быть перемещены между диаграммами с использованием команд «Cut/Paste» из меню «Edit». Номера блокам диаграммы BPwin присваиваются автоматически. При изменении взаимного расположения блоков могут меняться и их номера. Изменение размеров объектов диаграммы может быть сделано перемещением их границ[11].

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

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

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

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

    Обычно разработка модели базы данных состоит из двух этапов: составление логической модели и создание на ее основе физической модели. ERwin полностью поддерживает такой процесс, он имеет два представления модели: логическое (logical) и физическое (physical). Таким образом, разработчик может строить логическую модель базы данных, не задумываясь над деталями физической реализации, т.е. уделяя основное внимание требованиям к информации и бизнес-процессам, которые будет поддерживать будущая база данных.

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

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

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

    Сущность представляет собой множество реальных или абстрактных объектов. Сущности соответствует таблица в реальной СУБД. В ERwin сущность визуально представляет три основных вида информации:

    • атрибуты, составляющие первичный ключ;

    • неключевые атрибуты;

    • тип сущности (независимая/зависимая).

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

    Экземпляры независимой сущности могут быть уникально идентифицированы без определения ее связей с другими сущностями; зависимая сущность, наоборот, не может быть уникально идентифицирована без определения ее связей с другими сущностями. Зависимая сущность отображается в ERwin прямоугольником с закругленными углами.

    Атрибут (Attribute) – любая характеристика сущности, значимая для рассматриваемой предметной области и предназначенная для квалифи­кации, идентификации, классификации, количественной характеристи­ки или выражения состояния сущности. Атрибут представляет тип ха­рактеристик или свойств, ассоциированных с множеством реальных или абстрактных объектов (людей, мест, событий, состояний, идей, предме­тов и так далее). Экземпляр атрибута - это определенная характеристика от­дельного элемента множества. Экземпляр атрибута определяется типом характеристики и ее значением, называемым значением атрибута. На диаграмме «сущность-связь» атрибуты ассоциируются с конкретными сущностями.

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

    • тип связи (идентифицирующая, неидентифицирующая, полная/неполная категория, неспецифическая связь);

    • родительская сущность;

    • дочерняя (зависимая) сущность;

    • мощность связи (cardinality);

    • допустимость пустых (null) значений.

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

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

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

    Атрибуты первичного ключа родительской сущности по умолчанию мигрируют со своими именами[13].

    Из произведенного анализа принципа построения диаграммы «сущность-связь» можно выделить следующую последовательность действий:

    • определить корневые сущности;

    • определить атрибуты сущностей;

    • установить связи между корневыми сущностями.

    В разделе 2 подробно описаны сущности разрабатываемой базы данных и определены связи между ними. Таким образом, на основании этой информации в соответствии с вышеизложенными правилами разработаем структуру базы данных в среде Erwin. Результат разработки представлен в Приложении В.
    4 Разработка алгоритмов и программного обеспечения
    Программное обеспечение для подготовки приложений к диплому представляет собой программное средство для пользователей различной степени квалификации и подготовки в области работы на ПК, следовательно удобство использования программы должно быть соответствующим. Именно поэтому при разработке системы основное внимание следует уделить дружественности интерфейса, обеспечению минимального ввода данных и, как следствие, снижению возможности ошибок пользователя.
    4.1 Описание процесса разработки структуры программного приложения
    На основании анализа технического задания в качестве программной реализации программного обеспечения выбрана технология ADO.

    Механизм доступа к данным через ADO и многочисленные объекты и интерфейсы реализованы в VCL Delphi в виде набора компонентов, расположенных на странице ADO (рисунок 4.1).

    Рисунок 4.1 – Палитра компонент ADO
    Набор свойств и методов компонентов ADO обеспечивает реализацию всех необходимых приложению БД функций. Способы использования компонентов ADO немногим отличаются от стандартных компонентов VCL доступа к данным. Однако при необходимости разработчик может использовать все возможности интерфейсов ADO, обращаясь к ним через совокупность объектов ADO[14].

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

    Компоненты доступа к данным ADO могут использовать два варианта подключения к хранилищу данных. Это стандартный метод ADO и стандартный метод Delphi.

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

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

    База данных может быть указана двумя способами через файл в формате Microsoft Data Link, расширение UDL, либо прямым заданием параметров соединения. Окно этого свойства представлено на рисунке 4.2.


    Рисунок 4.2 – Окно выбора указания базы данных

     

    При выборе «Use Connection String» и нажатии на кнопку «Build…» появляется стандартный диалог выбора файла. В этом окне выбирается тип базы данных, местоположение базы и параметры соединения.

    На первой закладке выбирается тип базы данных или Provider, в терминах ADO (рисунок 4.3).



    Рисунок 4.3 – Закладка «Поставщик данных» окна

    «Свойства связи с данными»
    Базы MS Access доступны как через «Microsoft Jet OLE DB Provider», так и через «Microsoft OLE DB Provider for ODBC». «Microsoft Jet OLE DB Provider» обеспечивает соединение с данными СУБД Access при помощи технологии DАО.

    «Microsoft OLE DB Provider for ODBC drivers» обеспечивает доступ к данным, которые уже "прописаны" при помощи драйверов ODBC. Однако реальное использование такого соединения представляется проблематичным – драйверы ODBC крайне медлительны. Поэтому при выборе провайдера остановимся на первом варианте, т.е. на «Microsoft Jet OLE DB Provider»[15].

    Следующая закладка зависит от выбранного типа базы, однако для всех типов есть кнопка «Проверить подключение», позволяющая проверить правильность и полноту параметров. Для «Microsoft Jet OLE DB Provider» окно страницы представлено на рисунке 4.4. Флажок «Пустой пароль» подавляет диалог ввода идентификатора и пароля пользователя при установлении соединения, если поле пароля пустое. Флажок «Разрешить сохранение пароля» сохраняет пароль в строке параметров соединения. Если он не отмечен, то введенный пароль будет использоваться при выполнении тестового соединения.



    Рисунок 4.4 – Закладка «подключение» окна «Свойства связи с данными» 
    На закладке «Дополнительно» (рисунок 4.5) расположены дополнительные параметры, с помощью которых устанавливается уровень доступа к файлу базы данных, таймаут сетевого соединения (то есть время через которое связь будет считаться потерянной, если сервер не отвечает) и уровень глубины проверки секретности соединения.



     Рисунок 4.5 – Закладка «Дополнительно» окна «Свойства связи с данными» 

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


    Рисунок 4.6 – Закладка «Все» окна «Свойства связи с данными»
    В компоненте TADOConnection есть свойства Provider, DefaultDatabase и Mode которые являются альтернативным методом задания частей строки параметров соединения – провайдера, базы данных (например, пути до базы MS Access) и режима совместного использования файлов базы данных. Эти значение этих свойств автоматически включаются в строку соединения, если были заданы до активизации компонента и автоматически выставляются после соединения[16].

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

    function MakeConnectionString(Path: string): widestring.

    При этом предполагается хранение последней версии строки с местоположением источника данных в файле DBPath.ini.

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

    На странице ADO палитры компонентов Delphi, кроме компонентов соединения есть стандартные компоненты, инкапсулирующие набор данных и адаптированные для работы с хранилищем данных ADO. Это компоненты:

    • TADODataSet – универсальный набор данных;

    • TАDOTаblе – таблица БД;

    • TADOQuery – запрос SQL;

    • TADOStoredProc – хранимая процедура.

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

    Компонент TADODataSet обеспечивает доступ к одной или нескольким таблицам базы данных с помощью запроса типа Select. Компонент рассчитан на возвращение набора данных, поэтому его нельзя использовать для выполнения подмножества операторов DDL. В компоненте есть свойство CommandText, однако в него можно поместить только оператор Select.

    Компонент TАDOTаblе обеспечивает использование в приложениях Delphi таблиц баз данных, подключенных через провайдеры OLE DB. Компонент TADOTable используется в тех случаях, когда необходимо работать с одной таблицей в базе данных. Имя таблицы БД задается свойством TableName.     Связь друг с другом компонентов TADOTable, работающих с разными таблицами, одна из которых главная, а другая – вспомогательная, осуществляется с помощью свойств MasterSource и MasterFields.

    Компонент TADOQuery служит для определения SQL-операторов, позволяющих осуществить доступ к одной или нескольким таблицам в базе данных. Содержание набора определяется SQL-операторами и состоянием БД. Свойство SQL (TStrings) используется для указания одного или нескольких SQL-операторов, которые следует выполнить. В операторах могут использоваться параметры, идентификаторы которых помечаются знаком «:». Изменение параметра осуществляется изменением свойства Value по индексу в коллекции объектов Parameters. Изменение параметров возможно только при закрытом запросе.     Основной метод TADOQuery – это метод ExecSQL, используемый для выполнения SQL-запроса, хранящегося в свойстве SQL.

    Компонент TADOStoredProc предназначен для выполнения хранимых процедур базы данных.  Компонент TADOStoredProc имеет свойство ProcedureName (WideString), служащее для указания хранимой процедуры для запуска. Параметры процедуры определяются свойством Parameters и задаются так же, как и параметры TADOQuery[17].

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

    Для доступа к данным и работы с ними воспользуемся компонентами TADOQuery и TАDOTаblе.

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

    • TDBGrid – позволяет отображать наборов данных в сетке;

    • TDBEdit – позволяет отображать содержимого поля таблицы;

    • TDBImage – позволяет приложению использовать изображения, которые хранятся в полях типа BLOB.

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

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

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

    • TADOQuery с палитры компонент ADO;

    • TDataSource с палитры компонент Data Access;

    • TDBGrid c палитры компонент Data Controls.

    Выбранные компоненты поместим в специальный «контейнер» DataModule (ADOQuery1, DataSource1, DBGrid1).

    В инспекторе объектов присвоим новые имена:

    • ADOQuery1=qrGoups;

    • DataSource1=dsGroups.

    Связываем компоненты, устанавливая свойство DBGrid1 DataSource на компонент dsGroups, свойство DataSet компонента dsGroups на qrGoups. Теперь нам необходимо указать базу данных. Делается это в свойстве Connection (выбираем ConnectDB).

    После этого в свойстве SQL qrGoups создадим запрос на выборку:

    SELECT

    Groups.*,

    Specialities.SpecCode,

    Specialities.SpecName,

    Specialisations.SpecialName,

    Qualifications.QualificName

    FROM Qualifications INNER JOIN (Specialisations INNER JOIN

    (Specialities INNER JOIN Groups ON Specialities.SpecId =

    Groups.SpecId) ON Specialisations.SpecialNameId =

    Specialities.SpecialisationNameId) ON

    Qualifications.QualificId = Specialities.QualificId. 

    Активизируем qrGoups, установив свойство Active в True.

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

    SELECT

    Students.*,

    LastDocuments.LastDocName,

    GiveOutDocs.GiveOutDocName

    FROM LastDocuments INNER JOIN (GiveOutDocs INNER JOIN Students

    ON GiveOutDocs.GiveOutDocNameId = Students.GiveOutDocNameId)

    ON LastDocuments.LastDocId = Students.LastDocId

    ORDER BY StudentSurname.

    Приложение должно предусмотреть возможность просмотра списка студентов выбранной группы, т.е. каждый раз при выборе определённой группы в он мог видеть список студентов этой группы. Это достигается посредством «связанных курсоров». Таблицы следует связать по полю GroupId, которое содержит каждая таблица. Для этого требуется для qrStudents в инспекторе объектов свойство DataSours установить в qrGroups, а в свойстве SQL в конец запроса следует добавить строчку:

    WHERE Students.GroupId =:GroupId.

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

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

    SELECT

    Hours.*,

    SubjectNames.SubName,

    Groups.GroupName

    FROM Groups INNER JOIN (SubjectNames INNER JOIN Hours ON

    SubjectNames.SubId = Hours.SubId) ON Groups.GroupId =

    Hours.GroupId

    WHERE Hours.GroupId = :GroupId;


    • для выборки информации о курсовых работах соответствующего студента (наименования курсовой работы, оценки):

    SELECT

    CoursWorks.*,

    MarkNames.MarkName

    FROM MarkNames INNER JOIN CoursWorks ON

    MarkNames.MarkNameId =CoursWorks.MarkNameId

    WHERE CoursWorks.StudentId = :StudentId;


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

    SELECT

    Practice.*,

    MarkNames.MarkName,

    PracticeNames.PracticeName

    FROM PracticeNames INNER JOIN (MarkNames INNER JOIN

    Practice ON

    MarkNames.MarkNameId = Practice.MarkNameId) ON

    PracticeNames.PracticeNameId = Practice.PracticeNameId

    WHERE Practice.StudentId = :StudentId;

    • для выборки информации о сданных государственных экзаменах соответствующего студента (наименования экзамена, оценки):

    SELECT

    StateExaminations.*,

    MarkNames.MarkName

    FROM MarkNames INNER JOIN StateExaminations ON

    MarkNames.MarkNameId = StateExaminations.MarkNameId

    WHERE StateExaminations.StudentId = :StudentId;

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

    SELECT

    DiplomWorks.*,

    MarkNames.MarkName

    FROM MarkNames INNER JOIN DiplomWorks ON

    MarkNames.MarkNameId =DiplomWorks.MarkNameId

    WHERE DiplomWorks.StudentId = :StudentId

    • для выборки информации об оценках по дисциплинам соответствующего студента (наименования дисциплины, оценка):

    SELECT

    Marks.*,

    SubjectNames.SubName,

    MarkNames.MarkName

    FROM MarkNames INNER JOIN (SubjectNames INNER JOIN Marks ON

    SubjectNames.SubId=Marks.SubId) ON

    MarkNames.MarkNameId=Marks.MarkNameId

    WHERE Marks.StudentId = :StudentId;

    • для выборки информации о специальности (наименования специальности, кода специальности, наименования специализации, наименования квалификации):


    SELECT

    Specialities.*,

    Qualifications.QualificName,

    Specialisations.SpecialName

    FROM Specialisations INNER JOIN (Qualifications INNER JOIN

    Specialities ON

    Qualifications.QualificId=Specialities.QualificId) ON

    Specialisations.SpecialNameId

    =Specialities.SpecialisationNameId

    ORDER BY SpecId.

    4.2 Описание процесса реализации манипуляций с данными

    Следующим шагом после проектирования структуры приложения является разработка программного обеспечения по заполнению таблиц данными, редактированию и удалению информации из них. Для достижения поставленной цели следует воспользоваться компонентом TDBNavigatorRau, который представляет собой усовершенствованный TDBNavigator. Преимущество использования именно компонента TDBNavigatorRau заключается в том, что при написании незначительного кода на проектируемой форме в желаемом месте устанавливается желаемое количество кнопок с функциями «добавить», «удалить», «редактировать», которые визуально украшают интерфейс. Чтобы воспользоваться данным компонентом, следует:

    • создать объект класса TDBNavigatorRau (DBNavigator:= TDBNavigatorRau.Create(panTools);

    • определить его месторасположение на форме (DBNavigator.Parent);

    • установить параметры размещения (DBNavigator.Top, DBNavigator.Left);

    • показать на форме (DBNavigator.Visible:= True);

    • установить диалоговую форму, для которой компонент будет использоваться (DBNavigator.DialogForm);

    • выбрать картинки, отображаемые на кнопках компонента (DBNavigator.TitleImages);

    • установить источник данных (DBNavigator.DataSource).

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

    На основании анализа технического задания следует всю собранную информацию о конкретном студенте вывести в документ MS Excel. Для этого первоначально следует такой документ подготовить стандартными средствами MS Excel. В результате получаем документ Document.xls с двумя листами, который представлен в Приложении Г.

    Поскольку приложение должно манипулировать с MS Excel, то следует настроить систему на среду MS Excel. Далее все действия реализуются с использованием средств автоматизации MS Excel.

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

    • проверить, запущена ли копия приложения-сервера;

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

    • сделать окно приложения-сервера видимым (в общем случае это не обязательно);

    • выполнить какие-то действия с приложением-сервером (например, создать или открыть документы, изменить их данные, сохранить документы и пр.);

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

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

    Объект Application является основным в объектной модели Excel, содержащий коллекцию Workbooks объектов типа WorkBook. Каждый объект типа WorkBook содержит коллекцию WorkSheets-объектов типа WorkSheet, Charts типа Chart и др. Манипуляция рабочими книгами, их листами, ячейками, диаграммами реально осуществляется путем обращения к свойствам и методам этих объектов.

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

    Для открытия уже существующего документа следует воспользоваться методом Open коллекции WorkBooks.

    Обращение к листам рабочей книги производится с помощью коллекции WorkSheets объекта WorkBook. Обращение к отдельным ячейкам листа производится с помощью коллекции Cells объекта WorkSheet. Здесь первая из координат ячейки указывает на номер строки, вторая — на номер столбца. Очистить ячейку можно с помощью метода ClearContents. Форматирование текста в ячейках производится с помощью свойств Font и Interior объекта Cell и их подсвойств. Помимо обращения к отдельным ячейкам, можно манипулировать прямоугольными областями ячеек с помощью объекта Range.

    На основании вышеизложенного произведена автоматизация MS Excel и настройка всех ячеек на ввод необходимых данных. Вся работа прописана в обработчике события при выборе пункта меню, закрепленного за кнопкой кнопки «Экспорт в MS Excel». При печати документа информация, характеризующая введённые данные, должна быть скрытой. Для этого реализовано копирование шаблона документа в новый документ, в котором визуально заголовки полей также присутствуют, однако памяти хранятся только данные для печати.

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

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

    • ограничения, требующие сохранение значений поля показателя в некотором диапазоне;

    • ограничения, связанные с заданными функциональными зависимостями.

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

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

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

    Существует несколько методов защиты комплекса программ и данных, среди наиболее распространенных можно выделить следующие:

    • метод защиты при помощи паролей;

    • метод защиты при помощи шифрования данных.

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

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

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

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

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

    • uAutorize – модуль, отвечающий за авторизацию приложения;

    • uData – модуль, который хранит настраиваемые компоненты ADO для работы с базой данных;

    • uGroupData – модуль, содержащий форму «Сведения о группе», которая позволяет пополнять базу сведениями о группах и редактировать уже имеющиеся данные;

    • uStudents – модуль, содержащий форму «Сведения о студентах», которая позволяет пополнять базу сведениями о студентах и редактировать уже имеющиеся данные;

    • uHours – модуль, содержащий форму «Количество часов для дисциплин», которая позволяет пополнять базу сведениями о новой дисциплине;

    • uReferences – модуль, содержащий форму «Справочники», которая содержит сведения об имеющихся специальностях, наименованиях специализаций, квалификаций, практик, оценок, дисциплин, документов об образовании и выданных документов;

    • uRefEdition – модуль, содержащий форму, которая позволяет пополнять базу сведениями об имеющихся специальностях, наименованиях специализаций, квалификаций, практик, оценок, дисциплин, документов об образовании и выданных документов; название формы и содержимое каждый раз меняется в зависимости от темы информации, которую следует вводить («Практики» – для ввода наименований практик и т.п.);

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

    • uMarkEdition – модуль, содержащий форму «Оценки», которая позволяет пополнять базу сведениями об оценках студента по конкретной дисциплине.


    5 Описание пользовательского интерфейса

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

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


    Рисунок 5.1 – Окно авторизации
    После того, как требуемая информации введена, следует нажать на кнопку «Открыть». В результате этого в случае несовпадения пароля или имени, либо отсутствия источника данных по указанному пользователем пути на экране появится предупреждение (рисунок 5.2), после закрытия которого путем нажатия на кнопку «ОК» пользователю будет предложено заполнить соответствующие поля заново (при этом ранее введенная информация удалится) и снова нажать на кнопку «Открыть».

    а)


    б)



    в)


    а – предупреждение о неправильном вводе имени;

    б – предупреждение о неправильном вводе пароля;

    в – предупреждение о неправильном вводе месторасположения источника данных;

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



    Рисунок 5.3 – Главное окно программы
    Главное меню содержит следующие пункты:

    • «Файл» – содержит подпункт «Выход», который инициализирует завершение работы с программой;

    • «Данные» – содержит подпункты «Справочники», «Сведения о группе», «Сведения о студенте», при выборе которых запускается соответствующее диалоговое окно;

    • «Экспорт в MS Excel» – содержит подпункты «Приложение к диплому», «Академическая справка», по нажатии на одну из которых в соответствии со статусом студента запускается MS Excel и формируется документ;

    • «Справка» – содержит подпункты «Руководство пользователя» и «О программе», при выборе которых запускается соответствующее диалоговое окно.

    На панели инструментов расположены следующие кнопки:

    • «Справочники» – при нажатии открывается окно со справочниками;

    • «Экспорт в MS Excel» – при нажатии появляется список с документами, которые могут быть сформированы: «Приложение к диплому», «Академическая справка», по нажатии на одну из которых в соответствии со статусом студента формируется документ в MS Excel;

    • «Справка» – при нажатии появляется контекстное меню с пунктами «Руководство пользователя» и «О программе», при выборе которых запускается соответствующее диалоговое окно.

    1   2   3   4   5   6   7   8   9


    написать администратору сайта