Создание альтернативных контейнеров
Портал требований и систем позволяет создавать "Альтернативы" для блока, чтобы сравнить, как различные варианты блока повлияют на проект в целом, как показано на рис
Альтернативный контейнер имеет свои собственные вали, которые автоматически сопоставляются с соответствующими вали в выбранном альтернативном блоке. Если в альтернативном блоке есть вали, которые не были добавлены в альтернативный контейнер, этот вали не будет сопоставлен с ним. Если у него есть Vali с тем же именем, но другого типа, он не будет отображать значение Vali альтернативного блока.
How to create Alternative Containers
Как на рис
-
Щелкните правой кнопкой мыши на блоке в дереве, который вы хотите преобразовать в альтернативный контейнер.
-
Нажмите "Преобразовать в альтернативный контейнер".
При этом будет создана копия блока (которая станет его первой доступной альтернативой), а затем сам блок будет преобразован в контейнер
Рядом с альтернативным контейнером в дереве появится значок слоев, сложенных в стопку (рис
Значок альтернативного контейнера
Добавление валис в альтернативные контейнеры
Альтернативные контейнеры имеют свои собственные валиды, которые отображаются на соответствующие валиды в их альтернативах (блоках). Как показано на рис
Логика работы с альтернативными контейнерами
Когда вы добавляете свойство (Vali) в альтернативный контейнер, он создаст это свойство (Vali) во всех своих альтернативах, которые не имеют этого Vali, или отобразит значение на Vali, если оно существует и имеет правильный тип. Если существует Vali с тем же именем, но другого типа, на это укажет окно ошибки (рис
Чтобы добавить свойство (Vali) или альтернативу (блок) в контейнер альтернатив, нажмите на кнопку "+" в левой нижней части экрана
После этого вам будут предложены следующие варианты, как показано на рисунке
Давайте остановимся на том, что означает каждая из этих опций:
Лучшие практики
BP 1
Прежде чем преобразовывать блок в альтернативный контейнер, лучше всего структурировать исходный блок с помощью Valis, которые будут общими для всех альтернатив, и только потом преобразовывать его в альтернативный контейнер.
Любые другие альтернативы можно быстро создать, скопировав этот блок или одну из его копий.
BP 2
Обратите внимание, что когда вы ссылаетесь на Вали из альтернативного контейнера, убедитесь, что вы выбрали именно ту Вали, которую хотите использовать в своих расчетах. Например, если вы хотите использовать эффективность батареи в своих расчетах или метод верификации "Правила" в Требованиях к проекту "Valicopter__5000", то при написании формулы и поиске "стоимости батареи" портал "Требования и системы" выдаст вам результат, как на рисунке
Таким образом, если вы хотите использовать стоимость Альтернативного контейнера, т.е. стоимость выбранной Альтернативы, вы можете использовать Vali, как указано на рисунке
Если вы хотите рассчитать параметр только с учетом стоимости конкретной альтернативы, в формуле следует указать одну из двух величин в
BP 3
Чтобы лучше отслеживать выбранные альтернативы в контейнерах альтернатив, можно создать текстовый вали (рис
Его можно применять к другим альтернативным контейнерам в дереве блоков и ссылаться на блок верхнего уровня, указывая таким образом текущую конфигурацию (рисунок
BP 4
Вы можете создавать альтернативы альтернатив, создавая контейнер альтернатив верхнего уровня в поддереве, которое само имеет другие контейнеры альтернатив. Это можно использовать для создания и оценки нескольких вариантов архитектуры вашей системы.
BP 5
Связанные копии блоков могут быть использованы в качестве альтернатив, хотя пользователь должен сначала вручную создать связанную копию, а затем добавить ее в контейнер альтернатив с помощью опции "Добавить существующий блок в качестве альтернативы в этот контейнер", как показано на рисунке
BP 6
Альтернативы не обязательно хранить в виде субблоков контейнера альтернатив, их можно хранить в блоках каталога в другом месте дерева блоков того же проекта.