Разработка информационно-поисковой системы

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

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

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

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

Размещено на http://www.allbest.ru/

ПЕРЕЧЕНЬ СОКРАЩЕНИЙ

БД

- база данных

ДЛМ

- даталогическая модель

ИЛМ

- инфологическая модель

ИПС

- информационно-поисковая система

ПК

- персональный компьютер

ПО

- программное обеспечение

ПП

- программный продукт

ПЭВМ

- персональная электронно-вычислительная машина

СУБД

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

ЭРИ

- электрорадиоизделия

ВВЕДЕНИЕ

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

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

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

Именно с этой целью и была создана информационно-поисковая система «Разработка и макетирование».

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

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

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

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

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

Раздел 4 посвящен вопросам безопасности жизнедеятельности при работе за компьютером, описанию требований к рабочему месту программиста и расчету общего освещения.

Приложение 1 включает в себя текст программы.

Приложение 2 - это руководство оператора, входящее в документацию, поставляемую с программой.

Приложение 3 содержит протокол тестирования программы.

1. СПЕЦИАЛЬНЫЙ РАЗДЕЛ

информационный поисковый база данных

1.1 Исследовательская часть

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

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

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

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

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

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

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

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

Именно эти проблемы должна решать информационно-поисковая система (ИПС) «Разработка и макетирование».

1.1.2 Информационные потребности пользователя

В результате анализа указанных выше проблем были выявлены основные требования, предъявляемые пользователем к системе:

- вход в систему должен быть разрешен всем пользователям, прошедшим аутентификацию в домене локальной сети НИИ ВС и СУ;

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

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

- должен быть реализован автоматизированный ввод в БД информации об имеющихся в настоящее время документах и их местонахождении из Excel-таблиц и каталогов сервера \\Std;

- должен обеспечиваться просмотр связанных таблиц с информацией об изделиях и элементах с сортировкой по определенным столбцам, поиск информации по реквизитам изделий и элементов и просмотр файлов с документацией (.doc), описаниями импортных ЭРИ (.pdf), электрическими схемами (.lib);

- должно осуществляться автоматизированное формирование ведомостей покупных изделий;

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

- должен быть реализован автоматический поиск в Интернете и сравнение описаний импортных ЭРИ для замены новой редакцией описания;

- должна быть реализована возможность указания местоположения ЭРИ на складе;

- должен быть реализован механизм формирования заявок (требований) на получение ЭРИ со склада и отказа разработчика от своих заявок;

- должно отражаться движение ЭРИ по складу (приход - расход);

- должен формироваться перечень дефицитных ЭРИ;

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

1.1.3 Модульная декомпозиция ИПС

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

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

- информационное хранилище - база данных;

- подсистема ввода, поиска и отображения информации об изделиях;

- подсистема администрирования;

- подсистема мониторинга;

- модуль данных;

- модуль автоматического поиска информации;

- модуль учета изделий на складе;

- модуль формирования ведомостей.

Схема взаимодействия компонентов ИПС представлена на рис.1.1.

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

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

- определение имени пользователя, работающего на компьютере в данный момент;

- автоматическая регистрация пользователей при входе в систему;

- изменение учетных сведений о пользователях;

- управление системными словарями;

- импорт сведений из информационной базы контроллера домена локальной сети;

- уведомление администратора системы о появлении новых пользователей.

Рис. 1.1. Схема взаимодействия компонентов ИПС

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

Модуль учета изделий на складе предоставляет широкий функционал по регистрации и проведению складских операций:

- выдача и поступление изделий;

- подача заявок (резервирование) и аннулирование их;

- ведение журнала операций;

- формирование списка дефицитных изделий;

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

1.1.4 Обоснование выбора средств разработки ИПС

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

Сравнительные характеристики различных средств разработки приведены ниже.

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

Средства и платформы разработки

Delphi 7 (VCL)

Access (VB)

VC++ (MFC)

VS.NET(.NET)

1. Принцип обработки кода

компилятор

интерпретатор

компилятор

компилятор

2. Язык

Object Pascal

Visual Basic

C++

C#

3. Средства доступа к базам данных

Компоненты VCL: DataSource, DataTable для различных БД, спец. компоненты для СУБД InterBase

MDB, ODBC

ADO

ADO

.NET

4. Разработка многомодульных приложений

+

-

+

+

В рамках данного проекта были выбраны:

- средство проектирования баз данных ERwin 4.1;

- СУБД FireBird 1.5;

- среда разработки Delphi 7.

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

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

Реализация моделирования в ERwin базируется на теории реляционных баз данных и на методологии IDEF1Х. ERwin создает визуальное представление (модель данных) для решаемой задачи. Это представление может использоваться для детального анализа, уточнения и распространения как части документации, необходимой в цикле разработки. ERwin автоматически создает базу данных (таблицы, индексы, хранимые процедуры, триггеры для обеспечения ссылочной целостности и другие объекты, необходимые для управления данными). Все объекты модели ERwin могут редактироваться средствами, принятыми в Windows, - группировка, копирование, удаление, перемещение, использование системного буфера. Установка цветов и шрифтов осуществляется в удобных диалогах.

ERwin поддерживает прямой интерфейс с основными СУБД: InterBase, FireBird, SQL Server, ORACLE, Progress, Sybase System, а также настольными СУБД: Microsoft Access, FoxPro, dBASE IV и Paradox [2].

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

- существенное повышение скорости разработки за счет мощного редактора диаграмм, автоматической генерации базы данных, автоматической подготовки документации;

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

- возможность легко вносить изменения в модель при разработке и расширении системы;

- возможность автоматической подготовки отчетов по базе данных; важно, что эти отчеты всегда в точности соответствуют реальной структуре БД;

- разработчики прикладного программного обеспечения снабжены удобными в работе диаграммами;

- тесная интеграция со средствами 4GL позволяет уже на стадии информационного моделирования задавать отображение данных в приложениях;

- обратное проектирование позволяет документировать и вносить изменения в существующие информационные системы;

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

СУБД FireBird

FireBird является клоном InterBase 6.x в открытых кодах. Его поддержкой и развитием занимается сообщество OpenSource, а распространение проводится по лицензии GNU Public License. FireBird является абсолютно бесплатным продуктом, что является неоспоримым преимуществом для реализации данного проекта. SQL-сервер FireBird предназначен для хранения и обработки больших объемов информации в условиях одновременной работы с БД множества клиентских приложений [3].

Ниже рассматривается ряд технологий FireBird, использование которых обеспечивает максимальную вычислительную разгрузку клиентского приложения и гарантирует высокую степень безопасности и целостность информации [3]:

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

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

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

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

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

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

- FireBird дает возможность создавать пользовательские функции (User Defined Function, UDF), в которых может реализовываться функциональность, отсутствующая в стандартных встроенных функциях FireBird. Функция пишется на любом алгоритмическом языке, позволяющем разрабатывать DLL;

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

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

Среда разработки Delphi 7

Delphi 7 - это мощное средство создания приложений для Windows при помощи языка Object Pascal. Данный язык - комбинация нескольких важнейших технологий [4]:

- высокопроизводительный компилятор в машинный код;

- объектно-ориентированная модель компонент;

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

- простота и надежность создания и отладки программы;

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

- использование обработки исключений (exceptions), что позволяет повысить надежность работы программного продукта;

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

Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре «клиент-сервер». Этот компилятор в настоящее время является одним из самых быстрых в мире, его скорость компиляции составляет порядка 200 тысяч строк в минуту. Он предлагает легкость разработки и быстрое время проверки готового программного блока [5].

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

Среда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - Rapid Application Development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL (Visual Component Library) - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE [4].

Отличительной особенностью Delphi является наличие специализированной библиотеки компонент IBExpress для работы с СУБД InterBase/FireBird. Данные компоненты обеспечивают прямой доступ к базе данных без использования ODBC-драйверов [3].

Рассмотрим также возможность применения для организации складского учета программного продукта «1С: Торговля и склад», который является не только механизмом ведения учета и регистрации операций, но и платформой разработки на встроенном языке. Основным инструментом является Конфигуратор. Изучив описание типовой конфигурации, я пришел к выводу, что «1С: Торговля и склад» предоставляет не только весь необходимый функционал, но и имеет ряд дополнительных возможностей. Но существует ряд причин, по которым стоит отказаться от ее использования. В стандартной поставке программа работает с собственной базой данных под управлением драйвера dBase, к которой сложно применять директивы языка SQL, каждая таблица хранится в отдельном файле, индексы таблиц - в других файлах. Соответственно становится необходимым обеспечивать репликацию между базой данных ИПС «Разработка и макетирование» и базой данных «1С: Торговля и склад» в реальном времени, что всегда чревато ошибками синхронизации. Конечно, можно использовать конфигурацию «1С: Торговля и склад» совместно с оболочкой «1С: Предприятие для SQL». В таком случае база данных будет управляться сервером MS SQL Server, поддерживать инструкции SQL. Однако стоимость лицензионной версии такой оболочки очень высока, а покупка «пиратской» - чревата нестабильностью работы и возможной утратой каких-либо функций. Держать же два подобных информационных хранилища не имеет смысла, к тому же одной из задач создания ИПС «Разработка и макетирование» является создание единого централизованного информационного хранилища. Поэтому целесообразнее разработать модуль складского учета для ИПС «Разработка и макетирование» с учетом всей специфики работы предприятия.

1.2 Конструкторская часть

1.2.1 Проектирование БД системы

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

Создание инфологической модели (ИЛМ)

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

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

Все работы, проводимые в НИИ ВС и СУ можно условно разделить на работы с разрабатываемыми изделиями и с примененными в них ЭРИ. Одним из требований технического задания являлась систематизация данных об изделиях и элементах. С этой целью мне потребовалось спроектировать таблицы для хранения информации об изделиях и примененных в них элементах (рис. 1.2 и 1.3).

Идентификатор изделия

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

Идентификатор назначения изделия

Шифр изделия

Название изделия

Рис. 1.2. Структура таблицы «Изделия»

Идентификатор элемента

Идентификатор назначения элемента

Тип элемента

Фирма-изготовитель, страна

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

Вид исполнения

Полные аналоги элемента

Рекомендуемая замена

Фирмы, у которых можно купить

Цена элемента

Организация, выдавшая разрешение на использование

Номер протокола с разрешением

Дата протокола с разрешением

Дата регистрации или обновления

Комментарий

Рис. 1.3. Структура таблицы «Элементы»

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

Рис. 1.4. Связь таблицы «Изделия» и таблицы «Элементы»

Для реализации связи типа «многие ко многим» между таблицами изделий и элементов потребовалось ввести дополнительную таблицу «Элементы_Изделия» (рис. 1.5).

Идентификатор изделия

Идентификатор элемента

Рис. 1.5. Структура таблицы «Элементы_Изделия»

В результате связь между таблицами изделий и элементов разбилась на две (рис. 1.6 а, б):

а)

б)

Рис. 1.6. а - связь таблицы «Изделия» и таблицы «Элементы_Изделия»,

б - связь таблицы «Элементы» и таблицы «Элементы_Изделия».

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

Идентификатор назначения изделия

Название категории

Рис. 1.7. Структура таблицы «Категории изделий»

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

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

Шифр темы

Название темы

Руководитель

Ответственный исполнитель

Дата начала

Дата окончания

а)

Идентификатор разработчика

ФИО

Пол

Дата рождения

Должность

Подразделение

б)

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

Идентификатор изделия

Децимальный номер документа

Наименование документа

Местонахождение файла

Код доступа

в)

Рис. 1.8. Структура таблиц «Темы» (а), «Разработчики изделий» (б) и «Документация на изделия» (в)

Эти таблицы связаны с таблицей «Изделия» и имеют типы связей, изображенные на рис. 1.9.

а)

б)

в)

Рис. 1.9. а - связь таблицы «Изделия» и таблицы «Темы»,

б - связь таблицы «Разработчики изделий» и таблицы «Изделия»,

в - связь таблицы «Документация на изделия» и таблицы «Изделия»

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

Идентификатор назначения элемента

Название категории

Рис. 1.10. Структура таблицы «Категории элементов»

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

Идентификатор описания элемента

Идентификатор элемента

Местонахождение файла

Адрес описания элемента

Дата обновления описания

а)

Идентификатор схемы

Идентификатор элемента

Местонахождение файла

Адрес источника информации

Дата обновления информации

б)

Рис. 1.11. Структура таблиц «Описание элементов» (а) и «Схемы» (б)

Данные таблицы связаны с таблицей «Элементы» и имеют типы связей, изображенные на рис. 1.12.

а)

б)

Рис. 1.12. а - связь таблицы «Элементы» и таблицы «Описание элементов»,

б - связь таблицы «Элементы» и таблицы «Схемы»

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

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

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

Указатель местоположения

а)

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

Идентификатор элемента

Количество имеющихся элементов

Количество зарезервированных элементов

б)

Рис. 1.13. Структура таблиц «Места на складе» (а) и «Места на складе - Элементы» (б)

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

Идентификатор ведомости

Идентификатор типа

Идентификатор документа-основания

Идентификатор исполнителя

Номер ведомости

Дата создания

Идентификатор статуса

Идентификатор места перемещения

Рис. 1.14. Структура таблицы «Ведомости»

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

Идентификатор ведомости

Идентификатор элемента

Идентификатор места хранения

Количество элементов

Рис. 1.15. Структура таблицы «Ведомости - Элементы»

Таблицы-словари «Тип ведомости» и «Статус ведомости» имеют простую структуру, которая включает в себя идентификатор элемента словаря и его значение (рис. 1.16, а, б).

Идентификатор типа ведомости

Тип ведомости

а)

Идентификатор статуса ведомости

Статус ведомости

б)

Рис. 1.16. Структура таблиц «Тип ведомости» (а) и «Статус ведомости» (б)

В таблице «Журнал операций» отражаются все операции, производимые со складскими документами - получение, исполнение и аннулирование заявок, проведение и отмена проводок ведомостей.

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

Идентификатор операции

Идентификатор ведомости

Идентификатор исполнителя

Идентификатор статуса

Дата операции

Рис. 1.17. Структура таблицы «Журнал операций»

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

Идентификатор пользователя

ФИО пользователя

Имя пользователя (Login)

Пароль пользователя

Должность пользователя

Подразделение, в котором работает

Код доступа к документам

Категория пользователя

Дата регистрации

Счетчик входов в систему

Признак нового пользователя

Рис. 1.18. Структура таблицы «Пользователи системы»

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

Идентификатор роли

Описание роли

а)

Идентификатор кода доступа

Код доступа

Описание кода доступа

б)

Рис. 1.19. Структура таблиц «Роли пользователей» (а) и «Коды доступа к документам» (б)

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

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

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

Рис. 1.20. Результат построения инфологической модели

Создание даталогической модели (ДЛМ)

Даталогическая модель - это описание структуры баз, сделанное на языке выбранной СУБД [4]. Выбранной СУБД является Firebird, достоинства которой были рассмотрены ранее. Требования, предъявляемые к системе, полностью можно реализовать с помощью данной СУБД. Она обеспечивает достаточно большое быстродействие на отдельном компьютере и в пределах небольшой локальной сети. ДЛМ является концептуальной моделью БД и представляет собой отражение логических связей между информационными элементами ИЛМ. ДЛМ строится в терминах условных единиц, допустимых в конкретной СУБД. Результат построения даталогической модели представлен на рисунке 1.21.

Рис. 1.21. Результат построения даталогической модели

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

Таблица 1.1

Название таблицы

Описание таблицы

Название поля

Тип данных поля

Описание поля

Designers

Разработчики готовых изделий

DBirthDay

DATE

Дата рождения разработчика

DDep

VARCHAR(50)

Подразделение, в котором работает разработчик

DName

VARCHAR(50)

Фамилия, имя, отчество разработчика

DPost

VARCHAR(50)

Должность разработчика

DSex

CHAR(1)

Пол разработчика (М, Ж)

IdR

INTEGER

Уникальный идентификатор разработчика

Documents

Документация на разработанные изделия

DACL

INTEGER

Код доступа к документу - Access Control Level (используется для сравнения с кодом доступа пользователя системы к документам)

DocName

VARCHAR(100)

Полное наименование документа

DocNum

VARCHAR(100)

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

FileDoc

VARCHAR(100)

Местонахождение файла с текстом документа на диске

IdD

INTEGER

Уникальный идентификатор документа

IdI

INTEGER

Уникальный идентификатор изделия

EDescription

Описание импортного элемента

ERenewDate

DATE

Дата обновления описания импортного элемента

FileLoc

VARCHAR(100)

Местонахождение файла с описанием элемента на диске

FileURL

VARCHAR(100)

Адрес описания элемента в Интернете

IdE

INTEGER

Уникальный идентификатор элемента

IdO

INTEGER

Уникальный идентификатор описания элемента

Elements

Импортные элементы изделий

AllowDate

DATE

Дата протокола с разрешением на использование/приобретение импортного ЭРИ

AllowOrg

VARCHAR(100)

Организация, выдавшая разрешение на использование/приобретение импортного ЭРИ

Analogs

VARCHAR(600)

ЭРИ, являющиеся полными аналогами данного ЭРИ

IdE

INTEGER

Уникальный идентификатор элемента

IdNE

INTEGER

Уникальный идентификатор назначения элемента

MainValues

VARCHAR(100)

Функциональное назначение и основные характеристики ЭРИ

Performance

VARCHAR(50)

Вид исполнения/наличие исполнения millitary

Price

DECIMAL(12,2)

Цена ЭРИ (в У.Е.)

Producer

VARCHAR(100)

Фирма-изготовитель, страна

ProtocolN

VARCHAR(20)

№ протокола с разрешением на использование/приобретение импортного ЭРИ

RenewDate

DATE

Дата регистрации или обновления сведений об ЭРИ

Replacement

VARCHAR(100)

ЭРИ, используемые для замены

TypeE

VARCHAR(300)

Тип примененного импортного электрорадиоизделия (ЭРИ)

Vendor

VARCHAR(100)

Фирмы, у которых можно купить ЭРИ

Elem_Prod

Таблица связи «Элементы-Изделия»

IdE

INTEGER

Уникальный идентификатор элемента

IdI

INTEGER

Уникальный идентификатор изделия

ENomination

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

IdNE

INTEGER

Уникальный идентификатор назначения элемента

NameNE

VARCHAR(100)

Наименование функционального назначения элемента (ЭРИ)

EScheme

Электрические схемы ЭРИ

FileLoc

VARCHAR(100)

Местонахождение файла с описанием электрической схемы на диске

FileURL

VARCHAR(100)

Адрес источника информации в Интернете

IdE

INTEGER

Уникальный идентификатор элемента

IdS

INTEGER

Уникальный идентификатор электрической схемы импортного элемента

SRenewDate

DATE

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

PNomination

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

IdNI

INTEGER

Уникальный идентификатор назначения изделия

NameNI

VARCHAR(100)

Наименование функционального назначения изделия

Products

Информация о разработанном изделии

IdI

INTEGER

Уникальный идентификатор изделия

IdNI

INTEGER

Уникальный идентификатор назначения изделия

IdT

INTEGER

Уникальный идентификатор темы

PCode

VARCHAR(100)

Условное обозначение изделия

PName

VARCHAR(100)

Полное название изделия

Pr_Designers

Таблица связи «Изделия-Разработчики»

IdI

INTEGER

Уникальный идентификатор изделия

IdR

INTEGER

Уникальный идентификатор разработчика

StorePlaces

Места на складе, где находятся импортные ЭРИ

IdM

INTEGER

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

Place

VARCHAR(50)

Указатель местоположения ЭРИ на складе

SP_Elements

Таблица связи «Места на складе-Элементы»

IdE

INTEGER

Уникальный идентификатор элемента

IdM

INTEGER

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

N_Exist

INTEGER

Количество имеющихся элементов

N_Reserved

INTEGER

Количество зарезервированных элементов

Themes

Темы выполненные или выполняемые

FinishDate

DATE

Дата окончания выполнения темы

IdT

INTEGER

Уникальный идентификатор темы

StartDate

DATE

Дата начала выполнения темы

TChief

VARCHAR(50)

Руководитель темы

TCode

VARCHAR(50)

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

TName

VARCHAR(100)

Полное название темы

TRuler

VARCHAR(50)

Ответственный исполнитель темы

Users

Пользователи системы

UCount

INTEGER

Счетчик входов пользователя в систему

IdU

INTEGER

Уникальный идентификатор пользователя системы

Login

VARCHAR(20)

Имя пользователя системы

UPassword

VARCHAR(20)

Пароль зарегистрированного пользователя для входа в систему

RegDate

DATE

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

URole

INTEGER

Роль пользователя

UACL

INTEGER

Код доступа пользователя к документам

UDep

VARCHAR(50)

Подразделение, в котором работает пользователь

UName

VARCHAR(50)

Фамилия, имя, отчество пользователя системы

UPost

VARCHAR(50)

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

N_New

INTEGER

Признак нового пользователя

Dict_ACL

Коды доступа

N_ACL_Id

INTEGER

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

N_ACL_Code

INTEGER

Децимальное обозначение кода доступа

VC_ACL_Name

VARCHAR(30)

Описание кода доступа

Dict_Role

Роли пользователей

N_Role_Id

INTEGER

Уникальный идентификатор роли пользователя

VC_Role

VARCHAR(30)

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

Orders_Type

Тип ведомости

N_Order_Type_Id

INTEGER

Уникальный идентификатор типа ведомости

VC_Order_Name

VARCHAR(30)

Тип ведомости

States_Type

Статус ведомости

N_State_Id

INTEGER

Уникальный идентификатор статуса ведомости

VC_State_Name

VARCHAR(30)

Статус ведомости

Orders

Ведомости

N_Order_Id

INTEGER

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

N_Order_Type_Id

INTEGER

Уникальный идентификатор типа ведомости

N_Parent_Id

INTEGER

Уникальный идентификатор документа-основания

IdU

INTEGER

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

N_Order_Num

INTEGER

Децимальный номер ведомости

DA_Order_Date

DATE

Дата создания ведомости

N_State_Id

INTEGER

Уникальный идентификатор статуса ведомости

N_Source_IdM

INTEGER

Идентификатор места перемещения (для документа «перемещение по складу»)

Orders_Elem

Таблица связи «Ведомости - Элементы»

N_Order_Id

INTEGER

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

IdE

INTEGER

Уникальный идентификатор элемента

IdM

INTEGER

Уникальный идентификатор места хранения

N_Ordered

INTEGER

Количество элементов

Orders_Log

Журнал операций

N_Log_Id

INTEGER

Уникальный идентификатор записи журнала

N_Order_Id

INTEGER

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

IdU

INTEGER

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

N_State_Id

INTEGER

Уникальный идентификатор статуса ведомости

DA_Log_Date

DATE

Дата совершения операции

Ограничения целостности

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

1.2.2 Структура входных и выходных данных

При запуске программы происходит определение имени пользователя (login), работающего на компьютере в данный момент. Входными данными для автоматической регистрации будут сведения об аутентификации Windows. Для экспорта данных в подсистему администрирования используется информация, получаемая с контроллера домена локальной сети. Для добавления или изменения сведений о пользователях заполняются экранные формы. Выходными данными являются роль, код доступа и login пользователя (поступают на вход подсистем ввода, поиска и отображения информации и мониторинга), а также информация, записываемая в БД или выводимая на дисплей. Для модуля формирования ведомостей входными данными служат файлы P-CAD и сведения об изделиях. Результат работы отображается на экране или формируется в виде документов Word. Для организации учета изделий на складе принимается информация из заполненных экранных форм, заявок на получение ЭРИ и Excel-таблиц. Выходными данными для этого модуля будут требуемые регламентные документы (список доступных изделий, перечень дефицитных ЭРИ, приходные и расходные ведомости), а также сведения, отображаемые на экране или записываемые в БД. Схема потоков входных и выходных данных изображена на рис.1.22.

Рис.1.22. Схема потоков входных и выходных данных

1.2.3 Алгоритмы работы программы

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


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

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

    курсовая работа [3,6 M], добавлен 27.07.2014

  • Выбор состава технических и программных средств разработки системы. Описание входных и выходных данных. Выбор модели базы данных. Разработка подсистемы наполнения базы данных, формирования отчетов. Разработка интерфейса пользователя, тестирование системы.

    курсовая работа [3,7 M], добавлен 04.12.2014

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

    лабораторная работа [1,5 M], добавлен 18.08.2009

  • Совместимость и преобразование типов данных. Создание информационно-поисковой системы на языке программирования Паскаль. Описание интерфейса, каждого блока программы "Картотека больных". Рассмотрение результатов работы программы, сортирования данных.

    курсовая работа [368,9 K], добавлен 18.05.2015

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

    курсовая работа [867,3 K], добавлен 22.02.2016

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

    дипломная работа [2,1 M], добавлен 30.09.2016

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

    дипломная работа [942,1 K], добавлен 19.05.2011

  • Разработка программы для автоматизации расчетов на телефонной станции. Описание входной и выходной информации, комплекс технических средств. Интерфейс конечного пользователя. Проектирование программных модулей представления входных и выходных данных.

    курсовая работа [460,1 K], добавлен 26.06.2015

  • Разработка информационной системы на языке программирования С++ в среде С++Builder. Схема базы данных. Характеристика энергосберегающих режимов операционной системы. Интерфейс программы, ее установка на компьютер, выполнение, средства и порядок испытания.

    отчет по практике [986,2 K], добавлен 06.02.2016

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

    дипломная работа [2,5 M], добавлен 18.12.2013

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

    курсовая работа [997,3 K], добавлен 08.06.2014

  • Описание входной и выходной информации. Требования к комплексу технических средств и к интерфейсу конечного пользователя. Разработка форм представления входных и выходных данных. Проектирование программных модулей. Руководство пользователя и программиста.

    курсовая работа [421,6 K], добавлен 27.06.2015

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

    дипломная работа [1,0 M], добавлен 19.05.2011

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

    дипломная работа [1,3 M], добавлен 16.06.2015

  • Проектирование программного модуля: сбор исходных материалов; описание входных и выходных данных; выбор программного обеспечения. Описание типов данных и реализация интерфейса программы. Тестирование программного модуля и разработка справочной системы.

    курсовая работа [81,7 K], добавлен 18.08.2014

  • Возможности программы DBDesigner. Моделирование, сопровождения информационных систем. Проектирование базы данных. Кодирование, установление соединения с базой данных на серввере. Синхронизация, запросы для внесения изменений и операций над данными.

    лабораторная работа [1,4 M], добавлен 26.08.2009

  • Проектирование алгоритмов и программных кодов для различных элементов пользовательских форм информационно-аналитической системы. Исследование структуры базы данных. Связь между таблицами. Разработка графического интерфейса программы и справочной системы.

    курсовая работа [2,4 M], добавлен 10.01.2015

  • Проектирование информационно-поисковой системы "Цветы" для решения задач, связанных с предоставлением услуг по оформлению и доставке заказов букетов и композиций. Разработка объектов базы данных - транзакций, представлений, хранимых процедур и запросов.

    курсовая работа [4,2 M], добавлен 26.11.2011

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

    курсовая работа [1,4 M], добавлен 12.05.2016

  • Разработка базы данных при помощи системы управления базами Microsoft Access. Определение состава выходных и входных данных, их математическое выражение и информационно-логическая модель. Разработка блок-схемы алгоритма и таблиц в режиме "Конструктор".

    курсовая работа [2,8 M], добавлен 12.11.2013

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