|
Не могу построить модель
|
|||
---|---|---|---|
#18+
Есть система, в которой ведется учет заявок на обслуживание. Состояния заявок управляются некоторым "автоматом" - из текущего состояния возможен переход в некоторые следующие состояния. Начиная с некоторого "особого" состояния по заявкам начинаются собственно работы. (для работ также характерна некоторая автоматная логика). дальнейшие изменения состояния заявок происходят в зависимости от совокупного состояния работ, например одна из работ завершена - это для заявки состояние "промежуточный результат", если все работы завершены - это для заявки состояние "конечный результат". имеется возможность для заявки из более поздних состояний "возвращаться" в более ранние, но если эти переходы происходят после прохождения заявкой особого состояния, то для определения дальнейших переходов учитывается история (один переход) состояний, а не только предыдущее состояние. Например, если из состояния заявки "промежуточный результат" перейти в состояние "переопределение исполнителей", то заявка после состояния "переопределени исполнителей" снова переходит в состояние "промежуточный результат". как это все изобразить на UML (или к-нить другой схеме), что это за схема? ДКА не подходит вроде. диаграмма активностей вроде тоже... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2009, 18:36 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
не уверен что знаю что такое ДКА... но помоему очень наглядно будет в Statechart. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 01:27 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
ДКА - детерминированный конечный автомат (стандартную терминологию из моделирования биз. процессов не особо знаю, называю как могу). Statechart - это вид диаграммы/модели, или case? Если case - то мне это не важно, я и ворде могу нарисовать :), главное чтобы модель максимально наглядно передавала то, что описано словами ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 07:18 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
туплю, открыл визио и вижу среди UML Statechart. а можно основную идею какую-нить подкинуть, как моя задача ложится в эту модель? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 07:24 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
хотя это какой-то вариант конечных автоматов... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 07:59 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
kmaw, Если речь идет только о том, чтобы нарисовать процесс перехода из одного состояния в другое, то Visio UML Statechart вполне годится. Есть состояния-овалы, и стрелочки-переходы, что еще надо, чтобы нарисовать модель. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 09:10 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
Goffmankmaw, Если речь идет только о том, чтобы нарисовать процесс перехода из одного состояния в другое, то Visio UML Statechart вполне годится. Есть состояния-овалы, и стрелочки-переходы, что еще надо, чтобы нарисовать модель. Судя по надписям, это скорее не состояния а акстивности "activity diagram" Еще прикольная штука swimlane - можно укаать не только действия, а и того, кто их делает ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 09:39 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
у меня проблема в том, что после прохождения системой определенного состояния автоматы распараллеливаются и их состояния становятся "историческими" ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 09:58 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
Попробую еще раз словами описать модель: В общем случае состояния заявки меняются по следующему алгоритму: 1.Заявка заносится в систему – состояние «Новая заявка» 2.Определяются исполнители на заявку – состояние «Определены исполнители» 3.Определяются для каждого исполнителя работы – если определена хотя бы одна работа, то состояние «Определены работы» 4.После состояния «Определены работы» начинаются собственно работы. Работы протекают асинхронно и параллельно. Смена состояний каждой работы подчинена своему алгоритму, в зависимости от типа работы. 5.Если хотя бы одна из работ выполнена, то есть перешла в состояние «Готова», то заявка автоматически, без участия оператора и исполнителей переходит в состояние «Промежуточный результат» 6.Если все из работ выполнены, то есть перешли в состояние «Готова», то заявка автоматически, без участия оператора и исполнителей переходит в состояние «Конечный результат» 7.Если заявка находится в состоянии «Промежуточный результат» или «Конечный результат», то она может быть закрыта оператором и перейти в состояние «Готова». От этой общей схемы есть отступления, связанные с возможностью выполнения действий над заявкой, которые характерны прошлым по отношению к текущему состояниям заявки. После того, как заявка прошла состояние (или находится в нем) «Определены работы», для неё возможно: 1.Добавить исполнителей 2.Добавить исполнителям работы 3.Заменить исполнителей (что эквивалентно добавлению нового исполнителя, связанного со старым, и добавлению ему всех работ старого исполнителя) При этом: 1.Если добавление исполнителя происходит из состояния «Определены работы», «Промежуточный результат» или «Конечный результат», то заявка проходит состояние «Определен исполнитель» (это отражается в истории смены состояний во времени) и сразу же приходит в состояние, которое у неё было до этого. 2.Если добавление работы происходит из состояния «Промежуточный результат», то заявка проходит состояние «Определены работы» (это отражается в истории смены состояний во времени) и сразу же приходит в состояние, которое у неё было до этого. 3.Если добавление работы происходит из состояния «Конечный результат», то заявка проходит состояние «Определены работы» (это отражается в истории смены состояний во времени) и сразу же приходит в состояние «Промежуточный результат». Это полное описание модели ... |
|||
:
Нравится:
Не нравится:
|
|||
25.03.2009, 10:31 |
|
Не могу построить модель
|
|||
---|---|---|---|
#18+
kmaw, Вы все описали словами. Вполне и так все понятно)))) Картинки принципиально нужны? Тогда одной не обойдетесь. Одна - обьекты в статике На ней Заявка-Работы-Исполнители (с отображением отношений между ними многие-к-одному, многие-ко-многим и т.д.) + атрибуты и методы этих обьектов. Вторая - уже взаимодействие этих обьектов в динамике -эту картинку наверное логично расположить под заявкой. UML вполне поддерживает описание асинхронных потоков работ. \сейчас не помню как называется - завтра если интересно могу посмотреть ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2009, 00:04 |
|
|
start [/forum/topic.php?fid=33&msg=35886595&tid=1548577]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
76ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 185ms |
0 / 0 |