Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом_Mage / Диплом / !!! Диплом (сборка).doc
Скачиваний:
61
Добавлен:
16.04.2013
Размер:
2.94 Mб
Скачать

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. Однако стоимость лицензионной версии такой оболочки очень высока, а покупка «пиратской» - чревата нестабильностью работы и возможной утратой каких-либо функций. Держать же два подобных информационных хранилища не имеет смысла, к тому же одной из задач создания ИПС «Разработка и макетирование» является создание единого централизованного информационного хранилища. Поэтому целесообразнее разработать модуль складского учета для ИПС «Разработка и макетирование» с учетом всей специфики работы предприятия.