Архитектура информационных систем. Часть 1. Учебное пособие
.pdfМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего образования
«ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
М.В. Рыбальченко
АРХИТЕКТУРА ИНФОРМАЦИОННЫХ СИСТЕМ
ЧАСТЬ 1
УЧЕБНОЕ ПОСОБИЕ
Таганрог Издательство Южного федерального университета
2015
УДК 681.518(075.8)
Печатается по решению редакционно-издательского совета Южного федерального университета (протокол №3 от 23 ноября 2015 г.)
Рецензенты:
доктор технических наук, профессор, зав. кафедрой прикладной математики и информационных технологий ТИУиЭ Карелин В.П.;
доктор технических наук, профессор кафедры дискретной математики и оптимизации ЮФУ, г. Таганрог, Глушань В.М.
Рыбальченко М.В. Архитектура информационных систем: учебное пособие. Ч.1.– Таганрог: Изд-во ЮФУ, 2015.– 92 с.
ISBN 978-5-9275-1765-7
В данной части учебного пособия рассматриваются основные понятия по архитектуре информационных систем (ИС), приведены классификация и базовые структуры ИС. Представлены стили проектирования и атрибуты качества ИС. Рассматриваются архитектуры вычислительных платформ ИС, архитектурные стили ИС, паттерны и фреймворки. Приведены основные принципы организации объектных распределённых систем.
Настоящее учебное пособие предназначено для студентов, обучающихся по направлению 09.03.02 «Информационные системы и технологии», а также может быть полезно студентам, обучающихся по другим направлениям, связанным с применением и разработкой информационных систем.
Табл. 12. Ил. 26. Библиогр.: 14 назв.
ISBN 978-5-9275-1765-7 |
ЮФУ, 2015 |
|
Рыбальченко М.В., 2015 |
Введение
В настоящее время разработано множество информационных систем (ИС), различающихся принципами построения, методами представления и обработки информации. Информационные системы и информационные технологии (ИТ) достигли достаточно высокого уровня сложности, требующего использования бизнес - оценки проектов таких систем, а не субъективных оценок заказчиков или разработчиков. Это, в свою очередь, обуславливает необходимость использования системного подхода для организации ИС по архитектурному признаку.
Само понятие «архитектура ИС» уже стало привычным, поскольку построение информационной системы, функционирующей эффективно, надежно и имеющей минимальную стоимость владения, является такой же сложной задачей, как проектирование
ипостроение современного здания.
1.Основные понятия
1.1. Информационные системы
Официальное определение понятия «информационная система» дается Федеральным законом Российской Федерации № 149-ФЗ от 27 июля 2006 г. «Об информации, информационных технологиях и о защите информации»: «Информационная система – совокупность содержащейся в базах данных информации и обеспечивающих ее обработку информационных технологий и технических средств».
Редакция английского журнала «Information Systems» даёт следующее определение информационных систем – «аппаратнопрограммные системы, которые поддерживают приложения с ин-
тенсивной обработкой данных (Data-Intensive Applications)».
Достаточно общая трактовка понятия ИС приводится в [1]: «ин- формационной системой называется комплекс, включающий вычислительное и коммуникационное оборудование, программное обеспечение, лингвистические средства и информационные ресурсы, а также системный персонал, обеспечивающий поддержку динамической информационной модели некоторой части реального
мира для удовлетворения информационных потребностей пользователей».
В узком смысле информационная система – программноаппаратная система, предназначенная для автоматизации целенаправленной деятельности конечных пользователей и обеспечивающая, в соответствии с заложенной в нее логикой обработки, возможность получения, модификации и хранения информации
[2].
1.2. Архитектура информационных систем
Архитектура (лат. architectura) – искусство и наука строить, проектировать здания и сооружения (включая их комплексы), а также сама совокупность зданий и сооружений, создающих пространственную среду для жизни и деятельности человека [3].
Известно множество определений понятия "архитектура ИС". Ниже приведены некоторые из этих определений:
архитектура ИС – концепция, определяющая модель, структуру, выполняемые функции и взаимосвязь компонентов информационной системы;
архитектура ИС – базовая организация системы, воплощенная в ее компонентах, их отношениях между собой и окружением, а также принципы, определяющие проектирование и развитие системы;
архитектура ИС – набор значимых решений по поводу организации системы программного обеспечения, набор структурных элементов и их интерфейсов, при помощи которых компонуется система вместе с их поведением, определяемым во взаимодействии между этими элементами, компоновка элементов в постепенно укрупняющиеся подсистемы, а также стиль архитектуры, который направляет эту организацию (элементы и их интерфейсы,
взаимодействие и компоновка).
Все определения архитектуры ИС могут быть разделены на два класса – «концептуальные» и «технологические».
Концептуально архитектура ИС – набор основных решений, неизменных при изменении бизнес-технологии в рамках бизнесвидения и оказывающих определяющее влияние на совокупную стоимость владения системой.
4
Совокупная стоимость владения системой включает плановые затраты на создание и эксплуатацию системы и стоимость рисков, а именно, бизнес-рисков и вероятностями технических рисков а также соответствием между ними. Рассмотрим ряд наиболее значимых типов рисков:
•риски проектирования при разработке системы;
•технические риски, которые реализуются в виде отказов, простоев, потерь данных;
•риски бизнес-потерь, возникающие при эксплуатацией системы (бизнес-риски). Они обусловлены, в свою очередь, техническими рисками. Например, отсутствие реакции или слишком большое время реакции на действия пользователя приводит к его отказу от использования данной системы;
•риски бизнес-потерь, связанные с многообразием бизнеспроцессов (так называемые неопределенности). Бизнес-процессы систематически изменяются, а это, в свою очередь, требует своевременного изменения и ИС. При этом бизнес какое-то время может функционировать неоптимально, что приводит к потерям. Кроме того, неизбежно возникают затраты за модификацию системы. Бизнес-риск может быть нейтрализован соответствующей организацией процесса и/или архитектурным решением.
Технологически архитектура обычно определяется следующими параметрами: назначением системы, составными частями системы
иих размещением, связями между частями системы, принципами взаимодействия составных частей.
Таким образом, технологически архитектура ИС – набор основных решений по выбору средств реализации, а именно, аппаратной платформы, операционной системы, телекоммуникационных средств, СУБД1, и т.д., влияющих на совокупную стоимость владения системой.
1.3. Уровни архитектуры информационных систем
Когда речь идёт об ИТ-сфере некоторой организации, используется понятие корпоративной архитектуры (enterprise architecture). При этом различают следующие уровни архитектуры:
бизнес-архитектура (Business Architecture);
1 Совокупность таких средств реализации называют инфраструктурой ИС.
5
ИТ-архитектура (Information Technology Architecture);
архитектура данных и знаний (Data Architecture, Knowledge Architecture);
архитектура приложений или архитектура программных средств (Application Architecture, Software Architecture),
архитектура аппаратных средств (Hardware Architecture). Под архитектурой ИС понимается объединение архитектур всех
рассмотренных уровней (см. рис.1).
Бизнес-архитектура (архитектура уровня бизнес-процессов) определяет бизнес-стратегии, основные бизнес-процессы, потоки управления и организацию предприятия. Не обязательно все бизнес - процессы реализуются средствами ИТ-технологий.
ИТ-архитектура обеспечивает достижение бизнес-целей, для чего предоставляет совокупность программно-аппаратных средств, на которых базируется информационная система организации (в том числе, серверы, сетевое оборудование, базы данных, промежуточное программное обеспечение и т.д.).
Бизнес-архитектура
ИТ-архитектура
Архитектура данных и знаний
Архитектура программных средств
Архитектура аппаратных средств
Рис. 1. Уровни архитектуры ИС
Архитектура данных и знаний определяет логические и физические средства хранения данных, знаний, а также средства управления ими. Архитектура данных и знаний поддерживается ИТархитектурой.
Архитектура программных средств определяется совокупно-
стью прикладных программ, т.е. программ, используемых для решения задач конечного пользователя. Архитектура прикладной программы (приложения) представляет собой описание данного приложения, в том числе его программных интерфейсов. Приложения, в свою очередь, используют предоставляемые ИТархитектурой сервисы.
Архитектура аппаратных средств описывает организацию ап-
паратного обеспечения ИС, в частности, таких компонентов, как
6
процессоры, память, накопители информации, периферийные устройства, сетевые средства.
Отдельные уровни архитектуры информационной системы могут совмещаться, например, архитектура данных может стать частью архитектуры приложения. Некоторые функции, общие для некоторого множества приложений, могут быть перенесены на уровень ИТ-архитектуры. Средства ИТ-архитектуры как правило используются для интеграции приложений в единую систему.
2.Классификация ИС
Всвязи с наличием большого количества известных типов ИС рассмотрим их классификацию. В качестве признаков классификации будем использовать функциональность ИС (решаемые проблемы) и особенности их реализации. Классификация ИС по их назначению и функциональности может быть проведена по нескольким признакам, приведенным на рис. 2 [4].
ИС
(назначение и функциональность)
Характер |
Функцио- |
Предметная |
Степень |
Масштаб- |
|
решаемых |
нальное на- |
автоматиза- |
ность |
||
область |
|||||
задач |
значение |
ции |
применения |
||
|
Рис. 2. Признаки классификация архитектур ИС по их назначению и функциональности
По характеру решаемых задач ИС могут быть разделены сле-
дующим образом [4]:
системы для решения трудоёмких задач преимущественно вычислительного характера;
информационно-справочные (информационно-поисковые) ИС, обеспечивающие поиск и выдачу информации пользователям;
7
ИС, обеспечивающие предоставление сервисов, например, доступа к данным и вычислительным ресурсам, доступа в Интернет, хранение данных и т. д.;
системы поддержки принятия решений;
коммуникационные системы.
По функциональному назначению можно выделить следующие виды ИС [4]:
информационно-управляющие системы (Management Information Systems) – обеспечивают выдачу обобщённых данных, обеспечивающих поддержку принятия решений пользователем;
системы мониторинга и управления ресурсами (Resource Allocation and Tracking Systems) – позволяют контролиро-
вать и изменять состояние системы;
управляющие системы (Process Control Systems) – обеспе-
чивают отслеживание и управление параметрами системы;
системы управления производством (Manufacturing Systems) – ориентированны на поддержку производственных процессов;
системы управления доступом (Access Control Systems) – обеспечивают контроль доступа к различным объектам и
ресурсам.
При этом реальные ИС зачастую являются композицией указанных выше видов ИС. Очевидно, что помимо рассмотренных видов ИС по их функциональному назначению могут быть выделены и другие виды.
Обычно ИС ориентированы на использование в определённой предметной области. В настоящее время ИС используются практически во всех областях, поэтому приведём лишь ряд предметных областей, в которых ИС широко используются:
управление организацией (предприятием)– ИС управления организацией;
торговля – торговые ИС;
телекоммуникации – телекоммуникационные системы обеспечивают функционирование систем передачи данных;
8
геоинформатика – геоинформационные системы осуществляют сбор, хранение, анализ и визуализацию пространственных данных;
управление объектами – встроенные (бортовые) системы управления объектами, например, атомными станциями, самолетами, кораблями (подводными лодками);
медицина – медицинские информационные системы;
образование – образовательные ИС, предназначенные для обучения, тестирования.
По степени автоматизации выделяют автоматизированные ИС (для функционирования требуется участие человека) и автоматические ИС (не требуют участия человека-оператора).
По масштабности применения различают следующие виды ИС:
персональные – предназначенные для личного использования одним человеком;
коллективные – предназначенные для совместного использования несколькими пользователями, например, в пределах одного подразделения;
корпоративные – предназначенные для использования в рамках отдельной организации;
глобальные – ориентированные на использование в мас-
штабе некоторого множества организаций. Классификация ИС по особенностям реализации может быть
проведена по нескольким признакам, приведенным на рис. 3 и построена на основе классификации, приведенной в [4]. Основными признаками классификации являются программная архитектура и архитектура аппаратных средств.
На уровне программной архитектуры выделены следующие признаки: используемый архитектурный стиль и способ реализации модулей.
Различают следующие пять основных архитектурных стилей: потоки данных, независимые компоненты, вызов с возвратом, централизованные данные, виртуальные машины [4]. Архитектурные стили будут подробнее описаны в разд. 4.1.
По реализации модульности можно выделить одномодульные и многомодульные приложения. Важнейшими особенностями мно-
9
гомодульных приложений являются вид модулей и способ их интеграции в единую систему.
Модули могут быть представлены в приложении в виде объекта или компонента, реализованы в виде Web-службы, грид-службы, облачного сервиса или агента. Для интеграции модулей в систему могут быть использованы: сокеты, очереди сообщений, вызов удаленных процедур (методов), бизнес-процессы, разделяемые файлы и базы данных, межагентные коммуникации [4].
ИС (реализация)
Программная архитектура |
Архитектура аппаратных средств |
|
Архитектур- |
Реализация |
|
ный стиль |
модульности |
|
|
Одномодульное |
Многомодульное |
|
приложение |
приложение |
Вид |
Интеграция |
|
модулей |
||
модулей |
||
|
Рис. 3. Классификация архитектур ИС по особенностям реализации
По архитектуре аппаратных средств можно выделить ИС:
реализованные на одной машине;
реализованные на нескольких машинах (распределённые);
представленные в виде сетевого ресурса.
3. Базовые структуры ИС
Рассмотрим базовые структуры ИС, выделенных по признаку назначения и функциональности (рис. 2).
10
