
- •Перечень используемых сокращений
- •Введение
- •1.1.3. Модульная декомпозиция ипс
- •1.1.4. Обоснование выбора средств разработки ипс
- •1.2.1. Проектирование бд системы
- •1.2.2. Структура входных и выходных данных
- •1.2.3. Алгоритмы работы программы
- •1.2.4. Иерархия форм
- •1.2.5. Методика испытаний
- •Заключение
- •Список литературы
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 можно создавать или проводить обратное проектирование (реинжиниринг) баз данных.
Реализация моделирования в ERwin базируется на теории реляционных баз данных и на методологии IDEF1Х. ERwin создает визуальное представление (модель данных) для решаемой задачи. Это представление может использоваться для детального анализа, уточнения и распространения как части документации, необходимой в цикле разработки. ERwin автоматически создает базу данных (таблицы, индексы, хранимые процедуры, триггеры для обеспечения ссылочной целостности и другие объекты, необходимые для управления данными). Все объекты модели ERwin могут редактироваться средствами, принятыми в Windows, - группировка, копирование, удаление, перемещение, использование системного буфера. Установка цветов и шрифтов осуществляется в удобных диалогах.
ERwin поддерживает прямой интерфейс с основными СУБД: InterBase, FireBird, SQL Server, ORACLE, Progress, Sybase System, а также настольными СУБД: Microsoft Access, FoxPro, dBASE IV и Paradox.
Применение ERwin существенно повышает эффективность деятельности разработчиков информационных систем. Основными преимуществами являются:
существенное повышение скорости разработки за счет мощного редактора диаграмм, автоматической генерации базы данных, автоматической подготовки документации;
нет необходимости ручной подготовки SQL-предложений для создания базы данных;
возможность легко вносить изменения в модель при разработке и расширении системы;
возможность автоматической подготовки отчетов по базе данных; важно, что эти отчеты всегда в точности соответствуют реальной структуре БД;
разработчики прикладного программного обеспечения снабжены удобными в работе диаграммами;
тесная интеграция со средствами 4GL позволяет уже на стадии информационного моделирования задавать отображение данных в приложениях;
обратное проектирование позволяет документировать и вносить изменения в существующие информационные системы;
поддержка однопользовательских СУБД позволяет использовать для персональных систем современные технологии, что значительно упрощает переход от настольных систем к системам в технологии клиент-сервер.
СУБД FireBird
FireBird является клоном InterBase 6.x в открытых кодах. Его поддержкой и развитием занимается сообщество OpenSource, а распространение проводится по лицензии GNU Public License. FireBird является абсолютно бесплатным продуктом, что является неоспоримым преимуществом для реализации данного проекта. SQL-сервер FireBird предназначен для хранения и обработки больших объемов информации в условиях одновременной работы с БД множества клиентских приложений.
Ниже рассматривается ряд технологий FireBird, использование которых обеспечивает максимальную вычислительную разгрузку клиентского приложения и гарантирует высокую степень безопасности и целостность информации:
отношения подчиненности между таблицами БД путем определения первичных ключей у родительских и внешних ключей у дочерних таблиц;
ограничения на значения отдельных столбцов; условия ограничений могут быть разнообразны – от требования удовлетворения вводимых значений определенному диапазону или соответствия некоторой маске до требуемого отношения с одной или несколькими записями из другой таблицы БД;
триггеры – подпрограммы, автоматически выполняемые сервером до и/или после события изменения записи в таблице БД;
генераторы для создания и использования уникальных значений нужных полей;
для ускорения работы клиентских приложений с удаленной БД могут быть определены хранимые процедуры, которые представляют собой подпрограммы, принимающие и возвращающие параметры и способные выполнять запросы к БД, условные ветвления и циклическую обработку;
в составе записи БД могут определяться BLOB-поля(Binary Large Object - большой двоичный объект), предназначенные для хранения больших объемов данных в виде последовательности байтов. Таким образом могут храниться текстовые и графические документы, файлы мультимедиа, звуковые файлы и т.д. Интерпретация BLOB-поля выполняется в приложении, однако разработчик может определить так называемые BLOB-фильтры для автоматического преобразования содержимого BLOB-поля к другому виду;
FireBird дает возможность создавать пользовательские функции (User Defined Function, UDF), в которых может реализовываться функциональность, отсутствующая в стандартных встроенных функциях FireBird. Функция пишется на любом алгоритмическом языке, позволяющем разрабатывать DLL;
FireBird может посылать уведомление клиентским приложениям о наступлении какого-либо события. Одновременно работающие приложения могут обмениваться сообщениями через сервер БД, вызывая хранимые процедуры, инициирующие нужные события;
чтобы ускорить выполнение запросов и освободить клиентское приложение от необходимости такие запросы выдавать, в БД можно определить виртуальные таблицы, или представления, в которых объединяются записи из одной или более таблиц, соответствующих некоторому условию. Поддерживает представление сервер, реагируя на изменение данных в БД.
Среда разработки Delphi 7
Delphi 7 - это мощное средство создания приложений для Windows при помощи языка Object Pascal. Данный язык - комбинация нескольких важнейших технологий:
высокопроизводительный компилятор в машинный код;
объектно-ориентированная модель компонент;
визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;
простота и надежность создания и отладки программы;
использование всех преимуществ операционных систем Windows2000/XP, включая, многозадачность, удобный интерфейс и прочее;
использование обработки исключений (exceptions), что позволяет повысить надежность работы программного продукта;
наличие и доступность большого количества компонент, реализующих многие стандартные функции.
Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре «клиент-сервер». Этот компилятор в настоящее время является одним из самых быстрых в мире, его скорость компиляции составляет порядка 200 тысяч строк в минуту. Он предлагает легкость разработки и быстрое время проверки готового программного блока.
Объектно-ориентированная модель программных компонент позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует.
Среда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - Rapid Application Development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL (Visual Component Library) - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE.
Отличительной особенностью Delphi является наличие специализированной библиотеки компонент IBExpress для работы с СУБД InterBase/FireBird. Данные компоненты обеспечивают прямой доступ к базе данных без использования ODBC-драйверов.
Рассмотрим также возможность применения для организации складского учета программного продукта «1С: Торговля и склад», который является не только механизмом ведения учета и регистрации операций, но и платформой разработки на встроенном языке. Основным инструментом является Конфигуратор. Изучив описание типовой конфигурации, я пришел к выводу, что «1С: Торговля и склад» предоставляет не только весь необходимый функционал, но и имеет ряд дополнительных возможностей. Но существует ряд причин, по которым стоит отказаться от ее использования. В стандартной поставке программа работает с собственной базой данных под управлением драйвера dBase, к которой сложно применять директивы языка SQL, каждая таблица хранится в отдельном файле, индексы таблиц – в других файлах. Соответственно становится необходимым обеспечивать репликацию между базой данных ИПС «Разработка и макетирование» и базой данных «1С: Торговля и склад» в реальном времени, что всегда чревато ошибками синхронизации. Конечно, можно использовать конфигурацию «1С: Торговля и склад» совместно с оболочкой «1С: Предприятие для SQL». В таком случае база данных будет управляться сервером MS SQL Server, поддерживать инструкции SQL. Однако стоимость лицензионной версии такой оболочки очень высока, а покупка «пиратской» - чревата нестабильностью работы и возможной утратой каких-либо функций. Держать же два подобных информационных хранилища не имеет смысла, к тому же одной из задач создания ИПС «Разработка и макетирование» является создание единого централизованного информационного хранилища. Поэтому целесообразнее разработать модуль складского учета для ИПС «Разработка и макетирование» с учетом всей специфики работы предприятия.
Конструкторская часть