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

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

1.2.1 Однозвенные приложения

Для мэйнфремов и для мини-компьютеров

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

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

1.2.2 Двухзвенные приложения

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

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

Граница между клиентом и сервером в таких системах проводится в произвольном месте и большей частью зависит от используемых инструментов. В наиболее популярных и распространенных клиент-серверных системах в качестве клиентской рабочей станции применяется Windows‑компьютер, а в качестве сервера – SQL сервер на основе Windows или UNIX. Инструментарий, при помощи которого создаются такие системы, позволяет разработчикам разрабатывать логику клиента и осуществлять простейшие запросные операции серверу. Такой тип клиент-серверной архитектуры называют архитектурой с толстым клиентом, поскольку большая часть приложения, включая презентационную логику, бизнес-логику и логику доступа к данным, выполняется на персональном сетевом компьютере.

Двухзвенный клиент-серверный подход предоставляет значительные преимущества по сравнению с однозвенным подходом – проектирование происходит заметно быстрее, а сервер может быть довольно простым, поскольку большая часть сложной обработки возлагается на клиента. Следствием из этого является заметное удешевление системы, особенно серверной ее части. Появляется возможность не зависеть от платформы сервера, поскольку все базы данных от одного поставщика предоставляют одинаковый интерфейс независимо от платформы сервера. А такие интерфейсы, как ODBC (Microsoft) или IDAPI (Borland-Inprise) позволяют добиться и независимости от производителя БД.

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

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

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

Также двухзвенный клиент-серверный подход хорошо работает в случае, когда все корпоративные данные хранятся лишь в одном месте, в одном SQL-сервере. Но на самом деле большинство данных до сих пор находится в прежних форматах баз данных, а то и просто сохраняются в файловой системе. Существующие на сегодня RAD-инструменты (rapid application development) предназначены большей частью для операций с данными, выбираемыми из реляционных таблиц, и почти не предлагают средств для интеграции данных из многих источников в единую систему.

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

Клиентские приложения становятся все более сложными и все менее управляемыми. Это общая тенденция для двухзвенного клиент-серверного подхода.

Двухзвенная клиент-серверная архитектура – это архитектура, существенно зависящая от применяемых программных инструментов.

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

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

Страница:  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы