Базовые понятия языка - элементы и отношения




ВВЕДЕНИЕ

Проект создания ArchiMate

Язык ArchiMate был разработан в Нидерландах в рамках исследовательского проекта, возглавляемого Telematica Instituut1, в сотрудничестве с рядом организаций и университетов. Финансирование осуществлялось голландским правительством, банком ABN AMRO, пенсионным фондом Stichting Pensioenfonds ABP и Centrum voor Wiskunde en Informatica2. После завершения проекта язык ArchiMate был опробован и использован в таможенной и налоговой администрации Нидерландов, ABN AMRO и ABP Pension Fund

В 2008 году право собственности и дальнейшего развития ArchiMate было передано одной из ведущих организаций по разработке открытых и независимых от поставщиков ИТ-стандартов - консорциуму The Open Group, активно развивающего стандарт архитектуры предприятия TOGAF 3. В феврале 2009 года в качестве технического стандарта была опубликована первая версия языка The ArchiMate 1.0 Specification. В 2012 году вышла вторая версия The ArchiMate 2.0 Specification, а также была введена сертификационная программа, которая включает сертификацию специалистов, аккредитацию обучающих курсов и сертификацию программных средств, поддерживающих стандарт языка ArchiMate. Сейчас действует модификация второй версии стандарта The ArchiMate 2.1 Specification, опубликованная в 2013 году . О ней и пойдет речь в статье4.


Исходные положения при создании языка

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

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

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

- послойное строение языка - заимствование из архитектурных фреймворков точки зрения на предприятие как на систему различных систем, образующих слои (уровни) представления предприятия;

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

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

- язык уровня предприятия - акцент на более крупный уровень детализации, чем в языках, используемых для моделирования на более низких уровнях (например, UML - для моделирования приложений, BPMN - моделирование бизнес-процессов);

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

- прагматичность

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

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

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

Базовые понятия языка - элементы и отношения

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

Элементы. Элементы в языке различаются по трем признакам, или аспектам (рис. 1) :

Рис. 1. Метамодель - основные понятия языка.

- структурный/поведенческий;

- внешний/внутренний взгляд на систему;

- индивидуальный/коллективный.

Первый аспект разделяет элементы языка на три типа: активный структурный элемент, пассивный структурный элемент и элемент поведения.

Активный структурный элемент (active structure element) определяется как некая сущность, которая способна выполнять определенные действия. Это могут быть бизнес-исполнители, компоненты приложений или устройства, которые реально исполняют те или иные действия.

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

Элемент поведения (behavior element) определяется как некоторая единица действия, выполняемая одним или несколькими активными структурными элементами.

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

Пример 1. Использование элементов «бизнес-исполнитель», «бизнес-роль», «бизнес-процесс» и «бизнес-сервис».

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

Рис. 2. Пример использования элементов «бизнес-исполнитель», «бизнес-роль», «бизнес-процесс» и «бизнес-сервис».

Второй аспект различает внешний и внутренний взгляды на систему, и на этой основе вводятся понятия «сервис» и «интерфейс» (рис. 1.).

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

Интерфейс определяется как точка доступа, в которой сервис становится доступным внешнему окружению. Интерфейс относится к активным структурным элементам.

Сервисы являются основными связующими звеньями между различными слоями. Например, приложение обеспечивает сервисы для слоя бизнес-процессов и, в свою очередь, использует сервисы инфраструктурного слоя. Исходя из этого, различают внутренние и внешние сервисы. Внутренние сервисы - это сервисы, доступные внутри данного слоя; внешние сервисы - это сервисы слоя, доступные извне данного слоя. В таблице 1 суммируется разделение элементов на структурные/поведенческие и на внешние/внутренние, которое играет центральную роль в языке [9].

Таблица 1. Распределение элементов языка по аспектам структурный/поведенческий и внешний/внутренний.

Пример 2. Использование элементов «функционал приложений», «сервис приложений» и «интерфейс приложений».

В модели показано, что сервис приложений «Сервис обработки транзакций» реализуется функционалом приложений «Учет» и доступен другим компонентам через интерфейс приложений «API обработки транзакций» (рис. 3). Функционал приложений «Учет» выполняется компонентом приложений «Компонент учета». Сервис приложений «Обработка транзакций» используется функционалом приложений «Биллинг», который выполняется компонентом приложений «Компонент биллинга». Функционал приложений «Биллинг» предлагает сервис приложений «Сервис создания накладной», который может быть использован для поддержки бизнес-процессов. Данный сервис доступен через интерфейс приложений «Экран биллинга».

Рис. 3. Использование элементов «функционал приложений», «сервис приложений» и «интерфейс приложений».

Пример 3. Продукт, состоящий из нескольких бизнес-сервисов.

В модели показан продукт «Телебанкинг», предлагаемый клиентам (рис. 4). Открытие счета и поддержка приложений (например, helpdesk и т. п.) осуществляется соответствующими бизнес-сервисами, которые реализуются бизнес-исполнителем «Клиентский отдел». Как часть продукта потребитель может также использовать банковский сервис, который предлагает такие сервисы приложений, как электронный денежный перевод и предоставление статуса счета. Сервисы приложений реализуются компонентом приложений «Телебанкинг».

Рис. 4. Продукт, состоящий из нескольких бизнес-сервисов.

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

Совместная деятельность (collaboration) определяется как группировка (или объединение) - возможно, временная - двух или более структурных элементов для выполнения некоторого совместного поведения.

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

Пример 4. Использование элемента «совместная бизнес-деятельность».

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

Рис. 5. Использование элемента «совместная бизнес-деятельность».

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

- Структурные отношения - это отношения, которые моделируют структурные зависимости между элементами одного или разных типов.

- Динамические отношения - это отношения, которые используют для моделирования зависимостей между элементами поведения (действиями).

- В группу «другие» относят отношения, которые не входят в первые две группы. Многие из отношений были заимствованы из существующих стандартов: например, композиция (composition), объединение (aggregation), ассоциация (association) и специализация (specialization) взяты из UML 2.0, а запуск (triggering) используется во многих языках моделирования бизнес-процессов.

Полный перечень элементов и отношений, образующих ядро языка ArchiMate, представлен соответственно в приложениях 2 и 3 в конце статьи. Эти типы элементов и отношений поддерживают моделирование архитектур на фазах B (Бизнес-архитектура)), C (Архитектура информационных систем) и D (Технологическая архитектура) метода разработки архитектуры TOGAF.

Слои языка

Обычно архитектурные описания делают для различных областей, или так называемых «слоев» организации. Эти области называют слоями в том смысле, что более нижние слои обеспечивают функциональность более высоким. В этом контексте для описания предприятия в языке определяются три основных слоя: бизнес-слой, слой приложений и технологический слой . Они хорошо соотносятся с фазами TOGAF и с соответствующими архитектурами - B (Бизнес-архитектура), C (Архитектура информационных систем) и D (Технологическая архитектура). В каждом слое используется общая концепция элементов языка (с их аспектами) и отношений. Это позволяет выделить в слоях несколько доменов, описывающих различные предметные области в рамках слоя. Соотношение слоев, элементов и отношений языка и архитектурных доменов показано на рисунке 6 .

Рис. 6. Соотношение слоев и аспектов языка и архитектурных доменов.

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

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

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

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

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

Взаимосвязи между слоями формируются отношениями «использование» и «реализация»:

- отношение типа «использование» показывает, как более высокий слой использует сервисы более низкого слоя;

- отношение типа «реализация» показывает, как элементы более низких слоев могут реализовывать сопоставимые элементы более высоких слоев.

Например, элемент «объект данных» в слое приложений может реализовывать элемент «бизнес-объект» в бизнес-слое. А элемент «артефакт» в технологическом слое может реализовывать элемент «объект данных» или элемент «компонент приложений» в слое приложений.

Пример 5. Многослойное представление архитектуры предприятия.

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

Рис. 7. Многослойное представление архитектуры предприятия.

...





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

Поиск по сайту

©2015-2022 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-10-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту:


Мы поможем в написании ваших работ!
Обратная связь
0.019 с.