Тема 4 Архитектура предприятия: Элементы архитектуры предприятия

Предметные области архитектуры (1)

 

Предметные области архитектуры (2)

Области, входящие в понятие АП

Модель стратегии и архитектуры IT

 

Элементы IT-стратегии(1)

 

Элементы IT-стратегии(2)

 

Принципы АП

 

 

 

Примеры принципов в области IT-инфраструктуры

 

Примеры принципов в области IT-инфраструктуры

Примеры принципов в области управления данными:

 

Примеры принципов в области прикладных систем

 

 

Примеры принципов в области управления и контроля

 

 

Другие возможные принципы

 

Требование к разработке стандартов IT

 

 

Руководства в части IT

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

Качественные модели

Примерами качественных и описательных моделей являются:

 

Количественные модели

Примерами количественных моделей могут служить:

 

Примеры моделей с разными уровнями абстракции

 

Домены Бизнес-архитектура Архитектура информации Архитектура приложений Технологическая архитектура
Перспективы (уровни абстракции)        
Контекст ("планировщик") · Классы бизнес-процессов (группа процессов, имеющих много общих активностей) · Список бизнес-процессов · Список бизнес-сущностей – объектов, важных для бизнеса ("клиент", счет") · Связи между сущностями (бизнес-объектами) · Список бизнес-процессов · Список мест расположения бизнеса
Концептуальный уровень("владелец" предприятия) · Сценарии использования (Use case) · Модели бизнес-процессов · Семантические модели · Модели связей · Модели "сущность-связи" · Разбиение процессов на сервисы · Модели бизнес-логистики · Операционные (нефункциональные) требования · Архитектура расположения элементов центра обработки данных
Логический ("проектировщик") · Модели процессов (потоков работ) · Модели бизнес-событий · Модель расположения процессов · Определения ролей · Логические модели данных · Схемы данных · Спецификации документов · Определения сервисов · Взаимосвязи между сервисами · Модели классов · Логические типы серверов: БД, почтовые, транзакционные, … · Географическое распределение серверов · Хостируемое ПО
Физический ("разработчик") · Спецификации процессов · Модели интеграции процессов · Описание ручных процедур · Стандарты качества · Физические модели данных · Схемы БД · Код доступа к данным · Справочники данных · Код программ · Описания интерфейсов (WSDL) · Расписания процессов · Код workflow · Физические серверы · Топология фрагментов сети · Мапирование продуктов на сервисы и приложения

 

Пример(1)

 

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

Рассмотрим вначале концептуальный уровень абстракции. Динамическая модель для этого уровня должна отражать взаимодействия между клиентом и магазином. При этом сама проектируемая система выступает как один из акторов процесса в качестве "черного ящика". Клиент и сотрудник(и) магазина выступают как внешние по отношению к системе акторы. Весь процесс рассматривается с точки зрения клиента и сотрудника. Клиент осуществляет заказ через Интернет. Оплата выполняется с помощью кредитной карты. Заказ посылается по указанному адресу. Уведомление о выполнении заказа посылается по электронной почте. Модель на самом высоком уровне описывает бизнес-процессы продавца и содержит простой сценарий использования (use case), описывающий взаимодействия между системой и акторами. Рисунок 5.5 иллюстрирует такую концептуальную динамическую модель и содержит простую нотацию сценария использования для этого бизнес-взаимодействия.

 

Пример1.(2) Динамическая модель закупки

 

 

 

Пример1.(3)Статистическая модель закупки

 

 

 

Элементы бизнес-архитектуры

 

 

Контекст бизнес-архитектуры

 

 

 

Построение высокоуровневой модели бизнеса

 

Шаг 1. Идентификация критически важных для предприятия процессов (обычно не более восьми).

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

Желательно, чтобы рекомендуемое число таких процессов, не превышало "волшебного числа" 8 в соответствии с известным принципом: "семь плюс-минус два" объекта. При необходимости схожие бизнес-процессы могут быть объединены в группы или классы.

Шаг 2. Отследить связи между этими процессами и бизнес-стратегиями, движущими силами и критически важными факторами успеха. Это можно сделать с помощью матрицы взаимных связей. Для каждого элемента этой матрицы определяется качественная оценка по принципу "важно" – "неважно" или по некоторой условной шкале. Например, можно использовать так называемую шкалу 9-3-1, в соответствии с которой 9 обозначает сильную взаимосвязь, 3 – промежуточную, 1 – слабую.

 

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

 

Шаг 4. Для каждого шага процессов, идентифицированных на этапе 3, определить ответственных за выполнение шага. Это может быть функциональное подразделение внутри организации, партнер, клиент, внешний регулирующий орган.

 

Шаг 5. Идентифицировать и документировать основные категории информационных объектов (опять же рекомендуется не более восьми).

 

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

 

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

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

 

Пример потока данных на предприятии

 

 

Задачи, решаемые в ходе разработки архитектуры информации

 

 

Процессы управления информацией

Общая архитектура информации

 

 

 

 

Результаты разработки архитектуры информации

 

 

Состав моделей

 

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

 

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

 

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

 

Архитектура приложений(1)

 

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

 

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

 

В Архитектуре приложений, как правило, выделяют две основные области [4.3]:

 

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

 

Архитектура приложений(2)

 

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

 

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

 

 

 

 

 

Типы приложений

 

Классификация приложений с точки зрения их типа

 

 

Процессы с большим количеством транзакций Операции в реальном времени Аналитические процессы и бизнес-аналитика Совместная работа Корпоративные (обслуживающие)  
Стратегические потребности · Предоставление услуг · Время реакции системы · Способность дать объяснение · Поддержка принятия решения · Распространение знаний · Скорость · Инновации · Надежность · Низкая стоимость с точки зрения ИТ
Бизнес-требования · Обслуживание клиентов · Уменьшение затрат · Работа 24*7 · Целостность данных · Экономичность и безопасность · Работа 24*7*365 · Повышение эффективности и производительности, наглядность представления информации · Скорость выпуска услуг · Повторное использование знаний · Экономичность · Улучшения в процессах
Отличительные характеристики · Низкая стоимость (на одну транзакцию) · Надежность · Масштабируемость · Производительность · Резервирование · Сканирование и фильтрация потока данных · Приоритезация запросов · Надежность · Публикация и подписка на данные · Механизм аналитики · Мощность обработки · Объединение данных · Простота использования · Надежность · Высокая пропускная способность · Обмен данными "по горизонтали" · Стандартные процессы · Кандидаты на аутсорсинг
Интегрирующие технологии · Системы интеграции корпоративных приложений · Специально разработанный программный код · Хранилища данных · Совместно используемые данные и обмен данными · Стандартные интерфейсы (API), XML

 

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

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

 

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

 

Компоненты технологической архитектуры(1)

 

 

Компоненты технологической архитектуры(2)

 

 

 

Требование к технологической архитектуре

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

 

Операционные (или эксплуатационные) требования к программной системе специфицируют такие аспекты, как надежность, управляемость, производительность, безопасность, совместимость. И это далеко не полный список. Примерами операционных требований являются возможность доступа к системе только авторизованных пользователей, уровень доступности прикладной системы 99,99% времени и т.д.

 

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

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

 

 

 

Стандартизация АП

 

Для наших задач, связанных с разработкой архитектуры предприятия, наибольший интерес будут представлять такие "рамочные" стандарты, как уже упоминавшийся ISO 15704, а также ISO 15288 и, частично, ISO 12207. Помимо указанных, при разработке архитектуры предприятия достаточно широко используется порядка 30-ти дополнительных "поддерживающих" стандартов системной и программной инженерии. Например, стандарт ISO 14258 определяет концепции и правила для моделирования Предприятия и т.п. Эти стандарты являются рамочными (Framework) в том плане, что они задают общие требования к реализации процессов, связанных с разработкой и поддержкой жизненного цикла систем. Они обычно используются как методологическая основа для организации этих процессов с необходимой конкретизацией для каждого данного предприятия или области деятельности.

 

Если стандарт ISO 12207 был разработан для определения жизненного цикла только программного обеспечения, то ISO/IEC 15288 определяет жизненный цикл "более общей" системы. В применении к нашему контексту такой системой может являться совокупность информационных систем предприятия в целом.

Дерево процессов согласно стандарту ISO 15288