Как сохранить и обработать UML ?

pilot911

Новичок
Как сохранить и обработать UML ?

Собираю инфу по обработке UML структур для бизнес-процессов (Business Process Modeling Notation - BPMN) в PHP. Пару дней искал в гугле что-то похожее, но, видимо, все разработки исключительно закрытые от посторонних глаз.

Посоветуйте, как правильно обрабатывать вот такие BPMN

 

baev

‹°°¬•
Команда форума
Что Вы понимаете под «обрабатыванием»?
Что, по-Вашему, в результате должно получиться?
 

pilot911

Новичок
Автор оригинала: baev
Что Вы понимаете под «обрабатыванием»?
Что, по-Вашему, в результате должно получиться?
интересует техническая сторона, хранение логики событий

если упрощенно, я так представляю - не уверен, что оптимально:

1. приведенную схему сконвертировать в XML

2. сохранить каждый из объектов XML (<object id="2" prev_id="1" next_id="3" type="sendmail">) в строке таблицы "process_object" с набором атрибутов (что за объект: start, stop, simple, if, sendmail и тд, родитель и потомок текущего объекта, какие-то условия перехода к одному из потомков, если имеется несколько потомков при зависимости от какого-то условия)

3. потом при переходе, например, документа в новый статус тот модуль, в котором происходит изменение статуса документа просматривает таблицу "process_object", находит текущее место документа в разобранном XML, находит следующий шаг для данного документа (например, if) - разбирает параметры этого
if и смотрит следующий шаг


как вам такая реализация ?
 

baev

‹°°¬•
Команда форума
как вам такая реализация ?
— если честно, я смысла всего этого не понимаю.
В результате-то что? Для чего всё это?

Я понимаю, когда, например, Dia2Code из диаграммы структуру php-классов создаёт, — тут практический результат на лицо.
 

whirlwind

TDD infected, paranoid
pilot911 не хватает структуры. Можно выделить существительные предметной области в классы, глагольные группы в операции и создать структурную диаграмму. Потом она дополняется необходимыми для работы классами "технической стороны".

-~{}~ 29.01.10 15:49:

2baev код слишком точен, что бы на нем проектировать сверху вниз. Утонешь в деталях.
 

pilot911

Новичок
спасибо всем, поясню смысл вопроса на примере

есть модуль, в котором идет работа с новостью

журналист новость создал, корректор проверил, выпускающий редактор подтвердил разрешение на публикацию

сейчас это работает на основе статусов новости: черновик, проверено, подтверждено

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

в то же время, имея диаграмму, просто добавляем между корректором и журналистом блок типа "sendmail" и вуаля, ничего более
 

whirlwind

TDD infected, paranoid
pilot911 у тебя ДБП описывает "как" (каким образом). Но нет ответа на вопрос "кто". В UML2 есть нотации для конечных атоматов и диаграмм последовательностей. Если у тебя формализация КА, то видимо будут state, transition, entryAction. Нарисуй парочку SD и станет понятно. А откуда брать схему или как хранить это дело пятое.
 

pilot911

Новичок
Автор оригинала: whirlwind
pilot911 у тебя ДБП описывает "как" (каким образом). Но нет ответа на вопрос "кто". В UML2 есть нотации для конечных атоматов и диаграмм последовательностей. Если у тебя формализация КА, то видимо будут state, transition, entryAction. Нарисуй парочку SD и станет понятно. А откуда брать схему или как хранить это дело пятое.
спасибо, нашел http://www.uml2.ru/forum/
 
Сверху