Диаграмма вариантов использования UML: повторное использование расширенных вариантов использования
В настоящее время я обновляю / изменяю свои знания в области разработки программного обеспечения, потому что скоро буду работать в этой области. Мы многое узнали о UML-диаграммах и кодировании в университете, но я никогда не сводил их вместе в реальном проекте. Поэтому я начал создавать тестовое веб-приложение в Grails и хотел начать с анализа требований и вариантов использования, чтобы он был максимально приближен к реальности.
Мое веб-приложение должно позволять пользователям делиться рецептами, находить рецепты и просматривать рецепты других пользователей. Каждый рецепт содержит много ингредиентов, которые представляют собой не просто строки, а сущности, так что калории, жир, белки и углеводы могут быть использованы для автоматического расчета фактов питания определенного рецепта.
Ингредиент может быть добавлен в базу данных либо потребителем, либо экспертом по питанию. Если он создан потребителем, это всего лишь "предполагаемый" ингредиент, а это означает, что администратор должен подтвердить его, чтобы он стал "правильным" ингредиентом - в противном случае он помечен, например, красным цветом текста.
Это моя текущая схема использования:
http://ubuntuone.com/0zDw9kEbj1BwtXjnCtxdwC
Мой вопрос здесь:
- Насколько мне известно, включенные варианты использования могут быть повторно использованы, то есть включены в другие варианты использования или связаны с другими участниками. Но возможно ли это с расширением вариантов использования? Может ли AddProspectiveIngredient расширять VerifyIngredient (хотя это не имеет никакого смысла для этой системы)?
1 ответ
У вас может быть много вариантов использования, расширяющих друг друга. Для расширения это вариация. Только это было бы чрезмерным. Вам не нужно рисовать расширенное соединение между A и C, если AB и BC уже подключены.
Но у вас могут быть проблемы с ограничениями инструмента. VP-UML не очень хорошо работает с "расширением". Даже обычное удаление не будет работать правильно на "точках расширения"
Да, вы можете ссылаться на вариант использования одним или несколькими другими вариантами использования (используя один из include
а также extend
Relations), и вы также можете связать включенные или расширенные варианты использования с вашими актерами.
Это обсуждение полезно для различенияinclude
а также extend
отношения в диаграмме вариантов использования.