35
Архитектура системы ISO/IEC FDIS 42010 Systems and software engineering — Architecture description

Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Архитектура системы

ISO/IEC FDIS 42010 Systems and software

engineering — Architecture description

Page 2: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Введение

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

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

Page 3: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Стандарт ИСО 42010

• Это международный стандарт, направленный на создание описаний архитектуры при разработке, анализе и поддержке архитектуры системы.

• История стандарта

– The IEEE Architecture Planning Group (APG) образована в августе 1995

– В апреле 1996 SESC создана the Architecture Working Group (AWG) для реализации рекомендаций APG

– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive System. In 2001 it was adopted as an American National Standard by ANSI.

– In 2006, following a fast-track ballot, IEEE Std 1471-2000 was accepted by ISO to become the first edition of ISO/IEC 42010.

Page 4: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Концептуальная модель описания архитектуры

системы

Page 5: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Архитектура

• Архитектура системы представляет все существенные элементы системы и их отношения с окружением.

• Однако, нет единого определения - что является существенным или фундаментальным для системы; это зависит от:

– элементов, составляющих систему;– как элементы системы упорядочены или взаимосвязаны;– принципов системной организации или дизайна;– принципов управления эволюцией системы в течении всего

жизненного цикла.

• Описание архитектуры используется для документирования архитектуры, интересующей нас системы.

Page 6: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

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

• Описание архитектуры является рабочим продуктом, результатом проектирования архитектуры системы

• Международный стандарт разделяет понятие архитектура системы от описания архитектуры

• Тогда как, описание архитектуры является рабочим продуктом, сама архитектура является абстракцией, состоящей из концепций и свойств.

Page 7: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive
Page 8: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Интересы стейкхолдеров• Интересы к системе по отношению к среде• Интересы одного или нескольких стейков• Интересы возникают в течении жизненного цикла

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

Page 9: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

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

● Описание архитектуры включает один или несколько видов

● Вид (view) архитектуры представляет сущность заинтересованности стейка

● Вид является выражением архитектуры системы из представления о системе

● Представление архитектуры (viewpoint) группирует стейкхолдеров и определяет соглашения о видах в этих группах

Page 10: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Пример: виды и представления в каркасе архитектуры Закмана

View

poin

ts

Views (concerns)

Page 11: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Представление архитектуры

● Вид управляется представлением, т. е.– представление определяет соглашения по построению,

интерпретации и анализу вида

● Соглашения представления могут включать

– языки– обозначения– типы моделей и правила дизайна– методы анализа и моделирования– другие операции над видами

Page 12: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Модели архитектуры

● Каждый вид может содержать одну или несколько моделей архитектуры

● Модель использует соглашения о моделировании конкретных задач

● Эти соглашения определяют тип модели● Архитектурная модель может быть

частью одного или нескольких видов архитектуры

Page 13: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Элементы описания архитектуры

● стейкхолдер (stakeholder)● задача (concern)● представление архитектуры (viewpoint)● вид архитектуры (view)● тип модели (model kind)● модель архитектуры● архитектурное решение (decision)● обоснование (rationale)

Page 14: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Соответствия между элементами

Page 15: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Принятие решений и обоснования

● Обоснования состоят из объяснений, доказательств, или размышлений о выбранных архитектурных решениях.

● Обоснования могут включать: принципы, альтернативы, трудоемкость, потенциальные последствия, и ссылки на первоисточники информации

● Принятие решений связано с поставленными задачами

Page 16: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive
Page 17: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Проектирование архитектуры

● это процесс инициирования, определения, выражения, документирования, обсуждения, сертификации правильной реализации, управления и улучшения архитектуры в течении всего ЖЦ системы

● Осуществляется в рамках проекта или при функционировании организации.

● Рабочим продуктом является описание архитектуры

Page 18: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

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

● как базис для дизайна и разработки системы● как базис для анализа и оценки альтернативных

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

системы● как входная информация для автоматизированных систем

моделирования, генерации и анализа систем● как основа для коммуникации между различными

сторонами, вовлеченными в проектирование, разработку, эксплуатацию, поддержку и управление системой

● как основа для перехода на новую архитектуру и прочее ...

Page 19: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Фундаменты архитектуры

● Фундамент архитектуры (architecture framework) определяет общие подходы к построению, анализу и интерпретации описаний архитектуры в рамках определенной предметной области или сообщества стейкхолдеров

● AF используется, в частности, для– создания архитектурных описаний, разработки методов и

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

Page 20: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive
Page 21: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Язык описания архитектуры (ADL)

● ADL используется для описания архитектуры

● ADL определяет типы моделей, необходимых для решения задач определенной группы стейкхолдеров

● ADL обычно поддерживается автоматизированными средствами моделирования

Page 22: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive
Page 23: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

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

Page 24: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Содержание

1. Определение описания архитектуры и обзор информации по системе.2. Идентификация стейкхолдеров и их задач.3. Определение каждого представления (viewpoint), используемого в описании.4. Виды (view) и модели, используемые для каждого представления архитектуры.5. Применяемые правила соответствия описаний архитектуры и выявление противоречий.

6. Обоснование принятых архитектурных решений.

Page 25: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

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

● Идентификация системы и дополнительная информация о проекте или организации

● Пример:– дата начала и статус– авторы, рецензенты, заказчики и контролирующие

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

Page 26: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Идентификация стейкхолдеров и их задач

● пользователи ● операторы● заказчики● владельцы● поставщики● разработчики● производители● менеджеры

Описание задач включает:– назначение системы– подходящая архитектура– возможность построения и

развертывания системы– потенциальные риски и влияние

системы на стейков в течении ЖЦ– управляемость и развитие

системы

Page 27: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Определение представлений (viewpoints)

● В соответствии с требованиями и задачами стейков они группируются для определения соответствующего представления архитектуры

● стандарт не предопределяет, какие представления могут использоваться

Page 28: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Виды (view) и модели, используемые для каждого представления архитектуры

● Каждое описание должно отвечать одному виду для каждого представления архитектуры

● Каждый вид должен включатьa) идентификацию и доп.информацию о проекте или

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

данной группы представленийd) любую документацию по данному виду для

представления

Page 29: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Модели архитектуры

● Каждый вид архитектуры представляется одной или несколькими моделями

● Каждая модель должна иметь номер версии в соответствием с проектом или организацией

● Каждая модель идентифицируется типом

● Модель может включаться в несколько видов архитектуры

Page 30: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Отношения элементов архитектуры

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

элементы описания архитектуры● Каждому соответствию приписываются

управляющие правила соответствия● Для каждого правила соответствия описание

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

Page 31: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Обоснование принятых архитектурных решений

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

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

решений, влияющих на установку критериев и обоснование архитектуры

Page 32: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Архитектурные представления (viewpoints) определяют

a) одну или несколько задач для этого представления

b) типичных стейкхолдеров, объединенных для этого представления

c) один или несколько типов моделей

d) для каждого типа моделей: языки, обозначения, соглашения, методы моделирования, аналитические методы или операции для моделирования

e) источники

Page 33: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

4 метафоры архитектуры

● архитектура это схема● архитектура это документация● архитектура это язык● архитектура это решение

Page 34: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Замечание о моделях

модель имеет предмет моделирования● модель может быть чем угодно:

– модель может быть концептуальной (ментальная модель)– или рабочим продуктом

Page 35: Архитектура системыsvv/swe/l16se.pdf– В 2000, утвержден стандарт IEEE Std 1471, IEEE Recommended Practice for Architectural Description of Software-Intensive

Три типа конечных продуктов

● описание архитектуры является рабочим продуктом, который моделирует архитектуру рассматриваемой системы в зависимости от требований и задач стейкхолдеров

● архитектурный вид является рабочим продуктом, определяемым специальными задачами стейкхолдеров в определенном представлении

● архитектурная модель является рабочим продуктом, определяемым типом модели