Что такое модель-представление-контроллер (MVC) Framework? Модель MVC с анализом устойчивости UML

Model-View-Controller (MVC) — это базовый шаблон проектирования, который отделяет логику пользовательского интерфейса от бизнес-логики. Шаблон Model-View-Controller (MVC) — это способ разделения приложения на три отдельных компонента; модель, представление и контроллер.

MVC Framework с использованием моделирования UML

Этот контроллер модели-представления можно лучше всего описать визуально с помощью анализа надежности в стереотипной нотации UML, которая была впервые предложена Иваром Якобсоном в его отмеченной наградами книге «Объектно-ориентированная разработка программного обеспечения» (см. ссылки ниже) и дополнительно объяснена Дугом Розенбергом и др. . в своей книге «Использование объектного моделирования UML, основанного на прецедентах».

Как смоделировать MVC Framework с помощью диаграммы последовательности UML?

Вот простая и гипотетическая диаграмма последовательности для MVC. На диаграмме выше вы видите, что веб-пользователь инициирует запрос и генерирует событие, которое обрабатывается контроллером для получения необходимой информации от модели, проверки информации и передачи набора результатов обратно в представление.

Сущностные объекты (модель) — это не что иное, как информация или данные, которые ищут ваши граничные объекты. Это могут быть таблицы базы данных, файлы Excel, «временные» сеансы, кэшированные данные или что-то в этом роде.

  • Описывать объекты, которые существуют с течением времени и в первую очередь связаны с постоянным состоянием.
  • Обычно объекты из модели предметной области
  • Вещи, которые нам нужно отслеживать и хранить

Граничные объекты (представление) — это объекты, с которыми акторы (например, пользователи) взаимодействуют в вашей программной системе. Эти объекты могут быть любым окном, экраном, диалоговым окном и меню или другим пользовательским интерфейсом в вашей системе. Вы можете легко определить их при анализе вариантов использования.

  • описать связи между системой и средой, которые взаимодействуют.
  • Используется акторами при общении с системой
  • Только объекты сущностей могут инициировать события
  • (обычно основные элементы пользовательского интерфейса, например экраны)

Объекты управления (контроллеры) — это бизнес-объекты или ваши бизнес-веб-сервисы. Здесь вы фиксируете бизнес-правила, которые используются для фильтрации данных, которые должны быть представлены пользователю, что он запрашивает. Таким образом, контроллер фактически контролирует бизнес-логику и преобразование данных.

  • описать поведение в конкретном случае использования.
  • «Клей» между граничными объектами и объектами-сущностями
  • Захват бизнес-правил и политик
  • (примечание: часто реализуется как методы других объектов)

Правила подключения в модели MVC

Учтите, что граничные объекты и объекты-сущности — это существительные, а контроллеры — это глаголы.

Вот четыре основных правила подключения.

  • Актеры могут взаимодействовать или общаться только с граничными объектами.
  • Граничные объекты могут взаимодействовать только с контроллерами и акторами.
  • Объекты Entity могут взаимодействовать только с контроллерами.
  • Контроллеры могут взаимодействовать с граничными объектами и сущностными объектами, а также с другими контроллерами, но не с акторами.

Помните, что и граничные объекты, и объекты-сущности являются существительными, а контроллеры — глаголами. Существительные не могут разговаривать с другими существительными, но глаголы могут разговаривать с существительными или глаголами.

Краткий обзор диаграммы анализа устойчивости

Предположим, у нас есть следующее простое описание варианта использования в текстовом формате:

На странице сведений о студенте учитель нажимает кнопку «Добавить курсы», и система отображает список курсов. Преподаватель выбирает название курса и нажимает кнопку «Зарегистрироваться». Система регистрирует студента на курс.

Теперь вы можете создать простую диаграмму надежности в соответствии с приведенным выше вариантом использования:

Диаграмма анализа устойчивости

Вы также можете использовать текстовую метку, чтобы прикрепить описание варианта использования в правой части диаграммы устойчивости.

Пять шагов для создания анализа устойчивости

  1. Вы выполняете анализ надежности варианта использования, просматривая текст варианта использования.
  2. Одно предложение за раз, рисование действующих лиц, соответствующих границ, сущностных объектов и контроллеров, а также связей между различными элементами диаграммы.
  3. Вы должны быть в состоянии разместить основной курс и все альтернативные курсы на одной диаграмме.
  4. Любой, кто просматривает диаграмму надежности, должен быть в состоянии прочитать ход действий в тексте варианта использования, проследить пальцем по ассоциациям на диаграмме и увидеть четкое соответствие между текстом и изображением.

Вам, вероятно, придется переписать текст варианта использования, чтобы устранить двусмысленность и явно ссылаться на граничные объекты и объекты-сущности. Большинство людей не пишут идеальный текст варианта использования в первом черновике. Таким образом, мы можем использовать анализ надежности, чтобы преодолеть разрыв между текстом варианта использования и диаграммой.

Проверка схемы анализа устойчивости

Разработка сценария использования с использованием диаграмм последовательности MVC

Основываясь на анализе устойчивости, мы можем разработать сценарии использования (обычные или альтернативные), используя набор связанных диаграмм последовательности в формате MVC. Точно так же диаграмма последовательности MVC имеет объекты интерфейса, объекты контроллера и объекты сущности:

  • Сущности — это объекты, представляющие системные данные: Клиент, Товар, Транзакция, Корзина и т. д.
  • Границы — это объекты, взаимодействующие с акторами системы: UserInterface, DataBaseGateway, ServerProxy и т. д.
  • Элементы управления — это объекты, являющиеся посредниками между границами и сущностями.

Пример диаграммы последовательности MVC

Они организуют выполнение команд, исходящих от границы, взаимодействуя с сущностями через граничные объекты. Объект контроллера часто соответствует сценарию варианта использования и часто представлен диаграммой последовательности.

Вы можете использовать стереотипы для линии жизни на диаграмме последовательности MVC, чтобы визуально прояснить, какой тип объектов вы используете в MVC, как на приведенной выше диаграмме анализа устойчивости.

Диаграмма последовательности надежности

Пример диаграммы последовательности MVC

Предположим, приложение, которое позволяет вам искать людей. Пользовательский интерфейс должен иметь текстовое поле, в котором пользователь может ввести строку поиска, и может иметь кнопку для запуска поиска. Наконец, он должен иметь область, в которой отображаются результаты поиска. В нашем случае это реализовано с помощью компонента списка.

Сценарий варианта использования «Поиск людей»:

  • Пользователь вводит строку поиска в текстовое поле
  • Пользователь нажимает кнопку поиска.
  • Результат поиска отображается в списке результатов.

Пример диаграммы последовательности MVC

На приведенной выше диаграмме последовательности показано, как нажатие кнопки пользователем перемещается по приложению до тех пор, пока результат не будет окончательно отображен в компоненте списка.

использованная литература

Leave a Reply

Ваш адрес email не будет опубликован.