Сайт о телевидении

Сайт о телевидении

» » Структура и архитектура информационной системы. Архитектура ис, типы архитектур

Структура и архитектура информационной системы. Архитектура ис, типы архитектур

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

Архитектура информационной системы предусматривает наличие трех компонентов:

1.Информационные технологии

2.Функциональные подсистемы

3.Управление информационными системами

Различают следующие виды архитектур: файл-сервер; клиент-сервер; многоуровневая; архитектура на базе хранилища данных; Internet/Intranet.

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

Архитектура клиент-сервер. Архитектура клиент-сервер предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещения их там, где они будут функционировать наиболее эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL (Structured Query Language) и выполняющих поиск, сортировку и агрегирование информации. Отличительная черта серверов БД – наличие справочника данных, в котором записана структура БД, ограничения целостности данных, форматы и даже серверные процедуры обработки данных по вызову или по событиям в программе. Объектами разработки в таких приложениях помимо диалога и логики обработки являются, прежде всего, реляционная модель данных и связанный с ней набор SQL-операторов для типовых запросов к базе данных. Большинство конфигураций клиент-сервер использует двухуровневую модель, в которой клиент обращается к услугам сервера. Предполагается, что диалоговые компоненты PS и PL размещаются на клиенте, что позволяет обеспечить графический интерфейс. Компоненты управления данными DS и FS размещаются на сервере, а диалог (PS, PL), логика BL и DL – на клиенте. Двухуровневое определение архитектуры клиент-сервер использует именно этот вариант: приложение работает у клиента, СУБД – на сервере. Поскольку эта схема предъявляет наименьшие требования к серверу, она обладает наилучшей масштабируемостью. Однако сложные приложения, вызывающие большое взаимодействие с БД, могут жестко загрузить как клиента, так и сеть. Результаты SQL-запроса должны вернуться клиенту для обработки, потому что там находится логика принятия решения. Такая схема приводит к дополнительному усложнению администрирования приложений, разбросанных по различным клиентским узлам. Для сокращения нагрузки на сеть и упрощения администрирования приложений компонент BL можно разместить на сервере. При этом вся логика принятия реше­ний оформляется в виде хранимых процедур и выполняется на сервере БД. Хранимая процедура – процедура с операторами SQL для доступа к БД, вызываемая по имени с передачей требуемых параметров и выполняемая на сервере БД. Хранимые процедуры могут компилироваться, что повышает скорость их выполнения и сокращает нагрузку на сервер. Создание архитектуры клиент-сервер возможно и на основе многотерминальной системы. В этом случае в многозадачной среде сервера приложений выполняются программы пользователей, а клиентские узлы вырождены и представлены терминалами. Подобная схема информационной системы характерна для UNIX.



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

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



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

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

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


4. Этапы развития и базовые стандарты ИС .

Основные этапы развития информационных систем:

1950-1960 гг.- формирование бумажных расчетных документов. Функции: обработка расчетных документов на электромеханических и бухгалтерских машинах. Цель: повышение скорости обработки документов, упрощение процедуры обработки счетов и расчета зарплаты

1960-1970 гг. - формирование отчетов. Функции: управление производственной информацией. Цель: ускорение процесса подготовки отчетности

1970-1980 гг.- управленческий контроль производства и реализации. Функции: поддержка принятия решений. Цель: выработка оптимального решения

1980 гг. - настоящее время управление стратегией развития предприятия. Функции: формирование информации для принятия стратегических решений. Цель: поддержка управления бизнес-стратегией

Исходным стандартом систем управления предприятием стал стандарт MRP (Material Requirements Planning), появившейся в 70-х годах. Он включает в себя планирование материалов для производства.

MRP системы базируются на планировании материалов для удовлетворения потребностей производства и включают непосредственно функциональность MRP , функциональность по описанию и планированию загрузки производственных мощностей CRP (Capacity Resources Planning) и имеют своей целью создание оптимальных условий для реализации производственного плана выпуска продукции. Основная идея MRP систем состоит в том, что любая учетная единица материалов или комплектующих, необходимых для производства изделия, должна быть в наличии в нужное время и в нужном количестве. Основным преимуществом MRP систем является формирование последовательности производственных операций с материалами и комплектующими, обеспечивающей своевременное изготовление узлов (полуфабрикатов) для реализации основного производственного плана по выпуску готовой продукции.

Следующим стандартом был MRP II (Manufacturing Resource Planning), позволяющий планировать все производственные ресурсы предприятия (сырьё, материалы, оборудование и т.д.).

ERP система в свою очередь является дальнейшим развитием системы MRP II и включает в себя планирование ресурсов предприятия для всех основных видов деятельности.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Плюсы:

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

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

Минусы:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В любой информационной системе можно выделить необходимые функциональные компоненты, которые помогают понять ограничения различных архитектур информационных систем (таблица 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.

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

Виды архитектуры информационной системы

Любая информационная система (ИС) включает в себя три компонента:

  • Управление данными;
  • Бизнес-логику;
  • Пользовательский интерфейс.

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

Однако, эти три компонента в разных ИС взаимодействуют друг с другом различными способами.

Определение 1

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

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

  • Локальная;
  • Файл-серверная;
  • Клиент-серверная;
  • Трехслойная.

Локальные информационные системы

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

Файл-серверная архитектура

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

Пример 1

Предположим, что в базе данных на сервере хранится список сотрудников крупного предприятия. На предприятии 1500 сотрудников и 10 подразделений. Пользователю нужно получить число сотрудников, работающих в каждом подразделении. Для решения этой задачи пользователь должен запросить данные всех 1500 сотрудников с сервера по сети, после чего на пользовательском компьютере выполнится процедура, которая осуществит подсчет сотрудников в каждом подразделении. Результатом процедуры будет 10 строк. Таким образом, чтобы получить 10 строк придется передать по сети 1500 строк.

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

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

Клиент-серверная архитектура

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

Пример 2

Рассмотрим задачу из примера 1 в условиях клиент-серверной архитектуры. Пользователь отправит на сервер запрос, который запустит процедуру. Процедура выполнится непосредственно на сервере. Она подсчитает количество сотрудников в каждом подразделении и отправит полученные 10 строк по сети на клиентский компьютер. Таким образом, произойдет существенная экономия трафика: вместо 1500 строк будет передано по сети всего 10.

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

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

Трехуровневая архитектура

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

Определение 2

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

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

СОДЕРЖАНИЕ КУРСА Основы информационных систем. Классификация архитектур информационных систем. Специализированные подсистемы (СУБД и т.д.). Распределенные информационные системы. Архитектуры веб-приложений. Сервис-ориентированная архитектура (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 ДВУХУРОВНЕВАЯ АРХИТЕКТУРА «КЛИЕНТ-СЕРВЕР» Достоинства: возможность распределить функции вычислительной системы между несколькими независимыми компьютерами все данные хранятся на защищенном сервере поддержка многопользовательской работы гарантия целостности данных Недостатки: неработоспособность сервера может сделать неработоспособной всю вычислительную сеть сложное администрирование высокая стоимость оборудования бизнес логика приложений осталась в клиентском ПО


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