2017-01-19 13 views
0

Я строю диаграмму классов для системы, в которой student, staff или normal user (кто-то, кто не зарегистрирован как любая организация, просто обычный гражданин), может приобрести продовольственный товар с машины.Будут ли следующие классы иметь отношение к диаграмме классов?

Когда student или staff обращаются к этой машине, они могут прокручивать/проверять свою членскую карточку, которая выделяет им скидку. Когда normal user совершает покупку, такая членская карточка не используется, они просто платят полную цену.

Мой вопрос в том, будет ли диаграмма классов содержать классы для student и staff? Или вся информация об этих людях просто будет храниться в классе под названием membership card, который сообщает системе, кто на основании информации о своей карте?

Я новичок в UML, так что это немного смутило меня. Похоже, что информация о студенте и сотруднике будет основываться на их членской карточке, когда она будет проверена, и нужны ли классы для этих типов людей?

Благодаря

+0

Что вы пытаетесь достичь? Кому вы общаетесь с этим дизайном? Что им нужно знать, чтобы реализовать свою идею в коде? Это то, что принадлежит UML. Это обозначение для общения. UML-диаграммы не являются чертежами. Добавьте то, что вы хотите видеть, чтобы иметь возможность кодировать проблему. Не беспокойтесь о UML - в наши дни никто не заботится об этом. – duffymo

+0

Я пересматриваю экзамен, который требует, чтобы я построил диаграмму классов. Я понимаю, что UML не особенно идеален для многих сценариев, но мне все еще требуется изучить его, и это был один из практических вопросов. Означает ли это, что диаграмма в принципе открыта для любой интерпретации? Другими словами, нет никакого правильного или неправильного способа сделать это, если это имеет общий смысл для инженера? – Toby95

+0

В любом случае, постройте диаграмму классов со студентом, персоналом и пользователем. Я предполагаю, что первые два наследуют от пользователя. Неправильно или неправильно? К сожалению, это правильно. Диаграммы - это способ сообщить о своих намерениях другим разработчикам. Если они могут понять это на диаграмме, вы сделали хорошо. Если нет, они зададут вопросы и внесут изменения. Вы пишете диаграммы классов и последовательности? Ваше описание потока подсказывает мне последнее. – duffymo

ответ

0

Ваш торговый автомат должен различать различные типы пользователей каким-либо образом. Идентификация производится считывателем карт, распознающим член или гостевую карточку. Это наверняка будет содержать информацию о члене/гостю. Если это просто показать «Pay X», вам не понадобится ни один класс, поскольку информация уже присутствует на считываемой карте. Если у членов есть какая-то учетная запись, с которой производится платеж, вам нужен класс для доступа к учетной записи.

 Смежные вопросы

  • Нет связанных вопросов^_^