Тарифы Услуги Сим-карты

Open Library - открытая библиотека учебной информации. Различные аспекты понятие архитектуры ис

СОДЕРЖАНИЕ КУРСА Основы информационных систем. Классификация архитектур информационных систем. Специализированные подсистемы (СУБД и т.д.). Распределенные информационные системы. Архитектуры веб-приложений. Сервис-ориентированная архитектура (SOA). Эволюция распределенных систем в сервис-ориентированные системы, облачные информационные системы и сервисы. Функциональные уровни информационной системы Декомпозиция информационных систем на слои и уровни. Выделение подсистем в архитектуре. Интеграция различных информационных систем, параллельные архитектуры. Архитектуры существующих проектов информационных систем.


РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА Б. Я. Советов, А. И. Водяхо, В. А. Дубенецкий, В. В. Цехановский. Архитектура информационных систем: учебник для студ. учреждений высш. проф. образования. - М. : Издательский центр «Академия», Пирогов В.Ю. Информационные системы и базы данных. Организация и проектирование. – СПб.: БХВ-Петербург, – 528 с. Петров В.Н. Информационные системы. – СПб.: Питер, – 688 с.


КЛАССИЧЕСКОЕ ОПРЕДЕЛЕНИЕ АРХИТЕКТУРЫ Архитектура (лат. architectural искусство проектировать и строить здания и другие сооружения (комплексы), создающие материально организованную среду, необходимую людям для их жизни и деятельности, в соответствии с современными техническими возможностями и эстетическими воззрениями общества.


ОПРЕДЕЛЕНИЯ АРХИТЕКТУРЫ ИНФОРМАЦИОННЫХ СИСТЕМ архитектура организационная структура системы; архитектура информационной системы концепция, опреде­ляющая модель, структуру, выполняемые функции и взаимосвязь компонентов информационной системы; архитектура базовая организация системы, воплощенная в ее компонентах, их отношениях между собой и окружением, а также принципы, определяющие проектирование и развитие системы;


ОПРЕДЕЛЕНИЯ АРХИТЕКТУРЫ ИНФОРМАЦИОННЫХ СИСТЕМ архитектура набор значимых решений по поводу организации системы программного обеспечения, набор структурных элементов и их интерфейсов, при помощи которых компонуется система вместе с их поведением, определяемым во взаимодействии между этими элементами, компоновка элементов в постепенно укрупняющиеся подсистемы, а также стиль архитектуры, который направляет эту органи­зацию (элементы и их интерфейсы, взаимодействия и компоновку); архитектура программы или компьютерной системы структу­ра или структуры системы, которые включают элементы программы, видимые извне свойства этих элементов и связи между ними; и т.д. На сайте SEI (Software Engineering Institute) имеется специальный раздел, посвященный определениям архитектуры программного обеспечения


ПОНЯТИЕ АРХИТЕКТУРЫ ИНФОРМАЦИОННОЙ СИСТЕМЫ На сайте ISO/IEC (architecture.org/ieee-1471/defining- architecture.html) дается следующие определение архитектуры информационной системы: architecture.org/ieee-1471/defining- architecture.html Architecture system fundamental concepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution. Архитектура системы – это основные понятия и свойства системы в окружающей среде, воплощенные в его элементы, отношения и в принципах своей конструкции и эволюции




ПОНЯТИЕ ИНФОРМАЦИОННОЙ СИСТЕМЫ В качестве официального определения информационной системы (ИС) можно рассматривать определение, которое дает Федеральный закон Российской Федерации от 27 июля 2006 г. 149-ФЗ «Об информации, информационных технологиях и о защите информации»: «Информационная система совокупность содержащейся в базах данных информации и обеспечивающих ее обработку информационных технологий и технических средств».




БИЗНЕС-АРХИТЕКТУРА Бизнес-архитектура, или архитектура уровня бизнес-процессов определяет бизнес-стратегии, управление, организацию, ключевые бизнес-процессы в масштабе предприятия, причем не все бизнес- процессы реализуются средствами ИТ-технологий. Бизнес-архитектура отображается на ИТ-архитектуру.


ИТ-АРХИТЕКТУРА ИТ-архитектура рассматривается в трех аспектах: обеспечивает достижение бизнес-целей посредством использования программной инфраструктуры, ориентированной на реализацию наиболее важных бизнес-приложений; среда, обеспечивающая реализацию бизнес- приложений; совокупность программных и аппаратных средств, составляющая информационную систему организации и включающая, в частности, базы данных и промежуточное программное обеспечение.


АРХИТЕКТУРА ДАННЫХ Архитектура данных информационной системы включает логические и физические хранилища данных и средства управления данными. Архитектура данных должна быть поддержана ИТ- архитектурой. В современных ИТ-системах, ориентированных на работу со знаниями, иногда выделяют отдельный тип архитектуры архитектуру знаний (Knowledge Architecture).


ПРОГРАММНАЯ АРХИТЕКТУРА Программная архитектура отображает совокупность программных приложений: Программное приложение это компьютерная программа, ориентированная на решение задач конечного пользователя. Архитектура приложения это описание отдельного приложения, работающего в составе ИТ- системы, включая его программные интерфейсы. Архитектура приложения базируется на ИТ- архитектуре и использует сервисы, предоставляемые ИТ-архитектурой.


ТЕХНОЛОГИЧЕСКАЯ АРХИТЕКТУРА Технологическая архитектура характеризует программно-аппаратные средства информационных систем и включает такие элементы, как процессор, память, жесткие диски, периферийные устройства, элементы для их соединения, операционные системы, а также сетевые средства.


КЛАССИФИКАЦИЯ ИНФОРМАЦИОННЫХ СИСТЕМ Используется доменный подход к описанию ИТ-архитектур. Под доменной архитектурой понимают эталонную модель, описывающую множество систем, которые реализуют похожую структуру, функциональность и поведение. Можно выделить следующие основные характеристики домена задач: характер решаемых задач; тип домена; предметная область; степень автоматизации; масштаб применения.




ПРИМЕР ДЕЛЕНИЯ ИС ПО ХАРАКТЕРУ ОБРАБОТКИ ДАННЫХ: системы, ориентированные на решение крупномасштабных задач преимущественно вычислительного характера; информационно-справочные (информационно-поисковые) ИС, в которых нет сложных алгоритмов обработки данных, а целью си­стемы является поиск и выдача информации в удобном для пользо­вателя виде; системы поддержки принятия решении; коммуникационные системы; ИС, ориентированные на предоставление услуг (сервисов), таких как доступ в Интернет, сервисы хранения данных, доступа к вычис­лительным ресурсам, доступа к данным и т. п.


ПРИМЕР ДЕЛЕНИЯ ИС ПО ПРИНАДЛЕЖНОСТИ К БАЗОВОМУ ДОМЕНУ: информационно-управляющие системы ИУС (Management Information Systems), управляющие системы УС (Process Control Systems), системы мониторинга и управления ресурсами СМУР (Resource Allocation and Tracking Systems), системы управления производством СУП (Manufacturing Systems), системы управления доступом СУД (Access Control Systems).


ПРИМЕР ДЕЛЕНИЯ ИС ПО ПРИНАДЛЕЖНОСТИ К ПРЕДМЕТНОЙ ОБЛАСТИ системы управления организацией ИС, предназначенные для выполнения функций управления организацией (предприятием); телекоммуникационные системы ИС, предназначенные для реализации функций, связанных передачей данных; геоинформационные системы ИС, обеспечивающие сбор, хранение, обработку, доступ, отображение и распространение про­странственно- координированных данных (пространственных дан­ных); торговые ИС; встроенные системы управления сложными объектами, такими как самолеты и корабли; медицинская информационная система ИС, предназначенные для использования в лечебных учреждениях.




ПРИМЕР КЛАССИФИКАЦИИ ПО МАСШТАБНОСТИ ПРИМЕНЕНИЯ ИС персональные ИС, предназначенные для использования одним человеком; групповые ИС, предназначенные для совместного использования группой людей, например сотрудниками одного подразделения; корпоративные ИС, охватывающие информационные про­цессы отдельной организации; глобальные ИС, охватывающие информационные процессы многих организаций.




Клиент (client) – пользователь и (или) компьютер, использующий какие- либо программные сервисы Сервер (server) – компьютер или центр обработки данных, предоставляющий программные сервисы Тонкий клиент (thin client) – клиент с минимальным пользовательским интерфейсом – не имеющий состояния, сеанса, полнофункционального GUI Rich client (полнофункциональный клиент) – клиент, имеющий полнофункциональный GUI и общающийся с сервером через слой промежуточного программного интерфейса (middleware), обеспечивающий его функциональность; Слой (layer) – крупная независимая компонента архитектуры ПО Уровень абстракции (abstraction layer) – горизонтальный слой (номер N); совокупность модулей, реализация которых использует только модули уровня N-1 (N > 0). Вертикальный срез (аспект) – совокупность рассредоточенных фрагментов кода, реализующих (сквозную) функциональность, например, проверку безопасности НЕКОТОРЫЕ СОВРЕМЕННЫЕ ОСНОВНЫЕ ПОНЯТИЯ ПРИ ОПИСАНИИ АРХИТЕКТУРЫ ИС 0). Вертикальный срез (аспект) – совокупность рассредоточенных фрагментов кода, реализующих (сквозную) функциональность, например, проверку безопасности НЕКОТОРЫЕ СОВРЕМЕННЫЕ ОСНОВНЫЕ ПОНЯТИЯ ПРИ ОПИСАНИИ АРХИТЕКТУРЫ ИС">


Промежуточное программное обеспечение (middleware) – совокупность слоев ПО, лежащих между клиентом и сервером и обеспечивающих их взаимодействие, например, поддержку сетевых коммуникационных протоколов Ярус (tier) – слой программного обеспечения, реализующий какую-либо независимую часть его архитектуры; например: business tier – реализация бизнес-логики; Web tier – реализация взаимодействия с Web Многоярусная архитектура (multi-tier architecture) – архитектура ПО, при которой презентация результатов, обработка и управление данными реализованы как отдельные процессы. Пример: Использование middleware для взаимодействия с сервером и СУБД для взаимодействия с данными НЕКОТОРЫЕ СОВРЕМЕННЫЕ ОСНОВНЫЕ ПОНЯТИЯ ПРИ ОПИСАНИИ АРХИТЕКТУРЫ ИС


Многоклиентская архитектура (multi-tenant architecture) – архитектура клиент-серверного ПО, при которой один экземпляр серверного ПО, исполняемый на сервере, обслуживает несколько клиентов (tenants – букв. клиенты, арендаторы). Пример: Web-сервис Например, с точки зрения рассмотренных концепций, облачные вычисления соответствуют принципам multi- tiered and multi-tenant architecture. НЕКОТОРЫЕ СОВРЕМЕННЫЕ ОСНОВНЫЕ ПОНЯТИЯ ПРИ ОПИСАНИИ АРХИТЕКТУРЫ ИС


МОДЕЛИ ФУНКЦИОНИРОВАНИЯ РАСПРЕДЕЛЕННЫХ ПРИЛОЖЕНИЙ Выделяют три основных параметра организации работы приложений в сети: Способ разделения приложения на части, выполняющиеся на разных компьютерах сети; Выделение специализированных серверов в сети, на которых выполняются некоторые общие для всех приложений функции; Способ взаимодействия между частями приложений, работающих на разных компьютерах.


СПОСОБЫ РАЗДЕЛЕНИЯ РАСПРЕДЕЛЕННЫХ ПРИЛОЖЕНИЙ НА ЧАСТИ Приложения условно можно разделить на следующие функциональные части: Средства представления данных на экране; Логика представления данных на экране (описывает правила и сценарии взаимодействия пользователя с приложениями); Прикладная логика (правила для принятия решений, вычислительные процедуры и т.п.); Логика данных – операции с данными, хранящимися в некоторой базе; Внутренние операции БД – действия СУБД, вызываемые в ответ на выполнение запросов логики данных; Файловые операции – стандартные операции над файлами и файловой системой.










34


Достоинства: пользователи совместно используют дорогие ресурсы ЭВМ и дорогие периферийные устройства централизация ресурсов и оборудования облегчает обслуживание и эксплуатацию вычислительной системы отсутствует необходимость администрирования рабочих мест пользователей Главный недостаток: пользователи полностью зависят от администратора хост-ЭВМ АРХИТЕКТУРА «ФАЙЛ-СЕРВЕР» Достоинства: многопользовательский режим работы с данными удобство централизованного управления доступом низкая стоимость разработки высокая скорость разработки невысокая стоимость обновления и изменения ПО Недостатки: проблемы многопользовательской работы с данными низкая производительность плохая возможность подключения новых клиентов ненадежность системы 38
41 ДВУХУРОВНЕВАЯ АРХИТЕКТУРА «КЛИЕНТ-СЕРВЕР» Достоинства: возможность распределить функции вычислительной системы между несколькими независимыми компьютерами все данные хранятся на защищенном сервере поддержка многопользовательской работы гарантия целостности данных Недостатки: неработоспособность сервера может сделать неработоспособной всю вычислительную сеть сложное администрирование высокая стоимость оборудования бизнес логика приложений осталась в клиентском ПО


МНОГОУРОВНЕВАЯ АРХИТЕКТУРА «КЛИЕНТ-СЕРВЕР» Достоинства: клиентское ПО не нуждается в администрировании масштабируемость конфигурируемость высокая безопасность и надежность низкие требования к скорости канала между терминалами и сервером приложений низкие требования к производительности и техническим характеристикам терминалов Недостатки: сложность администрирования и обслуживания более высокая сложность создания приложений высокие требования к производительности серверов приложений и сервера базы данных высокие требования к скорости канала (сети) между сервером базы данных и серверами приложений ОСОБЕННОСТИ АРХИТЕКТУРЫ ВЕБ- ПРИЛОЖЕНИЙ Отсутствие необходимости использовать дополнительное ПО на стороне клиента Возможность подключения практически неограниченного количества клиентов Централизованное место хранения данных Недоступность при отсутствии работоспособности сервера или каналов связи Достаточно низкая скорость веб-сервера и каналов передачи данных

По способу организации групповые и корпоративные информационные системы подразделяются на следующие классы :

    системы на основе многоуровневой архитектуры;

    системы на основе технологии интернет/интранет.

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

Таблица 3.2 – Типовые функциональные компоненты информационной системы

Обозна-чение

Наименование

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

Presentation Services

(средства представления)

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

Presentation Logic(логика представления)

Управляет взаимодействием между пользователем и ЭВМ. Обрабатывает действия пользователя при выборе команды в меню, нажатии кнопки или выборе элемента из списка.

Business or Application Logic

(прикладная логика)

Набор правил для принятия решений, вычислений и операций, которые должно выполнить приложение.

(логика управления данными)

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

(операции с базой данных)

Действия СУБД, вызываемые для выполнения логикиу правления данными, такие как: манипулирование данными, определение данных, фиксация или откат транзакций и т. п. СУБД обычно компилирует SQL-предложения.

(файловые операции)

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

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

По способу организации информационные системы разделяются следующим образом:

    системы на основе архитектуры файл-сервер;

    системы на основе архитектуры клиент-сервер;

    системы на основе многоуровневой архитектуры.

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

Объектами разработки в файл-серверном приложении являются компоненты приложения, определяющие логику диалога PL, а также логики обработки BL и управления данными DL. Разработанное приложение реализуется либо в виде законченного загрузочного модуля, либо в виде специального кода для интерпретации.

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

Архитектура клиент-сервер предназначена для разрешения проблем файл-серверной архитектуры путем разделения компонентов приложения и размещения их там, где они будут функционировать наиболее эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL (Structured Query Language) и выполняющих поиск, сортировку и агрегирование информации.

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

Большинство конфигураций клиент-сервер использует двухуровневую модель, в которой клиент обращается к услугам сервера. Предполагается, что диалоговые компоненты PS и PL размещаются на клиенте, что позволяет обеспечить графический интерфейс. Компоненты управления данными DS и FS размещаются на сервере, а диалог (PS, PL), логики BL и DL – на клиенте. Двухуровневая архитектураклиент-сервер использует именно этот вариант: приложениеработает на клиенте, СУБД – на сервере.

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

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

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

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

Многоуровневая архитектура стала развитием архитектуры клиент -сервер и в классической форме состоит из трех уровней:

    нижний уровень представляет собой приложения клиентов, выделенные для выполнения функций и логики представленийPS иPL и имеющие программный интерфейс для вызова приложения на среднем уровне;

    средний уровень представляет собой сервер приложений, на котором выполняется прикладная логика BL и с которого логика обработки данных DL вызывает операции с базой данных DS;

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

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

Централизация логики приложения упрощает администрирование и сопровождение. Четко разделяются платформы и инструменты для реализации интерфейса и прикладной логики, что позволяет с наибольшей отдачей реализовывать их специалистами узкого профиля. Наконец, изменения прикладной логики не затрагивают интерфейс, и наоборот. Но поскольку границы между компонентами PL, BL и DL размыты, прикладная логика может появиться на всех трех уровнях. Сервер приложений с помощью монитора транзакций обеспечивает интерфейс с клиентами и другими серверами, может управлять транзакциями и гарантировать целостность распределенной базы данных. Средства удаленного вызова процедур наиболее соответствуют идее распределенных вычислений: они обеспечивают из любого узла сети вызов прикладной процедуры, расположенной на другом узле,передачу параметров, удаленную обработку и возврат результатов. С ростом систем клиент -сервер необходимость трех уровней становится все более очевидной.

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

Интернет/Интранет-технологии. В развитии технологии интернет- интранет основной акцент пока что делается на разработке инструментальных программных средств. В то же время наблюдается отсутствие развитых средств разработки приложений, работающих с базами данных. Компромиссным решением для создания удобных и простых в использовании и сопровождении информационных систем, эффективно работающих с базами данных, стало объединение Интернет/Интранет-технологии с многоуровневой архитектурой. При этом структура информационного приложения приобретает следующий вид: браузер – сервер приложений – сервер баз данных – сервер динамических страниц – web-сервер.

Благодаря интеграции Интернет/Интранет-технологии и архитектурыклиент-сервер процесс внедрения и сопровождения корпоративной информационной системы существенно упрощается при сохранении достаточно высокой эффективности и простоты совместного использования информации.

Вывод :Для решения задачи проектированияинформационной системы мониторинга доступности ремонтных бригадремонтной службы ОАО «НЭСК-ЭЛЕКТРОСЕТИ» подходиттехнология Интернет/Интранет на базе многоуровневой архитектуры, так как в данной системе обрабатывается малый объем данных и не должно существовать никакого дополнительного ПО для ее использования на стороне клиента.

Архитектура информационной системы мониторинга доступности ремонтных бригад ремонтной службы ОАО «НЭСК-ЭЛЕКТРОСЕТИ» показана на рисунке 3.1.

Рисунок 3.1 – Архитектура системы

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

Сервер приложения реализуется в виде WEB-приложения, которое может исполняться в контекстесреды исполнения, работающегонапример, наJava и реализующего стандарты Java-сервлетов. Для снижения нагрузки на сервер приложений за счет кэширования передаваемого контента, а также реализации дополнительных функций, таких как Virtual Hosts, SSL перед сервером приложений может проводиться установка одного из популярных Web-серверов: Apache, nginx, MS IIS.

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

Эффективность функционирования ИС во многом зависит от её архитектуры.

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

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

Программный интерфейс или API (Application Programming Interface) определяет способ взаимодействия составных частей (компонент) приложения. Программные интерфейсы бывают разной природы(типа): экспортируемые функции DLL, публичные классы пакета/сборки, COM, EJB, CORBA, SOAP и т.д., разрабатываются под конкретную задачу, тяготеют к унификации и стандартизации.

АИС включает три группы функций, ориентированных на решение различных подзадач (рис. 1.1):

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

2. прикладные функции, характерные для данной предметной области;

3. функции управления ресурсами (файловой системой, БД и т.д.).

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

Рисунок 1.1 - Компоненты сетевого приложения

Пользовательский интерфейс (средства представления данных Presentation Services (PS), логика представления Presentation Logic (PL)) – обеспечивает просмотр и редактирование данных, а также управление данными и приложением в целом (нажатие кнопок, движение мыши, прорисовка изображения, вывод результатов поиска и т.д.).

Бизнес логика (прикладная логика Business or Application Logic (BL), логика данных Data Logic (DL)) – правила, алгоритмы реакции приложения на действия пользователя или на внутренние события, правила обработки данных.

Управление данными (средства управления БД Data Services (DS), средства управления файлами File Services (FS))– включает:

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

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

Автономная система (компьютер, не подключенный к сети) представляет все эти компоненты как на различных уровнях (ОС, служебное ПО и утилиты, прикладное ПО), так и на уровне приложений (не характерно для современных программ). Так же и сеть - она представляет все эти компоненты, но, в общем случае, распределенные между узлами. Задача сводится к обеспечению сетевого взаимодействия между этими компонентами.



Архитектура АИС определяет распределение компонентов между звеньями (tiers) сетевого приложения.

В настоящее время перспективной является архитектура клиент-сервер .

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

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

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

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

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

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

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

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

Рисунок 1.2 – Двухзвенная клиент-серверная архитектура

Расположение компонентов на стороне клиента или сервера определяет следующие основные модели их взаимодействия в рамках двухзвенной архитектуры:

- сервер терминалов - распределенное представление данных;

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

- сервер БД - удаленное представление данных;

- сервер приложений - удаленное приложение.

Перечисленные модели с вариациями представлены на рис.1.3.

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

Рисунок 1.3 - Модели клиент-серверного взаимодействия

На рис.1.2. представлена модель сервера терминалов с централизованной БД (рис.1.2 - а) и централизованной СУБД (рис.1.2 - б).

Рисунок 1.4 - Модель распределенного представления данных (модель сервер терминалов)

Достоинства:

Пользователи совместно используют дорогие ресурсы ЭВМ и дорогие периферийные устройства;

Централизация ресурсов и оборудования облегчает обслуживание и эксплуатацию вычислительной системы;

Отсутствует необходимость администрирования рабочих мест пользователей (терминальных станций);

Главный недостаток:

Пользователи полностью зависят от администратора mainframe.

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

Рисунок 1.5 - Структура АИС с файл-сервером

Достоинства:

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

Удобство централизованного управления доступом;

Низкая стоимость разработки;

Высокая скорость разработки;

Невысокая стоимость обновления и изменения ПО.

Недостатки:

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

Низкая производительность;

Плохая возможность подключения новых клиентов;

Ненадежность системы.

Распределение функциональных компонент в файл-серверной архитектуре представлено на рисунке 1.6.

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

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

Рисунок 1.6 - Распределение функциональных компонент в архитектуре файл-сервер

Рисунок 1.7 – Репликация данных

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

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

Клиент-серверная архитектура с сервером БД представлена на рисунке 1.8.

Рисунок 1.8 - Структура АИС с сервером БД

Распределение функциональных компонент (рис.1.9) в клиент-серверной архитектуре следующее, на рабочих станциях клиентов располагается интерфейс с пользователем, операторы обращения к СУБД; на файл-сервере хранится база данных, располагаются хранимые процедуры, реализующие серверную часть бизнес-логики, выполняются запросы и обрабатываются транзакции.

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

Достоинства:

Возможность распределить функции вычислительной системы между несколькими независимыми компьютерами;

Все данные хранятся на защищенном сервере;

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

Поддержка многопользовательской работы;

Гарантия целостности данных;

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

Недостатки:

Неработоспособность сервера может сделать неработоспособной всю вычислительную сеть;

Сложное администрирование;

Высокая стоимость оборудования;

Частично бизнес логика приложений осталась в клиентском ПО;

Ограниченность средств разработки хранимых процедур по сравнению с языками высокого уровня.

Рисунок 1.9 - Распределение функциональных компонент в архитектуре клиент-сервер

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

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

Как правило, третьим звеном в трехзвенной архитектуре становится сервер приложений, т.е. компоненты распределяются следующим образом (рис. 1.10):

1. Представление данных (пользовательский интерфейс) – на стороне клиента.

2. Прикладной компонент (бизнес-логика) – на выделенном сервере приложений.

3. Управление ресурсами (управление данными) – на сервере БД, который и представляет запрашиваемые данные.

Рисунок 1.10 - Многоуровневая архитектура клиент сервер

Достоинства:

Клиентское ПО не нуждается в администрировании;

Масштабируемость;

Конфигурируемость;

Высокая безопасность и надежность;

Низкие требования к скорости канала между терминалами и сервером приложений;

Низкие требования к производительности и техническим характеристикам терминалов.

Но наряду с этим имеют место следующие недостатки:

Сложность администрирования и обслуживания;

Более высокая сложность создания приложений;

Высокие требования к производительности серверов приложений и сервера базы данных;

Высокие требования к скорости канала (сети) между сервером базы данных и серверами приложений.

Распределение функциональных компонент в многоуровневой клиент-серверной архитектуре представлено на рисунке 1.11.

Рисунок 1.11 - Распределение функциональных компонент в многоуровневой архитектуре клиент-сервер

Архитектура веб-ориентированных ИС представлена на рисунке 1.12.

Рисунок 1.12 - Архитектура веб-систем

Достоинства:

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

Клиента – это позволяет автоматически реализовать клиентскую часть на всех

Платформах;

Возможность подключения практически неограниченного количества

Клиентов;

Благодаря единственному месту хранения данных и наличия системы

Управления базами данных обеспечиваются минимальные требования для

Поддержания целостности данных;

Доступность при работоспособности сервера и каналов связи;

Недостатки:

Недоступность при отсутствии работоспособности сервера или каналов связи;

Достаточно низкая скорость веб-сервера и каналов передачи данных;

Относительно объема данных – архитектура веб-систем не имеет

Существенных ограничений.

Распределение функциональных компонент в архитектуре веб-ориентированных ИС представлена на рисунке 1.13

Рисунок 1.13 - Распределение функциональных компонент в архитектуре веб-ориентированных ИС

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

Трехзвенная архитектура сложнее, но благодаря тому, что функции распределены между серверами второго и третьего уровня, эта архитектура представляет:

1. Высокую степень гибкости и масштабируемости.

2. Высокую безопасность (т.к. защиту можно определить для каждого сервиса или уровня).

3. Высокую производительность (т.к. задачи распределены между серверами).

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

Для создания и управления персональными БД и приложений, работающих с ними, используются СУБД, такие как Access и Visual FoxPro фирмы Microsoft, Paradox фирмы Borland.

Корпоративная БД создается, поддерживается и функционирует под управлением сервера БД, например, Microsoft SQL Server или Oracle Server.

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

Компьютер-сервер, содержащий корпоративную и персональные базы;

Компьютер-сервер и персональные компьютеры с ПБД;

Несколько компьютеров-серверов и персональных компьютеров с ПБД.

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

На текущем этапе развития автоматизированных информационных систем промышленного применения к базам данных выдвигают следующие требования:

Централизованное управление при многопользовательском доступе к данным;

Сокращение избыточности данных;

Обеспечение и внедрение стандартов в представлении данных;

Обеспечение целостности и безопасности данных;

Независимость данных;

Распределенная обработка данных в сетях ЭВМ.

Архитектура ИС обычно определяется как набор ответов на следующие вопросы:

    что делает система

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

    как эти части взаимодействуют

    где эти части размещены

Архитектура ИС - системная архитектура (архитектура систем - SystemArchitecture) или программная архитектура (архитектура программного обеспечения -SoftwareArchitecture)

Определение архитектуры ис

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

В книге "Архитектура ПО на практике, 2-е издание" Басс, Клементс и Казман дают следующее определение

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

Архитектура ис как совокупность архитектур.

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

    Бизнесс-архитектура.

    ИТ-архитектура

    Архитектура данных

    Архитектура приложения или программная архитектура

    Техническая архитектура

Совокупность архитектур данных и архитектуры приложений называется архитектурой ИС

Бизнес-архитектура

Бизнес-архитектура или архитектура уровня бизнес-процессов определяет бизнес-стратегии, управление, организацию, ключевые бизнес-процессы в масштабе предприятия, причем не все бизнес-процессы реализуются средствами ИТ-технологий.

Основу бизнес-архитектуры составляют:

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

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

Показатели эффективности

Бизнес-архитектура отображается на ИТ-архитектуру.

Ит-архитектура

Рассматривается в трех аспектах:

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

    как среда, обеспечивающая реализацию бизнес-приложений

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

Архитектура данных...

Архитектура данных организации включает логические и физические хранилища данных и средства управления данными

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

    Архитектура приложения - это описание отдельного приложения, работающего в составе ИТ-системы, включая его программные интерфейсы.

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

Платформенные архитектуры информационных систем

Централизованная архитектура

70-е годы. Эпоха мейнфреймов - больших централизованных ЭВМ.

Основные особенности:

Все базовые функции приложения реализуются в одном месте

Все пользователи работают одновременно на одном компьютере

Плюсы:

    Нулевое администрирование рабочих мест пользователей

    Централизованная разработка и обслуживание системы

Минусы:

    Дорогая аппаратура оправдана только для больших систем

    Взаимная зависимость пользователей на программном уровне

    Пользователь не может настроить рабочую среду под свои потребности

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

Начало 80-х - пк

Архитектура "Файл-сервер"

Появились локальные сети. Файлы начали передавать по сети. Сначала были одноранговые сети - все компьютеры равноправны.

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

Основные особенности:

Функция хранения данных вынесена на выделенный компьютер - файл-сервер

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

    Многопользовательский режим работы с данными

    удобство централизованного управления доступом

    низка стоимость разработки

    невысокая стоимость обновления и изменения ПО

    проблема многопользовательской работы с данными: последовательный доступ, отсутствие гарантий целостности

    Низка производительность

    плохая возможность подключения новых клиентов

    ненадежность системы

Существуют различные виды структур ИС:

    функциональная (элементы - функции, задачи, операции; связи - информационные);

    техническая (элементы-устройства; связи - линии связи);

    организационная (элементы - коллективы людей и отдельные исполнители; связи - информационные, соподчинения и взаимодействия;

    алгоритмическая (элементы -- алгоритмы; связи - информационные); программная (элементы - программные модули; связи - информационные и управляющие);

    информационная (элементы - формы существования и представления информации в системе; связи - операции преобразования информации в системе).

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

Рисунок 2

Архитектура - организационная структура любой системы. (IEEE Std. 610.12-1990). Выделяют четыре области архитектур применительно к системе и объекту управления:

    Бизнес-архитектура

    Архитектура программных систем

    Технологическая или инфраструктурная архитектура

    Информационная архитектура

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

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

    1. файл-серверная архитектура компьютерной сети, хранение данных на файловом сервере;

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

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

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

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

    1. данные как услуга;

      инфраструктура как услуга;

      программное обеспечение как услуга;

      платформа как услуга;

      рабочее место как услуга;

      всё как услуга.

Классификация информационных систем

    Системы электронной обработки данных (СОД), которые обеспечивают технологический процесс обработки данных.

    Информационные системы управления (ИСУ). Используются для решения различного вида управленческих задач, использующих данные базы данных (БД).

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

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

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

К фактографическим ИС относятся:

    СОД - системы обработки данных, в которых превалируют технологические процессы и процедуры обработки данных.

    АИС - автоматизированные ИС.

    АСУ - автоматизированные система управления объектом, в которых превалируют задачи для реализации функций управления.

К документографическим ИС относятся:

    ИПС - информационно-поисковые системы (АСНТИ - автоматизированная система научно-технической информации).

    ИСС - информационно-семантические системы на основе ИПЯ - информационно-поисковых языков (ЭС - экспертные системы).