2.2.5. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА РАЗРАБОТКИ ИНФОРМАЦИОННЫХ СИСТЕМ.
Какие инструментальные средства разработки необходимы при организации ИС по обработке больших объемов сложных структурированных массивов данных? Наборы инструментов, необходимые для создания вузовских информационных ресурсов, составляют современные СУБД.
При разработке баз данных общего пользования, доступных в информационных сетях в режиме on-line, должны быть решены задачи, которые обеспечивают высокую надежность системы, достаточное количество одновременно работающих пользователей, минимизацию нагрузки на средства телекоммуникации, приемлемое время ответа системы, гибкость в формировании пользовательских запросов, возможность наращивания мощности установки по мере роста объема информации и количества пользователей.
Современная технология разработки баз данных предлагает в качестве возможного и наиболее приемлемого варианта использование архитектуры СУБД типа "клиент-сервер".
Самые эффективные серверы баз данных в настоящее время используют язык структурированных запросов SQL, ставший практически стандартом формирования запросов к реляционным СУБД больших и мини-ЭВМ. Прикладные программы клиента взаимодействуют с сервером базы данных, посылая к нему по сети запросы на языке SQL. После обработки запроса клиента сервер базы данных посылает клиенту обратно только данные, которые удовлетворяют запросу. Использование SQL-запросов в качестве интерфейса, через который пользователь обращается к серверу базы данных, позволяет скрыть от него процесс замены сервера и наращивания его мощности.
Наиболее популярными на рынке SQL-серверов являются СУБД фирм ORACLE, Informix, Sybase, Ingres, Interbase. Конкурируя между собой и опережая друг друга в отдельных направлениях развития технологии построения распределенных информационных систем, создания мощных серверов, систем в архитектуре "клиент-сервер", средств создания приложений, данные фирмы поставляют продукты одного класса и примерно одинаковой стоимости (при выборе сопоставимых по возможностям конфигураций).
Приведем наиболее важные отличительные особенности СУБД данного класса по сравнению с наиболее распространенными СУБД персонального класса (FoxPro, Clipper, Paradox, Clarion, MS Access):
• описание ограничений на целостность и непротиворечивость данных;
• наличие понятия транзакции, обеспечивающего проведение сложных модификаций данных, как неделимой операции;
• средства работы с несколькими серверами в рамках одной транзакции;
• развитые средства обеспечения одновременной работы нескольких пользователей над общими данными;
• средства разграничения прав пользователей по доступу к данным;
• встроенные средства создания резервных копий и дампов данных;
• ведение журналов изменений, позволяющих осуществить корректное восстановление состояния БД при аппаратных сбоях;
• стандартный язык манипулирования данными (SQL);
• возможность организации 'on-line'-работы из глобальных сетей;
• наличие версий на широком наборе аппаратных платформ и программных сред.
К сожалению, стоимость, как ядра, так и клиентской части SQL-серверов достаточно велика и составляет несколько тысяч долларов на одно клиентское место. Но существует несколько вариантов организации взаимодействия пользователя с SQL-севером, включающих использование уже существующих и свободно распространяемых программных продуктов (что существенно снижает затраты на создание объединенной информационной системы ВУЗа).
У разработчика базы данных, как и у пользователя, всегда, как правило, возникают два вопроса:
1. Что должна содержать база данных, чтобы сделать ее максимально эффективной?
2. Какими средствами разработки лучше всего пользоваться?
Существует очень простое понятие БД как большого по объему хранилища, в которое организация помещает все используемые ею данные, и из которого различные пользователи могут их получать, используя различные приложения. Такая единая база данных представляется идеальным вариантом, хотя на практике это решение по различным причинам труднодостижимо. Поэтому чаще всего под базой данных понимают любой набор хранящихся в компьютере взаимосвязанных данных.
В основу проектирования БД должны быть положены представления конечных пользователей конкретной организации - концептуальные требования к системе. Именно конечный пользователь в своей работе принимает решения с учетом получаемой в результате доступа к базе данных информации. От оперативности и качества этой информации будет зависеть эффективность работы организации. Данные, помещаемые в базу данных, также предоставляет конечный пользователь.
Каким требованиям современной быстро развивающейся организации должна удовлетворять СУБД?
Организация будет расти, и к информационной системе будут подключаться все новые и новые сотрудники, следовательно, система должна быть многопользовательской.
По мере расширения организация приобретает новые, не обязательно однотипные компьютеры. Значит, СУБД должна функционировать на множестве моделей компьютеров различных производителей, причем прикладные программы, разработанные для одной платформы, можно было бы без труда перенести на другую.
База данных организации будет непрерывно расти и расширяться. Следовательно, СУБД должна обеспечивать обработку и хранение больших объемов данных и поддерживать быстрорастущие БД.
В процессе развития информационной системы для реализации новых функций могут потребоваться различные механизмы обработки данных. Некоторые из них не обязательно потребуются сегодня, но непременно будут востребованы завтра и станут жизненно необходимыми послезавтра. Следовательно, СУБД должна быть многофункциональной.
Для расширения информационной системы могут потребоваться новые компьютеры и новые программные системы. Поэтому СУБД должна поддерживать как общепринятые стандарты сетевого обмена (TCP/IP, DECnet, IPX/SPX, NetBIOS, SNA и т.д.), так и стандарты межпрограммных интерфейсов (ATMI, XA, ODBC).
Возможно, что в организации появятся филиалы. Они будут работать с локальными БД. Значит, возникнет потребность объединения локальных БД в распределенную базу данных. Следовательно, СУБД должна управлять распределенными базами данных.
Можно выделить следующие этапы выбора СУБД:
1. Выявление внешних ограничений (свойства решаемых задач, тип ЭВМ, ОС, сроки разработки, трудовые и финансовые ресурсы и т.п.).
2. Выделение СУБД - претендентов, подходящих по внешним ограничениям.
3. Моделирование БД (преобразование инфологической модели в даталогическую для каждой из СУБД - претендентов и оценка затрат на программирование и поддержку БД).
4. Сравнительный анализ полученных вариантов.
Для окончательного выбора рекомендуется количественно оценить каждую характеристику выбранных СУБД:
1. общие технические характеристики (количество записей в файле, полей в записи, файлов в одной БД, способ реализации связей и т.п.),
2. соответствие структуры данных и методов доступа классу решаемых задач;
3. средства поддержки целостности БД,
4. языковые средства и их поддержка,
5. трудоемкость разработки прикладных программ,
6. стоимость эксплуатации системы.
Средства разработки приложений для работы с базами данных от компаний Microsoft и Borland.
Проведём сравнительный анализ 2 сред программирования: Microsoft Visual Basic и Borland Delphi.
Какие общие черты имеют рассматриваемые средства разработки, подтверждающие утверждение о возможности их совместного использования для разработки пользовательских приложений различного уровня сложности? Это в основном, такие новые технологии, как OLE, ODBС, DAO, RDAO, ActiveX и пр., которые они поддерживают. Эти технологии закладывают возможность использования в одном приложении данных, хранящихся в различных форматах. Это обеспечивает разработку приложения, независимые от данных. Помимо этого, за счет OLE Automation, возможно приложение функциональных возможностей различных пакетов программ для выполнения с данными специфических операций.
При совместном использовании различных средств разработки приложений нас больше всего будут интересовать данные. Delphi не имеет своего формата таблиц БД, однако, обеспечивает мощную поддержку многих СУБД, как локальных, так и промышленных.
Все СУБД, как правило, имеют сходный функциональный состав, в который входят средства разработчика, обеспечивающие возможность создания пользовательского приложения, и дополнительные средства, от состава которых, как правило, зависят функциональные возможности и мощность разрабатываемых программ. В зависимости от назначения средства разработки, о чем уже говорилось выше, состав различных средств в использовании конкретной СУБД может значительно отличаться.
Проведём более детальный анализ этих сред программирования.
2.2.5.1. Borland Delphi
В настоящее время популярна среда объектно-ориентированного программирования Delphi, основа которой – язык Object Pascal. Она позволяет быстро создавать приложения различной степени сложности – от простейших программ до профессиональных, предназначенных для работы с базами данных.
Приложение Delphi осуществляет доступ к БД через BDE (Borland Database Engine – процессор баз данных фирмы Borland). BDE представляет собой набор драйверов, обеспечивающих доступ к данным. Система BDE должна останавливаться на всех компьютерах, на которых работают с БД приложения Delphi.
Преимущества Borland Delphi:
Настраиваемая среда разработки
В течение многих лет вполне устраивали традиционные средства программирования, включающие редактор, компилятор и отладчик. Windows-ориентированные системы разработки добавили к этому набору визуальные методы создания интерфейса программ и автоматическую генерацию соответствующего программного кода. Borland Delphi, вобрав в себя все эти черты, идет ещё дальше. Например, Open Tools API (Application Programming Interface – интерфейс прикладного программирования) позволяет писать такие утилиты, например, эксперт автосохранения (auto-save expert), которые включаются в интегрированную среду разработки Delphi (или IDE).
Объектная ориентация
Языки, как Visual Basic, являются псевдообъектно-ориентированными – они используют объекты и методы, но не поддерживают основных концепций объектно-ориентированного программирования, таких как инкапсуляция, наследование и полиморфизм. Borland Delphi лишена этого недостатка. Это настоящий объектно-ориентированный язык, который позволяет объединять данные и код в один класс (инкапсуляция), создавать дочерние классы (наследование) и обращаться с классами-потомками, как с родительскими классами (полиморфизм).
Полная компиляция
Многие системы разработки приложений для Windows генерируют код-полуфабрикат, или p-код, который не может быть выполнен процессором без дополнительной трансляции во время работы самой программы, что существенно снижает производительность компьютера. Delphi же использует настоящий компилятор и компоновщик и генерирует стопроцентный машинный код. Такая реализация лишена непроизводительных затрат, что особенно важно для супермасштабных программ, которые требуют наличия высокопроизводительных систем!
Использование стопроцентной компиляции даёт ещё одно преимущество, заключающееся в создании библиотек динамической компоновки (DLL), которые могут содержать любые компоненты из библиотеки компонентов. Эти библиотеки можно использовать при разработке приложений или распространять как независимые компоненты для других программ.
Устойчивость к ошибкам
При программировании на других языках, вероятно, кто-то сталкивался с необходимостью обработки ошибок и защиты ресурсов. Прежний подход к решению этих задач состоял в выполнении функции с последующим анализом результата. В случае получения кода успешного завершения операции выполнялись некоторые действия и вновь анализировался результат. Этот процесс продолжался до тех пор, пока не исчерпывался исходный код высшей программы. Borland Delphi справляется с проблемой обнаружения ошибок благодаря реализации концепции исключительных ситуаций. Delphi позволяет писать программу, исходя из успешного выполнения всех её операторов. В случае возникновения отказа Delphi вызывает исключительную ситуацию, которая перехватывается одним-единственным обработчиком исключительных ситуаций. Такой подход позволяет программе достойно справиться с ошибкой.
Доступ к данным
Borland Delphi предоставляет в распоряжение программисту объекты и компоненты, которые значительно уменьшают трудовые затраты на создание приложений для работы с базами данных.
Некоторые инструменты Delphi, предназначенные для работы с БД:
• Инструменты (специальные программы и пакеты, обеспечивающие обслуживание БД вне разрабатываемых приложений);
• Компоненты, предназначенные для создания приложений, осуществляющих операции с БД.
ИНСТРУМЕНТЫ
Для операции с БД система Delphi предлагает такие инструментальные средства:
• Borland Database Engine (BDE) – процессор баз данных, который представляет собой набор библиотек, предназначенных для организации доступа к БД из приложений Delphi. BDE является центральным звеном, используемым для доступа к данным.
• BDE Administrator – утилита для настройки BDE. Позволяет настраивать различные параметры БД.
• Database Desktop – программа для создания и редактирования таблиц, SQL- и QBE-запросов.
• SQL Explorer – проводник БД, позволяющий настраивать параметры БД.
• SQL Monitor – программа для отслеживания порядка выполнения SQL-запросов
• SQL Links – драйвера для доступа к удаленным промышленны СУБД, например, Microsoft SQL Server или Oracle
• Local InterBase Server – локальная версия SQL-сервера Borland Interbase, которая использует при отладке приложений, предназначенных для работы с удаленными БД в архитектуре клиент-сервер. После отладки на локальном компьютере приложение может быть перенесено на сетевые компьютеры без изменений, необходимо только установить новые параметры соединения с удалённой БД. Версия сервера рассчитана на два одновременных соединения с сервером.
• InterBase Server for Windows 95 – многопользовательская версия SQL-сервера Borland Interbase, рассчитанная на четыре одновременных соединения. В основном используется для отладки приложений.
2.2.5.2. Visual Basic
Visual Basic является универсальным средством программирования, однако рассматривать его возможности только с точки зрения создания приложений по обработке данных нельзя.
В отличие от большинства пакетов программ Visual Basic не имеет главного окна, объединяющего все остальные элементы интерфейса разработчика. Каждый элемент Visual Basic имеет свое независимое окно, которое может быть убрано или расположено независимо от других в любом месте экрана.
Основные возможности Visual Basic, применяемые в разработке приложений для обработки информации, могут быть реализованы благодаря наличию в нем объектов для доступа к данным - Data Access Object (DAO), 32-разрядного процессора данных- JET 3.0 и предназначенных специально для работы с данными элементов управления.
Процессор данных в Visual Basic поддерживает все стандартные операции по созданию, изменению и удалению таблиц, индексов и запросов.
Формат БД процессора данных Visual Basic соответствует формату Access. JET 3.0 также обеспечивает поддержку целостности и проверку вводимых и изменяемых данных на уровне полей и записей. Для изменения данных JET 3.0 позволяет использовать язык SQL.
Управление базой данных обеспечивается процессором данных с помощью объектов для доступа к данным. Эти объекты позволяют разработчику программным путем, с помощью соответствующих свойств и методов DAO, как манипулировать данными так и управлять структурой БД, включая ее создание. По сравнению с предыдущей версией Visual Basic возможности объектов для доступа к данным теперь существенно расширены. В Visual Basic для работы с данными можно применять несколько рабочих областей, поддерживать целостность данных, включая каскадное удаление и обновление, и обеспечивать их защиту от несанкционированного доступа. Кроме этого применение коллекций существенно сокращает программный код.
Уникальным свойством JET 3.0 является возможность создания копий данных (репликации БД). Эти операции могут выполняться как с файлами формата БД процессора данных, так и с БД других форматов, поддерживаемых через ODBC.
В Visual Basic Enterprise Edition включены объекты для доступа к внешним данным - Remote Data Object (RDO) и соответствующие элементы управления- Remote Data Control (RDC). Это позволяет, не прибегая к помощи процессора данных JET 3.0, использовать все возможности работы с курсорами на сервере, достигая максимально возможной скорости доступа к данным минимизируя сетевой трафик.
ВЫВОД:
На основании проведенного анализа можно сказать, что рассматриваемые среды программирования имеют много общего (работа с SQL, ODBC, OLE), но в данном случае, при разработке информационной системы КамПИ, будет использована СУБД архитектуры «клиент-сервер» (Oracle, Interbase). Visual Basic большей частью рассчитан на работу с CУБД формата MS Access. Также, трудоемкость в проектировании базы данных в Visual Basic существенно больше, чем в среде Delphi, у которой достаточно богатый потенциал инструментов и компонентов для создания приложений архитектуры «клиент-сервер», особенно при работе с такими мощными СУБД, как Oracle или Interbase.
Итак, можно сделать вывод, что среда объектно-ориентированного программирования Borland Delphi, которая поддерживает целостность, устойчивость при разработки баз данных архитектуры «клиент-сервер», является оптимальным решением для реализации задач информационной системы КамПИ.
|