ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.12.2023
Просмотров: 156
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
КАЗАНСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ
ИНСТИТУТ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ И
ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Кафедра информационных систем
А.Ф. ГАЛИМЯНОВ, Ф.А. ГАЛИМЯНОВ
АРХИТЕКТУРА ИНФОРМАЦИОННЫХ
СИСТЕМ
Учебно-методическое пособие
Казань – 2019
2
УДК 004.032.26
Принято на заседании кафедры информационных систем
Протокол № 8 от 21 марта 2019 года
Рецензенты:
кандидат физико-математических наук, доцент кафедры теории функций и приближений КФУ Ю.Р. Агачев; кандидат технических наук, с.н.с. научно-исследовательского института АН РТ «Прикладная семиотика» А.Р. Гатиятуллин
Галимянов А.Ф., Галимянов Ф.А.
Архитектура информационных систем /
А. Ф. Галимянов, Ф. А.
Галимянов. – Казань: Казан. ун-т, 2019. – 117 с.
Учебное пособие посвящено изложению основ архитектуры информационных систем.
Адресовано, в первую очередь, студентам-бакалаврам 2 курса направления 09.03.02 – «Информационные системы и технологии».
© Галимянов А.Ф.,Галимянов Ф.А., 2019
© Казанский университет, 2019
3
Оглавление
1. АРХИТЕКТУРА СИСТЕМЫ .............................................................................................................................. 5
1.1 Виды архитектуры .............................................................................................................................. 6
1.2 Типы групп описаний архитектуры .............................................................................................. 10
1.3. Применение архитектурных описаний ........................................................................................ 11 2. ИНФОРМАЦИОННАЯ СИСТЕМА ................................................................................................................ 12 3. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ АРХИТЕКТУРЫ ИНФОРМАЦИОННЫХ СИСТЕМ ..................... 12
3.1. Информационная система как объект архитектуры ................................................................. 15
3.2. Архитектура и проектирование информационных систем ...................................................... 17 4. МЕТОДОЛОГИЯ МОДЕЛИРОВАНИЯ ПРОЦЕССОВ .................................................................................... 27
4.1. Семейство стандартов структурного моделирования IDEF .................................................... 28
4.2. Функциональное моделирование бизнес-процессов в IDEF0 .................................................. 30
4.3. Синтаксис графического языка IDEF0 ........................................................................................ 31
4.4. Семантика языка IDEF0 ................................................................................................................. 33
4.5. Стандарт IDEFlx ............................................................................................................................... 37
4.6. Методология IDEF2. Динамическое моделирование системы ................................................ 37
4.7. Основные определения сетей Петри ............................................................................................. 38
4.8. Пример построения сетей Петри ................................................................................................... 40
4.9. Методология документирования процессов IDEF3 ................................................................... 41
4.10. Основные элементы IDEF3-диаграмм ....................................................................................... 42
4.11. Декомпозиция описания процесса .............................................................................................. 44
4.12. Диаграммы потоков данных (DFD) ............................................................................................ 45 5. ПАТТЕРНЫ В АРХИТЕКТУРЕ ИНФОРМАЦИОННЫХ СИСТЕМ .................................................................... 49 6. ФРЕЙМВОРКИ ............................................................................................................................................. 55 7. СЕРВИСНО-ОРИЕНТИРОВАННЫЕ АРХИТЕКТУРЫ (СОА) И WEB-СЕРВИСЫ ИНФОРМАЦИОННЫХ
СИСТЕМ ........................................................................................................................................................... 61
7.1. Язык XML при работе с Web-сервисами ..................................................................................... 63
7.2. Элементы XML-документа ............................................................................................................. 65
7.3. Атрибуты XML-документа ............................................................................................................. 66
7.4. Текстовые данные XML-документа ............................................................................................. 68
7.5. Пространства имен XML-документа ............................................................................................ 74
7.6. Протокол XML-RPC. ....................................................................................................................... 77
7.7. Протокол SOAP. ................................................................................................................................ 79
7.8. WSDL-описание
................................................................................................................................ 82
4 8. ОБЩИЕ ПРИНЦИПЫ ОРГАНИЗАЦИИ ВЗАИМОДЕЙСТВИЙ В ИНФОРМАЦИОННЫХ СИСТЕМАХ ........... 86 9. ИНТЕГРАЦИЯ ПРИЛОЖЕНИЙ ..................................................................................................................... 92
9.1. Порталы и портлеты ........................................................................................................................ 96
9.2. Портлеты .......................................................................................................................................... 101
СПИСОК ЛИТЕРАТУРЫ .................................................................................................................................. 115
5
1. АРХИТЕКТУРА СИСТЕМЫ
По определению в [18], архитектура системы — принципиальная
организация системы, воплощенная в её элементах, их взаимоотношениях друг
с другом и со средой, а также принципы, направляющие её проектирование и
эволюцию. Понятие архитектуры в значительной мере субъективно и имеет множество противоречивых толкований; в лучшем случае оно отображает общую точку зрения команды разработчиков на результаты проектирования системы. Для более подробного описания принципов построения архитектуры стандарт ISO/IEC/IEEE 42010-2011 вводит следующие понятия[8]:2.
Архитектурная группа описаний (англ. architectural view) — представление системы в целом с точки зрения связанного набора интересов.
Каждая группа описаний относится к одному или более стейкхолдеру. Термин
«группа описаний» употребляется для выражения архитектуры системы при некотором методе описания.
Архитектурное описание (англ. architectural description) — рабочий продукт, использующийся для выражения архитектуры.
Архитектурный подход (англ. architectural framework) — соглашения, принципы и практики для описания архитектуры, установленные для конкретной области применения и/или конкретным сообществом стейкхолдеров.
Архитектурный метод описания (англ. architectural viewpoint) — спецификация соглашений для конструирования и применения группы описаний. Шаблон или образец, по которому разрабатываются отдельные группы описаний посредством установления назначений и аудитории для группы описаний, а также приемы их создания и анализа. Метод описания устанавливает соглашения, по которым группа описаний создается, отображается и анализируется. Тем самым метод описания определяет языки
(включая нотации, описания или типы продуктов), применяемые для
6 определения группы описаний, а также все связанные методы моделирования или приемы анализа, применяемые к данным представлениям группы описаний. Данные языки и приемы применяются для получения результатов, имеющих отношение к адресуемым интересам.
Вид модели (англ. model kind) — соглашения по средствам моделирования (например, сети Петри, диаграммы классов, организационные диаграммы и т. д.).
1.1 Виды архитектуры
Свод знаний по системной инженерии (SEBoK) делит архитектуру на логическую и физическую[12]:269.
Логическая архитектура поддерживает функционирование системы на протяжении всего её жизненного цикла на логическом уровне. Она состоит из набора связанных технических концепций и принципов. Логическая архитектура представляется с помощью методов, соответствующих тематическим группам описаний, и как минимум, включает в себя функциональную архитектуру, поведенческую архитектуру и временную архитектуру.
Функциональная архитектура представляет собой набор функций и их подфункций, определяющих преобразования, осуществляемые системой при выполнении своего назначения.
Поведенческая архитектура — соглашение о функциях и их подфункциях, а также интерфейсах (входы и выходы), которые определяют последовательность выполнения, условия для управления или потока данных, уровень производительности, необходимый для удовлетворения системных требований. Поведенческая архитектура может быть описана как совокупность взаимосвязанных сценариев, функций и/или эксплуатационных режимов.
Временная архитектура является классификацией функций системы, которая получена в соответствии с уровнем частоты её исполнения. Временная архитектура включает в себя определение синхронных и асинхронных аспектов
7 функций. Мониторинг решений, который происходит внутри системы, следует той же временной классификации [12]:287.
Цель проектирования физической архитектуры заключается в создании физического, конкретного решения, которое согласовано с логической архитектурой и удовлетворяет установленным системным требованиям.
После того, как логическая архитектура определена, должны быть идентифицированы конкретные физические элементы, которые поддерживают функциональные, поведенческие, и временные свойства, а также ожидаемые свойства системы, полученные из нефункциональных требований к системе.
Физическая архитектура является систематизацией физических элементов (элементов системы и физических интерфейсов), которые реализуют спроектированные решения для продукта, услуги или предприятия. Она предназначена для удовлетворения требований к системе и элементам логической архитектуры и реализуется через технологические элементы системы. Системные требования распределяются как на логическую, так и физическую архитектуру. Глобальная архитектура системы оценивается с помощью системного анализа и, после выполнения всех требований, становится основой для реализации системы.
Архитектура может быть зафиксирована с помощью полного архитектурного описания (АО) (см. рисунок). Стандарт ISO/IEC/IEEE 42010-
2011 предписывает различать концептуальную архитектуру системы и одно из описаний данной архитектуры, являющееся конкретным продуктом или артефактом.
В сложных системах АО может разрабатываться не только для системы в целом, но и для компонентов системы. Два разных концептуальных АО могут включать группы описаний, которые будут соответствовать одному и тому же методу описания. Хотя системы, описываемые данными двумя группами описаний, будут соотноситься как целое и часть, это не пример множества групп описаний, соответствующих одному методу. Эти АО считаются
8 отдельными, даже хотя они связаны через системы, которые они описывают[8]:3.
Рис 1. Концептуальная схема архитектурного описания (ISO/IEC 42010)
Концептуальный подход определяет термины и понятия, относящиеся к содержанию и применению АО. На рисунке изображены основные понятия и их взаимосвязи. Все понятия определены в контексте архитектуры определенной системы и соответствующего архитектурного описания. Не нужно предполагать, что у системы существует лишь одна архитектура или что эта архитектура изображается лишь одним архитектурным описанием.
На рисунке прямоугольники изображают классы сущностей.
Линии, соединяющие прямоугольники, изображают связи между сущностями. Связь включает две роли (по одной в каждом направлении).
Каждая роль может по желанию быть именована меткой. Роль, направленная от
9
A к B, [помечена] ближе к B, и наоборот. Например, роли между «системой» и
«средой» могут читаться: «„система“ живёт в „среде“» и «„среда“ влияет на
„систему“». На рисунке роли обладают арностью 1:1, если не указано иное.
Роль может обладать множественной арностью, например, роль, обозначенная как «1..*», применяется для обозначения многих, как в связях «один ко многим» или «многие к одному». Ромб (на конце линии связи) обозначает отношение части целого. Например, «группы описаний» являются частью
«архитектурного описания». Эта нотация заимствована из UML.
Рассмотрим каждое составляющее концептуальной схемы подробнее. В контексте рассматриваемой схемы система распространяется на отдельные прикладные программные средства, системы в традиционном смысле, подсистемы, системы систем, продукты, семейства продукции, организации в целом и другие интересующие совокупности.
Система обитает в некоторой среде. Среда некоторой системы может влиять на данную систему. Её среда, или контекст, определяет обстановку и обстоятельства разработки, эксплуатации, политических и иных влияний на данную систему. Такая среда может включать другие системы, взаимодействующие с целевой системой, как напрямую через интерфейсы, так и косвенно иными путями. Такая среда определяет границы, определяющие предмет целевой системы по отношению к другим системам.
У каждой системы есть один или более стейкхолдеров. Каждый стейкхолдер обычно принимает участие в системе, или имеет интересы к данной системе. Интересы предполагают учёт таких аспектов системы как производительность, надежность, безопасность, распределённость и способность к эволюции.
Любая система существует для реализации в своей среде одной или более миссий.
В концептуальном подходе архитектурное описание организовано как одна или более архитектурных групп описаний.
10
Архитектурное описание выбирает для применения один или более подходящих методов описания. Выбор методов описания обычно основывается на соображениях и интересах заинтересованных сторон, которым адресовано это АО. Определение метода описания может возникать совместно с АО, а может быть определено отдельно. Метод описания, определенный отдельно от
АО называется библиотечным методом описания.
Группа описаний может состоять из одного или более архитектурных описаний. Каждое такое архитектурное описание разрабатывается с применением установленных соответствующим ему методов архитектурного описания. Архитектурное описание может входить более чем в одну группу описаний[8]:4-6.
1.2 Типы групп описаний архитектуры
Существует три типа группы описаний: функциональные, логические и физические. Каждая из групп предназначена для описания собственных точек зрения и соответствующего им уровня сложности[10]:224.
Функциональная группа описаний обеспечивает представление с точки зрения пользователей или операторов, которое включает продукты, относящиеся к фазам, сценариям и потокам задач операционной системы.
Информационный поток может быть рассмотрен с пользовательского ракурса, также описываются и пользовательские интерфейсы. Примером продуктов, которые могут быть включены в это описание, будут функциональные данные или графики, сценарное описание (включая использование кейсов), блок-схемы задач, организационные диаграммы и схемы информационных потоков[10]:224.
Логическая группа описаний обеспечивает представление с точки зрения руководителя или заказчика. Логическое представление включает продукты, которые определяют системные границы с её окружением и функциональные интерфейсы с внешними системами, также основные функции и поведение системы, потоки информации, внутренние и внешние наборы данных, внутренних и внешних пользователей, и внутренние функциональные интерфейсы. Примером продуктов могут быть блочные диаграммы
11 функциональных потоков (FFBD), контекстные диаграммы, N2-диаграммы,
IDEF0-диаграммы, данные поточных диаграмм и различных стейкхолдеров — характерные продукты (в том числе бизнес-зависимые продукты)[10]:224.
Физическая группа описаний обеспечивает представление с точки зрения проектировщиков. Включает в себя:
продукты, которые определяют физические границы системы;
физические компоненты системы и то, как они взаимодействуют и влияют друг на друга;
внутренние базы данных и структуры данных;
инфраструктуру информационных технологий (ИТ) системы;
внешнюю ИТ-инфраструктуру, с которой система взаимодействует;
требования, необходимые для развития системы.
Продукт может включать в себя физические блок-схемы на довольно высоком уровне детализации, топологии базы данных, интерфейс управления документами и стандарты. Все из трёх типов групп должны присутствовать в каждом описании архитектуры[10]:224.
1.3. Применение архитектурных описаний
Архитектурные описания в ходе жизненного цикла могут различно применяться всеми стейкхолдерами. Такие применения включают, но не ограничиваются, следующим:
анализ альтернативных архитектур
деловое планирование перехода от унаследованной архитектуры к новой;
коммуникация организаций, участвующих в разработке, производстве, установке, эксплуатации и обслуживании систем;
коммуникация между заказчиками и разработчиками как часть подготовки соглашения;
критерии для сертификации соответствия реализации данной архитектуре;
12
документирование разработки и обслуживания, включая подготовку материалов для хранилищ с целью повторного использования и учебных материалов;
исходные данные для последующих мероприятий по системному проектированию и разработке;
исходные материалы для инструментов создания и анализа системы;
эксплуатационная и инфраструктурная поддержка; управление конфигурацией и ремонт; перепроектирование и обслуживание систем, подсистем и компонентов;
поддержка планирования и финансирования[8]:9.