Вопросы к Поиску с Алисой
Разница между отношениями Include и Extend в диаграммах прецедентов заключается в характере дополнительного функционала. ssl-team.com
Include указывает на то, что поведение одного прецедента включается в другой прецедент в качестве составного компонента. pro-prof.com Включаемый прецедент должен быть обязательным для дополняемого, то есть включение должно быть безусловным. pro-prof.com Например, если нужно изобразить на диаграмме тот факт, что удаление набора задач учителем и выполнение задач учеником не должно происходить без обязательного просмотра всех наборов задач, то нужно использовать отношение включения. pro-prof.com
Extend используется для моделирования необязательного расширения функционала основных прецедентов использования. ssl-team.com Дополнительное поведение, связанное с Extend, выполняется только при определённых условиях и не является обязательным для выполнения основного прецедента. pro-prof.com Например, в процессе «Авторизация пользователя» может быть предусмотрено расширение «Восстановление пароля», которое активируется только при условии, что пользователь забыл свои учётные данные. ssl-team.com
Таким образом, Include обозначает обязательное действие, а Extend — условное. ssl-team.com
При этом отношения Include и Extend можно комбинировать, что часто встречается в сложных системах. ssl-team.com Например, основной прецедент может включать обязательный подпроцесс через Include, который, в свою очередь, может иметь условное расширение через Extend. ssl-team.com