Простой и эффективный способ выявления классов — использование техники, известной каканализ существительных и глаголов и проверка грамматики. Это включает тщательный анализ документов высокого уровня требований, маркетинговых материалов и других источников, которые помогают понять предметную область (то есть область, определяемую проблемой, которую новая система должна решить).
См.Использование UML для объектного моделирования, управляемого случаями использования для примера того, как проводить проверку грамматики на наборе текстовых требований.
Многие люди используют быструю прототипизацию как инструмент для изучения требований с пользователями. Давайте посмотрим, как мы можем использовать прототип HTML-страницы для интернет-магазина книг, чтобы выявить небольшой набор классов, необходимых для моделирования всего книжного магазина.
Мы начинаем с одной страницы, которая отображает подробную информацию о конкретной книге.
Быстро вспомнив эту страницу в уме, выявляются следующие классы как подходящие:
- Конечно, существуетКнига, по крайней мере одинАвтор.
- СуществуетИздатель.
- У книги может быть одна или несколько рецензий. Эти рецензии делятся на две категории:Редакционные рецензии иРецензии клиентов. (Вы узнаете разницу в главе 2.) Каждая рецензия связана сРецензентом.
Если мы продолжим и представим, что пользователь покупает книгу после просмотра страницы, появляются другие потенциальные классы:
- Просмотревший становитсяПокупателем и имеет связанныйСчет.
- Книга становится частью Заказ.
- Заказ должен иметь Информация для выставления счета и Информация о доставке чтобы книжный магазин мог получить оплату и отправить книгу.
Дальнейший анализ выявляет необходимость в следующих двух классах:
- Как уже упоминалось, книга может иметь нескольких авторов, но автор может написать более одной книги. Чтобы избежать отношения «многие ко многим», нам нужен класс Книга и Автор класс.
Книжный магазин (Book Store) использует различные транспортные компании (Shipper Companies), поэтому необходим класс Перевозчик перевозчика.
Таким образом, итоговый набор существительных (существительные) и существительных фраз (существительные фразы) включает:
- Счет
- Автор
- Информация для выставления счета
- Книга
- Книга и Автор
- Покупатель
- Отзыв покупателя
- Редакционный обзор
- Заказ
- Издатель
- Отзыв
- Рецензент
- Перевозчик
- Информация о доставке
Примечание:
Этот пример иллюстрирует фундаментальный принцип: найдите как можно больше существительных и существительных сочетаний из требований, затем проанализируйте, уточните и расширьте список. Независимо от того, как вы это делаете, выявление классов — отличный способ начать свой путь моделирования.
Справочник по языку унифицированного моделирования (UML)
- Что такое UML?
- Зачем использовать моделирование UML?
- Обзор 14 типов диаграмм UML
- Что такое диаграмма классов?
- Что такое диаграмма компонентов?
- Что такое диаграмма развертывания?
- Что такое диаграмма объектов?
- Что такое диаграмма пакетов?
- Что такое диаграмма композитной структуры?
- Что такое диаграмма профиля?
- Что такое диаграмма вариантов использования?
- Что такое диаграмма деятельности?
- Что такое диаграмма состояний?
- Что такое диаграмма последовательности?
- Что такое диаграмма коммуникации?
- Что такое диаграмма обзора взаимодействий?
- Что такое диаграмма временных интервалов?
- Что такое диаграмма сотрудничества UML?
- Связь UML, агрегация и композиция
- Учебник по диаграмме классов UML