Форум Сообщества Аналитиков
Общий раздел => Примеры => Тема начата: jackal от 16 Марта 2009, 19:32:32
-
Знания в UML нулевые, сталкиваюсь с UML впервые, интереса особого к нему нету, необходимо реализовать проект в EA или Rational Rose. Не мог бы кто-нибудь из вас подсказать, как хотя бы примерно все это выглядит?
Необходимо спроектировать автомат по приготовлению чая или кофе, автомат должен контролирует полученные деньги и в случае необходимости возвращает деньги назад.
Пользователю, возможно, выбрать – черное кофе, кофе со сливками, чай, чай со сливками и к каждому варианту можно дополнительно выбрать сахар.
После заказа пользователь опускает в аппарат деньги, если денег больше, чем требуется, заказ осуществляется, и сдача возвращаются обратно, если денег не хватает, то автомат возвращает деньги полностью.
-
Знания в UML нулевые, сталкиваюсь с UML впервые, интереса особого к нему нету, необходимо реализовать проект в EA или Rational Rose.
А как может быть "необходимо", если знания нулевые и интереса нету?
-
IMHO лучше потратить не очень много денег и в каком-нибудь торговом центре (и т.п.) посмотреть как подобный автомат работает (например, на практике сначала в него закладываются деньги, а потом уже осуществляется выбор напитка - а не так как Вы пишите), записав последовательность выполняемых действий. Подобная запись поможет при проектировании...
To greesha: курсовик небось...
-
Что то вроде домашнего задания, за точность ручаться не могу, перевод с другого языка. Предмет преподавался, но так получилось, что у меня его возможности проходить не было, учился совсем в другом месте и на другую профессию.
-
ИМХО на Форуме смогут помочь, если у Вас есть конкретные вопросы. Все за Вас делать не будут и пересказывать пару книжек тоже резона нет.
Если совсем так тошно, то попросите кого-то сделать Вашу работу за деньги, думаю, найдутся люди на форуме...
-
Не буду Вам явно подсказывать, а опишу немного иной пример. Мы его разбираем со студентами в рамках имитационного моделирования в Matlab.
Есть автомат по продаже проездных билетов. Такой автомат может быть описан в рамках теории конечных автоматов как автомат Мили или Мура.
Рассмотрим автомат Мили.
Для того, чтобы задать конечный детерминированный автомат, нужно:
1. задать конечное множество входов или входной алфавит
2. определить конечное множество состояний, которое может принимать автомат
3. задать конечное множество выходов - выходной алфавит
4. задать функцию переходов из состоянии в состояние под воздействием того или иного входа
5. задать функцию выходов - результат, который выдает автомат находящийся в том или ином состоянии.
Если переход в N_ое состояние зависит от нахождении автомата в некотором состояии и значение входного сигнала, т.е. z(t+1) = z(t) + x(t),
а выход описывается как y(t) = z(t) + x(t),
то мы имеем автомат Мили.
Пусть X = {1,2,5}
Z = {0,1,2,3,4}
Y = {0,1}
Т.е. на вход можно подать монеты достоинством 1, 2 и 5 рублей
Пока в автомате меньше 5 рублей, былите не выдается y=0
Как только сумма достигнет 5 рублей или выше - выдается билет и сдача
Таким образом автомат графически может быть изображен в виде 5 состояний. переход из состояния зависит от состояния и входного сигнала - моенты , которую поместили в монетоприемник.
Начальным состоянием может быть состояние с нулевым количеством в монетоприемнике.
При входе в состояние осуществляется действие увеличение счетчика монет, при выходе Y либо остается равным 0 - билет не выдается, либо y=1 билет выдан. Выдача билета будет происходить, если автомат находится в состоянии 4 и получает дополнительную монету, с переходом в состояние 0 (если предполагается выдача сдачи) или переходом в состояние равное количеству сдачи.
Тот же автомат можно смоделировать как автомат Мура, т.е. y(t) = z(t), ограничив количество состояний до двух:
1 состояние - денег не достаточно, билет не выдается
2 состояние - денег достаточно, билет выдается
Автомат будет находится в 1 состоянии пока общее количество денег будет меньше или равно 4, в противном случае перейдет в состояние выдачи билета и возможно сдачи , коли мы это определим
Событием перехода будет вброс монеты в монетоприемник
При моделировании в Matlab мы используем соединение (join). Однако реализовать задачу можно и по другому
Урок: опишите сначала состояния, не старайтесь их слишком дробить, выбирайте значимые для вашего условия состояния.
Определите список событий и значения входных сигналов, под воздействием которых автомат меняет состояния.
Определите условия переходов
Что будет выходом из каждого состояния и соответственно из автомата
-
Здравствуйте. Не стал создавать новую тему, ибо проблемы схожи.
Знания UML базовые. Требуется спроектировать несложную банковскую систему. Посоветуйте, пожалуйста, литературу по данному вопросу.
Еще лучше, если в литературе будет описываться шаблонный пример создания подобной системы, как, например, в книге Трофимова С.А. "CASE-технологии: Практическая работа в Rational Rose."
Кстати, средство разработки обязательно Rational Rose.
Буду весьма признателен, если кто-нибудь поможет советом или хорошей литературой. Заранее премного благодарен.
-
У меня есть лишь неделя. Мне не нужна готовая, работающая банковская система, а лишь примерная и довольно приблизительная для ознакомления и демонстрации возможностей UML в проектировании подобных систем. Она должна контролировать работу основных банковских компонентов, взаимодействие с клиентами, с банковским(и) автоматом(ами) и пр. Мне так же не нужно готовое работоспосбное приложение, а лишь пример самой модели.