Из Википедии, бесплатной энциклопедии
  (Перенаправлено из деревьев поведения )
Перейти к навигации Перейти к поиску

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

Деревья поведения - это формальный язык графического моделирования, используемый в основном в системной и программной инженерии . В деревьях поведения используется четко определенная нотация для однозначного представления сотен или даже тысяч требований естественного языка , которые обычно используются для выражения потребностей заинтересованных сторон в крупномасштабной интегрированной с программным обеспечением системе. [1] [2] [3] [4]

Обзор [ править ]

Количество деталей в большом количестве требований естественного языка для крупномасштабной системы вызывает кратковременную перегрузку памяти [1] [5] и может создать барьер, который не позволяет кому-либо получить глубокое, точное и целостное понимание системы. потребности. [6] Кроме того, из-за использования естественного языка , вероятно, будет много двусмысленностей, псевдонимов, несоответствий, дублирования и проблем неполноты, связанных с информацией о требованиях. [3]Это добавляет неопределенности и сложности. Как правило, в лучшем случае несколько человек хорошо понимают части системы или ситуации, но никто не имеет другого, кроме поверхностного понимания целого, то есть подробного интегрированного поведения системы.

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

Формы дерева поведения [ править ]

Набор из четырех деревьев поведения требований
Процесс интеграции требований

Единые, составные или интегрированные формы дерева поведения важны для применения деревьев поведения в системной и программной инженерии .

  • Деревья поведения требований: Первоначально деревья поведения индивидуальных требований (RBT) используются для захвата всех фрагментов поведения в каждом отдельном требовании естественного языка с помощью процесса строгого перевода с сохранением намерений и словарного запаса. В процессе перевода можно выявить ряд недостатков в требованиях к исходному естественному языку.
  • Интегрированные деревья поведения: поскольку набор требований подразумевает интегрированное поведение системы, все отдельные деревья поведения требований могут быть составлены для построения интегрированного дерева поведения (IBT), которое обеспечивает единое целостное представление о возникающем интегрированном поведении системы. Это позволяет строить интегрированное поведение системы исходя из ее требований. [8] Аналогия, помогающая описать этот процесс, - это переход от произвольно расположенного набора частей головоломки к размещению каждой из частей в соответствующем месте. Когда мы делаем это, мы видим каждую часть информации в ее предполагаемом контексте, и мы видим части информации в целом и возникающие свойства целого.

Преобразование всех требований в деревья поведения (RBT) аналогично тому, как если бы все части мозаики были случайным образом разложены на столе - пока мы не сложим все части вместе, мы не сможем увидеть возникающую картину и увидеть, отсутствуют ли какие-либо части или нет. не подходит. Построение интегрированного дерева поведения (IBT) позволяет нам это сделать. [2] [3]

Процесс разработки поведения [ править ]

Используемое представление - (критическое)
  • ДЕРЕВЬЯ ПОВЕДЕНИЯ предоставляют средство для развития общего понимания сложной системы .
  • Роль СОСТАВНОГО ДЕРЕВА в общем процессе состоит в том, чтобы предоставить средство для преодоления несовершенных знаний, связанных с большим набором требований к системе.
Используемый процесс - (критично)
  • BEHAVIOR ENGINEERING использует деревья поведения для управления сложностью, одновременно развивая общее понимание сложной системы.
  • Это общее, целостное понимание сложной системы, поскольку оно объединяет требования, показывает возникающее поведение системы, подразумеваемое требованиями.
Фазы процесса моделирования поведения

История [ править ]

Деревья поведения и концепции для их применения в системной и программной инженерии были первоначально разработаны Дроми [2] [3] [9] [10] с первой публикацией некоторых ключевых идей в 2001 году. [11] Ранние публикации по этой работе использовали термины «генная программная инженерия» и «генетический дизайн» для описания применения деревьев поведения. Причина первоначального использования слова «генетический» заключалась в том, что наборы генов, наборы кусочков головоломки и наборы требований, представленные в виде деревьев поведения, по-видимому, обладали несколькими ключевыми свойствами:

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

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

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

Эти генетические параллели в другом контексте были первоначально сформулированы Вулфсоном [12] (А. Вулфсон, Жизнь без генов, Фламинго, 2000).

Дополнительное значение для использования термина «генетический» придумал мыслитель восемнадцатого века Джамбаттиста Вико , который сказал: «Понять что-то, а не просто уметь описать или проанализировать его на составные части, - значит понять, как оно возникло. - его происхождение, его рост… истинное понимание всегда генетически ». [13] Несмотря на эти законные генетические параллели, было сочтено, что такой акцент привел к путанице с концепцией генетических алгоритмов . В результате термин " инженерия поведения"был введен для описания процессов, использующих деревья поведения для построения систем. Термин «инженерия поведения» ранее использовался в специализированной области искусственного интеллекта - исследованиях робототехники. Настоящее использование охватывает гораздо более широкую строгую формализацию и интеграцию больших наборов поведенческих и композиционных требований, необходимых для моделирования крупномасштабных систем.

Поскольку нотация дерева поведения была первоначально задумана, ряд людей из DCCS (Dependable Complex Computer-based Systems Group - совместная исследовательская группа Университета Квинсленда и Университета Гриффита ) внесли важный вклад в развитие и уточнение нотации и использование деревьев поведения. В эту группу входят: Дэвид Кэррингтон, Роб Колвин, Джефф Дроми, Ларс Грунске, Ян Хейз, Диана Кирк, Питер Линдси, Тоби Майерс, Дэн Пауэлл, Джон Сигрот, Кэмерон Смит, Ларри Вен, Нисансала Ятапанаге, Кирстен Винтер, Саад Зафар. , Лесной Чжэн.

Вероятностные временные деревья поведения были недавно разработаны Колвином, Грунске и Винтером, чтобы можно было выразить надежность, производительность и другие характеристики надежности. [14]

Ключевые понятия [ править ]

Обозначение дерева поведения [ править ]

Основные элементы нотации дерева поведения

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

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

Теги прослеживаемости (см. Раздел 1.2 нотации дерева поведения [15] ) в узлах дерева поведения связывают формальное представление с соответствующим требованием естественного языка . Деревья поведения точно отражают поведение, выраженное в естественном языке функциональных требований. Деревья поведения требований строго используют словарь требований естественного языка, но используют графические формы для композиции поведения, чтобы исключить риск двусмысленности. Делая это, они обеспечивают прямую и четко прослеживаемую связь между тем, что выражено в представлении естественного языка и его формальной спецификацией . [16]

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

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

Полную ссылку на нотацию дерева поведения версии 1.0 см .: Behavior Tree Notation v1.0 (2007) [15]

Семантика [ править ]

В формальной семантике поведения дерев задаются с помощью алгебры процессов и ее операционной семантики . [17] Семантика была использована в качестве основы для разработки моделирования , проверки модели и режимы отказа и анализ эффектов . [17] [18] [19]

Перевод требований [ править ]

Пример перевода требований
Интеграция дерева поведения требований

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

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

Интеграция требований [ править ]

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

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

Пример ниже иллюстрирует интеграцию требований для двух требований, R1 и R3. Другими словами, он показывает, как взаимодействуют эти два требования.

Операции над интегрированными деревьями поведения [ править ]

После того, как интегрированное дерево поведения составлено, с ним можно выполнять ряд важных операций.

Инспекция: обнаружение и исправление дефектов [ править ]

В общем, многие дефекты становятся более заметными, когда существует интегрированное представление требований [1], и каждое требование помещено в контекст поведения, где оно должно выполняться. Например, гораздо легче определить, является ли набор условий или событий, исходящих от узла, полным и непротиворечивым. Теги трассируемости [15] также позволяют легко вернуться к исходным требованиям к естественному языку. Также есть возможность автоматизировать ряд проверок дефектов и согласованности интегрированного дерева поведения. [20]

Когда все дефекты исправлены и IBT логически согласован и завершен, он становится деревом поведения модели (MBT), которое служит формальной спецификацией поведения системы, построенной на основе исходных требований. Это четко определенная точка остановки для фазы анализа. С другими нотациями и методами моделирования (например, с UML ) менее ясно, когда моделирование можно остановить. [21] В некоторых случаях может потребоваться преобразование частей дерева поведения модели, чтобы сделать спецификацию исполняемой . После того, как MBT стал исполняемым, можно выполнить ряд других проверок надежности.

Моделирование [ править ]

Дерево поведения модели можно легко смоделировать для исследования динамических свойств системы. И символический инструмент, и графический инструмент были созданы для поддержки этих действий. [22] [23]

Проверка модели [ править ]

Был написан переводчик для преобразования дерева моделей поведения на язык «систем действий». Эти входные данные затем могут быть переданы в SAL Model-checker [24] [25], чтобы можно было выполнить проверки на предмет соответствия определенным свойствам безопасности. [18] [26]

Анализ видов и последствий отказов (FMEA) [ править ]

Проверка моделей часто применяется к моделям системы, чтобы убедиться, что опасные состояния не могут быть достигнуты во время нормальной работы системы. [27] Можно комбинировать проверку модели с деревьями поведения для обеспечения автоматической поддержки анализа режимов и последствий отказов (FMEA). [18] Преимущество использования деревьев поведения для этой цели состоит в том, что они позволяют скрыть формальные аспекты метода подхода от пользователей, не являющихся экспертами.

Изменение требований [ править ]

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

  • где внести изменения,
  • как изменение влияет на архитектуру существующей системы,
  • какие компоненты системы затронуты изменением, и
  • какие поведенческие изменения необходимо внести в компоненты (и их интерфейсы), на которые влияет изменение требований. [4]

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

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

Генерация и выполнение кода [ править ]

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

Модели дерева поведения выполняются на виртуальной машине, которая называется средой выполнения поведения (BRE). BRE связывает компоненты с помощью промежуточного программного обеспечения [29], позволяя компонентам быть независимыми программами, написанными на одном из нескольких языков, которые могут выполняться в распределенной среде . BRE также содержит синтаксический анализатор выражений, который автоматически выполняет простые операции, чтобы минимизировать объем кода, который необходимо вручную реализовать в компоненте.

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

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

Исполняемые деревья поведения были разработаны для тематических исследований [21], включая автоматическую защиту поездов [30], мобильных роботов с динамическим отслеживанием объекта, амбулаторный инфузионный насос [19] и системы управления светофорами. Также доступна версия BRE, подходящая для встраиваемых систем (eBRE), которая имеет ограниченную функциональность, чтобы приспособить ее к микроконтроллерам с малой занимаемой площадью.

Приложения [ править ]

Моделирование дерева поведения может применяться и применяется в различных приложениях на протяжении ряда лет. Ниже описаны некоторые из основных областей применения.

Крупномасштабные системы [ править ]

Моделирование крупномасштабных систем с большим набором требований естественного языка всегда было основным направлением тестирования деревьев поведения и всего процесса разработки поведения. Для проведения этих оценок и испытаний метода потребовалась работа с рядом отраслевых партнеров и государственных ведомств в Австралии. Изученные системы включают значительное количество систем защиты, корпоративных систем, транспортных систем, информационных систем, систем здравоохранения и сложных систем управления со строгими требованиями безопасности. Все результаты этих исследований коммерчески конфиденциальны. Однако результаты обширных отраслевых исследований [5] [6] с RaytheonАвстралия представлена ​​ниже в разделе «Промышленность». Вся эта работа неизменно показывала, что при преобразовании требований и создании динамических и статических интегрированных представлений требований на ранней стадии обнаруживается очень значительное количество основных дефектов, помимо дефектов, которые обнаруживаются с помощью передовой отраслевой практики. [31] [32]

Встроенные системы [ править ]

Несоответствие проекта требованиям системы может привести к перерасходу графика и затрат. [33] Если есть также критические проблемы надежности, невыполнение системных требований может иметь опасные для жизни последствия. [34] Однако в современных подходах обеспечение выполнения требований часто откладывается до конца процесса разработки во время цикла тестирования и отладки. [35] В этой работе описывается, как подход к разработке системы, инженерия поведения, может быть использован для разработки программного обеспечения для встроенных систем . [26] Результатом является разработка на основе моделей. подход, который может создать встроенное системное программное обеспечение, удовлетворяющее его требованиям, в результате применения процесса разработки.

Аппаратно-программные комплексы [ править ]

Многие крупномасштабные системы состоят из взаимосвязанного программного и аппаратного обеспечения. Различная природа программного и аппаратного обеспечения означает, что они часто моделируются отдельно с использованием разных подходов. Впоследствии это может привести к проблемам интеграции из-за несовместимых предположений о взаимодействии аппаратного и программного обеспечения. [30] Эти проблемы могут быть преодолены путем интеграции деревьев поведения с Modelica , подходом к математическому моделированию . [30] Компоненты среды и оборудования моделируются с помощью Modelica и интегрируются с исполняемой программной моделью, использующей деревья поведения.

Контроль доступа на основе ролей [ править ]

Чтобы обеспечить правильную реализацию сложных требований к управлению доступом , важно, чтобы проверенные и проверенные требования были эффективно интегрированы с остальной частью системы. [36] Также важно, чтобы система могла быть валидирована и верифицирована на ранних этапах процесса разработки. Разработана интегрированная модель управления доступом на основе ролей. [37] Модель основана на нотации графического дерева поведения и может быть подтверждена путем моделирования , а также проверена с помощью средства проверки модели . Используя эту модель, требования к контролю доступа могут быть интегрированы с остальной частью системы с самого начала, потому что: одна нотация используется для выражения как контроля доступа, так ифункциональные требования ; может быть принят систематический и поэтапный подход к построению формальной спецификации дерева поведения; и спецификация может быть смоделирована, а модель проверена. Эффективность модели оценивалась с использованием тематического исследования с требованиями распределенного контроля доступа. [36]

Биологические системы [ править ]

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

Моделирование игрового ИИ [ править ]

Хотя BT стали популярными для моделирования искусственного интеллекта в компьютерных играх, таких как Halo [39] и Spore [40], эти типы деревьев сильно отличаются от тех, что описаны на этой странице, и ближе к комбинации иерархических конечных состояний. машины или деревья решений . Моделирование футболистов также было успешным применением BT. [41] [42]

Тестирование на основе моделей [ править ]

[43] - это подход к тестированию программного обеспечения, при котором тестировщики должны создавать тестовые модели на основе требований тестируемого программного обеспечения (SUT). Традиционно в качестве языка моделирования используются диаграммы состояний UML, конечные автоматы, EFSM и блок-схемы. Недавно появился интересный подход, в котором в качестве языка моделирования используется Event-Driven Swim Lane Petri Net (EDSLPN). Нотацию дерева поведения следует также рассматривать как хорошую нотацию моделирования для MBT, и у нее есть несколько преимуществ среди других нотаций:

  1. Он имеет тот же уровень выразительности, что и диаграммы состояний UML и EDSLPN.
  2. Его интуитивно понятно использовать в качестве обозначения моделирования из-за его графической природы.
  3. Каждый узел дерева поведения имеет тег требований, что упрощает создание матрицы прослеживаемости от требования до тестового артефакта.

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

Масштабируемость и отраслевые приложения [ править ]

Снимок экрана инструмента среды поддержки инженерного поведения
Интегрированное дерево поведения - большая система (более 1000 требований)

Первые промышленные испытания для проверки осуществимости метода и уточнения его возможностей были проведены в 2002 году. За последние три года был проведен ряд систематических отраслевых испытаний крупномасштабных оборонных, транспортных и корпоративных систем. [5] [31] В ходе этой работы было установлено, что метод масштабируется для систем с большим количеством требований, но также важно использовать поддержку инструментов [22] [45] для эффективной навигации и редактирования таких больших интегрированных представлений графических изображений. данные. Эта работа с промышленностью принесла несколько основных результатов. В среднем по ряду проектов 130 подтвержденных серьезных дефектов на 1000 требований последовательно выявлялись после обычных проверок и исправлений. [31] При менее зрелых наборах требований наблюдается гораздо более высокий процент брака.

Важная часть этой работы с промышленностью заключалась в применении аналитической части метода к шести крупномасштабным оборонным проектам Raytheon Australia. Они рассматривают этот метод как «ключевую стратегию снижения рисков, которая может использоваться как при разработке решений, так и как средство информирования клиента о проблемах с документацией по приобретению». [32] [46] Результатом этих отраслевых испытаний стала совместная разработка [6] с Raytheon Australia мощного отраслевого инструмента для поддержки анализа, редактирования и отображения больших интегрированных наборов требований. [45] Более подробную информацию об отраслевых выводах можно найти на веб-сайте Behavior Engineering. [47]

Д-р Терри Стивенсон (главный технический директор, Raytheon Australia) и г-н Джим Бостон (старший менеджер проекта Raytheon Australia), г-н Адриан Питман из Австралийской организации по материально-техническому обеспечению обороны , д-р Келвин Росс (генеральный директор, KJRoss & Associates) и Кристин Корниш (Bushell & Cornish) ) предоставили особые возможности, необходимые для поддержки этого исследования, проведения промышленных испытаний [5] [31] и работы над проектами. Эта работа была поддержана Австралийским исследовательским советом - Центром сложных систем ARC и фондами, полученными от промышленности. [ необходима цитата ]

[48]

Преимущества, преимущества [ править ]

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

  • Они используют четко определенную и эффективную стратегию для работы со сложностью требований, особенно когда начальные потребности системы выражаются с помощью сотен или тысяч требований, написанных на естественном языке. Это значительно снижает риски на крупномасштабных проектах. [31]
  • За счет тщательного перевода и интеграции требований в кратчайшие сроки они предоставляют более эффективные средства для выявления дефектов требований, чем конкурирующие методы. [31] [32]
  • Они используют единую простую нотацию [15] для анализа , спецификации и представления дизайна поведения системы.
  • Они представляют поведение системы как исполняемое интегрированное целое.
  • Они строят поведение системы на основе ее функциональных требований прямым отслеживаемым способом, который помогает верификации и валидации . [22] [37]
  • Они могут быть поняты заинтересованными сторонами без необходимости обучения формальным методам . Благодаря строгому сохранению словаря исходных требований это облегчает понимание.
  • Они имеют формальную семантику , [17] они поддерживают параллелизм , они исполняемые , и они могут быть смоделированы , модель проверены и используются для выполнения режима отказа и анализа эффектов . [18]
  • Их можно одинаково хорошо использовать для моделирования человеческих процессов, анализа контрактов [38], для представления судебно-медицинской информации, для представления биологических систем и многих других приложений. В каждом случае они обеспечивают одинаковые преимущества с точки зрения управления сложностью и видения вещей в целом. Они также могут быть использованы для обеспечения безопасности критически важных систем , [19] встраиваемых систем [26] и систем реального времени . [49] [50] [51]

Критика, недостатки [ править ]

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

См. Также [ править ]

  • Поведенческая инженерия
  • Язык моделирования

Ссылки [ править ]

  1. ^ a b c d Дроми, Р. Г. 2007. Принципы разработки крупномасштабных программно-интенсивных систем
  2. ^ a b c Р.Г. Дроми, «Формализация перехода от требований к дизайну». Архивировано 25 июля 2011 г. в Wayback Machine , в «Математические основы для компонентного программного обеспечения - модели для анализа и синтеза», Цзифэн Хэ и Чжиминг Лю (ред.) , World Scientific Series on Component-Based Development, pp. 156–187, (Приглашенная глава) (2006)
  3. ^ a b c d e f Р. Г. Дроми, « От требований к дизайну: формализация ключевых шагов». Архивировано 25 июля 2011 г. в Wayback Machine (приглашенный основной доклад), SEFM-2003, Международная конференция IEEE по разработке программного обеспечения и формальным методам, Брисбен, Сентябрь 2003 г., стр. 2–11.
  4. ^ a b Вен, Л., Дроми, Р. Г. 2007. От изменения требований к изменению дизайна: формальный путь [ постоянная мертвая ссылка ]
  5. ^ a b c d Бостон, Дж. 2008. Raytheon Australia поддерживает новаторские системные исследования. Архивировано 15 сентября 2009 г. на Wayback Machine.
  6. ^ a b c Raytheon Australia, 2008. Понимание растет на деревьях поведения. Архивировано 15 сентября 2009 г. в Wayback Machine.
  7. ^ Поведенческая инженерия. Композиционные деревья, заархивированные 2 марта 2009 года в Wayback Machine
  8. Winter, K. 2007. Формализация деревьев поведения с помощью CSP
  9. ^ RLGlass, "Революционная идея это или нет". Архивировано 25 июля 2011 г. в Wayback Machine , Communications of the ACM, Vol. 47 (11), стр. 23–25, ноябрь 2004 г.
  10. ^ RGDromey, "Climbing Над 'серебряной пули' Кирпичная стена" архивной 25 июля 2011 в Wayback Machine , IEEE Software, Vol. 23, № 2, стр. 118–120 (март 2006 г.)
  11. ^ RGDromey, Genetic Software Engineering - Simplifying Design Using Requirements Integration, Рабочая конференция IEEE по архитектуре сложных и динамических систем, Брисбен, декабрь 2001 г.
  12. ^ А. Вулфсон, Жизнь без генов, Фламинго, 2000, ISBN  0-00-255618-9
  13. ^ Берлин, I. Кривая древесина человечества: главы в истории идей, под ред. Х. Харди, Princeton University Press, 1998 ISBN 0-691-05838-5 
  14. ^ Колвин Р., Grunske Л., Зима, К. 2007 вероятностного Timed Поведение Деревья архивации 25 июля 2011 в Wayback Machine
  15. ^ a b c d Группа дерева поведения, Центр сложных систем ARC , 2007. Обозначение дерева поведения v1.0 (2007)
  16. ^ Dromey, RG "Генетическая конструкция: Усиливающий Наша способность решать требования Сложность" архивированных 25 июля 2011 в Wayback Machine , в S.Leue и TJ Systra, Сценарии, Lecture Notes вкомпьютерных наук, LNCS 3466, стр 95-. 108, 2005.
  17. ^ a b c Colvin, R., Hayes, IJ 2006 Семантика деревьев поведения
  18. ^ a b c d Л. Грунске, П. Линдсей, Н. Ятапанедж, К. Винтер, Автоматический анализ видов отказов и последствий на основе высокоуровневой спецификации проектирования с деревьями поведения , Пятая международная конференция по интегрированным формальным методам (IFM-2005 ), Эйндовен, Нидерланды, 2005.
  19. ^ a b c Зафар, С. и Дромей, Р.Г., (2005), Интеграция требований безопасности в разработку встроенной системы. Архивировано 25 июля 2011 года на Азиатско-Тихоокеанской конференции по разработке программного обеспечения Wayback Machine 2005, 15–17 декабря, Тайбэй, Тайвань. Издательство IEEE Computer Society Press. С. 629–636.
  20. ^ a b Смит, К., Уинтер, К., Хейс, И., Дроми, Р.Г., Линдси, П., Каррингтон, Д.: Среда для построения системы исходя из ее требований , 19-я Международная конференция IEEE по автоматизированному программному обеспечению Engineering, Линц, Австрия, сентябрь (2004 г.).
  21. ^ Б Dromey Р.Г. Использование Behavior деревьев модели автономной системы Shuttle архивации 25 июля 2011 в Wayback Machine , 3 - й Международный семинар по сценариям и автоматов: модели, алгоритмы и инструменты (SCESM04) ICSE Workshop W5S, Эдинбург, 25 мая 2004 г.
  22. ^ a b c L.Wen, R.Colvin, K.Lin, J.Seagrott, N.Yatapanage, RGDromey, 2007, "Integrare, совместная среда для разработки, ориентированного на поведение" , в материалах Четвертой Международной конференции по кооперативному развитию. Дизайн, визуализация и инжиниринг, LNCS 4674, стр. 122–131, 2007 г.
  23. ^ С. Сунь, С. Ся, Д. Сунь, Д. Чен. HF Shen, W. Cai: «Прозрачная адаптация однопользовательских приложений для многопользовательской совместной работы в реальном времени» , ACM Transactions on Computer-Human Interaction, Vol. 13, №4, декабрь 2006 г., стр. 531–582.
  24. ^ Бенсалем, С., Ганеш, В., Лакнек, Ю., Муньос, К., Оур и др .: «Обзор SAL», Пятый семинар по формальным методам НАСА в Лэнгли (LFM 2000), 2000, стр. 187 –196.
  25. ^ Рашби, Дж. Автоматические формальные методы 2006 AFM-2006, Автоматизированные формальные методы 2006, Сиэтл, август 2006 г., стр. 6–7.
  26. ^ a b c Зафар, С. и Дромей, Р., 2005. Управление сложностью моделирования встроенных систем. Архивировано 25 июля 2011 г. на конференции Wayback Machine Systems Engineering / Test and Evaluation Conference 2005, 7–9 ноября, Брисбен, Австралия.
  27. ^ Grunske, L., Colvin, R., Winter, K. Поддержка вероятностной проверки моделей для количественной оценки систем FMEA. QEST 2007. Четвертая международная конференция по количественной оценке систем, 17-19 сентября 2007 г., стр. 119–128.
  28. ^ Вен, Л., Дромей, Р.Г. 2005. Нормализация архитектуры для компонентно-ориентированных систем. Архивировано 25 июля 2011 г. на Wayback Machine Proceedings 2-го Международного семинара по формальным аспектам компонентного программного обеспечения FACS'05, стр. 247–261.
  29. ^ RTI Inc. 2007 «Соответствие требованиям реального времени в интегрированных системах защиты», Белая книга RTI. Архивировано 20 сентября 2008 г. на Wayback Machine .
  30. ^ a b c Майерс, Т., Фрицсон, П., Дромей, Р. Г. 2008. Полная интеграция программного и аппаратного моделирования для крупномасштабных систем. 2-й Международный семинар по объектно-ориентированным языкам и инструментам на основе уравнений (EOOLT 2008), Кипр, июль 2008 г., стр. 5–15.
  31. ^ a b c d e f Пауэлл, Д. 2007. Оценка требований с использованием деревьев поведения - выводы из отрасли. Архивировано 25 июля 2011 г. на Wayback Machine.
  32. ^ a b c Бостон, Дж. (Raytheon Australia), Behavior Trees - Как они улучшают инженерное поведение? [ постоянная мертвая ссылка ] , 6-я ежегодная конференция группы процессов программного обеспечения и системной инженерии (SEPG 2008), Мельбурн, август 2008 г.
  33. ^ Баркер, Д. 2000. Технология моделирования требований: видение лучших, быстрых и дешевых систем. Материалы осеннего семинара Международного форума пользователей VHDL, 2000 г., стр. 3–6.
  34. ^ Левесон, Н.Г. Safeware: безопасность системы и компьютеры: [руководство по предотвращению несчастных случаев и потерь, вызванных технологиями]. Издательство Addison-Wesley Publishing Company, 1995. ISBN 0-201-11972-2 
  35. ^ Футрелл, Р.Т., Шафер, Д.Ф., Шафер, Управление проектами программного обеспечения качества LI (Серия институтов качества программного обеспечения). Прентис Холл, 2002 ISBN 0-13-091297-2 
  36. ^ a b Зафар, С. Колвин, Р., Винтер, К., Ятапанаге, Н., Дроми, Р. Г. Ранняя проверка и проверка распределенной модели управления доступом на основе ролей. 14-я Азиатско-Тихоокеанская конференция по разработке программного обеспечения, Нагоя, Япония, декабрь 2008 г., стр. 430–437.
  37. ^ a b Зафар С., К. Винтер, Р. Колвин, Р. Г. Дромей, «Верификация интегрированной модели управления доступом на основе ролей». Архивировано 25 июля 2011 г. на Wayback Machine , 1-й международный семинар - Азиатская рабочая конференция по проверенному программному обеспечению ( AWCVS'06), стр. 230–240, Макао, октябрь 2006 г.
  38. ^ a b Милошевич, З., Дромей, Р. Г. Об выражении и мониторинге поведения в контрактах , EDOC 2002, Протоколы, 6-я Международная конференция по корпоративным распределенным объектным вычислениям, Лозанна, Швейцария, сентябрь 2002 г., стр. 3-14.
  39. Дамиан Исла: Управляемость сложности в ИИ Halo 2.
  40. ^ Крис Хеккер Мои заметки по лайнерам для Spore
  41. Сяо-Вен Терри Лю и Джеки Балтес . Интуитивно понятная и гибкая архитектура для интеллектуальных мобильных роботов 2-я Международная конференция по автономным роботам и агентам 13–15 декабря 2004 г. Палмерстон-Норт, Новая Зеландия
  42. ^ Юкико Хосино, Цуёси Такаги, Уго Ди Профио и Масахиро Фудзита Описание и контроль поведения с помощью модуля поведения для персонального робота
  43. ^ Тестирование на основе модели (MBT) Тестирование на основе модели
  44. ^ MBTester [1]
  45. ^ a b Филлипс В. (Raytheon Australia), «Реализация инструмента анализа дерева поведения с использованием Eclipse Development Frameworks» [ постоянная мертвая ссылка ] , Австралийская конференция по разработке программного обеспечения (ASWEC'08), Перт, март 2008 г.
  46. McNicholas, D., (Raytheon Australia), 2007. Выгоды индустрии разработки поведения [ постоянная мертвая ссылка ]
  47. ^ Поведенческая инженерия. Веб-сайт Behavior Engineering. Архивировано 1 марта 2009 г. на Wayback Machine.
  48. ^ Подробнее см .:
    • Raytheon Australia - Совместная разработка Behavior Trees. Архивировано 15 сентября 2009 г. в Wayback Machine.
    • «Реализация инструмента анализа дерева поведения с использованием платформ разработки Eclipse» [ постоянная мертвая ссылка ] Винсент Филлипс, Raytheon Australia.
    • Деревья поведения - как они улучшают инженерное поведение? [ постоянная мертвая ссылка ] Джим Бостон, Raytheon Australia.
    • Raytheon Australia поддерживает новаторские исследования систем. Архивировано 15 сентября 2009 г. на Wayback Machine.
  49. ^ Лин, К., Чен, Д., Сан, К., Дроми, Р.Г., Стратегия обслуживания ограничений и приложения в совместной среде в реальном времени [ постоянная мертвая ссылка ] , 2-я Международная конференция по совместному проектированию, визуализации и проектированию (CDVE2005 ), 2005.
  50. ^ Лин, К. Чен, Д., Dromey, RG, Вс, CZ .: многоходовой Dataflow Ограничение распространения в режиме реального времени Совместные системы архивации 25 июля 2011 в Wayback Machine , IEEE, 2ой Международной конференции посотрудничества вычислениям : Сеть, приложения и совместная работа (CollaborateCom 2006), Атланта, Джорджия, США, ноябрь 2006 г.
  51. ^ Grunske, Л., Зима, К., Colvin, Р., «Timed дерев поведения и их применение к проверочным системам реального времени» Архивированный 18 ноября 2008 в Wayback Machine , Трудах 18е австралийской конференции по разработке программного обеспечения (AEWEC 2007 ), Апрель 2007 г., принята к печати.

Внешние ссылки [ править ]

  • Поведенческая инженерия
  • Raytheon Australia поддерживает новаторские системные исследования
  • Центр сложных систем ARC - Программа ACCS: надежные комплексные компьютерные системы
  • Австралийский исследовательский совет - Результаты: сложность приручения [ постоянная мертвая ссылка ]