UML нейтрален в отношении того, что вы должны включить в свою модель в качестве класса. Так что это твой выбор. И выбор будет зависеть от вашего метода разработки и того, чего вы хотите достичь.
Например, Унифицированный процесс разработки программного обеспечения , определенный отцами UML, Booch, Jacobson & Rumbaugh, предлагает различные уровни моделирования:
- Анализ классы являются производными от вариантов использования и следуют Entity-Control-Boundary подходу
- Проектные классы получены из модели анализа и соответствуют классам, которые будут реализованы.
Другие методы, такие как AgileUP , более прагматичны c и начинаются с доменной модели , ориентированной на постоянные классы, соответствующие бизнес-концепциям , Модель проектирования обогащает классы предметной области другими классами, задействованными в реализации (например, пользовательский интерфейс, элементы управления приложения, постоянные утилиты и т. Д. c.)
. Кроме того, существует разница между классами в модели и подмножество классов, которые вы показываете на диаграмме для обсуждения определенного аспекта вашего дизайна.
Дополнительный контекст (т. Е. Назначение вашей модели UML и методология) необходим для получения более подробных c рекомендаций.